English | 中文
系统学习生产级 AI Agent 系统:从 Agent Harness、框架和编排 runtime 源码,到 A2A 联邦、Gateway、工具、评测、安全与面试导向的工程实践。
本仓库以开源源码和官方资料为事实基础,纵向研读具体实现,横向比较共性机制,并将结论沉淀为概念笔记、项目研究、架构对比和面试课程。A2A 研究入口见 DOCS/a2a/,项目景观见 DOCS/a2a/project-landscape.md。
这里也汇总目前正在建设的几个 Agent 相关项目,分别覆盖多 Agent 应用、Coding Agent、业务 Agent 和 A2A 联邦平台方向:
| 项目 | 简介 |
|---|---|
| Competitive Analysis Agent | 基于 LangGraph 的竞品情报协作系统,由多个专职 Agent 完成采集、分析、审查和可溯源报告生成。 |
| Coquo Code | 面向本地单用户的 Coding Agent CLI,在受控 workspace 中执行工具、管理可恢复 Session、Task 和 Team。 |
| Curmerce | 面向兴趣消费的社区内容与多模式交易平台,并规划接入基于商品和社区经验的消费 Agent。 |
| Agent Federation Hub | 正在规划的通用跨领域、跨组织 A2A Agent 联邦平台,探索发现、信任、任务协作和异步互操作。 |
当前 A2A 协议原理主线已覆盖从 Agent 发现到长期 Task 协作、跨 Binding 互操作、安全、扩展和迁移的完整链路,并将协议事实与 Federation Hub 平台推论分开标注。完整目录见 DOCS/a2a/README.md。
| 主题 | 主要内容 | 入口 |
|---|---|---|
| 发现与协商 | Agent Card、Skill、接口选择、协议版本、Extension、JWS 签名与缓存 | agent-card.md |
| 协作对象与任务 | Context、History、Message、Task、Artifact、操作集和任务所有权 | protocol-and-interop.md |
| 交付、可靠性与安全 | Polling、Streaming、Push、断线恢复、幂等、取消、认证授权和 Webhook 安全 | task-delivery-and-recovery.md |
| 互操作与演进 | JSON-RPC / gRPC / HTTP+JSON、媒体交换、线级契约、TCK、自定义 Binding 和旧版迁移 | protocol-bindings.md |
| 联邦平台边界 | 即插即用、LangGraph / MCP 边界、Registry、Gateway、Runtime 与开源项目分层 | plug-and-play-federation.md |
同一项目可以在多个分类中出现,因为控制面、执行面、编排层和基础设施的边界并不互斥。
| 项目 | 定位 | 官方仓库 |
|---|---|---|
| DeerFlow | 字节跳动开源 Agent 框架,基于 LangGraph | bytedance/deer-flow |
| Hermes Agent | Nous Research 的长期个人 Agent 框架 | NousResearch/hermes-agent |
| Claw-Code | Claude Code 的开源替代实现 | ultraworkers/claw-code |
| OpenClaw | 事件驱动的 Claude Code-like Agent | openclaw/openclaw |
| OpenHands | Agent Canvas、App Server、Sandbox、自动化控制面 | OpenHands/OpenHands |
| OpenHands Software Agent SDK | Agent Server、Conversation / Agent loop、工具执行面 | OpenHands/software-agent-sdk |
| learn-claude-code | 从 Agent Loop 到完整 Harness 的教学实现 | shareAI-lab/learn-claude-code |
| 项目 | 定位 | 官方仓库 |
|---|---|---|
| A2A | Agent2Agent 协议规范与 SDK | a2aproject/A2A |
| AAMP | LarkSuite Agent 协作协议 / 实现 | larksuite/aamp |
| Agent Stack | 将 LangGraph、CrewAI 或自定义 Agent 包装为 A2A 服务的 Provider 侧 SDK / Runtime | i-am-bee/agentstack |
| Routa | 按 Agent Card URL 调用外部 Agent 的看板 Workflow Consumer | phodal/routa |
| MultiAgent-Werewolf | 狼人杀多 Agent 消息与回合 Demo | kissie-77/MultiAgent-Werewolf |
| ShrimpCrab | 基于内部 Manifest、Agent Market、Workspace 和 CLI Runner 的多 Agent 平台 | chenlubenren/ShrimpCrab--multi-agent-platform |
| Nacos | Agent 定义、版本、A2A Endpoint、发现与健康生命周期的 Registry / Control Plane | alibaba/nacos |
| agentgateway | 代理 A2A / MCP 流量、策略和协议观测的 Gateway / Data Plane | agentgateway/agentgateway |
| Solace Agent Mesh | 动态发现与无侵入桥接外部 A2A Agent 的事件 Mesh / Proxy | SolaceLabs/solace-agent-mesh |
| Bindu | 通过 SDK 将 Handler 包装为带身份、Skills、支付和生命周期的 A2A 服务 | GetBindu/Bindu |
| AgentKit Samples | 火山 AgentKit SDK / A2A 公开样例 | bytedance/agentkit-samples |
| 项目 | 定位 | 官方仓库 |
|---|---|---|
| LangChain | Agent / LLM 应用组件、Tool、Retriever 与 provider 集成 | langchain-ai/langchain |
| LangGraph | 有状态 Agent 编排 runtime、checkpoint、interrupt 和 durable execution | langchain-ai/langgraph |
| Dify | LLM 应用、RAG、Workflow、Agent 与交付平台 | langgenius/dify |
| Coze Studio | Visual Agent、App、Workflow、Plugin 与知识库平台 | coze-dev/coze-studio |
| LiteLLM | LLM Gateway、模型路由、成本 / token budget 与 guardrails | BerriAI/litellm |
| CozeLoop | Prompt、评测、Trace 与 AgentOps / LLMOps | coze-dev/coze-loop |
| Agent Stack | 同时作为 Agent Runtime 与远程接入平台研究 | i-am-bee/agentstack |
| OpenHands | 同时作为控制面、事件流和生产工作区参考 | OpenHands/OpenHands |
| Nacos | 同时作为服务治理、配置和发现基础设施参考 | alibaba/nacos |
| 资料 | 说明 | 来源 |
|---|---|---|
| Claude Code Complete Guide V2 | Claude Code-like Harness 的第三方学习参考,不作为核心实现项目 | bcefghj/claude-code-complete-guide_v2 |
| Agent 面试资料 | 两版 Agent 面试 PDF、提取稿和来源说明 | 本地第三方资料 |
| Xiaolin AI 面试知识库 | Agent、RAG、Tool Calling 与 LLM 工程问题来源 | xiaolinnote.com |
| JavaGuide AI 知识库 | AI 基础、Agent、RAG 和系统设计问题来源 | JavaGuide AI |
| SWE Agent 评测资料 | SWE-bench 等评测论文、benchmark 机制与 QA | SWE-bench |
DOCS/
├── interview/ ← 面试专项:问题目录、学习路线、口述答案与追问
├── concepts/ ← 概念底座:RAG、MCP 等跨项目机制
├── projects/ ← 纵向源码研读:Harness、框架、平台与 Gateway
├── comparison/ ← 横向专题:Agent Loop、Tool、Sandbox、Multi-Agent 等
├── synthesis/ ← 设计模式、架构分类和最终 FAQ
└── a2a/ ← A2A Protocol、Registry、Gateway、Runtime 与 Federation
| 想看什么 | 去哪里 |
|---|---|
| A2A 项目分层、未选项目和官方案例 | DOCS/a2a/project-landscape.md |
| A2A 协议完整学习目录与 Federation 研究入口 | DOCS/a2a/ |
| Agent 面试联合学习 | DOCS/interview/agent/ |
| SWE Agent 评测论文与 benchmark | DOCS/interview/swe-agent-evaluation/ |
| RAG / MCP 概念底座 | DOCS/concepts/ |
| 某个项目的源码研读 | DOCS/projects/ |
| 跨项目机制对比 | DOCS/comparison/ |
| 通用设计模式与最终 FAQ | DOCS/synthesis/ |
各项目目录和专题 README 会继续列出更细的源码笔记、证据状态和 QA 链接。
学习过程中持续产生的讨论采用“局部 QA → 横向 QA → 最终 FAQ”路径:局部问题附在项目笔记,跨项目问题进入 DOCS/comparison/qa.md,经过源码或官方资料核验后再沉淀到 DOCS/synthesis/faq.md。每条记录尽量标注 draft、to-verify 或 verified,并区分讨论结论和源码事实。
git clone git@github.com:TsingFengIceberg/agent-systems-study.git
cd agent-systems-study
git submodule update --init --recursivegit submodule update --remote --merge
git diff --submodule=log同步后只在用户确认变更内容后提交 submodule 指针;本仓库默认不在 submodule 内修改源码。
git checkout <branch>
git submodule update --recursive