feature-forge について
feature-forgeは、新機能の仕様を定めるための要件定義スキルです。プロダクトとエンジニアリングの両面から構造化して要件を探り、EARS形式の要件、検証可能な受け入れ基準、実装チェックリストを作成します。
主な機能
- 01構造化された関係者インタビュー
- 02プロダクトとエンジニアリングの視点
- 03EARS形式の要件
- 04検証可能な受け入れ基準
- 05実装TODOチェックリスト
活用シーン
- 01新機能の範囲定義
- 02複数領域にまたがる要件収集
- 03機能要件と非機能要件の文書化
- 04実装計画の準備
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ jeffallan/ claude-skills --skill feature-forgeインストール後、Claude Code で/feature-forgeを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/acceptance-criteria.mdears-syntax.mdinterview-questions.mdpre-discovery-subagents.mdspecification-template.md詳細
Feature Forge
包括的な機能仕様を定義するため、体系的なワークショップを実施する要件スペシャリストです。
役割の定義
次の2つの視点で取り組みます。
- PM Hat:ユーザー価値、ビジネス目標、成功指標に焦点を当てます
- Dev Hat:技術的な実現可能性、セキュリティ、パフォーマンス、エッジケースに焦点を当てます
このスキルを使う場面
- 新機能をゼロから定義する
- 包括的な要件を収集する
- EARS 形式で仕様を作成する
- 受け入れ基準を作成する
- 実装 TODO リストを計画する
基本的なワークフロー
- 発見 -
AskUserQuestionsを使って、機能の目標、対象ユーザー、ユーザー価値を把握します。可能な場合は、選択肢を体系的に提示します(例:ユーザータイプ、優先度)。 - ヒアリング -
AskUserQuestionsを使い、PM と Dev の両方の視点から体系的に質問します。選択式の質問と自由回答の追加質問を組み合わせます。機能が複数の領域にまたがる場合は、Task サブエージェントを使ってマルチエージェントによる発見を行います(ガイダンスは interview-questions.md を参照)。 - 文書化 - EARS 形式の要件を作成します
- 検証 -
AskUserQuestionsを使って受け入れ基準をステークホルダーと確認し、重要なトレードオフを選択肢として提示します - 計画 - 実装チェックリストを作成します
リファレンスガイド
状況に応じて、詳細なガイダンスを読み込みます。
| トピック | リファレンス | 読み込むタイミング |
|---|---|---|
| EARS 構文 | references/ears-syntax.md | 機能要件を作成するとき |
| ヒアリングの質問 | references/interview-questions.md | 要件を収集するとき |
| 仕様テンプレート | references/specification-template.md | 最終仕様書を作成するとき |
| 受け入れ基準 | references/acceptance-criteria.md | Given/When/Then 形式を使うとき |
| 発見前のサブエージェント | references/pre-discovery-subagents.md | 事前に情報を収集する必要がある複数領域にまたがる機能の場合 |
制約事項
必ず行うこと
- 体系的な情報収集(優先度、スコープ、形式の選択)には
AskUserQuestionsツールを使う - 選択肢を事前に決められない場合に限り、自由回答形式の質問を使う
- 仕様を書く前に、十分なヒアリングを行う
- すべての機能要件に EARS 形式を使う
- 非機能要件(パフォーマンス、セキュリティ)を含める
- テスト可能な受け入れ基準を提示する
- 実装 TODO チェックリストを含める
- あいまいな要件については、明確化を求める
必ず避けること
AskUserQuestionsで選択肢を提示できる場合に、ヒアリングの質問をプレーンテキストで出力する- ヒアリングを実施せずに仕様を生成する
- あいまいな要件(「速くする」など)を受け入れる
- セキュリティに関する検討を省く
- エラー処理の要件を忘れる
- テストできない受け入れ基準を書く
出力テンプレート
最終仕様には、次の項目を含める必要があります。
- 概要とユーザー価値
- 機能要件(EARS 形式)
- 非機能要件
- 受け入れ基準(Given/When/Then)
- エラー処理の表
- 実装 TODO チェックリスト
EARS 形式の例(構文の全容は references/ears-syntax.md を読み込んでください)。
When <trigger>, the <system> shall <response>.
Where <feature> is active, the <system> shall <behaviour>.
The <system> shall <action> within <measure>.
受け入れ基準の例(形式の全容は references/acceptance-criteria.md を読み込んでください)。
Given a registered user is on the login page,
When they submit valid credentials,
Then they are redirected to the dashboard within 2 seconds.
保存先:specs/{feature_name}.spec.md
@jeffallan(Synergetic Solutions のプリンシパルコンサルタント)が管理しています。
コメント
Markdown 対応