犀牛鸟 2026 研究笔记 estelledc.github.io

Claude Code vs 开源框架:多维对比矩阵

一句话定位:本文从 8 个技术维度系统对比 Claude Code 与 LangGraph、CrewAI、tRPC-Agent 的架构选择,揭示商业产品与开源框架在设计哲学上的根本分歧。

调研时间:2026-06-22
依据版本:Claude Code 泄露源码(2026-03-31)+ LangGraph 0.4.x + CrewAI 0.8.x + tRPC-Agent(犀牛鸟赛题)


证据等级汇总

结论 来源
Claude Code 架构细节 [源码] 泄露包精读
LangGraph 状态图模型 [官方] LangGraph 文档 + 源码
CrewAI 角色化设计 [官方] CrewAI 文档
tRPC-Agent 架构 [源码] 犀牛鸟赛题仓库
成本数据 [社区] 多源交叉验证
生产就绪度评估 [社区] 行业分析报告

日常类比

把四个框架想象成四种餐厅经营模式

类比边界:真实系统中这些”餐厅”可以互相学习——tRPC-Agent 可以借鉴 Claude Code 的”流程管理”加入工具管线,LangGraph 可以借鉴 CrewAI 的”角色卡”简化配置。


总览矩阵

维度 Claude Code LangGraph CrewAI tRPC-Agent
语言 TypeScript Python Python Go / Python
代码量 512K+ 行 ~50K 行 ~30K 行 ~5K 行
设计哲学 产品级 Agent OS 确定性状态图 角色化团队 轻量 RPC Agent
模型依赖 Claude 锁定 模型无关 模型无关 模型无关
核心循环 AsyncGenerator while(true) 图遍历 任务委派循环 RPC 调用链
多 Agent 4 层递进 图节点 + 子图 角色分配 无内置
安全 4 层应用级纵深 无内置 无内置 无内置
持久化 内置压缩管线 Postgres/Redis
可扩展 MCP + Skills + Hooks 自定义节点 自定义工具 tRPC 路由
学习曲线 高(产品复杂度) 高(状态图 DSL)
生产就绪 最高(百万用户) 成长中 实验性

维度 1:核心循环(Agent Loop)

Claude Code:AsyncGenerator while(true)

while (true) {
  response = await streamAPI(messages)
  for (block of response) {
    if (block.type === 'tool_use') {
      result = await executeTool(block)  // 7 阶段管线
      messages.push(result)
    }
  }
  if (response.stop_reason === 'end_turn') break
  // 否则继续循环(模型决定是否结束)
}

特点:模型自主决定何时停止。循环内嵌 4 级压缩管线,context 满时自动摘要而非报错。

LangGraph:图遍历

graph = StateGraph(AgentState)
graph.add_node("agent", call_model)
graph.add_node("tools", execute_tools)
graph.add_edge("agent", should_continue)  # 条件边
graph.add_edge("tools", "agent")
app = graph.compile(checkpointer=MemorySaver())

特点:开发者预定义执行图,运行时按图遍历。确定性强但灵活性受限于图结构。

CrewAI:任务委派

crew = Crew(
  agents=[researcher, writer],
  tasks=[research_task, write_task],
  process=Process.sequential  # 或 hierarchical
)
result = crew.kickoff()

特点:最高层抽象,开发者定义角色和任务,框架自动编排。简单但缺乏精细控制。

tRPC-Agent:RPC 调用链

agent := trpc.NewAgent(config)
agent.RegisterTool("search", searchHandler)
result := agent.Run(ctx, prompt)

特点:最轻量,Agent 本质是带工具的 RPC 服务。适合微服务架构集成。

对比分析

特性 Claude Code LangGraph CrewAI tRPC-Agent
循环终止 模型决定 图结构决定 任务完成决定 单次调用
Context 溢出处理 4 级压缩 需自行实现
中间状态可见 thinking + tool calls 节点输出 任务输出 返回值
错误恢复 自动重试 + hooks checkpoint 回滚

维度 2:多 Agent 编排

Claude Code:4 层递进

