Files
deepagentsjs/examples/async-subagents/parallel-research
github-actions[bot] bed2d344bc chore: version packages (#712)
This PR was opened by the [Changesets
release](https://github.com/changesets/action) GitHub action. When
you're ready to do a release, you can merge this and the packages will
be published to npm automatically. If you're not ready to do a release
yet, that's fine, whenever you add more changesets to main, this PR will
be updated.


# Releases
## deepagents@1.12.0

### Minor Changes

- [#703](https://github.com/langchain-ai/deepagentsjs/pull/703)
[`d25097f`](https://github.com/langchain-ai/deepagentsjs/commit/d25097f78d0e66741da34e1d74551f3c19991126)
Thanks [@hntrl](https://github.com/hntrl)! - feat(deepagents): adopt
more minimal prompting

We've observed that current models don't need as verbose of prompting
guidance, so we're reducing the amount of perscriptive guidance that
deepagents has. This is reflected in the generic system prompt (which is
now blank), and in the tool descriptions (which have been simplified).

- [#708](https://github.com/langchain-ai/deepagentsjs/pull/708)
[`1225a7f`](https://github.com/langchain-ai/deepagentsjs/commit/1225a7ff8673686c2a3c0411636a9511b7d8d0d0)
Thanks [@hntrl](https://github.com/hntrl)! - feat(deepagents): make todo
middleware opt-in

- [#674](https://github.com/langchain-ai/deepagentsjs/pull/674)
[`dd142fe`](https://github.com/langchain-ai/deepagentsjs/commit/dd142fe4fc54c986d5bcf51211d9a839a427e931)
Thanks [@hntrl](https://github.com/hntrl)! - feat(filesystem): allow
`write_file` to create missing files or completely replace existing
files
## deepagents-acp@0.1.21

### Patch Changes

- Updated dependencies
[[`d25097f`](https://github.com/langchain-ai/deepagentsjs/commit/d25097f78d0e66741da34e1d74551f3c19991126),
[`1225a7f`](https://github.com/langchain-ai/deepagentsjs/commit/1225a7ff8673686c2a3c0411636a9511b7d8d0d0),
[`dd142fe`](https://github.com/langchain-ai/deepagentsjs/commit/dd142fe4fc54c986d5bcf51211d9a839a427e931)]:
  - deepagents@1.12.0
## @langchain/node-vfs@1.0.0

### Patch Changes

- [#674](https://github.com/langchain-ai/deepagentsjs/pull/674)
[`dd142fe`](https://github.com/langchain-ai/deepagentsjs/commit/dd142fe4fc54c986d5bcf51211d9a839a427e931)
Thanks [@hntrl](https://github.com/hntrl)! - fix: allow
`VfsBackend.write` to overwrite existing files while continuing to
reject symlinks
## @langchain/daytona@1.0.0


## @langchain/deno@1.0.0


## @langchain/modal@1.0.0


## @langchain/quickjs@1.0.0


## @langchain/sandbox-standard-tests@2.0.0


## @deepagents/evals@0.0.20

### Patch Changes

- Updated dependencies
[[`d25097f`](https://github.com/langchain-ai/deepagentsjs/commit/d25097f78d0e66741da34e1d74551f3c19991126),
[`1225a7f`](https://github.com/langchain-ai/deepagentsjs/commit/1225a7ff8673686c2a3c0411636a9511b7d8d0d0),
[`dd142fe`](https://github.com/langchain-ai/deepagentsjs/commit/dd142fe4fc54c986d5bcf51211d9a839a427e931)]:
  - deepagents@1.12.0

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-07-29 09:47:28 -07:00
..
2026-07-29 09:47:28 -07:00
2026-04-01 17:10:16 -07:00
2026-04-01 17:10:16 -07:00

Parallel research (async subagents)

A small demo where a supervisor deep agent fans out parallel async researcher subagents (each backed by a separate LangGraph graph), streams updates in a Vite + React UI, and polls run status until tasks finish.

Prerequisites

  • Node.js and pnpm
  • From the monorepo root: pnpm install (and pnpm build if deepagents has not been built yet)

Environment

  1. Copy the example env file and fill in keys:

    cp examples/async-subagents/parallel-research/.env.example examples/async-subagents/parallel-research/.env
    
  2. Set ANTHROPIC_API_KEY (used by the models).

  3. Optionally set TAVILY_API_KEY for real web search. Without it, the researcher uses a stub search implementation so the flow still runs.

1. Run the LangGraph dev server

From the repository root:

npx @langchain/langgraph-cli dev -c examples/async-subagents/parallel-research/langgraph.json

This loads langgraph.json, which registers two graphs:

  • supervisor — orchestrates async researcher tasks (this is what the UI talks to).
  • researcher — research subagent graph invoked asynchronously by the supervisor.

Leave this process running.

2. Run the web UI

In a second terminal, from the repository root:

pnpm --filter @examples/async-subagents-parallel-research dev

Or from the UI package directory:

cd examples/async-subagents/parallel-research/ui && pnpm dev

Open the URL Vite prints (usually http://localhost:5173).

Using the demo

  • Normal questions are answered by the supervisor directly.
  • To trigger parallel researchers, use wording that clearly asks for research, e.g. “Research …”, “Investigate …”, “Deep dive into …” (see the supervisor system prompt in supervisor.ts for the full trigger behavior).
  • The UI shows researcher cards for async tasks and can fetch results when a run completes.

Project layout

Path Role
supervisor.ts Supervisor graph (assistantId: "supervisor" in the UI)
researcher.ts Researcher graph (graphId: "researcher")
langgraph.json LangGraph CLI config for both graphs
ui/ Vite + React client using @langchain/langgraph-sdk streaming