just for fun

Back

架构全景#

cc架构全景

一些启发#

设计一个Harness,可以拿人做类比:LLM是大脑,核心状态循环是神经系统,工具系统是四肢,Agent协作自然就是一群人一块干活。这不仅帮助我们形象地理解Agent,而且能够启发我们从人的角度出发思考一些设计而非过度设计。

神经系统—QueryEngine#

维护整个对话的进行

核心循环:query.ts 状态机#

其实就是While True 一个 ReAct Loop,ReAct Loop已经成为Agent范式的一个共识

上下文管理:动态拼装#

Anthropic API是支持缓存的,因此在system prompt里有一个静态分隔符

Token管理:三层降级压缩#

MicroCompact->后台压缩->全量摘要

  • MicroCompact 重点是工具消息
  • 后台压缩:自动触发,用户无感
  • 全量摘要:兜底

长期记忆写入和治理#

  • memory tool 要求Agent自主调用记忆——效果不好,主动意愿不高
  • 专用extract agent 总结整个message,针对性强,意愿高
  • (preview)Auto Dream——想象人类晚上做梦,识别-收集-整合-清理

四肢—工具系统#

Build-in Tools#

  • Bash Tool 绝对核心,安全限制关注重点
  • read/edit 高频工具专有化
  • Grep/Glob 搜索工具选型,返璞归真
  • Agent Tool 分配任务

MCP#

Skills#

Team Work—Agent协作#

已实现:

  • Sub Agent 空白上下文
  • Type Sub Agent 特定Prompt,完成特定任务
  • Fork Agent fork父agent上下文 探索:
  • 编排模式-主Agent只编排不执行,把所用逻辑能力花在思考
  • Swarm/Team-real TeamWork lead_agent可以广播,agent之间可以私信

安全—生产核心#

多层纵深防御,沙箱兜底