Layer 1: Subagent — 主 agent 派发只读子任务
Layer 2: Coordinator — 主从模式,主 agent 分配+汇总
Layer 3: Swarm — 对等协作,agent 间通过 memdir 共享状态
Layer 4: Dynamic Workflow — 确定性 JS 脚本编排 1000 agent

LangGraph:子图嵌套

# 主图中嵌套子图
subgraph = create_research_graph()
main_graph.add_node("research", subgraph)
main_graph.add_node("write", write_node)
main_graph.add_edge("research", "write")

CrewAI:层级委派

crew = Crew(
  agents=[manager, researcher, writer],
  process=Process.hierarchical,
  manager_agent=manager
)

对比分析

特性 Claude Code LangGraph CrewAI tRPC-Agent
最大并发 1000 agent 无硬限制 无硬限制 N/A
编排位置 外置 JS(零 token) 图定义(零 token) model context(消耗 token) N/A
动态编排 AI 生成脚本 需预定义图 需预定义角色 N/A
通信方式 memdir 文件共享 共享 State 任务输出传递 N/A
可恢复 Resume 机制 Checkpoint N/A

关键差异:Claude Code 的 Dynamic Workflow 是唯一支持”AI 自动生成编排逻辑”的方案。LangGraph 的图必须开发者预定义;CrewAI 的角色必须预配置。这是”AI 写代码调度 AI”vs”人写代码调度 AI”的范式差异。


维度 3:安全与权限

Claude Code:4 层应用级纵深

Layer 1: 文件级 — allowedPaths / deniedPaths
Layer 2: 命令级 — allowedCommands / deniedCommands  
Layer 3: 网络级 — allowedDomains / deniedDomains
Layer 4: 操作级 — 8 步权限检查流程

3 种权限模式:default(每次询问)、acceptEdits(自动接受文件编辑)、fullAuto(全自动)。

LangGraph:无内置安全

安全完全由开发者在节点函数中自行实现。框架不提供权限抽象。

CrewAI:无内置安全

同上,安全是开发者责任。

tRPC-Agent:无内置安全

依赖 tRPC 中间件做基本鉴权,无 Agent 级安全抽象。

对比分析

特性 Claude Code LangGraph CrewAI tRPC-Agent
权限模型 声明式 4 层
操作拦截 PreToolUse hooks 中间件
沙盒 无(应用层控制)
审计日志 内置遥测 LangSmith(付费)
Prompt 注入防护 系统规则 + 安全监控

关键洞察:Claude Code 是唯一将安全作为一等公民的 Agent 系统。开源框架普遍将安全视为”用户责任”,这在生产环境中是重大风险。


维度 4:上下文管理

Claude Code:4 级压缩管线

snip(工具结果截断)→ microcompact(单消息摘要)
  → collapse(多消息合并)→ autocompact(全局摘要)

触发条件:context 使用率达 80% 时启动,保留最近 N 轮 + 关键信息摘要。

LangGraph:Checkpoint + 手动管理

checkpointer = MemorySaver()  # 或 PostgresSaver
# 开发者需自行决定何时截断/摘要

CrewAI:无内置管理

context 溢出时直接报错。开发者需自行处理。

对比分析

特性 Claude Code LangGraph CrewAI tRPC-Agent
自动压缩 4 级管线
持久化 内置 Postgres/Redis
Cache 优化 静态/动态分离 + global scope
溢出处理 自动摘要继续 checkpoint 回滚 报错 报错
长期记忆 MEMORY.md 需自建

维度 5:工具系统

Claude Code:7 阶段管线

partition → permissions → PreToolUse hooks 
  → execute → PostToolUse hooks → budget → writeback

18+ 内置工具,支持 MCP 动态发现、ToolSearch 按需加载。

LangGraph:自定义函数

@tool
def search(query: str) -> str:
    """Search the web."""
    return results

工具就是 Python 函数,无管线、无权限、无生命周期。

CrewAI:Tool 类

class SearchTool(BaseTool):
    name = "search"
    description = "Search the web"
    def _run(self, query: str) -> str:
        return results

比 LangGraph 多了类型约束,但同样无管线。

对比分析

