vercel-labs

Durable Web Research Agent — Development skill for Claude Code

Development community

Ask a technical question and get well researched answer with citations.

How to install Durable Web Research Agent

This entry records only its repository, not the path inside it, so there is no exact command to give. Open vercel-labs/durable-web-research-agent and copy the folder into ~/.claude/skills/, or the file into ~/.claude/agents/.

What Durable Web Research Agent does

Ask a technical question and get well researched answer with citations.

Alternatives in Development

  • Research Codebase — You are tasked with conducting comprehensive research across the codebase to answer user questions by spawning 10k ★
  • Part 1 — Deep Research Prompt Builder — I'm going to help you create a research prompt for your project 2.1k ★
  • Rb Ask — Ask a question about the current project's codebase via the repobrain knowledge hub 1.3k ★

README

Durable Web Research Agent

A deep-research agent built on the [Vercel Workflow DevKit](https://vercel.com/docs/workflow). Ask a question and the app runs a **durable, resumable workflow** that searches the web, fetches source pages, extracts cited findings, and synthesizes a grounded research brief — streaming each step to the browser in real time.

Because the orchestration runs as a workflow, every step is checkpointed: the run survives restarts, retries failed steps, and can be reconnected to from any client via its `runId`.

How it works

question ──▶ searchWeb ──▶ fetchSourcePage ─┐
                                            ├─▶ extractFindings ──▶ synthesizeReport ──▶ cited brief
            (per source, up to 5)  ─────────┘
  • workflows/research-workflow.ts — the durable orchestrator ("use workflow"). Fans out over search results and streams tool-call / tool-result parts to the UI.
  • workflows/research-steps.ts — individual durable steps ("use step"): DuckDuckGo search, page fetch + HTML-to-text, and finding extraction.
  • workflows/synthesize.ts — final step that turns findings into a structured, cited report.
  • app/api/research — starts a run and returns its runId.
  • app/api/run/[runId] — polls run status and the final return value.
  • app/api/readable/[runId] — streams workflow events to the UI as Server-Sent Events.

Tech stack

Web search uses DuckDuckGo's HTML endpoint, so **no search API key is required**.

Prerequisites

  • Node.js 20+ and pnpm (the repo uses a pnpm-lock.yaml)
  • A **[Vercel acco