Source repo: https://github.com/CYC2002tommy/Deep-Research-Agent
Branch: TBD
PR: TBD
Why this repo
Deep-Research-Agent ("Deep Science Writer") is an agent-skill research pipeline for autonomous academic literature review: multi-agent discovery (Scopus/Exa/OpenAlex/Semantic Scholar), full-text verification, DOI liveness checks, peer review, and docx compilation. Web search is already core to its Phase 4.5 evidence-verification loop (scripts/verify_urls.py uses duckduckgo_search), so an optional search engine fits naturally without changing the default behavior.
Candidate evaluation (3 shortlisted)
| Candidate |
Stars |
Distribution surface |
Activity |
Verdict |
| CYC2002tommy/Deep-Research-Agent (SELECTED) |
301 |
Existing web-search consumer script with pytest tests + MCP-server docs section; research-skill pipeline |
Pushed 2026-08-23 |
Best fit: search is core; engine option in existing script = smallest diff with tests |
| Dicklesworthstone/pi_agent_rust |
1710 |
Extension/tool registry (extension-catalog.json) |
Very active |
Rejected: no CONTRIBUTING, non-OSI license (NOASSERTION), heavyweight Rust project — PR unlikely to land quickly |
| callstack/agent-device |
4399 |
Tool/MCP-ish surface for mobile automation |
Active |
Rejected: mobile-app automation domain, web search not core; above preferred star band |
Proposed integration
Type: Optional search engine in the existing verify_urls.py + You.com MCP server entry in the Required MCP Servers docs section.
Distribution surface: The repo already has a search-backed verification script with a pytest suite (tests/test_verify_urls.py) and documents required MCP servers (Scopus, Exa, NotebookLM). The integration rides both existing surfaces:
verify_urls.py gains an optional You.com backend, selected via YDC_API_KEY env var (opt-in; default DuckDuckGo unchanged)
- README/SKILL.md gain an optional You.com MCP server entry (
https://api.you.com/mcp, YDC_API_KEY bearer; keyless ?profile=free)
Planned env vars / setup:
export YDC_API_KEY="..." # opts verify_urls.py into You.com search; unset = DuckDuckGo (default, unchanged)
Expected usage:
python skills/deep-science-writer/scripts/verify_urls.py # default DDG
YDC_API_KEY=*** python .../verify_urls.py # You.com backend
Validation plan:
- Add pytest cases for the You.com backend (mocked, matching existing test style)
- Run
pytest tests/ locally
- Confirm default behavior unchanged when
YDC_API_KEY unset (existing tests must pass unmodified)
Fallback/error handling: You.com request failure (timeout, HTTP error) → per-query warning to stderr + graceful fallthrough to the next query, same pattern as the existing DDG error path. No results → empty result list entry, never a crash.
Status: in progress
Source repo: https://github.com/CYC2002tommy/Deep-Research-Agent
Branch: TBD
PR: TBD
Why this repo
Deep-Research-Agent ("Deep Science Writer") is an agent-skill research pipeline for autonomous academic literature review: multi-agent discovery (Scopus/Exa/OpenAlex/Semantic Scholar), full-text verification, DOI liveness checks, peer review, and docx compilation. Web search is already core to its Phase 4.5 evidence-verification loop (
scripts/verify_urls.pyusesduckduckgo_search), so an optional search engine fits naturally without changing the default behavior.Candidate evaluation (3 shortlisted)
Proposed integration
Type: Optional search engine in the existing
verify_urls.py+ You.com MCP server entry in the Required MCP Servers docs section.Distribution surface: The repo already has a search-backed verification script with a pytest suite (
tests/test_verify_urls.py) and documents required MCP servers (Scopus, Exa, NotebookLM). The integration rides both existing surfaces:verify_urls.pygains an optional You.com backend, selected viaYDC_API_KEYenv var (opt-in; default DuckDuckGo unchanged)https://api.you.com/mcp, YDC_API_KEY bearer; keyless?profile=free)Planned env vars / setup:
Expected usage:
Validation plan:
pytest tests/locallyYDC_API_KEYunset (existing tests must pass unmodified)Fallback/error handling: You.com request failure (timeout, HTTP error) → per-query warning to stderr + graceful fallthrough to the next query, same pattern as the existing DDG error path. No results → empty result list entry, never a crash.
Status: in progress