doc-bdd-autopilot について
doc-bdd-autopilot は、EARS 文書、プロンプト、実装計画から BDD シナリオを生成またはレビューするスキルです。監査と修正の反復で品質を検証し、基準を満たすと BDD インデックスを更新します。
主な機能
- 01EARS・プロンプト・計画から BDD を生成
- 02既存 BDD のレビューと修正
- 03監査と修正サイクルによる品質確認
- 04単一項目またはバッチの処理
- 05合格後に BDD インデックスを更新
活用シーン
- 01EARS 要件から BDD シナリオを作成
- 02既存 BDD のレビューと修復
- 03上流文書に基づく BDD の一括生成
- 04実行予定の BDD 作業のドライラン
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ vladm3105/ aidoc-flow-framework --skill doc-bdd-autopilotインストール後、Claude Code で/doc-bdd-autopilotを入力して読み込まれたか確認します。
詳細
doc-bdd-autopilot
目的
自動化された BDD 生成パイプラインです。上流の EARS(docs/03_EARS/)、ユーザープロンプト、または実装計画(IPLAN-*)を入力として、ソースを分析し、Given-When-Then シナリオによる完全な BDD スイートを生成して、準備状況を検証し、BDD-00_index.md を管理し、監査↔修正サイクルを実行して ADR-Ready スコアを合格水準にします。単一の BDD にも、バッチにも対応します。
レイヤー:4。上流:EARS(BRD/PRD トレース付き)/プロンプト/IPLAN 入力。 下流:検証済み BDD +インデックスエントリー。
スキルの依存関係
| スキル | 役割 |
|---|---|
../doc-bdd/SKILL.md | BDD の構造、YAML シナリオのスキーマ、作成ルール(生成) |
../doc-bdd-audit/SKILL.md | 品質ゲート(ADR-Ready のスコアリング+指摘事項) |
../doc-bdd-fixer/SKILL.md | 監査レポートに基づく修正の適用 |
../doc-naming/SKILL.md | 要素 ID の標準 |
入力仕様
次の入力を受け付けます:対象の BDD ID/パス、上流の EARS ID/パス、自由形式のテキストプロンプト、または IPLAN パス。任意指定:スコアのしきい値(デフォルト 90)、修正の最大反復回数(デフォルト 3)、バッチリスト。明示的な入力がない場合は、リクエストをプロンプトとして扱います。
ドキュメントのスマート検出
各対象について、BDD がすでに存在するかどうかを確認します(ネストされたフォルダー docs/04_BDD/BDD-NN_{slug}/)。
- 存在しない → 生成モード(EARS/プロンプト/IPLAN から生成)。
- 存在する → レビュー&修正モード(監査を行い、しきい値を下回る場合は修正)。
継承元の PRD/BRD チェーンから deliverable_type(code/document/ux/risk/process)を特定します。生成前に、上流の EARS が存在することを確認します。
モデルの事前確認
参考情報として提示されるもので、可能な範囲で実施します。このレイヤーで推奨するモデルを表示しますが、セッションのモデルは切り替えられません。ドライバーを呼び出す前に、次を行います。
.claude/aidoc-flow.config.yamlが存在しない場合、またはmodel.*キーがない場合は、このセクション全体をスキップします(出力なし)。- 推奨モデルを解決します。
model.per_layer.BDDが設定されていればそれを使用し、そうでなければmodel.defaultを使用します。 model.precheck(warn|silent|block)に従って動作します。warn(デフォルト)— 1 行出力してからドライバーに進みます。ℹ BDD recommends model '<rec>'. If you're not on it, run /model <rec> (or set model.precheck: silent to hide this).silent— 何も出力せずに続行します。block— 上記の行に加えてprecheck=block: confirm you want to draft on the current model, or run /model <rec> first.を出力し、続行する前にユーザーの確認を待ちます。
ワークフロー
Saga 駆動の生成ループ(review_mode: team)
ステップ 1 — ドライバーを実行します。以上です。 ハーネスは、この SKILL を実行する前に PREV_OUTPUT、
ARTIFACT_ID、ARTIFACT_PATH の環境変数を設定します。
最初のオーケストレーションアクションでは、必ず Bash ツールを使用し(上記の Model precheck が先に実行されます)、次のコマンドをそのまま実行してください。
python3 "${CLAUDE_PLUGIN_ROOT}/tools/saga_driver.py" \
--layer 04_BDD \
--allow-skip-permissions
--allow-skip-permissions を指定すると、ドライバーがディスパッチする各フェーズで、許可プロンプトなしにファイルを書き込めます。無人の自動実行には、この指定が必要です。
このフラグを外すと、同じループを Claude Code の通常のプロンプト付きで実行できます。
十分に長いタイムアウト(≥1800s)を設定してください。入力を事前に分析してはいけません。上流の成果物を読んではいけません。種類やスコープを分類してはいけません。これらはすべて、ドライバーとドライバーがディスパッチするサブプロセス(ドラフト用の /aidoc-flow:doc-bdd、レビュー用の /aidoc-flow:doc-bdd-audit、修正用の /aidoc-flow:doc-bdd-fixer)が処理します。ドライバーは、
${CLAUDE_PLUGIN_ROOT}/framework/governance/REVIEW_SAGA.md に従い、ステートマシンを事前に適用します。この SKILL の役割は、ドライバーの実行と結果の報告だけです。
ステップ 2 — ドライバーの終了後に報告します。 .aidoc/review/04_BDD/${ARTIFACT_ID}/saga.json を読み取ります。最終ステータスは CLOSED(PASS)、ESCALATED(終端 FAIL)、PARTIAL_TIMEOUT(ソフト期限。再開可能)のいずれかでなければなりません。ステータス、verdict.json が存在する場合は最終スコア、および 1 行の概要を出力します。
ステップ 3 — インデックスを更新します(CLOSED の場合のみ)。 新しい BDD を参照する行を
docs/04_BDD/BDD-00_index.md に追加し、上流成果物の下流エントリーを更新します。
team モードのワークフローは以上です。ここでほかのこと(文章のドラフト作成、Task サブエージェントのディスパッチ、ほかのスラッシュコマンドの実行など)をしようとしている場合は、そこで STOP してください。ドライバーを回避していることを認識し、代わりに上記の Bash コマンドを実行してください。
線形パイプライン(review_mode: single_pass)
従来の動作から変更はありません。プロファイルで指定されている場合、Task サブエージェントのディスパッチが利用できない場合、または書き込み時(on_author)にコストを最優先する場合に使用します。以下の 5 ステップのセッション内パターンでは saga.json を作成せずに BDD を生成します。そのため、ハーネスの saga ジャーナルチェックでこのレイヤーは失敗します。このモードは手動のドライランにのみ適しています。
- 入力分析 — 入力(EARS/プロンプト/IPLAN)を分類し、上流の EARS とその BRD/PRD トレース要素を特定し、生成するかレビューして修正するかを判断します。
- 種類とスコープ — 参照されている EARS(およびその PRD/BRD 要素)が存在することを確認し、EARS の記述をシナリオカテゴリに対応付け、次の
BDD-NNを確保します。 - 生成 —
../doc-bdd/SKILL.mdに従って BDD を作成します。最初に Document Control を置き、5 つのセクションすべて、feature:ブロック、5 つのカテゴリにまたがるscenarios:YAML リストを含めます。各シナリオは、given/when/thenフェーズのリスト、要素レベルのears:リスト、idBDD.NN.03.xxxx、type/priority、インラインの@threshold:参照、およびspec_traceを含むマッピングとします。シーケンス図は../charts-flow/SKILL.mdに従います。 - 検証 —
../doc-bdd-audit/SKILL.mdを最初から実行します。 - 監査と修正のサイクル — スコアがしきい値未満で、反復回数が上限未満の間は、
../doc-bdd-fixer/SKILL.mdを実行してから再監査します。合格したらdocs/04_BDD/BDD-00_index.mdを更新します。反復回数を使い切った場合は、手動レビューの対象としてマークします。
実行モード
- Single — 1 件の BDD(生成またはレビューと修正)。
- Batch — コンテキストを制限するため、複数の BDD を3 件ずつのチャンクで処理します。上流 EARS の順に生成します。
- Dry-run — ファイルを書き込まず、予定するアクション(シナリオ、カテゴリ、ID)を報告します。
品質ゲート
- 監査に合格する(ADR-Ready ≥ しきい値、Tier-1 エラー 0 件)か、反復上限に達する(その場合は手動レビューの対象としてマークする)まで、生成は完了しません。
- BDD インデックスを更新するのは、BDD の合格後のみです。
- サイクルごとに監査を新たに実施します。スコアをキャッシュして使用してはいけません。
エラー処理
| 状況 | 対応 |
|---|---|
| 参照先の上流 EARS/PRD/BRD がない | 停止し、不足している依存関係を報告します |
| 最大反復回数がしきい値を下回った | レポートを作成し、手動レビューが必要であることを示して、バッチを続行します |
| ソース入力が曖昧 | プロンプトモードに切り替え、前提を BDD に記録します |
| 書き込み/権限エラー | ログに記録し、その項目をスキップして、バッチを続行します |
適応
デフォルトを適用する前に、プロジェクトの適応プロファイル
(.aidoc/profile.yaml)を読み込み、生成フェーズと内部
監査/修正フェーズの両方に適用します。section_toggles、active_layers、audit_threshold
(引き上げのみ、より厳しい設定のみ)、および glossary を尊重します。不明なキー、
または適用範囲外のキーは無視します。プロファイルがない場合は、フレームワークのデフォルトを使用します。
権限の基準:${CLAUDE_PLUGIN_ROOT}/framework/governance/ADAPTATION.md。
関連リソース
- 作成:
../doc-bdd/SKILL.md・監査:../doc-bdd-audit/SKILL.md・修正:../doc-bdd-fixer/SKILL.md - 権限の基準:
${CLAUDE_PLUGIN_ROOT}/framework/layers/04_BDD/BDD-TEMPLATE.yaml、${CLAUDE_PLUGIN_ROOT}/framework/layers/04_BDD/README.md、${CLAUDE_PLUGIN_ROOT}/framework/layers/04_BDD/BDD-00_index.TEMPLATE.md