一篇文章搞明白各种 AI 技术(Agent、SKILLS、MCP、SubAgent、AgentTeam)
SubAgent
以开发一个完整的拥有前端后端数据库的一个 APP 为例
传统的问答模型:
在传统的问答模型中,跟 Agent 说要开发一个接口,并且前端需要联通,在此时,Agent 会去开发后端接口,然后根据设计图开发前端,然后进行联调,这个过程中,Agent 在开发后端接口时,会产生思考,上下文等,在开发前端接口时,也会产生思考上下文,最后会导致整个窗口的上下文很杂,既有前端的信息,又有后端的信息,同时上下文内容也会很多
SubAgent:
使用 SubAgent,相当于有一个主 Agent,当我跟 Agent 说去开发一个接口,主 Agent 会分配任务,子 Agent 1 去开发后端,然后返回接口信息;然后 主 Agent 拿到了 子 Agent 1 返回的信息,通知 子 Agent 2 根据接口信息去开发前端,前端返回信息;然后 主 Agent 拿到了 子 Agent2 返回的信息,再去通知 子 Agent 3 去测试接口,最终 子 Agent 3 返回信息,主 Agent 返回结果

在这个过程中,有几个好处:
各个 Agent 各司其职,上下文各自独立,开发能力更强
主 Agent 只负责整理各个 Agent 的返回内容,不会被污染上下文,更加节省 Token
各个 Agent 上下文独立,不会被互相污染
Agent Team
还是以开发一个完整的拥有前端后端数据库的一个 APP 为例
传统的问答模型:
在传统的问答模型中,跟 Agent 说要开发一个接口,并且前端需要联通,在此时,Agent 会去开发后端接口,然后根据设计图开发前端,然后进行联调,这个过程中,Agent 在开发后端接口时,会产生思考,上下文等,在开发前端接口时,也会产生思考上下文,最后会导致整个窗口的上下文很杂,既有前端的信息,又有后端的信息,同时上下文内容也会很多
Agent Team:
使用 Agent Team,相当于有一个主 Agent,他是团队领袖,他会让子 Agent 1 去开发后端;让 子 Agent 2 去开发前端;期间 子 Agent 1 和 子 Agent 2 之间可以互相通信,更像是公司的开发架构

Agent Team 和 SubAgent 的区别

Subagents 只向主代理报告结果,彼此不交谈。在 agent teams 中,队友共享任务列表、认领工作并直接相互通信。