在很多 AI 项目里,最常见的一种“技术债”是这样的:
一开始只是一个 Prompt,
后来多加了几行规则,
再后来塞进工具调用、条件分支、异常处理,
最终变成一段谁也不敢改的“超级 Prompt”。
wshobson/agents 这个项目,关注的正是这个问题本身:
当 AI 不再只是聊天,而是参与真实任务时,我们应该如何“工程化”它。
一、这个项目的核心目标是什么?
一句话概括:
用软件工程的方式,定义、组织和组合 AI Agent,而不是堆 Prompt。
它并不试图:
- 提供一个开箱即用的 AI 产品
- 展示某个模型有多强
而是解决一个更底层的问题:
Agent 应该如何被“写成代码”,而不是“写成文字”。
二、为什么 Prompt 在工程里不够用?
在原型阶段,Prompt 很好用;
但在工程阶段,它有几个致命问题:
1️ 不可维护
- 规则越多,Prompt 越长
- 改一处,很可能影响整体行为
- 没有清晰的“责任边界”
2️ 不可复用
- 一个 Prompt 绑定一个任务
- 很难抽出“分析能力”“校验能力”单独复用
3️ 不可协作
- 所有任务都交给同一个模型
- 推理、执行、校验混在一起
agents 这个项目的立场很明确:
这些都不是模型问题,而是结构问题。
三、Agent 在这个项目里意味着什么?
在 wshobson/agents 的设计中:
Agent ≠ 一段 Prompt
Agent = 角色 + 职责 + 行为约束
一个 Agent 通常具备:
- 明确的角色定位(只做某一类事)
- 稳定的输入 / 输出预期
- 固定的工作方式,而不是“随便发挥”
这和后端里的概念非常像:
| 后端系统 | AI 系统 |
|---|---|
| Service | Agent |
| Controller 职责 | Agent 角色 |
| API 输入输出 | Agent I/O |
| 调用链 | Agent Pipeline |
四、多 Agent,而不是“万能 AI”
这个项目最重要的工程思想之一是:
不要试图用一个 Agent 做所有事。
而是拆成多个职责单一的 Agent,例如:
- 分析 Agent:只负责理解问题、拆解任务
- 执行 Agent:只负责具体生成或操作
- 校验 Agent:只负责检查、纠错、约束输出
在工程上,这带来几个明显好处:
更稳定
每个 Agent 的行为范围是可控的。
更容易调试
你能清楚地知道:
是哪一步出了问题,而不是“模型今天状态不好”。
更容易扩展
新增需求时,往往是:
- 加一个 Agent
- 或替换某一个 Agent
而不是重写整个 Prompt。
五、这不是 Demo,而是“结构示范”
wshobson/agents 的代码本身并不复杂,
但它的价值并不在“实现技巧”,而在结构选择:
- Agent 是一等公民
- 协作关系是显式的
- 行为是可以被组合的
这让它更像是:
一个 Agent 系统的最小工程骨架(Minimum Viable Architecture)
而不是教学用的玩具示例。
六、工程视角下的评价
从工程角度看,我的判断是:
这是一个“代码不复杂,但方向非常正确”的项目。
它不解决所有问题,但至少明确了一件事:
当 AI 进入工程体系时,它必须像软件模块一样被设计,而不是靠灵感堆砌。
如果说 Prompt 是“脚本时代”,
那这种 Agent 结构,已经明显是在往“系统时代”走。
结语
wshobson/agents 并不会直接提升你的模型能力,
但它会极大提升你构建 AI 系统的上限。
对于真正想把 AI 当成工程组件的人来说,
这类项目,值得反复研究。
Github:https://github.com/wshobson/agents
油管:https://youtu.be/GDcv83yuFI0