特性 Claude Code LangGraph CrewAI tRPC-Agent
内置工具数 18+ 0 0 0
工具发现 MCP 动态 + ToolSearch 静态注册 静态注册 静态注册
执行管线 7 阶段
生命周期钩子 Pre/Post hooks
并行执行 自动(无依赖时) 需显式
权限控制 8 步检查

维度 6:可观测性

特性 Claude Code LangGraph CrewAI tRPC-Agent
内置追踪 遥测 + thinking 可见 LangSmith 集成
调试方式 hooks 拦截 + verbose 模式 节点级断点 日志 日志
成本追踪 token 计数 + budget LangSmith
生产监控 内置 LangSmith Cloud

LangGraph 的优势:LangSmith 提供了最完整的可观测性方案(trace、replay、评估),这是 Claude Code 相对薄弱的领域——Claude Code 的可观测性主要面向终端用户而非平台运维。


维度 7:开发者体验

特性 Claude Code LangGraph CrewAI tRPC-Agent
上手时间 分钟(CLI 即用) 2-3 天 几小时 几小时
定制深度 高(Skills/Hooks/MCP) 最高(任意图结构)
文档质量
社区规模 大(商业用户) 大(开源) 大(25K★)
调试难度 中(黑盒模型决策) 低(确定性图) 高(隐式编排)

维度 8:成本模型

特性 Claude Code LangGraph CrewAI tRPC-Agent
计费方式 API token 用量 自托管免费 / LangSmith 付费 自托管免费 自托管免费
每次交互成本 $0.05-$5.00 视复杂度 $0.01-$0.05 $0.03-$0.08 $0.01-$0.03
成本优化手段 prompt cache + effort 分级 + 编排外置 无内置 无内置 无内置
多 agent 成本 线性增长 每 agent 独立计费 取决于模型选择 3-5x 单 agent N/A
可预测性 低 模型决定轮次 高 图结构确定

关键洞察:Claude Code 的成本最高但优化手段最多。prompt cache 可节省 90% 的 system prompt 重复计费;effort 分级让简单任务用低成本模式;编排外置让调度逻辑零 token 成本。但子 agent 数量不可控时,总成本仍可能爆炸。


设计哲学对比

哲学 Claude Code LangGraph CrewAI tRPC-Agent
核心信念 “AI 足够聪明,给它工具和规则就行” “工作流必须确定性可控” “AI 像人类团队一样协作” “Agent 是带工具的 RPC 服务”
控制方式 声明式约束 + 模型自主 命令式图定义 声明式角色 + 隐式编排 命令式调用
复杂度管理 内置于产品 用户无感 暴露给开发者 隐藏于框架 最小化
扩展方向 垂直深入 单一模型极致优化 水平扩展 任意模型任意图 水平扩展 任意角色组合 水平扩展 微服务集成

综合评估

各框架最佳适用场景

场景 最佳选择 原因
个人开发者日常编码 Claude Code 零配置即用,模型能力最强
企业级生产工作流 LangGraph 确定性、可观测、可审计
快速原型多 agent 系统 CrewAI 上手最快,角色定义直观
微服务架构集成 tRPC-Agent 最轻量,RPC 原生
大规模代码审计/迁移 Claude Code Workflow 1000 agent 并行,AI 自动编排
需要模型无关的系统 LangGraph 唯一成熟的模型无关方案
研究/实验性项目 CrewAI 或 AutoGen 灵活度高,社区活跃

对犀牛鸟项目的具体建议

基于以上对比,tRPC-Agent 项目可以从 Claude Code 借鉴的核心设计:

  1. 工具管线化:不要让工具执行是简单的函数调用,加入权限检查和生命周期钩子
  2. 上下文压缩:长对话场景必须有自动压缩策略,否则 context 溢出就是硬墙
  3. 安全分层:在框架层提供声明式权限配置,不要把安全完全推给用户
  4. 编排外置:如果支持多 agent,编排逻辑应该在 model context 之外

同时需要保持 tRPC-Agent 自身的优势:

  1. 模型无关:这是对抗 vendor lock-in 的核心竞争力
  2. 轻量级:5K 行代码的简洁性是学习和贡献的低门槛
  3. RPC 原生:微服务集成能力是 Claude Code 不具备的

下一步