ArrayKit

子智能体构建器

定义一个子智能体——触发条件、工具和模型——然后把文件带走。

子智能体构建器

定义一个子智能体——触发条件、工具和模型——然后把文件带走。

智能体提示词写着你们团队怎么评审、怎么开发。文件在浏览器里生成,不会上传。

限制它能执行的范围

关于 子代理构建器

子智能体是一个独立的上下文,有自己的说明、自己的工具,常常还有自己的模型——它有用,恰恰因为它读到的东西不会涌进主对话。有两个字段决定这份隔离值不值得。描述促成工作被委派出去,而且要和你定义过的所有其他智能体竞争,所以含混的描述要么从不触发,要么不停触发。工具列表则是让一个窄用途的智能体保持窄用途最便宜的办法:只能读和搜的智能体,不会跑去改文件。这个构建器写出文件,并把两者都查一遍——包括那个最容易被忽略的组合:能写却不能读。

功能特性

  • 检查描述里有没有促成委派的语句
  • 工具从真实列表中勾选,而不是凭记忆输入
  • 带命名空间的 MCP 工具与内置工具一并接受
  • 智能体能写文件却不能读时发出警告
  • 按"什么时候值得"来解释模型的选择
  • 项目范围或个人范围,并给出对应路径
  • 继承模型时不写出该字段
  • 下载为可直接使用的 .md 文件

如何使用 子代理构建器

  1. 给智能体命名,并写清何时该把工作交给它
  2. 只勾选它真正需要的工具
  3. 选一个模型,或让它继承会话的
  4. 写好系统提示词,下载文件

示例

输入

tools: [Read, Grep, Glob]

输出

description: Checks a database migration for problems that only show up in production. Use proactively whenever a migration file is added.

"在……之后主动使用",才让一个智能体不必被点名就动起来。

常见错误与故障排除

  • 从来没有工作被委派给这个智能体。 — 描述必须说清何时,而不只是做什么。加上"当……时使用"或"在……之后主动使用"通常就够了。
  • 两个智能体老是被弄混。 — 它们的描述重叠了。让每一条点明一个不同的情境,而不是一个不同的主题。
  • 某个工具名被标为未知。 — 工具名区分大小写且首字母大写:是 Read,不是 read。MCP 工具用 mcp__服务器__工具 的写法,会按原样接受。
  • 智能体改了我没料到的东西。 — 给它更窄的工具列表。没有 Write 和 Edit 的智能体,无论提示词怎么写都改不了任何东西。

常见问题

什么时候用子智能体比直接做更好?
当工作是"读很多、产出很少"时:翻代码库、检查大量文件、做调研。它读到的一切都留在它自己的上下文里。这也是让它以比主会话更窄的工具集运行的办法。
子智能体该用哪个模型?
继承是个不错的默认。以核对为主、判断较少的机械性工作,用更快更便宜的模型划算;需要判断力的工作则用更强的。取舍就写在每个选项旁边。
工具是不是总该收窄?
收窄成本低且可逆,是让专注的智能体保持专注最可靠的办法——比在提示词里请求要可靠得多。留空则继承一切,这对通用型智能体没问题。
项目范围还是个人范围?
项目范围会把智能体随仓库一起管理,团队每个人拿到的都一样。个人范围则跨项目跟着你走。路径会随选择更新。
这和技能有什么不同?
技能是往当前上下文里加说明。子智能体是在别处运行,带着自己的上下文和工具,然后汇报回来。想改变某件事怎么做,用技能;想把这件事的过程移出你的对话,用子智能体。

相关工具

更多AI 与智能体工具

查看全部AI 与智能体工具 · 全部工具