mcpField
O
open-spec-apply

open-spec-apply

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

open-spec-apply について

open-spec-applyは、作業中の変更に含まれるタスクを実装するスキルです。specs/changes/で変更を管理する開発者向けで、成果物を読み、タスクを進めて状態を更新し、不明点や阻害要因があれば停止します。

主な機能

  1. 01実装対象の変更を選択または推定
  2. 02提案、設計、タスク文書を確認
  3. 03タスクを実装してチェック状態を更新
  4. 04進捗と残タスクを表示
  5. 05不明点や阻害要因があれば停止

活用シーン

  1. 01タスクリストに沿ったコード変更の実装
  2. 02途中までの変更実装の継続
  3. 03曖昧な要件を確認してから作業

インストール

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

$npx skills add https://github.com/aircury/ai-framework --skill open-spec-apply

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

詳細

作業中の変更からタスクを実装します。

入力:変更名を指定できます(省略可)。省略した場合は、会話の文脈から推測できるか確認します。曖昧な場合は、利用可能な変更を提示してもらう必要があります。

手順

  1. 変更を選択する

    名前が指定されている場合は、それを使用します。指定されていない場合:

    • 会話の文脈でユーザーが変更について言及していれば、そこから推測します
    • specs/changes/ の下にディレクトリが1つだけある場合は、自動選択します
    • 曖昧な場合は、specs/changes/ の下にあるディレクトリを確認して、ユーザーに選択を依頼します

    常に「Using change: 」と、変更名を上書きする方法(例:open-spec-apply <other>)を案内します。

  2. 変更の成果物を読む

    specs/changes/<name>/ の下に存在するファイルを読みます。

    • proposal.md
    • design.md
    • tasks.md

    tasks.md がない場合は、いったん停止し、open-spec-propose スキルで先に作成するか確認します。

  3. 現在の進捗を表示する

    以下を表示します:

    • 使用する変更
    • 進捗:「N/M tasks complete」
    • 残りのタスクの概要
  4. タスクを実装する(完了またはブロックされるまで繰り返す)

    保留中のタスクごとに:

    • 作業対象のタスクを表示します
    • 必要なコード変更を行います
    • 変更は最小限かつ対象を絞ります
    • タスクファイルで完了としてマークします:- [ ] → - [x]
    • 次のタスクに進みます

    以下の場合は停止します:

    • タスクが不明確な場合 → 明確化を求めます
    • 実装によって設計上の問題が明らかになった場合 → 成果物の更新を提案します
    • エラーやブロッカーが発生した場合 → 報告して指示を待ちます
    • ユーザーが中断した場合
  5. 完了時または停止時に状況を表示する

    以下を表示します:

    • 今回のセッションで完了したタスク
    • 全体の進捗:「N/M tasks complete」
    • すべて完了した場合:open-spec-complete スキルを使用して specs/features/ に同期するよう提案します
    • 停止した場合:理由を説明し、指示を待ちます

実装中の出力

## Implementing: <change-name>

Working on task 3/7: <task description>
[...implementation happening...]
✓ Task complete

Working on task 4/7: <task description>
[...implementation happening...]
✓ Task complete

完了時の出力

## Implementation Complete

**Change:** <change-name>
**Progress:** 7/7 tasks complete ✓

### Completed This Session
- [x] Task 1
- [x] Task 2
...

All tasks complete! Use the `open-spec-complete` skill to sync `specs/features/` and clean up workflow artifacts.

問題が発生して停止する場合の出力

## Implementation Paused

**Change:** <change-name>
**Progress:** 4/7 tasks complete

### Issue Encountered
<description of the issue>

**Options:**
1. <option 1>
2. <option 2>
3. Other approach

What would you like to do?

ガードレール

  • 完了またはブロックされるまでタスクを進めます
  • 開始前に、利用可能な変更の成果物を必ず読みます
  • タスクが曖昧な場合は、実装前に停止して確認します
  • 実装によって問題が明らかになった場合は、停止して成果物の更新を提案します
  • コード変更は最小限にし、各タスクの範囲に限定します
  • 各タスクの完了後、すぐにタスクのチェックボックスを更新します
  • エラー、ブロッカー、不明確な要件がある場合は停止し、推測で進めません
  • specs/changes/ は作業状態としてのみ扱います。完了するには、引き続き specs/features/ への同期が必要です

柔軟なワークフローとの統合

このスキルは「変更に対するアクション」モデルをサポートします:

  • いつでも呼び出せます:すべての成果物が揃う前(タスクが存在する場合)、一部を実装した後、ほかのアクションと交互に実行する場合
  • 成果物を更新できます:実装によって設計上の問題が明らかになった場合、フェーズに縛られず柔軟に作業を進め、成果物の更新を提案します

コメント