The Problem
Researchers and developers spend excessive time manually searching, scraping, and synthesizing web content for technical information. Traditional AI assistants can browse the web but lack structured reasoning display, real-time citation tracking, and split-view analysis workflows that make technical verification practical.
What This Does
Open Researcher is a Next.js 15 application (app/) that combines Firecrawl web scraping with Anthropic Claude reasoning to provide a visual research assistant. The core agent logic lives in lib/open-researcher-agent.ts, which orchestrates web searches and AI reasoning. The UI presents thinking processes in real-time via components/thinking-display.tsx and components/thinking-chat.tsx, while components/citation-tooltip.tsx handles source tracking. A split-view interface (app/open-researcher/page.tsx) displays chat alongside search results, and automatic citations are generated throughout the interaction flow. UI components are built with Radix UI under the components/ui/ directory, styled with Tailwind CSS configured in tailwind.config.ts.
How To Use It
Setup: Install dependencies with pnpm install (evidenced by package.json and pnpm-lock.yaml). The project uses Node.js 18+.
Configuration: Copy .env.local.example to .env.local and add required keys. ANTHROPICAPIKEY is required for AI functionality; FIRECRAWLAPIKEY is optional and can be provided through the UI if omitted. Environment variables are referenced in app/api/check-env/route.ts for validation.
Running it: Start the development server with pnpm run dev (defined in package.json), which launches at http://localhost:3000. Build production with pnpm run build and start with pnpm start.
Real-World Use
A developer investigating a breaking change in a JavaScript runtime can query Open Researcher: "What changed in Node.js 22 regarding worker thread performance?" The agent in lib/open-researcher-agent.ts automatically searches via Firecrawl, Claude reasons through the results in real-time visible in thinking-display.tsx, and citations appear with source metadata. The user clicks a citation to view the original source, or asks follow-up questions to drill deeper into specific findings without losing context.
Code Health & Issues
Medium - No CI/CD pipeline: No .github/ workflows or automated build/test gate detected. Manual pnpm run lint and pnpm run build are the only quality gates. Medium - No LICENSE file at root: README references MIT License, but the file is absent from the repository structure, creating redistribution ambiguity. Low - API route consistency: app/api/open-researcher/route.ts, app/api/open-researcher/follow-up/route.ts, and app/api/scrape/route.ts handle related functionality; error handling patterns should be verified for edge cases in request parsing and Firecrawl/Anthropic API failures. Low - Missing test files: Only 1 test file detected in the analysis; no test infrastructure or coverage reports visible.
The Bottom Line
Open Researcher delivers a functional, well-structured research assistant that makes AI thinking visible and citations actionable. The Next.js 15 + TypeScript + Tailwind stack is solid, and the split-view design is genuinely useful for technical verification work. However, the absent LICENSE file and missing CI/CD pipeline are significant gaps for any team considering adoption beyond personal experimentation. It's well-suited for individual researchers or small teams who need real-time web-anchored AI reasoning and can manage API key operations manually.