关于 agent-creator
用于创建 AiderDesk Agent 配置的技能,配置可保存为全局或项目级。它收集需求,提交完整配置供确认,再创建配置文件。
主要功能
- 01收集 Agent 用途和行为需求
- 02配置提供商、模型和工具组
- 03支持子 Agent 设置与筛选
- 04设置工具审批策略
- 05创建配置文件和规则文件
适用场景
- 01创建项目级 Agent 配置
- 02设置可委派为子 Agent 的配置
- 03配置工具访问权限和审批方式
MCP 相关
配置可通过 `enabledServers` 指定要启用的 MCP 服务。该项属于按需设置的高级选项。
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ hotovo/ aider-desk --skill agent-creator安装后在 Claude Code 中输入/agent-creator确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
assets/examples/sample-profile.jsonassets/templates/config.json.templatereferences/agent-profile-schema.mdprofile-examples.mdsubagent-guide.mdtool-approval-guide.md详细介绍
Agent 配置文件创建工具
在 ~/.aider-desk/agents/{name}/(全局)或 {project}/.aider-desk/agents/{name}/(项目级)中创建以 config.json 存储的 Agent 配置文件。
提出配置文件前,请阅读所有参考文件以确保准确:
references/agent-profile-schema.md— 完整的属性参考references/subagent-guide.md— 子 Agent 配置、系统提示词、上下文记忆、筛选references/tool-approval-guide.md— 所有工具组、正确的工具键、审批策略references/profile-examples.md— 完整的可用示例
问答流程
提出配置文件前,请收集完整需求。提出有针对性的问题,在内部拟定方案,并仅提交一份最终摘要供用户审批。
步骤 1:目的与行为
询问:“请描述 Agent 的用途以及它应该执行的任务。”
根据回答,在内部拟定:
- 名称(根据用途确定)
- 最大迭代次数(默认
0= 不限;有明确范围的任务使用 250 等有限值,审核/分析等目标明确的任务可使用更低值,如 150) - 工具组(根据用途确定,参见步骤 3)
- 自定义指令(附加到系统提示词中的自由文本指导)
- 系统提示词 — Agent 是否需要完全自定义的系统提示词来替代默认内置提示词?如果用户描述了具体的行为约束、角色或身份,请考虑设置
systemPrompt。 - 子 Agent 配置 — 此配置文件是否应可用作子 Agent?如果是,请收集子 Agent 专用的系统提示词、调用模式、颜色、描述和上下文记忆模式。
步骤 2:提供方与模型
询问:“使用哪个提供方/模型?(格式:provider/model,例如:anthropic/claude-sonnet-5)”
- 按第一个斜杠拆分,获取提供方和模型
- 按原样使用(仅修正明显的拼写错误)
- 如果用户未指定,默认使用
anthropic/claude-sonnet-5(与packages/common/src/agent.ts中的DEFAULT_AGENT_PROFILE/DEFAULT_PROVIDER_MODELS一致)。你可以询问用户偏好的提供方/模型;如果用户未提供,则使用这些默认值。 - 如果用途涉及精确性(低温度)或创造性(高温度),可选询问
temperature和maxTokens
步骤 3:工具组与审批
根据用途,提出要启用的工具组。对每个工具组简要说明理由:
| 工具组标记 | 描述 | 启用时机 |
|---|---|---|
usePowerTools | 文件读取/写入/编辑、glob、grep、bash、semantic_search、fetch | 大多数需要访问文件或系统的 Agent |
useAiderTools | Aider AI 代码生成上下文管理与运行 | 代码生成/重构 Agent |
useTodoTools | 待办列表管理 | 跟踪多步骤工作的 Agent |
useSubagents | 将任务委派给子 Agent | 编排器/管理器 Agent |
useTaskTools | 创建/列出/获取/删除/搜索任务、运行提示词 | 项目管理 Agent |
useMemoryTools | 存储/检索持久化知识 | 大多数 Agent(无状态 Agent 除外) |
useSkillsTools | 激活技能 | 能从专业技能中受益的 Agent |
useExtensionTools | 已安装扩展提供的工具(默认:true) | 大多数 Agent;沙盒/隔离配置文件应禁用 |
对每个已启用的工具组,提出工具审批默认值(always、ask、never)。toolApprovals 中仅包含与默认值 "ask" 不同的工具。
如果启用了 useSubagents,请询问:“此 Agent 应使用所有可用的子 Agent,还是只使用特定的子 Agent?”——如果需要筛选,则设置 enabledSubagentIds(全部使用时省略)。
步骤 4:子 Agent 配置
询问:“其他 Agent 是否可以将此配置用作子 Agent?”
如果是,请收集:
- 子 Agent 系统提示词 — 子 Agent 角色的专用提示词(与主 Agent 的
systemPrompt不同) - 调用模式 — 自动(需要清晰的描述)或按需
- 上下文记忆 — 关闭(默认)、最近消息或完整上下文
- 颜色 — 视觉标识
- 描述 — 自动调用时必填;应包含领域关键词
步骤 5:高级设置(可选)
仅在用户提及以下任一项时询问:
- 温度(0.1-1.0)
- 最大 token 数
- 工具调用的最小间隔时间(速率限制,单位为 ms)
- 要启用的 MCP 服务(
enabledServers) - 规则文件(放置在
~/.aider-desk/agents/{name}/rules/中的 Markdown 文件) - 自动压缩覆盖项(
autoCompactThresholdPercentage、autoCompactThresholdTokens、autoCompactionType) - Bash 工具设置(
allowedPattern/deniedPattern正则表达式)
如果用户未提及,则完全跳过此步骤。
步骤 6:位置
询问:“全局配置(适用于所有项目)还是项目专属配置?(默认:全局)”
步骤 7:检查并确认
提供一份完整摘要,列出所有拟定属性:
- 名称、提供商/模型、温度/最大 token 数(如果已设置)
- 已启用的工具组及其理由
- 工具审批(哪些设为“从不”,哪些设为“始终”;其余默认为“询问”)
- 系统提示词(如果有)
- 自定义说明(如果有)
- 子 Agent 配置(如果已启用)
- 子 Agent 筛选(如适用,列出
enabledSubagentIds) - 规则文件(如果有)
- 位置(全局/项目)
询问:“这是你的 Agent 配置。要创建吗?”
不要逐项请求确认。 只需一次最终批准。
步骤 8:创建
确认后:
- 选择唯一且易读的
id(例如code-reviewer、security-auditor)。无需 UUID——只要唯一,使用与示例类似的易读名称即可。 - 构建完整的
config.json——根据references/profile-examples.md核对结构 - 不要在 config.json 中加入
ruleFiles——系统会从rules/子目录中动态发现规则文件 - 不要加入
isSubagent——它是运行时标志 - 创建目录并写入
config.json - 如果用户请求了规则文件,则在
config.json同级的rules/子目录中将它们创建为.md文件
工具审批策略
键:{group}---{tool}(使用三个连字符作为分隔符)
默认值为“询问”。仅显式设置:
- “从不”:与 Agent 用途完全无关的工具
- “始终”:安全、必要、只读的操作
不要包含应保持默认值(“询问”)的工具。
仅包含 references/tool-approval-guide.md 中存在的工具键。
系统提示词策略
存在两个不同的系统提示词字段:
-
顶层
systemPrompt— 当此配置作为主 Agent运行时,覆盖默认的内置系统提示词。规则文件和customInstructions仍会追加。适用于 Agent 需要完全不同的身份或行为框架的情况。 -
subagent.systemPrompt— 当此配置作为子 Agent运行时使用。它会直接传递给子 Agent 的大模型。如果为空,则回退使用顶层systemPrompt。
何时使用哪个:
- Agent 仅作为主 Agent 工作 → 设置顶层
systemPrompt - Agent 仅作为子 Agent 工作 → 设置
subagent.systemPrompt - Agent 同时承担两种角色 → 两者都设置;可根据上下文采用不同内容
- Agent 不需要自定义提示词 → 两者都留空;使用默认系统提示词
子 Agent 配置
每个 Agent 都可以作为子 Agent。设置 subagent.enabled: true 以允许委派。
上下文记忆模式:
"off"— 每次都使用全新上下文(大多数 Agent 的默认值)"last-message"— 接收上一次运行的最后结果"full-context"— 完整对话历史(用于复杂的迭代分析)
**子 Agent 筛选:**父配置文件中的 enabledSubagentIds?: string[] 控制它可以使用哪些子 Agent。省略则允许使用所有子 Agent。设置为配置文件 id 值的数组即可进行限制。注意:enabledSubagentIds 保存的是配置文件的 id 值(即每个配置文件设置的同一个 id 字段),而不是目录名称——只有在目录名称恰好与配置文件 id 相同时才会匹配。
详细指南请参阅 references/subagent-guide.md。
最简 config.json 结构
{
"id": "my-agent",
"name": "my-agent",
"provider": "anthropic",
"model": "claude-sonnet-5",
"maxIterations": 0,
"minTimeBetweenToolCalls": 0,
"enabledServers": [],
"toolApprovals": {
"power---file_read": "always",
"power---bash": "ask"
},
"toolSettings": {},
"includeContextFiles": false,
"includeRepoMap": false,
"usePowerTools": true,
"useAiderTools": false,
"useTodoTools": true,
"useSubagents": false,
"useTaskTools": false,
"useMemoryTools": true,
"useSkillsTools": true,
"useExtensionTools": true,
"disabledExtensionTools": [],
"customInstructions": "",
"subagent": {
"enabled": true,
"contextMemory": "off",
"systemPrompt": "",
"invocationMode": "on-demand",
"color": "#3368a8",
"description": ""
}
}
关于以上默认值的说明:id 可以是任何唯一且易读的字符串(无需 UUID)。用户未指定提供方/模型时,默认使用 anthropic / claude-sonnet-5。maxIterations: 0 表示不限制迭代次数。includeContextFiles 和 includeRepoMap 的默认值均为 false——以上值为默认值;只有在需要包含上下文文件/仓库映射时才设为 true。子 Agent 的 color 默认值为 #3368a8。
验证清单
写入 config.json 之前:
- 名称唯一
-
id唯一且易读(无需 UUID) - 已填写提供方/模型(按原样使用;未指定时默认使用
anthropic/claude-sonnet-5) - 工具键采用
{group}---{tool}格式,包含三个连字符 - 工具审批值为 "always"、"ask" 或 "never"
-
toolApprovals中仅包含references/tool-approval-guide.md里的工具 - 仅在需要自定义行为时设置
systemPrompt -
subagent.enabled反映此配置文件是否应允许被委派 - 如果
subagent.invocationMode为 "automatic",则description不为空 - 如果
useSubagents为 true 且需要筛选,则设置enabledSubagentIds - 包含
useExtensionTools和disabledExtensionTools(默认值:true / []) -
config.json中不得包含ruleFiles(动态发现) -
config.json中不得包含isSubagent(运行时标记) - 包含所有布尔型工具组标记
- 目录位置符合用户偏好(全局/项目)
资源
references/agent-profile-schema.md— 包含所有属性和类型的完整架构references/subagent-guide.md— 子 Agent 配置、上下文记忆、筛选和系统提示词references/tool-approval-guide.md— 所有工具组及正确的工具键references/profile-examples.md— 完整的可运行示例assets/templates/config.json.template— 模板assets/examples/sample-profile.json— 配置文件示例