mcpField
W
writing-plans

writing-plans

github.com/ericgandrade開発8579 回インストール25 週間前に更新
リポジトリ

writing-plans について

エンジニア向けに、実行可能な実装計画を作成するスキルです。テスト優先のタスク、正確なファイルやコマンド、検証結果を明記します。

主な機能

  1. 01背景と制約の収集
  2. 02テスト優先のタスク分解
  3. 03ファイル、コード、コマンドの指定
  4. 04検証基準と期待結果の記載
  5. 05計画の保存と実行引き継ぎ

活用シーン

  1. 01複数段階の機能を着手前に計画
  2. 02別のエンジニアへの実装作業の引き継ぎ
  3. 03複数ファイルやテストに及ぶ変更の計画

インストール

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

$npx skills add https://github.com/ericgandrade/claude-superskills --skill writing-plans

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

同梱ファイル

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

README.md
evals/
evals.json
trigger-eval.json

詳細

計画の作成

目的

別のエンジニアがタスクごとに実行でき、予測可能な結果が得られる、実行可能で曖昧さの少ない実装計画を作成します。

使用するタイミング

以下の場合にこのスキルを使用します:

  • 要件や仕様はあるものの、実装に着手していない
  • 作業が複数のステップに分かれ、複数のファイルやテスト間の調整が必要
  • 別のセッションやエンジニアに引き継げる計画が必要

進捗の追跡

計画の各フェーズで進捗を表示します:

[████░░░░░░░░░░░░░░░░] 25% — Phase 1/4: Gathering Context & Constraints
[████████░░░░░░░░░░░░] 50% — Phase 2/4: Decomposing Into Tasks
[████████████░░░░░░░░] 75% — Phase 3/4: Specifying Files & Commands
[████████████████████] 100% — Phase 4/4: Writing & Saving Plan

ワークフロー

  1. 背景と制約を把握する
  2. 作業を、テストを先に行う小さなタスクに分割する
  3. 正確なファイル、コードスニペット、コマンドを指定する
  4. 検証基準と期待される出力を追加する
  5. 計画を保存し、executing-plans に引き継ぐ

概要

コードベースの知識がまったくなく、判断力にも疑問のあるエンジニアを想定して、包括的な実装計画を作成します。各タスクで変更するファイル、コード、テスト、確認が必要なドキュメント、テスト方法など、必要な情報をすべて記載します。計画全体を小さなタスクに分けて提示します。DRY。YAGNI。TDD。頻繁にコミットします。

熟練した開発者ではあるものの、こちらのツールセットや問題領域についてはほとんど知らず、適切なテスト設計にもあまり詳しくないと想定します。

開始時に宣言:「実装計画を作成するために、writing-plans スキルを使用します。」

コンテキスト: brainstorming スキルで作成した専用の worktree で実行します。

計画の保存先: docs/plans/YYYY-MM-DD-<feature-name>.md

タスクの粒度

各ステップは1つのアクション(2~5分)です:

  • 「失敗するテストを書く」- ステップ
  • 「失敗することを確認するために実行する」- ステップ
  • 「テストを通すための最小限のコードを実装する」- ステップ
  • 「テストを実行し、成功することを確認する」- ステップ
  • 「コミットする」- ステップ

計画ドキュメントのヘッダー

すべての計画は必ずこのヘッダーから始めてください:

# [Feature Name] Implementation Plan

> **For Claude:** REQUIRED SUB-SKILL: Use superpowers:executing-plans to implement this plan task-by-task.

**Goal:** [One sentence describing what this builds]

**Architecture:** [2-3 sentences about approach]

**Tech Stack:** [Key technologies/libraries]

---

タスクの構成

### Task N: [Component Name]

**Files:**
- Create: `exact/path/to/file.py`
- Modify: `exact/path/to/existing.py:123-145`
- Test: `tests/exact/path/to/test.py`

**Step 1: Write the failing test**

```python
def test_specific_behavior():
    result = function(input)
    assert result == expected
```

**Step 2: Run test to verify it fails**

Run: `pytest tests/path/test.py::test_name -v`
Expected: FAIL with "function not defined"

**Step 3: Write minimal implementation**

```python
def function(input):
    return expected
```

**Step 4: Run test to verify it passes**

Run: `pytest tests/path/test.py::test_name -v`
Expected: PASS

**Step 5: Commit**

```bash
git add tests/path/test.py src/path/file.py
git commit -m "feat: add specific feature"
```

注意事項

  • ファイルパスは常に正確に記載する
  • 計画にはコードを完全に記載する(「検証を追加する」だけでは不十分)
  • 期待される出力を添えて、正確なコマンドを記載する
  • @ 構文で関連するスキルを参照する
  • DRY、YAGNI、TDD、頻繁なコミットを徹底する

実行の引き継ぎ

計画を保存した後、実行方法を選べるようにします:

「計画が完了し、docs/plans/<filename>.md に保存されました。実行方法は2つあります:

1. サブエージェント主導(このセッション) - タスクごとに新しいサブエージェントを割り当て、タスク間でレビューしながら、素早く反復します

2. 並行セッション(別セッション) - executing-plans を使って新しいセッションを開き、チェックポイントを設けてまとめて実行します

どちらの方法にしますか?」

サブエージェント主導が選ばれた場合:

  • 必須サブスキル: superpowers:subagent-driven-development を使用する
  • このセッションにとどまる
  • タスクごとに新しいサブエージェントを起動し、コードレビューを行う

並行セッションが選ばれた場合:

  • worktree で新しいセッションを開くよう案内する
  • 必須サブスキル: 新しいセッションでは superpowers:executing-plans を使用する

重要なルール

  • 常に正確なパスと正確なコマンドを含める
  • テストや検証のステップには、期待される結果を必ず定義する
  • ステップを抽象的なままにしない(具体的なコードの意図を示さずに「検証を実装する」としない)

使用例

  1. 「writing-plans を使って、REST から GraphQL への移行を計画してください。」
  2. 「writing-plans を使って、認証機能のリファクタリングを TDD タスクに分割してください。」
  3. 「writing-plans を使って、新しいキャッシュレイヤーの引き継ぎ計画を準備してください。」

コメント