From sdd
SDDフレームワークをプロジェクトに導入する初期セットアップ。プロジェクトのコードベースと既存ドキュメントを深く調査し、SDD に必要な構造とステアリングドキュメントを自動構築する。「SDD導入して」「SDDセットアップ」「sdd init」等のリクエストに対応。
How this skill is triggered — by the user, by Claude, or both
Slash command
/sdd:initThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
プロジェクトに SDD(Spec-Driven Development)フレームワークを導入するための初期セットアップを行う。
プロジェクトに SDD(Spec-Driven Development)フレームワークを導入するための初期セットアップを行う。 プロジェクトのコードベースと既存ドキュメントをサブエージェントで徹底調査し、SDD に必要な構造を構築する。
init の作業を開始する前に、以下を実施する。
.gitignore の確認.tmp が .gitignore に含まれているか確認し、未登録であれば追加する:
# .gitignore に .tmp が含まれているか確認
grep -q '^\.tmp' .gitignore 2>/dev/null || echo '.tmp' >> .gitignore
ユーザーに作業方法を確認する:
SDD の初期セットアップで
spec/ディレクトリやドキュメントを追加します。 作業方法を選んでください:
- 現在のブランチに直接コミット — 小規模チームや個人プロジェクト向け
- ブランチを切ってPRにする — チームレビューが必要な場合
ブランチを切る場合:
/sdd:create-worktree でワークツリーを作成する(プレフィックス: sdd-init)現在のブランチに直接コミットする場合:
2つのリサーチャーサブエージェントを並行で起動する。
コードベースの構造・技術スタック・アーキテクチャパターンを徹底調査する。
Agent を起動:
name: code-researcher
subagent_type: sdd-init-code-researcher(プラグインのエージェント定義を使用)
prompt: |
プロジェクトのコードベースを徹底調査してください。
以下の観点で分析し、結果を .tmp/sdd-init/findings-code.md に出力してください。
判断に迷う点や確認が必要な点は .tmp/sdd-init/questions-code.md に記録してください。
調査観点:
- ディレクトリ構造(深さ3-4階層)
- 技術スタック(言語、フレームワーク、ライブラリ)
- アーキテクチャパターン(DDD, MVC, Clean Architecture 等)
- 命名規約(ファイル名、変数名、関数名の実態)
- テスト構成(フレームワーク、配置パターン)
- CI/CD 構成
- パッケージマネージャーの種類
- ビルドツール・リンター・フォーマッター
既存ドキュメントを精読し、SDD steering 要件とのギャップを分析する。
Agent を起動:
name: doc-researcher
subagent_type: sdd-init-doc-researcher(プラグインのエージェント定義を使用)
prompt: |
プロジェクトの既存ドキュメントを精読し、SDD のステアリング要件とのギャップを分析してください。
結果を .tmp/sdd-init/findings-docs.md に出力してください。
判断に迷う点や確認が必要な点は .tmp/sdd-init/questions-docs.md に記録してください。
SDD ステアリング要件(必須3ファイル):
- project.md: プロダクト概要・ビジョン・ターゲットユーザー・ビジネス目標
- structure.md: ディレクトリ構造・命名規約・アーキテクチャルール・設計原則
- tech.md: 技術スタック一覧・技術選定理由・制約事項・開発ツール
分析観点:
- 既存ドキュメントの一覧と各ドキュメントの要約
- 各 steering 要件に対するカバレッジ(%)
- 既存ドキュメントで十分にカバーされている場合のシンボリンクマッピング案
- 不足している情報の具体的なリスト
- ドキュメント内の矛盾・不整合の検出
Phase 1 の両方の findings を読み込み、ステアリングドキュメントのドラフトを構成する。
Agent を起動:
name: composer
subagent_type: sdd-init-composer(プラグインのエージェント定義を使用)
prompt: |
.tmp/sdd-init/findings-code.md と .tmp/sdd-init/findings-docs.md を読み込み、
SDD ステアリングドキュメントのドラフトを構成してください。
方針:
- 既存ドキュメントで十分にカバーされている steering 要件
→ シンボリンク推奨として .tmp/sdd-init/symlink-plan.md に記録
- 既存ドキュメントでカバーしきれない steering 要件
→ ドラフトを .tmp/sdd-init/drafts/ に生成
- 判断に迷う点は .tmp/sdd-init/questions-composer.md に記録
出力:
- .tmp/sdd-init/symlink-plan.md(シンボリンクマッピング)
- .tmp/sdd-init/drafts/project.md(必要な場合のみ)
- .tmp/sdd-init/drafts/structure.md(必要な場合のみ)
- .tmp/sdd-init/drafts/tech.md(必要な場合のみ)
- .tmp/sdd-init/questions-composer.md
ドラフトの正確性・網羅性・コード実態との整合性をレビューする。
Agent を起動:
name: reviewer
subagent_type: sdd-init-reviewer(プラグインのエージェント定義を使用)
prompt: |
以下のファイルを読み込み、SDD ステアリングドキュメントのドラフトをレビューしてください。
入力:
- .tmp/sdd-init/findings-code.md(コード調査結果)
- .tmp/sdd-init/findings-docs.md(ドキュメント調査結果)
- .tmp/sdd-init/symlink-plan.md(シンボリンクマッピング)
- .tmp/sdd-init/drafts/(ドラフト群)
レビュー観点:
- ドラフト内容とコード実態の整合性
- 用語・命名の正確性
- 情報の網羅性(steering 要件に対して)
- 矛盾・重複の検出
- シンボリンク候補の妥当性
出力:
- .tmp/sdd-init/review.md(レビュー結果)
- .tmp/sdd-init/questions-reviewer.md(確認事項)
メインエージェントが以下を実行する:
全 questions ファイルの統合:
.tmp/sdd-init/questions-code.md.tmp/sdd-init/questions-docs.md.tmp/sdd-init/questions-composer.md.tmp/sdd-init/questions-reviewer.mdスコープ横断の矛盾検出:
統合した質問と矛盾点を、以下の2カテゴリに分類する:
Phase 4 の対話を始める前に、ユーザーに以下を確認する:
このプロジェクトにおけるあなたの立場を教えてください:
- プロジェクトオーナー/メンバー — プロジェクトの意思決定ができる。質問にその場で回答できる
- 外部の導入担当者 — プロジェクトの詳細は別のオーナーに確認する必要がある
対話形式で進める:
段階的に進める:
Step 1: 矛盾・不整合と確認事項の一覧をユーザーに提示する
Step 2: 「この中でご自身で回答できるものはありますか?」と確認する
Step 3: 残った未回答の項目について「残りの項目をプロジェクトオーナー向けの質問票として出力しますか?」と確認する
質問票を出力する場合:
矛盾レポート(.tmp/sdd-init/contradiction-report.md)を生成:
# SDD Init — 矛盾・不整合レポート
## 概要
SDD 導入にあたりプロジェクトのコードとドキュメントを調査した結果、
以下の矛盾・不整合が検出されました。各項目に対応案を記載しています。
## 矛盾一覧
### 1. {矛盾の概要}
- **箇所**: {ファイルパスA} vs {ファイルパスB}
- **内容**: {具体的な矛盾の内容}
- **対応案**: {推奨する対応}
- **今回の暫定対応**: {SDD ドキュメントにどう反映したか}
質問票(.tmp/sdd-init/questionnaire.md)を生成:
回答者がこのファイルを直接編集して記入できるフォーマットにすること。
# SDD Init — プロジェクトオーナー向け質問票
## 回答方法
各質問の「回答」欄に直接記入してください。
選択式の場合は該当する選択肢の先頭を `[x]` に変更してください。
記入が完了したら、このファイルを導入担当者に返送してください。
---
## Q1: {質問の概要}
**背景**: {なぜこの質問が必要か。回答者が文脈を理解できる程度に具体的に書く}
**現状**: {コードやドキュメントから読み取れた現状の事実}
**回答**(選択式の場合):
- [ ] A. {選択肢Aの内容}
- [ ] B. {選択肢Bの内容}
- [ ] C. {選択肢Cの内容}
**補足**(自由記述。選択肢に補足がある場合や、選択式でない場合はここに記入):
> (ここに記入)
---
## Q2: {質問の概要}
**背景**: ...
**現状**: ...
**回答**(自由記述の場合):
> (ここに記入)
---
質問票フォーマットのルール:
--- で区切り、視覚的に独立させる- [ ])にする>)で記入場所を明示する質問票出力後、ユーザーに以下を報告:
ユーザーの指示に応じて:
ユーザー回答(対話 or 質問票)を反映してドラフトを更新し、シンボリンクマッピングを確定する。
ユーザー承認後、以下を実行する:
ディレクトリ構造の作成:
mkdir -p spec/_custom/steering
mkdir -p spec/blueprints
mkdir -p spec/specs
mkdir -p spec/_archive/blueprints
mkdir -p spec/_archive/specs
カスタマイズガイドの配置:
templates/framework/custom-readme.md を spec/_custom/README.md としてコピーステアリングファイルの配置:
spec/_custom/steering/ に作成docs/ 配下に配置し、シンボリンクを作成spec/README.md の配置:
templates/framework/README.md を spec/README.md としてコピー一時ファイルのクリーンアップ:
rm -rf .tmp/sdd-init/
init 完了後、プロジェクトに以下の構造が追加される:
{project-root}/
├── spec/
│ ├── README.md # SDDフレームワーク概要
│ ├── _custom/
│ │ ├── README.md # カスタマイズガイド
│ │ └── steering/
│ │ ├── project.md → ../../docs/xxx.md(シンボリンク)
│ │ ├── structure.md → ../../docs/xxx.md(シンボリンク)
│ │ └── tech.md → ../../docs/xxx.md(シンボリンク)
│ ├── blueprints/
│ ├── specs/
│ └── _archive/
│ ├── blueprints/
│ └── specs/
└── docs/
└── (新規生成されたドキュメントがあればここに配置)
questions-*.md に確認事項を必ず出力する義務があるProvides behavioral guidelines to reduce common LLM coding mistakes, focusing on simplicity, surgical changes, assumption surfacing, and verifiable success criteria.
Searches, retrieves, and installs Agent Skills from prompts.chat registry using MCP tools like search_skills and get_skill. Activates for finding skills, browsing catalogs, or extending Claude.
Creates, edits, and optimizes skills for Claude Code, including drafting, evaluating with test prompts, iterating on performance, and improving skill descriptions for better triggering accuracy.
npx claudepluginhub ymd7/claude-plugins --plugin sdd