Web4Guru AI Operations
Docs · Specialists · Research

The Research Specialist

The analyst of the team. Runs competitive scans, vertical research, lead-list discovery, and fact-checking. Every claim in its report cites a real URL.

When the CEO calls on this specialist

From ceo/tools.ts: “USE WHEN: owner asks for a competitive scan, vertical/market research, lead discovery from the open web, or fact-checking claims. DO NOT USE WHEN: the task requires logging into a site or scraping behind auth (use browser), or it is a one-line factual lookup.” Examples: “find 20 chiropractors in Austin with Instagram accounts”, “what pricing are competitors charging”, “fact-check this statistic.”

What they take as input

  • task_id — kebab-case slug, e.g. austin-dental-clinic-competitive-scan
  • brief — the exact questions to answer, the scope (geography, industry, time window), and what “done” looks like
  • context_files (optional) — paths under ~/.blackbox/ for prior research or owner notes

What they produce

  • A structured Markdown report at ~/.blackbox/research/<task_id>/report.md
  • Per-URL source dumps under ~/.blackbox/research/<task_id>/sources/
  • A one-paragraph summary with the sharpest finding
  • A source-count — the number of unique citation URLs — the CEO shows on the card

Tools they have access to

From apps/engine/src/specialists/research/spec.ts:

  • Agent SDK built-ins: Read, Write, WebFetch
  • Search: mcp__bb-tavily__tavily_search (preferred), mcp__bb-tavily__tavily_extract, mcp__bb-research-tools__web_search
  • Google Workspace read-only (when OAuth is connected): gmail_list, gmail_read, drive_list, drive_download, sheets_read
  • CEO shared: emit_owner_card, append_lesson, write_inter_agent_note, request_peer_review, request_replan
  • Project-room tools for multi-agent collaboration
  • No Bash. No POST/form-submit. Read-only on the web.

Workspace

setupResearchWorkspace(taskId) creates ~/.blackbox/research/<taskId>/ with a sources/ subdirectory for per-URL dumps. Idempotent. All writes stay inside the workspace.

Example brief

From an owner message like “find me 20 chiropractors in Austin with active Instagram accounts”, the CEO would call:

delegate_to_research_specialist(
  task_id: "austin-chiro-ig-leads",
  brief: "Find 20 chiropractic practices in Austin, TX that have active Instagram accounts (posted within the last 60 days). For each: clinic name, Instagram handle, follower count (approximate), last post date, and a 1-line hook about what their content is about. Rank by follower count. Exclude multi-location chains. Report structure: (1) methodology, (2) ranked list, (3) caveats. Target: 15+ cited sources. Expected cost: ~30 credits.",
)

Example output

Research task austin-chiro-ig-leads: success
Workspace: ~/.blackbox/research/austin-chiro-ig-leads
Summary: Identified 22 active chiropractic clinics in Austin with Instagram accounts posting within 60 days. Top three by follower count: Spine & Co (4.2K), Hill Country Chiro (3.1K), South Lamar Wellness (2.8K). Most content is before/after adjustment posts; three clinics are running short-form education content that stands out. Caveat: three listings cross-check against different Google Business entries; verify before outreach.
Report: ~/.blackbox/research/austin-chiro-ig-leads/report.md
Sources cited: 34

Related specialists

Research pairs with Content (Research → Content is a common chain: scan the market, then write the launch email using the findings), Sales (lead discovery feeds the outreach sequence), and Browser (Research surfaces URLs; Browser goes behind the login if needed).

Frequently asked

Why cited URLs, not just text?
Because the Evaluator's rubric auto-fails any numeric claim or proper-noun assertion without a citation. The constraint is load-bearing.
How long does a typical research run take?
Competitive scans: 3–10 minutes. Vertical research: 10–30 minutes. Large lead lists: up to an hour with multiple Tavily rounds.
Can I read the report without opening the workspace?
Yes — the CEO surfaces the full report in the report_ready card on your Dashboard.

See also