Appearance
Kiro CLI Subagents 是可独立执行任务的专用 agent。它们拥有自己的上下文、工具权限和执行过程,适合并行分析、代码审查、测试修复等复杂任务。Kiro 还支持 subagent 监控、任务依赖图和细粒度权限配置。
Kiro CLI Subagents:并行执行复杂任务的专用 Agent
Kiro CLI subagents 用来把复杂任务拆给多个专用 agent 执行。每个 subagent 都有自己的 context、tool access 和决策过程,完成后把结果返回给 main agent。
这类能力适合多步骤任务:例如一个 agent 分析依赖,一个 agent 审查安全问题,一个 agent 跑测试并定位失败。相比单一对话上下文,subagents 能减少干扰,也能并行推进。
核心能力
Kiro CLI subagents 支持:
- Autonomous execution:基于 agent 配置独立执行任务。
- Live progress tracking:实时查看工作进度。
- Dedicated execution monitor:查看 tool calls、输出和状态。
- Core tool access:读取文件、写入文件、执行命令、使用 MCP tools。
- Parallel execution:多个 subagents 同时运行。
- Sequential execution:通过 task graph 表达依赖顺序。
- Finer permission control:为每个 subagent 设置工具和信任范围。
- Result aggregation:完成后自动把结果返回 main agent。
默认 subagent 和自定义 subagent
Kiro 内置 default subagent,可处理通用任务。没有指定 custom agent 时,会使用默认 subagent。
如果你已经定义了专用 agent,也可以按名称调用:
text
Use the backend agent to refactor the payment module自定义 subagent 会继承对应 agent configuration 中的 tools 和 settings。
工作流程
Subagent 通常按这个流程运行:
- Task assignment:你描述任务,Kiro 判断是否适合使用 subagent。
- Subagent initialization:基于 agent 配置创建独立上下文和工具权限。
- Autonomous execution:subagent 独立推进,必要时请求权限确认。
- Progress updates:主对话收到实时进度。
- Result return:完成后返回结果。
工具可用性
Subagents 在独立 runtime 中运行,并不是所有普通 chat tools 都可用。
可用工具:
readwriteshellcode- MCP tools
暂不可用工具:
web_searchweb_fetchintrospectthinkingtodo_listuse_awsgrepglob
设计任务时要考虑这些限制。例如需要 web research 的任务,不适合直接交给当前 subagent runtime。
限制可用 agents
可以通过 availableAgents 控制哪些 agents 能作为 subagents 启动:
json
{
"toolsSettings": {
"subagent": {
"availableAgents": ["reviewer", "tester", "docs-*"]
}
}
}这里允许 reviewer、tester 和匹配 docs-* 的 agents。
信任特定 agents
通过 trustedAgents 可以让特定 subagents 不再每次请求权限:
json
{
"name": "orchestrator",
"description": "Agent that coordinates multiple specialized subagents",
"tools": ["fs_read", "subagent"],
"toolsSettings": {
"subagent": {
"trustedAgents": ["reviewer", "tester", "analyzer"]
}
}
}更安全的做法是只信任低风险 agent,例如 reviewer 和 analyzer;会执行 shell 或部署动作的 agent 应保留审批。
Subagent 执行监控
按 Ctrl + G 可以打开 subagent monitor。它会显示每个 subagent 的当前状态、tool calls 和输出。
在 monitor 中:
Ctrl + D/Ctrl + U:在 subagents 间移动。q:返回主 chat。
并行运行多个 subagents 时,这个监控面板很重要,可以及时发现某个 agent 卡住或执行了不合适的动作。
任务依赖图
Kiro 支持把复杂任务拆成 DAG。独立任务并行运行,有依赖的任务按顺序执行。
例如重构流程:
text
1. Analyze dependencies
2. Refactor modules
3. Run and fix tests第 2 步等待第 1 步完成,第 3 步等待第 2 步完成。没有依赖的任务可以并行。
Per-subagent 权限控制
可以为单个 subagent 限制工具和审批要求:
json
{
"toolsSettings": {
"subagent": {
"availableAgents": ["reviewer", "deployer"],
"trustedAgents": ["reviewer"],
"agentPermissions": {
"deployer": {
"allowedTools": ["read", "shell"],
"requireApproval": ["shell"]
}
}
}
}
}这样 deployer 只能使用 read 和 shell,并且每次 shell 都要审批。
常见问题
Q: Kiro CLI subagents 适合什么任务?
A: 适合复杂、多步骤、可拆分的任务,例如并行审查、重构前分析、测试修复和结果汇总。
Q: Subagent 能用所有工具吗?
A: 不能。当前 subagent runtime 支持 read、write、shell、code 和 MCP tools,但不支持 web_search、web_fetch、grep、glob 等部分工具。
Q: 怎么限制 subagent 权限?
A: 用 availableAgents、trustedAgents 和 agentPermissions 限制可启动 agent、信任范围和具体工具权限。