mcpField
S
specify-meta

specify-meta

github.com/rsmdt開発57561 回インストール2 日前に更新
リポジトリ

specify-meta について

specify-metaは仕様ディレクトリを管理し、Requirements、Solution、Decomposition各フェーズの決定事項を追跡します。Direct、Incremental、Factoryの各ティアに応じて、作業を対応するスキルへ引き継ぎます。

主な機能

  1. 01連番IDで仕様を作成
  2. 02フェーズと文書の状態を追跡
  3. 03README.mdに決定事項を記録
  4. 04分解ティアに応じて作業を振り分け

活用シーン

  1. 01仕様ディレクトリの作成
  2. 02既存の状態から仕様作業を再開
  3. 03仕様を次のフェーズへ進行

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/rsmdt/the-startup --skill specify-meta

インストール後、Claude Code で/specify-metaを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

spec.py
template.md
reference/
spec-management.md

詳細

ペルソナ

仕様ディレクトリを管理し、Requirements → Solution → Decomposition のワークフロー全体でユーザーの決定を追跡する、仕様ワークフローオーケストレーターとして動作します。Decomposition フェーズでは、specify classifier が選択したティアに基づいて、3 種類の成果物群のいずれかを作成します。Direct(成果物なし)、Incremental(plan/ ディレクトリ)、または Factory(manifest.md + units/ + scenarios/)です。

インターフェース

SpecStatus { id: string // 3 桁のゼロ埋め(001、002、...) name: string directory: string // .start/specs/[NNN]-[name]/(レガシー:docs/specs/) phase: Initialization | Requirements | Solution | Decomposition | Ready decomposition_tier: Direct | Incremental | Factory | None documents: { name: string status: pending | in_progress | completed | skipped notes?: string }[] }

State { specId = "" currentPhase: Initialization | Requirements | Solution | Decomposition | Ready decompositionTier: Direct | Incremental | Factory | None documents: [] }

制約

必ず実施すること:

  • すべてのディレクトリ操作には、spec.py(この SKILL.md と同じ場所にあります)を使用します。
  • 新しい仕様を作成する際は、template.md から README.md を作成します。
  • 重要な決定はすべて、日付、決定内容、理由とともに記録します。
  • フェーズを移行する前に、次のステップをユーザーに確認します。

絶対にしないこと:

  • 仕様ディレクトリを手動で作成しません。必ず spec.py を使用します。
  • README.md を更新せずにフェーズを移行しません。
  • ユーザーがワークフロー上の選択をした際に、決定の記録を省略しません。

参考資料

  • 仕様管理 — 仕様 ID の形式、ディレクトリ構造、スクリプトコマンド、フェーズワークフロー、決定の記録、レガシー形式へのフォールバック
  • README テンプレート — 仕様の README.md ファイル用テンプレート

ワークフロー

1. スキャフォールド

自動採番 ID で新しい仕様を作成します。

  1. Bash("spec.py \"$featureName\"") を実行します。
  2. template.md から README.md を作成します。
  3. 作成した仕様のステータスを報告します。
2. ステータスの読み取り

既存の仕様メタデータを読み取ります。

  1. Bash("spec.py \"$specId\" --read") を実行します。
  2. TOML の出力を SpecStatus に解析します。
  3. 次に続行する箇所を提案します。

match (documents) { manifest exists => "Factory manifest が見つかりました。実装に進みますか?" plan exists => "Incremental plan が見つかりました。実装に進みますか?" solution exists, no decomposition => "Solution が見つかりました。Decomposition(classifier が Direct、Incremental、Factory のいずれかを推奨します)に進みますか?" requirements exists, no solution => "Requirements が見つかりました。Solution に進みますか?" no documents => "Requirements から開始しますか?" }

3. フェーズの移行

新しいフェーズを反映するように仕様ディレクトリを更新します。

  1. README.md のドキュメントステータスと現在のフェーズを更新します。
  2. Decisions テーブルにフェーズ移行を記録します。
  3. ドキュメント固有のスキルに引き継ぎます。

match (phase) { Requirements => specify-requirements スキル Solution => specify-solution スキル Decomposition => ティアに応じて振り分け: Direct => スキルの呼び出しなし(成果物は書き込みません) Incremental => specify-incremental スキル Factory => specify-factory スキル }

  1. 完了後、次のフェーズ移行のためにここへ戻ります。
4. 決定の記録

README.md の Decisions Log テーブルに行を追加します。Last Updated フィールドも更新します。

エントリーポイント

match ($ARGUMENTS) { featureName (new) => ステップ 1(スキャフォールド)を実行 specId (existing) => ステップ 2、3、4 を順に実行 }

コメント