Standalone AI research assistant · Early-stage prototype

dzhng/deep-research

Small TypeScript standalone deep-research assistant that recursively generates search queries, processes Firecrawl results with an LLM, derives new research directions, and writes a sourced Markdown report; no native Claude Code integration is documented.

web researchinformation retrievalreport generationLLM agentsweb scraping
Routing score
80.0
Readiness
Usable with configuration, but not production-validated
License
MIT
Maintenance
active
Components
3
Revision
0

Selection

Select when

  • You want a standalone interactive deep-research workflow rather than a Claude Code extension.
  • You need explicit controls for research breadth and recursive depth.
  • You want Firecrawl-based search and extraction combined with LLM synthesis.
  • You want a Markdown report written to the working directory.
  • You want a compact TypeScript codebase intended to be easy to understand and extend.
  • You can supply Firecrawl access and either hosted-model credentials or a compatible local endpoint.
  • You want configurable concurrency for paid or self-hosted Firecrawl capacity.

Boundaries

Avoid when

  • You need native Claude Code skills, hooks, slash commands, MCP integration, or context injection.
  • You require a tested, production-ready research system with documented reliability guarantees.
  • You cannot send queries or retrieved content to configured external providers.
  • You need fully offline retrieval and inference.
  • You need a graphical desktop or browser interface.
  • You need built-in citation verification or independently evaluated research accuracy.
  • You need a repository with a working automated test suite.
  • You require an unambiguous license declaration across repository files.

Strengths

Capabilities

Prompts for a research query plus configurable breadth and depth parameters.Generates follow-up questions to refine the requested research direction.Uses an LLM to generate targeted SERP queries from goals and prior findings.Uses Firecrawl for web search and content extraction.Processes multiple searches and results concurrently with a configurable concurrency limit.Extracts learnings and proposes follow-up research directions from retrieved results.Recursively researches new directions while depth remains.Carries prior goals, questions, and learnings into later iterations.Produces a comprehensive Markdown report with sources and references.Writes the result as report.md or answer.md depending on the selected mode.Supports OpenAI o3-mini through an OpenAI API key according to the README.Automatically uses DeepSeek R1 through Fireworks when a Fireworks key is present according to the README.Supports a local OpenAI-compatible endpoint and selected local model through environment variables.Supports custom OpenAI-compatible endpoints and model identifiers.Provides an interactive Node.js command-line workflow.Provides Docker files and a documented Docker Compose execution path.Includes an Express dependency and an api package script, although API behavior is not documented in the supplied README.Targets a repository goal of fewer than 500 lines of code for understandability and extension.

Risk profile

Risks and limitations

  • Uncertainty: only README.md and package.json were supplied, so the agent implementation, prompts, recursion controls, source handling, Docker configuration, and API route were not directly inspected.
  • Uncertainty: supplied metadata contains update and push dates in 2026 relative to this analysis context, so current activity and repository state cannot be independently reconciled.
  • Uncertainty: no first-party evidence demonstrates any integration with Claude Code, so classification as a standalone companion or alternative is inferred from its own CLI workflow.
  • The package is version 0.0.1 and configures no tests, which suggests early maturity but does not by itself prove instability.
  • Research quality, factual accuracy, source relevance, and citation completeness were not benchmarked or independently validated.
  • The README requires Firecrawl and OpenAI keys, while also documenting local and alternative model paths; exact minimum credential requirements for every configuration remain uncertain.
  • Free Firecrawl usage may encounter rate limits and require concurrency to be reduced, making runs slower.
  • Recursive breadth, depth, and concurrency can increase API consumption, latency, and cost.
  • The system writes report.md or answer.md into the working directory, so existing-file behavior should be verified before use.
  • The metadata and README identify the license as MIT, but package.json declares ISC, creating an unresolved licensing inconsistency.
  • No security policy, threat model, privacy statement, telemetry disclosure, or independent audit was supplied.
  • The undocumented api script and Express surface cannot be assessed for authentication, exposure, or production safety from the supplied files.

The workflow consumes service credentials from .env.local and sends research queries and retrieved content to Firecrawl and the configured model endpoint. A self-hosted Firecrawl base URL and local OpenAI-compatible model endpoint are documented alternatives, but the supplied files do not establish secret-storage protections, network boundaries, input hardening, API authentication, dependency review, or sandboxing. The repository has no configured tests and no supplied security policy or audit.

Component inventory

3 documented components

standalone application / interactive command

Open Deep Research CLI

Interactive research assistant that asks for a query, breadth, depth, and follow-ups, then recursively searches, analyzes results, and writes a Markdown report.

src/run.ts
service

Open Deep Research API

Express-based API entry point for the deep-research application; the supplied files document its package script but not its routes or request contract.

src/api.ts
container workflow

Docker research workflow

Runs the interactive research assistant inside the repository's Docker Compose service.

Dockerfile / docker-compose configuration

Technical profile

Requirements and configuration

Language
TypeScript
Runtime
Node.js 22.x
PackageVersion
0.0.1
Interface
Interactive command-line application; an API script exists but is undocumented
SearchAndExtraction
Firecrawl via @mendable/firecrawl-js
LlmIntegration
Vercel AI SDK with OpenAI and Fireworks provider packages
DefaultModel
README states OpenAI o3-mini
AlternativeModel
README states DeepSeek R1 through Fireworks when FIREWORKS_KEY is detected
LocalModels
OpenAI-compatible local endpoint configured with OPENAI_ENDPOINT and OPENAI_MODEL
CustomProviders
OpenAI-compatible endpoint and model selection are documented
Concurrency
p-limit dependency with CONCURRENCY_LIMIT environment configuration
Output
report.md or answer.md in the working directory
Configuration
Environment variables loaded from .env.local
Containerization
Dockerfile and Docker Compose workflow are documented
Testing
package.json test script exits with 'no test specified'
License
Conflict: GitHub metadata and README say MIT, while package.json says ISC
RepositoryStatus
Public, unarchived, default branch main
ClaudeCodeIntegration
None documented

Classification

How it enters the stack

Standalone ApplicationOrchestration

Evidence: the repository runs its own interactive Node.js research assistant and orchestrates recursive query generation, retrieval, result processing, and report writing. No Claude Code extension mechanism is documented; treating it as a standalone companion or alternative is an inference.

Standalone · medium setup effort · high confidence · automated

Evidence and risk

Primary sources

first_party_fileREADME.mdhttps://github.com/dzhng/deep-research/blob/main/README.md
first_party_filepackage.jsonhttps://github.com/dzhng/deep-research/blob/main/package.json

Routing context

Conflicts, complements, and synergies

same_owner

gh_dzhng_skills

Both repositories are owned by dzhng; the supplied files do not document technical integration between them.

high confidence