LangGraph发布本地优先的Deep Agent运行时,核心是把多Agent协作从"同一进程"拆成"独立进程+协议通信"。
核心架构:Supervisor + 子Agent
定义Agent和子Agent,在langgraph.json注册:
// agents.ts
export const researcher = createAgent({
model: "anthropic:claude-sonnet-4-6",
instructions: "Perform deep research on the given topic.",
tools: [searchWeb, readUrl],
});
export const agent = createDeepAgent({
model: "anthropic:claude-opus-4-6",
subagents: [{
name: "researcher",
description: "Performs deep research on a topic.",
graphId: "researcher",
}],
});
// langgraph.json
{
"dependencies": ["."],
"graphs": {
"researcher": "./agents.ts:researcher",
"agent": "./agents.ts:agent"
}
}
Supervisor通过graphId连接子Agent,子Agent运行在独立进程,有自己的状态,Supervisor只负责委托和结果检查。
自托管:任意位置,按URL连接
如果想完全控制子Agent运行环境,可以自托管。子Agent只需实现Agent Protocol端点,Supervisor通过URL而非graphId连接:
export const agent = createDeepAgent({
model: "anthropic:claude-opus-4-6",
subagents: [{
name: "researcher",
description: "Performs deep research on a topic.",
url: "http://localhost:2024", // 自托管地址
}],
});
自托管服务实现Agent Protocol端点(创建thread、启动run、轮询状态、取消任务),可跑在任何地方:Docker容器、VM、Kubernetes集群。
官方提供Docker Compose模板:Hono服务器 + Postgres状态存储,开箱即用作为起点。