Now vibe coding, so learning hammer FE ?
《如何构建你自己的Agent_Harness:从单体框架到可组合Worker架构》
标签:#AI工程 #Agent架构 #系统设计 #开源框架 #Worker模型
总结:
iii创始人Mike_Piccolo提出了一种全新的Agent_Harness构建理念——将传统单体框架拆分为15个独立的可替换Worker,通过统一的
文章要点:
1. 传统框架的痛点:LangChain、LangGraph等将循环、工具、记忆、编排等打包成单体,团队要么全盘接受,要么Fork或Hack,导致长期运行后不得不重写整个Harness
2. iii的核心理念:将15个Harness职责(凭证解析、模型目录、预算追踪、审批门、 durable_turn_loop等)拆分为独立Worker,每个Worker通过
3. 实际生产栈示例:包括turn_orchestrator(11状态FSM)、approval_gate(审批路由)、llm_budget(预算管控)、hook_fanout(钩子发布)、provider_anthropic/openai/kimi(模型提供商)等11个Worker,全部通过同一引擎总线通信
4. 替换的便利性:想换动态模型目录?写一个注册
5. 架构优势:单体框架的"薄vs厚"之争在这里变成配置问题——极简Harness只需4个Worker,企业级Harness安装全部13个+自定义策略引擎,距离只是
6. 可观测性统一:每个Worker自动注入OpenTelemetry追踪,通过
URL:https://iii.dev/blog/how-to-build-your-own-agent-harness/
标签:#AI工程 #Agent架构 #系统设计 #开源框架 #Worker模型
总结:
iii创始人Mike_Piccolo提出了一种全新的Agent_Harness构建理念——将传统单体框架拆分为15个独立的可替换Worker,通过统一的
iii.trigger()原语和WebSocket协议进行通信。这种架构让团队不再需要Fork或绕过现有框架,而是通过"安装/替换Worker"来精确组装符合自身需求的Agent运行时,实现从极简到企业级的平滑伸缩。文章要点:
1. 传统框架的痛点:LangChain、LangGraph等将循环、工具、记忆、编排等打包成单体,团队要么全盘接受,要么Fork或Hack,导致长期运行后不得不重写整个Harness
2. iii的核心理念:将15个Harness职责(凭证解析、模型目录、预算追踪、审批门、 durable_turn_loop等)拆分为独立Worker,每个Worker通过
iii.trigger()触发,可独立版本化、用任意语言编写、随时替换3. 实际生产栈示例:包括turn_orchestrator(11状态FSM)、approval_gate(审批路由)、llm_budget(预算管控)、hook_fanout(钩子发布)、provider_anthropic/openai/kimi(模型提供商)等11个Worker,全部通过同一引擎总线通信
4. 替换的便利性:想换动态模型目录?写一个注册
models::list的新Worker即可;想从Slack审批?写一个监听slash命令并调用approval::resolve的Worker;整个堆栈其他部分完全无感知5. 架构优势:单体框架的"薄vs厚"之争在这里变成配置问题——极简Harness只需4个Worker,企业级Harness安装全部13个+自定义策略引擎,距离只是
config.yaml的条目增减,而非重写6. 可观测性统一:每个Worker自动注入OpenTelemetry追踪,通过
iii.session.id等标签实现跨Worker的完整调用链可视化URL:https://iii.dev/blog/how-to-build-your-own-agent-harness/