Deep Research
AI-powered deep research that investigates topics using a multi-agent system, delivering comprehensive reports with citations from web sources.
Overview
Helix Deep Research takes a research topic, decomposes it into sub-topics, and dispatches multiple AI agents to search the web, extract content, and synthesize findings into a comprehensive Markdown report. Real-time progress is streamed via Server-Sent Events (SSE).
Key benefits:
- Multi-agent research: A supervisor agent coordinates parallel sub-researcher agents for thorough coverage
- Real-time streaming: Watch research progress live via SSE — topics started, sources found, and the final report
- Comprehensive reports: Receive Markdown reports with citations, sub-reports, and confidence scoring
- Confidence scoring: Each report includes a confidence level reflecting the quality and breadth of sources
- Stream resumption: Reconnect to an in-progress stream using sequence IDs without missing events
- Two detail levels: Choose between high-level progress (
basic) or full agent observability (detailed)
Quick Example
# Create a research task
curl -X POST https://api.feeds.onhelix.ai/research/tasks \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"input": "Impact of generative AI on software development productivity",
"detail": "basic"
}'
# Stream real-time progress
curl -N "https://api.feeds.onhelix.ai/research/tasks/{taskId}/stream" \
-H "Authorization: Bearer YOUR_API_KEY"
# Retrieve completed result
curl "https://api.feeds.onhelix.ai/research/tasks/{taskId}" \
-H "Authorization: Bearer YOUR_API_KEY"
See the Quickstart Guide for a complete walkthrough.
How Deep Research Works
Multi-Agent Architecture
Deep Research uses a two-tier agent system:
Supervisor Agent:
- Receives the research topic
- Decomposes it into sub-topics for parallel investigation
- Coordinates sub-researcher agents
- Synthesizes individual sub-reports into a final comprehensive report
Sub-Researcher Agents:
- Each assigned a specific sub-topic
- Search the web for relevant sources
- Extract and analyze content from web pages
- Produce sub-reports with citations and findings
Research Flow
When you submit a research task, it goes through these steps:
- Task creation — A research task record is created and a Temporal workflow is started
- Topic decomposition — The supervisor agent analyzes your input and identifies sub-topics to investigate
- Agent dispatch — Sub-researcher agents are launched in parallel, one per sub-topic
- Web search — Each sub-researcher searches the web for relevant sources
- Content extraction — Source pages are crawled and their content is extracted
- Sub-report synthesis — Each sub-researcher produces a sub-report from its findings
- Final synthesis — The supervisor combines all sub-reports into a comprehensive report with citations
- Completion — The final report, sources, and metadata are saved and the task is marked as completed
Detail Levels
The detail parameter controls the granularity of SSE events:
| Feature | basic | detailed |
|---|---|---|
| Topic started/completed | Yes | Yes |
| Overall progress | Yes | Yes |
| Sources discovered | Yes | Yes |
| Final result | Yes | Yes |
| Error events | Yes | Yes |
| Agent lifecycle | No | Yes |
| Tool execution | No | Yes |
| LLM text generation | No | Yes |
| Agent reasoning | No | Yes |
When to use basic: Building end-user UIs where you want to show progress bars and source lists without overwhelming detail.
When to use detailed: Debugging, developer tools, or building advanced UIs that visualize agent activity.
Research Task Object
Each research task has the following fields:
| Field | Type | Description |
|---|---|---|
id | string (UUID) | Unique research task identifier |
status | string | Current status (see below) |
input | string | The research topic that was submitted |
detail | string | Detail level (basic or detailed) |
title | string|null | Optional title for the task |
result | object|null | Research result (when completed) |
usage | object|null | Usage statistics (when completed) |
error | string|null | Error message (when failed) |
createdAt | string (ISO 8601) | Creation timestamp |
completedAt | string|null (ISO 8601) | Completion timestamp |
streamUrl | string | Relative URL for the SSE stream |
Status Values
| Status | Description |
|---|---|
| running | Research is in progress |
| completed | Research finished successfully |
| failed | Research encountered an error |
| stopped | Research was stopped |
Result Object
When status is completed, the result field contains:
| Field | Type | Description |
|---|---|---|
report | string | Comprehensive research report in Markdown |
topics_researched | string[] | List of sub-topics that were investigated |
sources | object[] | Web sources discovered and cited |
sub_reports_count | number | Number of sub-reports synthesized |
confidence_level | string | Overall confidence (high, medium, low) |
Usage Object
When status is completed, the usage field contains:
| Field | Type | Description |
|---|---|---|
sub_researchers | number | Number of sub-researcher agents used |
sources_analyzed | number | Total number of web sources analyzed |
Streaming
Deep Research provides real-time progress via Server-Sent Events. Connect to the stream URL immediately after creating a task to watch the research unfold.
The stream includes events for topic progress, source discovery, and the final result. With detail=detailed, you also get agent lifecycle, tool execution, and LLM generation events.
See the Streaming Guide for full event documentation, reconnection handling, and code examples.
Use Cases
Market Research
Investigate market trends, competitive landscapes, and industry dynamics:
curl -X POST https://api.feeds.onhelix.ai/research/tasks \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"input": "Current state of the European electric vehicle charging infrastructure market and key players"
}'
Technical Investigation
Research technical topics, frameworks, and best practices:
curl -X POST https://api.feeds.onhelix.ai/research/tasks \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"input": "Comparison of WebSocket, Server-Sent Events, and WebTransport for real-time web applications"
}'
Competitive Analysis
Analyze competitors, their products, and market positioning.
Academic Literature Review
Survey recent academic research and findings on a topic.
Processing Time
Typical processing times depend on topic complexity:
| Topic Complexity | Sub-topics | Expected Time |
|---|---|---|
| Simple (focused topic) | 2-3 | 1-3 minutes |
| Moderate (multi-faceted) | 3-5 | 3-5 minutes |
| Complex (broad scope) | 5+ | 5-10 minutes |
Factors affecting time:
- Number of sub-topics identified
- Availability and accessibility of web sources
- Depth of content extraction required
- Complexity of final synthesis
Next Steps
- Quickstart Guide: Create your first research task in 5 minutes
- Streaming Guide: Build real-time UIs with SSE events
- API Reference: Complete endpoint documentation
- Authentication: API key best practices