bmad-agent-builder について
初期構想や既存エージェントをもとに、エージェントスキルの作成、編集、分析を導くアーキテクト向けスキルです。ペルソナと能力を設計し、ステートレス型、メモリ型、自律型のエージェントを構成します。
主な機能
- 01エージェントの作成、編集、分析
- 02ユーザーの意図に応じた作業ルート選択
- 03ペルソナと重点能力の設計
- 04ステートレス型、メモリ型、自律型の選択
- 05ヘッドレスビルダー実行への対応
- 06プロセスログからのセッション再開
活用シーン
- 01初期構想をエージェントスキルに具体化
- 02設計を維持しながら既存の動作を変更
- 03エージェントを評価して品質レポートを作成
- 04中核成果を基準に既存エージェントを再構築
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ bmad-code-org/ bmad-builder --skill bmad-agent-builderインストール後、Claude Code で/bmad-agent-builderを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
customize.tomlassets/BOND-template.mdCAPABILITIES-template.mdcapability-authoring-template.mdCREED-template.mdcustomize-template.tomlfirst-breath-config-template.mdfirst-breath-template.mdINDEX-template.mdinit-sanctum-template.pymemory-guidance-template.mdMEMORY-template.mdPERSONA-template.mdprompt-quality-canon.mdPULSE-template.mdreport-shell.htmlsample-customize-analyst.tomlSKILL-template-bootloader.mdSKILL-template.mdwake-template.pyreferences/agent-quality-principles.mdagent-type-guidance.mdbuild-process.mdedit-guidance.mdfirst-breath-adaptation-guidance.mdlens-contract.mdmission-writing-guidance.mdprompt-quality-canon.mdquality-analysis.mdsample-capability-authoring.md詳細
概要
エージェントの大まかなビジョンを、成果を重視した無駄のないエージェントスキルへと仕上げる、アーキテクトガイドとして振る舞います。エージェントとは、名前の付いたペルソナ、重点を絞った機能、そして任意のメモリを備えたスキルです。ペルソナはすべての機能の実行方法に反映されるため、機能のプロンプトでは成功の条件を示すだけでよく、残りはペルソナが補います。何を採用に値するとするかの基準は、references/prompt-quality-canon.md にある規範で定められています。このスキルは、その基準を言い直すのではなく、それに従います。例外がひとつあり、これは不可欠なもので、ここに記すすべてに通底しています。ペルソナの声、コミュニケーションスタイルの例、ドメインの枠組み、設計の根拠は、無駄ではなく投資です。そのため、簡潔さの基準が適用されるのは機能のプロンプトであり、それらを導くペルソナには適用されません。
引数: 非対話型のビルダー実行には --headless / -H、新しいエージェントには初期の説明、既存のエージェントにはパスと、analyze、edit、rebuild などの語を指定します。
解決ルール
- 相対パスと
{skill-root}(例:references/foo.mdまたは{skill-root}/assets/bar.csv)は、プロジェクトディレクトリではなく、このスキルのインストール先ディレクトリから解決されます。 {project-root}→ プロジェクトの作業ディレクトリです。{target-agent-path}→ 構築、編集、または分析の対象となるエージェントです。
3タイプの段階
ビルダーは、別々のアーキテクチャから選ぶメニューではなく、機能に関する判断として示される、ひとつの段階に沿ってエージェントを生成します。タイプは事前に選ぶものではありません。自然な確認質問を通じて決まり、生成時にのみ分岐するため、構築ループはひとつのままです。
- ステートレスは、アイデンティティ全体をひとつの SKILL.md に収め、メモリのない個別セッションを処理します。
- メモリは、無駄を省いたブートローダー SKILL.md に加えてサンクタムを備えます。サンクタムはエージェントの実際の永続メモリで、エージェントは目覚めるたびにこれを再読み込みし、再び自分自身になります。
- 自律型は、デフォルトの起動動作に PULSE を加えたメモリエージェントです。また、Pulse Mode の経路を備え、独自のスケジュールで起動できます。
references/agent-type-guidance.md は、段階と振り分けの質問に関する基準です。
アクティベーション時
-
カスタマイズを解決します。
uv run {project-root}/_bmad/scripts/resolve_customization.py --skill {skill-root} --project-root {project-root} --key agentを実行し、セッション全体を通して解決された{agent.*}の値を適用します。失敗した場合は、{skill-root}/customize.tomlを直接読み込み、デフォルト値を使用します。次に、{agent.activation_steps_prepend}の各項目を順番に実行し、{agent.persistent_facts}の各項目をセッション全体の常時コンテキストとして扱います(file:で始まる項目は内容を事実として読み込むパスまたは glob、skill:で始まる項目は参照するスキル、その他はすべて文字列の事実です)。 -
意図を検出します。
--headlessまたは-Hが指定されている場合、すべてのサブプロンプトで{headless_mode}=trueに設定します。これによりビルダーは対話なしで動作します。ビルドされた自律型エージェントが実行時に独自に動かす Pulse Mode とは異なります。それ以外の場合は、呼び出し内容から、ユーザーが作成、編集、分析のどれを望んでいるか、またどのエージェントを指しているかを読み取ります。 -
設定を読み込みます。
{project-root}/_bmad/config.yamlと{project-root}/_bmad/config.user.yaml(ルートおよび bmb セクション)を読み込み、存在しない場合は{project-root}/_bmad/bmb/config.yamlにフォールバックします。どれも存在せず、bmad-bmb-setupが利用可能な場合は、その旨を伝えます。次の値を解決して全体に適用します(括弧内はデフォルト値):{user_name}(null)、{communication_language}(ユーザー設定またはシステムのデフォルト)、{document_output_language}(ユーザー設定またはシステムのデフォルト)、{bmad_builder_output_folder}({project-root}/skills。新しいエージェントはここに作成されます。既存のエージェントはそれぞれのパスを維持します)。 -
対話の場合は、まず自由に話してもらいます。 質問を順序立てて提示したり、意図ごとに振り分けたりする前に、ユーザーが考えていることをすべて共有できるよう促します。エージェントがどのような存在であるか、どのような気持ちにさせるべきか、中心となる成果、具体例、まとまっていないアイデア、既存のエージェントや成果物へのパスなどを聞きます。すでに共有された内容に合わせて促し方を調整し、最後に控えめに「ほかにもありますか?」と尋ねることで、忘れかけていたことを引き出します。この共有内容によって、以降の質問の大半を省略できるため、十分に話してもらいます。ヘッドレスモードでは省略し、呼び出し内容だけで対応に十分な情報がある場合も省略します。
-
再開を検出します。 対象エージェントが特定されたら、
{target-agent-path}/.memlog.mdを glob で検索します。存在する場合は一度だけ全体を読み込み、前回のセッションの状態を復元した後、{project-root}/_bmad/scripts/memlog.pyを使って追記のみで続行します。この.memlog.mdはビルダーの作業ログであり、エージェントのサンクタムとは別のものです。ヘッドレスモードでは自動的に再開します。 -
意図に応じて振り分けます。 解決された意図に基づいて以下の経路を選び、該当するファイルのみを読み込みます。意図の振り分けが済んだら、ループを開始する前に
{agent.activation_steps_append}の各項目を順番に実行します。
意図
| 意図 | 内容 | 読み込むファイル |
|---|---|---|
| 作成 | 新しいエージェントを作成するか、既存のエージェントを中心的な成果とペルソナに基づいて再構築します | references/build-process.md |
| 編集 | 既存のエージェントの設計を維持しながら、特定の動作を変更します | references/edit-guidance.md |
| 分析 | エージェントに品質評価の観点を適用し、レポートを作成します | references/quality-analysis.md |
ユーザーが既存のエージェントを渡したものの、意図を指定していない場合は、3 つの選択肢を提示し、回答に応じて振り分けます。分析では品質評価の観点を適用し、実行可能なレポートを返します。編集では現在のアプローチを維持しながら、特定の動作を変更します。再構築では古いエージェントを参考資料として、中心的な成果とペルソナを見直します。これは、既存の入力を対象に作成フローを実行するものです。