メインコンテンツへスキップ
← Director Mode Lite に戻る
/auto-loop コア機能

Auto-Loop

Stop hook が支援する TDD ループ。受け入れ基準と上限を定義し、チェックポイントが進行中の間は Claude に継続を要求します。

仕組み

1

受け入れ基準を定義

- [ ] を作業状態として記録し、各基準を実際に検証

2

Auto-Loop が反復

各イテレーションで未完了の AC に Red-Green-Refactor を適用するよう Claude に要求

3

Stop Hook が再注入

状態が有効な間、Stop hook が reason とともに終了をブロックし次の反復を要求

完了記録または上限で終了

状態が完了、停止要求を受信、または最大イテレーション数に到達したら終了

結果を検証してください:受け入れ基準のチェックとチェックポイント状態はモデルが管理する状態であり、独立した証明ではありません。 完了と判断する前に diff を確認し、プロジェクトの実際のテスト、lint、build を実行してください。

TDD サイクル

同梱の指示は、各 Auto-Loop イテレーションに次の TDD サイクルを求めます:

フェーズ アクション 推奨サポート
RED 次の AC のための失敗するテストを書く /test-first ガイド
GREEN テストを通過する最小限のコードを書く プロジェクトのテストコマンド
REFACTOR コード品質を改善 任意の code-reviewer agent
VALIDATE 完全なテストスイート + lint を実行 test-runner + プロジェクトコマンド
COMMIT 進捗を保存 許可時に /smart-commit
DECIDE 完了をチェック、継続または終了 チェックポイント状態 + 実際の検証

使用例

基本的な使用方法

/auto-loop "電卓モジュールを作成

受け入れ基準:
- [ ] add(a, b) 関数
- [ ] subtract(a, b) 関数
- [ ] multiply(a, b) 関数
- [ ] divide(a, b) ゼロチェック付き
- [ ] 全関数の単体テスト"

イテレーション上限を設定

/auto-loop "ユーザー認証を実装" --max-iterations 15

チェックポイントから再開

# 中断または再起動後
/auto-loop --resume

チェックポイントシステム

Auto-Loop は .auto-loop/checkpoint.json に状態を保存します:

{
  "request": "電卓モジュールを作成",
  "current_iteration": 5,
  "max_iterations": 20,
  "status": "in_progress",
  "acceptance_criteria": [
    { "id": 1, "description": "add(a, b) 関数", "done": true },
    { "id": 2, "description": "subtract(a, b) 関数", "done": true },
    { "id": 3, "description": "multiply(a, b) 関数", "done": false }
  ],
  "files_changed": ["calculator.js", "calculator.test.js"]
}

チェックポイントが存在し有効な場合に中断した実行を再開できます。記録されたファイルや状態はレビュー用であり、変更やテストの正しさを証明するものではありません。

停止と制御

ループを停止

# 別のターミナルで
touch .auto-loop/stop

現在のイテレーション完了後にグレースフルにループが停止します。

ループを再開

# 保持されたチェックポイントから再開
/auto-loop --resume

Hook が停止シグナルを消費し、チェックポイントは --resume 用に残ります。

Stop Hook の仕組み

Auto-Loop は Claude Code の Stop hook 機構を使用します。 インストーラーはこの設定をプロジェクトのローカル settings にマージします。

# .claude/settings.local.json(install.sh がマージ)
{
  "hooks": {
    "Stop": [{
      "hooks": [{
        "type": "command",
        "command": "\"$CLAUDE_PROJECT_DIR\"/.claude/hooks/auto-loop-stop.sh"
      }]
    }]
  }
}

Claude が停止しようとすると、hook がローカルのチェックポイントを確認します。ループが有効で上限未満なら {"decision": "block", "reason": "..."} を出力して次の反復を要求します。 完了、停止、上限到達、または有効な進行中チェックポイントがない場合は、decision payload なしで正常終了します。

始める準備はできましたか?

Director Mode Lite をインストールして、最初の Auto-Loop を開始しましょう。

インストールガイド →