AgentSkillsCN

sdd-specify

编制SDD规格。通过需求调研,完成规格说明书(Part 1)的编写。当用户提出“编制规格”“梳理需求”“希望采用SDD方式进行开发”“撰写新功能规格”等需求时,可使用此功能。

SKILL.md
--- frontmatter
name: sdd-specify
description: SDD仕様作成。要件をヒアリングし、仕様書(Part 1)を作成する。ユーザーが「仕様を作成して」「要件を整理して」「SDDで開発したい」「新機能の仕様を書いて」と言った場合に使用する。
disable-model-invocation: false
allowed-tools: Read, Glob, Grep, Write, Edit

SDD Specify スキル

仕様駆動開発(SDD)の最初のステップ。要件を明確化し、仕様書を作成する。

ワークフロー

ステップ1: 準備

  1. sdd-principles スキルを読み込み、SDD原則・プロジェクト憲法・フェーズゲートを確認する
  2. template.md テンプレートを読み込む
  3. ユーザーの入力($ARGUMENTS)から要件の概要を把握する

ステップ2: 要件ヒアリング

ユーザーに質問して要件を明確化する。

ルール:

  • 不明点は推測せず、質問する
  • 質問は具体的に(「要件は?」ではなく「ログイン失敗時のリダイレクト先は?」のように)
  • 一度に最大3問まで質問する
  • 回答を得たら仕様に反映し、まだ不明点があれば追加質問する

ステップ3: コードベース調査

要件に関連する既存コードを調査する:

  • 影響を受けるファイルの特定
  • 既存のパターン・慣習の確認
  • 既存のAPI契約との整合性確認
  • 使用中の依存パッケージの確認

ステップ4: 仕様書作成

テンプレートの Part 1(仕様セクション) を記入し、.steering/[YYYYMMDD]-[name].md に保存する。

記入するセクション:

  • 1.1 概要(目的、スコープ、動機)
  • 1.2 詳細仕様(機能要件テーブル、API契約、データモデル)
  • 1.3 受入基準(Given-When-Then テーブル)
  • 1.4 エッジケース
  • 1.5 制約事項(セキュリティ、パフォーマンス、依存関係)
  • 1.6 テスト戦略
  • 1.7 不確実性(未解決の [NEEDS CLARIFICATION] 一覧)
  • 1.8 プロジェクト憲法チェックリスト

注意:

  • Part 2(実装計画)はこのステップでは記入しない
  • 不明点は [NEEDS CLARIFICATION: 質問] マーカーで記録する
  • API契約はメソッド・パス・リクエスト形式・レスポンス形式・ステータスコードを全て記載する

ステップ5: プロジェクト憲法チェックリスト検証

仕様書の 1.8 プロジェクト憲法チェックリストを検証する:

  • 各条項に対して、仕様が準拠しているか確認
  • 該当しない条項には理由を備考に記載
  • 準拠している条項にチェックを入れる

ステップ6: フェーズゲート1 確認

ゲート1(Specify → Plan)の通過条件を確認する:

  • [NEEDS CLARIFICATION] マーカーがゼロ
  • 受入基準が1つ以上存在
  • プロジェクト憲法チェックリストが全項目記入済み

未通過の場合: 未解決の不確実性をユーザーに提示し、解決を求める。

通過した場合: ステップ7へ進む。

ステップ7: ユーザー承認

仕様書の内容をユーザーに提示し、承認を待つ。

承認後の次のステップ: /sdd-plan で実装計画を作成する。

出力

  • .steering/[YYYYMMDD]-[name].md に仕様書(Part 1)を保存
  • フェーズゲート1の通過状況を報告

他のスキルとの連携

  • 次のステップ: /sdd-plan - 仕様に基づく実装計画を作成
  • 実装: /sdd-implement - 計画に基づいて実装

注意事項

  • このスキルではコードの変更は行わない(仕様書の作成のみ)
  • 仕様は .steering/ に保存され、計画フェーズで同じファイルに追記される