mcpField
A
autonomous-skill

autonomous-skill

github.com/feiskyerエージェントワークフロー1.7k284 回インストール4 週間前に更新
リポジトリ

autonomous-skill について

autonomous-skill は複数の Claude Code セッションで複雑なタスクを進めます。ヘッドレス実行とセッション内実行、構造化または軽量な反復を選べ、進捗と完了条件を追跡できます。

主な機能

  1. 01ヘッドレスとフックの実行モード
  2. 02構造化と軽量のタスク戦略
  3. 03セッションごとの進捗ログ
  4. 04完了プロミスとチェックリストの検出
  5. 05セッション、予算、モデルの制限

活用シーン

  1. 01複数段階のアプリ開発
  2. 02失敗テストの修正やリファクタリング
  3. 03無人のバックグラウンド作業の継続

インストール

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

$npx skills add https://github.com/feiskyer/claude-code-settings --skill autonomous-skill

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

同梱ファイル

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

hooks/
hooks.json
stop-hook.sh
scripts/
run-session.sh
setup-loop.sh
templates/
executor-prompt.md
initializer-prompt.md
task-list-template.md

詳細

自律型スキル — 複数セッションでのタスク実行

自動継続、進捗追跡、2 つの完了メカニズム(promise タグとチェックボックスのカウント)を使って、 複雑なタスクを複数の Claude Code セッションにまたがって実行します。

2 つの実行モード

ヘッドレスモード(デフォルト)

bash ループで claude -p の子セッションを起動します。バックグラウンドまたは無人での作業に最適です。

bash <skill-dir>/scripts/run-session.sh "Build a REST API" --max-sessions 10
フックモード(セッション内)

Stop フックを使ってセッションの終了を検知し、プロンプトを再度入力します。現在の対話型セッション内で実行されるため、 ネストに関する問題は発生しません。

bash <skill-dir>/scripts/setup-loop.sh "Build a REST API" --max-iterations 10

2 つのタスク戦略

構造化(デフォルト)

タスクを完全に分解します。イニシャライザーがフェーズ別のサブタスクを含む task_list.md を作成し、 エグゼキューターがタスクを 1 つずつ実行して完了します。複雑な複数フェーズのプロジェクトに最適です。

bash <skill-dir>/scripts/run-session.sh "Build a REST API for todo app"
軽量(--lightweight)

Ralph 形式の反復です。各セッションで同じプロンプトを繰り返し、タスクを分解しません。 成功条件が明確な反復タスク(TDD、バグ修正、リファクタリング)に最適です。

bash <skill-dir>/scripts/run-session.sh "Fix all failing tests in src/" --lightweight

完了の検出

相互に補完する 2 つのメカニズムがあり、先に条件を満たした方が適用されます。

  1. Promise タグ(両モード):作業が本当に完了すると、エージェントは <promise>DONE</promise> を出力します。 デフォルトの promise は DONE です。--completion-promise で変更できます。エージェントには、 ループを抜けるためではなく、作業が本当に完了した場合にのみ promise を出力するよう指示されます。

  2. チェックボックスのカウント(構造化モードのみ):task_list.md 内のすべての [ ] 項目が [x] にマークされます。

ディレクトリ構成

project-root/
├── .autonomous/
│   └── <task-name>/
│       ├── task_list.md      # Master checklist (structured mode)
│       ├── progress.md       # Per-session progress log
│       ├── .mode             # "structured" or "lightweight"
│       ├── sessions/         # Transcript logs per session
│       │   ├── session-001.log
│       │   └── session-002.log
│       └── run.lock          # Prevents concurrent runs
└── .claude/
    └── autonomous-loop.local.md  # Hook mode state (when active)

ヘッドレスモード — CLI リファレンス

bash <skill-dir>/scripts/run-session.sh "task description" [OPTIONS]
フラグ説明デフォルト
--lightweightRalph 形式の反復(タスクの分解なし)構造化
--task-name <name>タスク名を明示的に指定自動生成
--continue, -c最新のタスクまたは指定したタスクを続行—
--list, -lすべてのタスクと進捗を一覧表示—
--completion-promise TEXT完了を示す promise の文言DONE
--max-sessions NN セッション後に停止無制限
--max-budget N.NNセッションごとの予算(ドル)5.00
--model <model>モデルのエイリアスまたは正式名称sonnet
--fallback-model <m>プライマリモデルが過負荷の場合のフォールバック—
--effort <level>思考の強度(low/medium/high)high
--no-auto-continueセッションを 1 回だけ実行—
--permission-mode <m>権限モードauto
--add-dir <dirs>許可する追加ディレクトリ—

フックモード — セットアップ

セッション内のループ(子プロセスを起動しない場合):

bash <skill-dir>/scripts/setup-loop.sh "task description" [OPTIONS]
フラグ説明デフォルト
--mode structured|lightweightタスク戦略構造化
--max-iterations Nループの最大反復回数無制限
--completion-promise TEXTpromise の文言DONE
--task-name NAMEタスク名を明示的に指定自動生成

フックは hooks/hooks.json に登録されます。有効な場合、Stop フックは .claude/autonomous-loop.local.md を読み込み、promise が検出されるか最大反復回数に達するまで 終了をブロックします。

フックモードで実行中のループをキャンセルするには、rm .claude/autonomous-loop.local.md を実行します。

ワークフローの詳細

構造化モード
  1. イニシャライザーエージェント — タスクを分析し、フェーズ別の task_list.md を作成して作業を開始します
  2. エグゼキューターエージェント — タスクリストと進捗を読み込み、前回の作業を確認して次のタスクを完了します
  3. 自動継続 — promise タグとチェックボックスを確認し、未完了の場合は次のセッションを起動します
軽量モード
  1. 各反復で同じプロンプトを入力します
  2. エージェントはファイルと git 履歴から前回の作業を確認します
  3. 作業が完了し、promise タグが出力されるまで反復します
  4. task_list.md は作成せず、完了は promise のみに基づいて判定します
モードの選び方
シナリオ戦略モード
アプリケーション全体を構築する構造化ヘッドレス
失敗しているすべてのテストを修正する軽量どちらでも可
モジュールをリファクタリングする軽量どちらでも可
複数フェーズのプロジェクト構造化ヘッドレス
すばやく反復的に修正する軽量フック
夜間に一括処理を実行する構造化ヘッドレス

重要な制約

  1. task_list.md への完了記録は追記のみです:[ ] → [x] の変更のみ行います
  2. タスクごとに実行ランナーは 1 つです:ロックファイルにより、同じタスクでの同時セッションを防ぎます
  3. プロジェクトファイルはプロジェクトのルートに置きます:.autonomous/ は追跡専用です
  4. 完了の宣言を適切に行います:エージェントは、実際に完了するまで <promise>DONE</promise> を出力してはなりません
  5. コストを意識します:セッションごとのデフォルト予算は $5 です。--max-budget で調整してください

トラブルシューティング

問題解決方法
「ロックファイルが存在します」前回の実行がクラッシュしました。.autonomous/<task>/run.lock を削除してください
セッションが何度も失敗するsessions/session-NNN.log でエラーを確認してください
ネストされたセッションのエラースクリプトは CLAUDECODE を自動的に解除します。代替手段としてフックモードを使用してください
フックのループが停止しない.claude/autonomous-loop.local.md を削除してください
タスクが見つからない--list を実行して、利用可能なタスクを確認してください
再起動したいタスクディレクトリを削除して、最初から開始してください
コストが高すぎる--max-budget の値を下げるか、--model sonnet を使用してください

コメント