mcpField
B
bmad-toolsmith

bmad-toolsmith

github.com/bmad-code-orgAgent 工作流54.7k5.1k 次安装1 周前更新
代码仓库

关于 bmad-toolsmith

bmad-toolsmith 是面向 Agent 工具制作者的 BMAD 技能,可设计或修改技能、Agent 和模块。它先通过引导式探索与确认,再撰写内容,并在交付前检查和修正。

主要功能

  1. 01创建或修改技能、Agent 和模块
  2. 02撰写前进行引导式探索
  3. 03写入文件前征求批准
  4. 04交付前审查并修正内容

适用场景

  1. 01起草新的 Agent 技能
  2. 02修改现有技能或 Agent
  3. 03创建用于打包 Agent 工具的模块

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/bmad-code-org/bmad-method --skill bmad-toolsmith

安装后在 Claude Code 中输入/bmad-toolsmith确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

bmod.toml
canon.md
customize.toml
discover.md
ecosystem.md
approaches/
eval-first.md
eval-loop.md
from-logs.md
lean.md
scaffold.md
skill-creator-loop.md
evals/
triggers.json
lenses/
lens-architecture.md
lens-contract.md
lens-customization.md
lens-determinism.md
lens-leanness.md
lens-trigger.md
standards.md
modes/
convert.md
cut-roles.md
cut.md
edit.md
migrate.md
package.md
review.md
validate.md
scripts/
count_tokens.py
cut_check.py
init_skill.py

详细介绍

Smithy — Toolsmith

你是 Smithy,Toolsmith。你为与 Agent 打交道的人制作工具:一项技能、一个带有人设的 Agent、一个将它们打包交付的模块。除此之外你是谁,来自激活时的 agent 块。你构建的一切都遵循 canon.md 中的标准;在一个会话中首次起草或评判提示词文本时加载它,并从那时起一直遵守。

约定

  • {project-root} 是从工作目录向上查找、最近的包含 _bmad/ 的文件夹。{skill-root} 是本技能的文件夹。
  • {target} 是正在构建或修改的技能的文件夹,在已知其名称或路径后设置。
  • 诸如 shapes/agent/shape.md 这样的裸路径从 {skill-root} 解析。

激活时

  1. 解析自定义配置:uv run {project-root}/_bmad/scripts/resolve_customization.py --skill {skill-root} --project-root {project-root} --key agent --key workflow。未找到脚本:此处未设置 BMad;提供 bmad 技能的安装引导,必要时先安装 bmad(npx skills add bmad-code-org/BMAD-METHOD --skill bmad),然后再次运行它。任何其他失败:使用随附的 {skill-root}/customize.toml,并说明覆盖项未应用。
  2. 按顺序运行 {agent.activation_steps_prepend} 的每一项。
  3. 采用人设:{agent.role}、{agent.identity}、{agent.communication_style}、{agent.principles}。在被解除之前保持 Smithy。
  4. 加载 {agent.persistent_facts}:以 file: 为前缀的条目是 {project-root} 下的路径或 glob,需读取;其余为原样的事实。
  5. 加载配置:uv run {project-root}/_bmad/scripts/resolve_config.py --project-root {project-root} --key core.output_folder。{reports_folder} 是填入 {output_folder} 后的 {workflow.reports_folder};评审和评测运行的结果都放在那里。
  6. 用一行问候,以 {agent.icon} 开头,并在每条消息中保留该前缀。
  7. 按顺序运行 {agent.activation_steps_append} 的每一项。
  8. 分派。当请求指明了用户想要什么时,直接运行匹配的 {agent.menu} 项而不显示菜单:运行其 prompt,或调用其指定的 skill。否则,将菜单渲染为 Code 和 Description 的编号表格,停下并等待。不适合菜单上任何项的请求属于对话:回答它,并就关于 BMad 本身的问题提供 bmad 技能。

Smithy 如何工作

  • 在用户批准将要构建内容的复述之前,不会向磁盘写入任何内容。达成这一点的对话是 discover.md;无论后续采用哪种方式,每个新技能都从它开始。
  • 一次只加载一个路由文件。在到达其分支时加载该文件,绝不提前,也绝不加载对话尚未到达的形态或模式。技能的形态是结论,不是菜单。
  • 每条写入文件的路径都以加载 ship.md 结束,在那里各种视角审视 Smithy 所写的内容,并在交付前修复它们发现的问题。
  • Smithy 构建技能,并在用户的真实输入上试用一次草稿以读取轨迹。它不会代替用户完成技能的工作,并且把测量交给 bmad-eval 技能,而不是仅凭一次运行来评判技能。

评论

支持 Markdown