Lazy loaded image
技术分享
Skills和SubAgent如何选
字数 560阅读时长 2 分钟
2026-2-2
2026-2-2
type
status
date
slug
summary
tags
category
icon
password
URL
两种都是解决一个问题:我有一个写好的Agent,现在我希望新增一个新的功能,那么这个功能到底怎么塞入当前的Agent系统中?
从文档中的描述,可以理解成Skills就是给主Agent提供更多的能力,比如支持画画,策划之类的。 而SubAgent就是另外启动一个Agent,通过隔离的上下文去完成这些。 SubAgent的一些额外的好处是:
维度
Skills (函数/工具调用)
Sub-Agent (独立节点)
本质
主 Agent 的“手”
一个独立的“职员”
上下文管理
共享主上下文,易污染但信息全
隔离上下文,需显式传参,洁净度高
逻辑复杂度
低:执行确定的输入输出任务
高:包含推理、规划和多步自省
执行模式
串行阻塞(通常)
可异步、并行、甚至是分布式
  1. 上下文隔离:和主Agent的上下文区分开来,不会造成污染
  1. 并行化:不同的sub Agent是可以并行执行的,速度更快 以上是我认为Sub Agent和Skills的最主要的区别,至于什么专门的指令知识,工具限制,我认为Sub Agent能实现,Skills也能实现,不足以作为重要区分点。
那既然都是增强处理新任务的能力,什么是选择Skills,把这个任务丢给主Agent去干,什么时候把这个任务丢给Sub Agent去干呢? 我认为可以去遵照软件工程的“高内聚,低耦合”的原则。
如果这个新的任务和主Agent的任务存在明显的不同或者需要并行执行,那么可以选择另启一个Sub Agent去干,否则建议通过Skills去实现,因为另启一个Agent会带来架构的复杂性与结果的不确定性,此外,上下文隔离是福也是祸,该如何把控主Agent给子Agent传话的时候的准确性呢?
上一篇
分享盈利策略?
下一篇
万物皆可订阅:RSSHUB