code-autonomous について
Code Autonomousは、計画された作業を実装するharness対応スキルです。単独実行とGitLab issueフローの実装エンジンに対応し、隔離worktree、必要に応じた複数エージェントへの分配、レビュー修正ループを使います。
主な機能
- 01作業内容に応じた計画深度の選択
- 02隔離worktreeでの実装を必須化
- 03独立した作業単位をサブエージェントに分配
- 04完了した作業をチェックポイントコミット
- 05修正ループを伴う変更レビュー
活用シーン
- 01ローカル計画や個別依頼の実装
- 02GitLab issueフローの実装フェーズの実行
- 03独立した作業単位の複数エージェントへの分配
- 04レビュー不承認後の変更修正
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ nextstage-brasil/ skills --skill code-autonomousインストール後、Claude Code で/code-autonomousを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
evals/evals.jsonreferences/doubt-resolution.mdmulti-agent-dispatch.mdplanning-decision.mdrouting.mdstandalone-pipeline.md詳細
Code Autonomous
ハーネスを考慮した実行エンジンです。計画の詳細度を判断し、疑問点を解決し、複数エージェントによる作業を振り分け、レビューゲートで一連の流れを完了します。単独のパイプラインとして、または別のスキルの実行エンジンとして動作します。
分離の不変条件(譲れない条件)
このスキルは、人間が今回の実行について「新しいブランチを作成せず、現在のブランチ上で作業する」と明示的に指示した場合を除き、メインのプロダクトチェックアウト上でアプリケーションコードを決して書き換えず、main/master(または任意のベースブランチ/SOURCE_BRANCH)に決してコミットしません。
- スタンドアロンモードとエンジンモードのどちらでも、実装を編集する前に、分離された
WORK_BRANCHとWORKTREE_ROOTが必要です。 - ワークツリーの作成に失敗した場合、または現在の作業ディレクトリ/ブランチがメインチェックアウト/ベースブランチのままの場合は、停止してください。「計画を進めるためにメインブランチで続行」してはいけません。
- サンドボックスの制限(
Operation not permitted、.cursor/以下の Cursor エージェントランタイムパス)は、この不変条件に違反する許可にはなりません。
ハーネスの検出
../nextstage-harness/references/harness-discovery.md を参照してください。
振り分け(最初に読む)
- 起点が GitLab イシューの場合(
ISSUE_URLまたはイシュー参照)→最初から最後までexecution-gitlab-issueに従ってください。このスキルは、下記のエンジンモードで Phase 2 のエンジンとしてのみ実行します。スタンドアロンパイプラインは実行せず、GitLab の状態にも触れず、ワークツリーも作成しないでください。 - それ以外の場合(ローカルの計画ファイル、貼り付けられたテキスト/計画、イシューを伴わない臨時の自律実行リクエスト)→スタンドアロンパイプラインを実行します。独自のワークツリー、独自の状態、独自のレビューループを使用します。
判断の詳細とエンジンモードの入出力契約については、references/routing.md を参照してください。
エンジンモード(execution-gitlab-issue から呼び出されます)
入力(呼び出し元によってすでに解決済みのもの。このスキルは作成しません):イシューペイロード、{product_root}、WORKTREE_ROOT、WORK_BRANCH、SOURCE_BRANCH。
- 計画の詳細度を自ら判断 — イシューペイロードを評価し、単一の作業単位にするか、
docs/versions/{version_san}/以下に簡易版のrequirements.md+tasks/task-NNN-*.md+execution-plan.mdを作成するかを決定します。references/planning-decision.mdを参照してください。 - 疑問点への対応プロトコル — 自ら問いを立て、まずドキュメントを調べ、破壊的でない疑問には自ら回答し、破壊的な疑問は GitLab の状態を変更せず、構造化イベントとして呼び出し元にエスカレーションします。再開されるまで、依存する作業単位を一時停止します。
references/doubt-resolution.mdを参照してください。 - 複数エージェントへの振り分け — 作業単位(または単一の作業単位)を解析し、
code-coderサブエージェントに振り分けます。DAG エッジがなく、ファイルの対象範囲が重複しない作業単位に限り並列で、それ以外は逐次で実行します。各サブエージェントはWORKTREE_ROOT内で作業し、メインチェックアウトでは作業しません。references/multi-agent-dispatch.mdを参照してください。 - チェックポイントコミット — 完了した逐次作業単位ごと、または完了した並列バッチごとに、ワークツリー内で1回コミットします。呼び出し元は引き渡し時にスカッシュします。
- 修正ループの開始点 —
Rejected判定後に再度呼び出された場合、レビュアーの指摘を新しい作業単位(または作業単位群)として扱い、それらだけに対して手順3を繰り返します。 - 呼び出し元に返す情報:作業単位のステータス、変更したファイル、未解決の破壊的な疑問、および(初回の呼び出し時のみ)
set_issue_estimate用の計画ベースの所要時間見積もり。
スタンドアロンパイプライン(GitLab 起点ではない場合)
Engine モードと内部処理は同じですが、このスキルが実行全体を担います。
- 記述子を解決します — ローカルの計画パスまたは貼り付けられたテキストです。MCP 呼び出しはありません。
change_kind(fix/feat)を推定し、{version_san}を割り当て、docs/versions/{version_san}/を作成します。- 独自のワークツリーを作成します:
{product_root}/.worktrees/{version_san}/とブランチwork/{version_san}を、解決済みのベースブランチから作成します。../nextstage-harness/references/worktree-setup.mdに従ってください。パスは 製品ルートの下 に置き、.cursor/の下には決して置きません。失敗した場合は中止します(メインのチェックアウトにフォールバックしません)。references/standalone-pipeline.mdを参照してください。 - 計画の深さに関する自己判断、疑念プロトコル(破壊的な疑念がある場合はチャットのみで確認し、GitLab の操作は利用不可)、マルチエージェントのディスパッチは、Engine モードと同じロジックです。
- 内部レビューループ —
code-reviewer(version-closure モード)を呼び出し、最大 3 ラウンド実施します。Rejectedの場合は修正単位に対応し、Blockedまたはラウンド上限に達した場合は停止します。 {version_san}、ワークツリーパス、コミット、レビュー判定、および必要なフォローアップを報告します。GitLab ボードも MR も作成しません。ただし、docs/context/gitlab-sync-config.mdが存在し、人間が明示的に作成を依頼した場合を除きます(v1 の範囲外です。それ以外ではスタンドアロンはローカルのみで完結します)。
全体の流れについては references/standalone-pipeline.md を参照してください。
停止して人間に確認する条件
| 条件 | 対応 |
|---|---|
| 破壊的な疑念がある(Engine モード) | エスカレーションイベントを呼び出し元に返します — ここではチャットを一時停止しません |
| 破壊的な疑念がある(スタンドアロン) | チャットを停止して質問し、回答をコンテキストとして再開します |
同じ {run_id} のワークツリーが競合している(スタンドアロン) | 明示的な再開指示がない限り停止します |
git worktree add に失敗した(権限/サンドボックス/パス) | 中止します — 試行したパスを報告し、メインのチェックアウトや .cursor/ には決してフォールバックしません |
コード編集を始める時点で、まだ main/master/ベースブランチにいる | 中止します — 分離ができていません。実装しないでください |
| 人間が明示的に「新しいブランチを作成しない/その場で作業する」と述べた場合 | その場合に限り現在のブランチを編集できます。それでも .cursor/ のパスを作り出してはいけません |
| スタンドアロンのワークツリーのベースブランチが解決できない | 停止します — 一度だけ質問します |
レビューが Blocked、または 3 ラウンドを使い切った場合 | ブロックされた状態として停止し、報告します — 成功したと偽ってはいけません |
| GitLab 起点なのに、ワークツリー/ブランチが指定されずに Engine モードが呼び出された場合 | 停止します — これは疑念ではなく、呼び出し元の契約違反です |
関連スキル
| スキル | 役割 |
|---|---|
execution-gitlab-issue | GitLab のフローを担い、Phase 2 でこのスキルを呼び出します |
code-coder | 作業単位ごとに使用するサブエージェントの実装パターン |
code-reviewer | レビューゲート(呼び出し元経由の issue モード、スタンドアロンの version-closure モード) |
nextstage-harness | 成果物のレイアウト、ワークツリーの仕組み、検出 |
参考資料
| ファイル | 内容 |
|---|---|
references/routing.md | Issue と単独実行の判断、execution-gitlab-issue とのエンジンモードの入出力契約 |
references/planning-decision.md | 自己評価のヒューリスティック:単一単位か、要件+タスク+計画か |
references/doubt-resolution.md | 自問、ドキュメントを優先した検索、破壊的操作の基準、エスカレーションの形式 |
references/multi-agent-dispatch.md | DAG とスコープが重複しない場合の並列実行ルール、サブエージェントのプロンプト、チェックポイントコミット |
references/standalone-pipeline.md | GitLab を使わない全フロー:バージョンの割り当て、独自のワークツリー、レビューループ |