mcpField
C
cursor-delegate

cursor-delegate

github.com/amelnagdyエージェントワークフロー2.5k4.2k 回インストール2 週間前に更新
リポジトリ

cursor-delegate について

cursor-delegateは、範囲を限定したコーディングタスクをCursor Agent CLIに委任し、独立したレビューとコミットを行うためのスキルです。ブリーフの作成から中継スクリプトによる実行、変更の検証までを扱います。

主な機能

  1. 01範囲を限定したタスクをCursor Agent CLIに委任
  2. 02付属の中継スクリプトでブリーフを実行
  3. 03差分ブリーフでCursorセッションを再開
  4. 04差分を確認しプロジェクトのチェックを再実行
  5. 05検証後にのみコミット

活用シーン

  1. 01リポジトリで範囲を限定した変更を実装
  2. 02読み取り専用のコードレビューや診断を依頼
  3. 03初回の実装に修正が必要な場合に作業を継続

MCP 対応

Codexによるバックグラウンド実行では、別途codex-backgroundユーティリティと登録済みのdelegate_run MCPツールが必要です。シェルでのポーリングには暗黙に切り替えません。それ以外のオーケストレーターはシェルの手順を使います。

インストール

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

$npx skills add https://github.com/amelnagdy/delegate-skills --skill cursor-delegate

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

同梱ファイル

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

references/
dispatch-and-poll.md
multi-task-queues.md
review-and-land.md
writing-the-brief.md
scripts/
relay.mjs

詳細

Cursor Delegate

あなたはオーケストレーターです。範囲を限定したコーディングタスクを、別の実装担当である Cursor Agent CLI に任せ、その成果をレビューして自分で取り込みます。依頼内容を作成し、判断に責任を持つのはあなたです。Cursor は独自のセッションでコードを記述し、あなたが検証してコミットします。

この一連の作業に必要なのはシェルコマンドとファイルアクセスだけなので、同等のオーケストレーターであればどれでも実行できます。

使用しない場合

  • インラインで対応できるほど小さなタスクの場合。委任のオーバーヘッドに見合いません。
  • cursor-agent CLI がインストールされていない、または認証されていない場合(cursor-agent login を実行してください)。
  • 自分でコードを書きたい場合、または自分が書いたコードについて Cursor の意見だけが必要な場合(--read-only で実行できます。下記を参照してください。ただし、単なるレビューなら委任自体が不要なこともあります)。

前提条件(一度だけ確認)

  1. cursor-agent --version が正常に実行されること。実行できない場合は、cursor.com/cli で使用中のプラットフォーム向けインストーラーを確認し、実行内容を調べてから、cursor-agent login で認証してください。
  2. cursor-agent status でログイン済みと表示されること。
  3. 対象の git リポジトリ内にいること(または --cd で対象を指定すること)。リレーは --trust を渡すため、信頼できるリポジトリだけを指定してください。

モデルを選択する

--model を省略すると、Cursor のデフォルト(通常は Cursor が選択する auto)が使われます。モデルを指定するには、アカウントの cursor-agent models の最新出力にある名前を使って --model <name> を渡してください。名前を推測せず、その一覧から選択してください。<name>[context=1m,effort=high] のようなパラメーター付きの形式も、そのまま渡されます。実行で実際に使用されたモデルは、result.json の resolvedModel に記録されます。

一連の作業

タスクごとに、以下の5つの手順を実行します。手順1、4、5では判断が必要ですが、2と3は機械的な作業です。

1. 依頼内容を作成する

Cursor に見えるのは、あなたが送信したテキストと、ワークスペース内で確認できる情報だけです。チャット履歴や共有コンテキストはありません。目標、現状、変更する内容、変更せずに残す内容、プロジェクトで実際に適用されるチェック項目、報告の形式を含めてください。コミットしないよう Cursor に指示してください。依頼1件につきタスクは1つにしてください。references/writing-the-brief.md を参照してください。

2. 実行を指示する

バックグラウンド作業をCodex でオーケストレーションする場合は、最初に別個のサポートユーティリティである codex-background をインストールして設定してください。その MCP ツールまたはレジストリが見つからない場合は、処理を中断してセットアップが必要であることを報告してください。モデル駆動のポーリングに黙って切り替えてはいけません。その後、以下のシェルコマンド例の代わりに、登録済みの delegate_run MCP ツールを1回呼び出してください。 構造化された共通引数、変更しないプロバイダーフラグ、runId による再接続については、そのスキルに従ってください。完了するまでリクエストを保留し、その後、このスキルのレビューと取り込みの手順に進んでください。その他のオーケストレーターは、以下のシェルワークフローを使用してください。

同梱のヘルパーを使用してください。このヘルパーは cursor-agent -p をラップし、標準入力から依頼内容を渡して、構造化イベントストリームを取得し、result.json を書き出します。(<skill-dir> は、この SKILL.md が含まれるインストール先フォルダーです。)

node "<skill-dir>/scripts/relay.mjs" --brief brief.txt --cd /path/to/repo
# read-only (plan mode — review/diagnosis, no edits):  add --read-only
# write-capable without automatic command approval:   add --no-force
# explicitly override Cursor's sandbox for this run:  add --sandbox enabled|disabled
# pin a model from `cursor-agent models`:              add --model <name>
# resume the most recent session:                      add --resume-last  (delta brief only)
# resume a specific session:                           add --session <id> (delta brief only)
# hard time limit (watchdog):                          add --timeout 2h  (the 30m default suits short runs; implementation briefs routinely need 1-2h)
# kill a live-but-silent run early (opt-in):           add --stall-timeout 10m  (status "stalled"; clock pauses during tool calls)
# see all options:                                     node .../relay.mjs --help

子プロセスの作業ディレクトリによってワークスペースが固定されます。Cursor 2026.07.23 以降では、追加のワークスペースディレクトリに対してのみ、繰り返し指定できる --add-dir フラグを使用してください。リレーはデフォルトでシステムの一時ディレクトリに成果物を書き込み、コミットは行いません。references/dispatch-and-poll.md を参照してください。

3. 完了を待つ

codex-background を使用する Codex は、モデル主導のスリープ、ステータス確認、ログ確認を行わず、元の MCP リクエストを保留したままにします。中断されたリクエストに再接続する場合に限り、delegate_wait を使用してください。

ヘルパーは Cursor が完了するまでブロックします。オーケストレーターのバックグラウンドコマンド機能で実行するか、シェルでバックグラウンド実行して result.json をポーリングしてください。実行前の使用方法エラーでは終了コード 2 で終了し、結果は書き込まれません。cursor-agent が見つからない場合は終了コード 127 で終了し、status: "cursor_agent_unavailable" が書き込まれます。

進捗表示よりもプロセスの状態と作業ツリーを信頼してください。完了とは、プロセスが終了し、result.json が存在する状態です。Cursor の完全なレポートは result.json の finalMessage フィールドにあります(レポートのマーカーに挟まれた形で、標準出力にも全文が出力されます)。

Windows とフックに関する注意事項: ユーザーが Cursor フック(~/.cursor/hooks.json、または cursor-agent がインポートする Claude Code の PreToolUse フック)を設定している場合、Git Bash(MSYS)コンソールからディスパッチすると、cursor-agent は PowerShell 構文のフックラッパーを bash に渡すため、Cursor が実行しようとするすべてのコマンドがブロックされます。編集は反映されますが、ゲートは実行されません。代わりに PowerShell または cmd コンソールからディスパッチしてください。詳細は references/dispatch-and-poll.md を参照してください。

4. レビュー — 自己申告を信頼しない

Cursor の最終メッセージとゲート通過の申告は、あくまで申告として扱ってください。

  • プロジェクトのゲートを自分で再実行してください。
  • ブリーフと照らし合わせて差分を読み、touchedFiles から確認を始めてください。
  • 導入済みであれば、関連するガードスキルを実行してください。
  • マイグレーションを往復実行し、削除や名前変更の後に参照が残っていないか grep してください。

references/review-and-land.md を参照してください。

5. 変更を確定する

実装担当者が作業ツリーを編集し、オーケストレーターがコミットします。 ゲートを通過し、差分に問題がない場合に限ってコミットしてください。手直しが必要な場合は、--resume-last または --session <id> を指定して差分ブリーフを送り、再度レビューしてください。

自律性と権限

新規実行では、デフォルトで --force を付けた書き込み可能モードになります。Cursor の設定で明示的に拒否されていない限り、Cursor は承認なしでコマンドを実行するため、通常のゲート(テスト、リンター、ビルド)はヘッドレスで実行されます。--no-force を指定すると書き込み可能な状態は維持されますが、コマンドの自動承認は行われません。承認が必要なコマンドは、ヘッドレス実行ではプロンプトを表示できないため拒否されます。--read-only を指定すると、Cursor の プランモード(読み取り専用の分析、編集なし、--force なし)に切り替わります。リレーは、ヘッドレス実行がワークスペースの信頼確認プロンプトで停止しないよう、常に --trust を渡します。そのため、--cd の指定先は信頼できるリポジトリのみにしてください。ディスパッチで Cursor のサンドボックスを上書きする必要がある場合に限り、--sandbox enabled または --sandbox disabled を渡してください。指定した値は result.json の sandbox に記録されますが、Cursor が実際に適用した値を示すものではありません。Cursor が報告する権限モードは permissionMode に記録されます。実行のたびに touchedFiles と差分を確認してください。

読み取り専用のセカンドオピニオン

--read-only は、書き込みリスクなしで対立的なセカンドオピニオンを得るためにも使えます。合意した点を列挙したうえで、意見が分かれている各点について両方の立場を示すブリーフをディスパッチし、それぞれについて Cursor に主張を擁護するか譲歩するよう求めてください。成果物は最終メッセージで提出させ、ファイルには一切触れさせません。

承認モデル

委任するかどうかは、人間が選択します。委任を開始した後(「このキューを実行して」「続行して」など)、検証済みでゲートを通過した作業をコミットすることが、合意された契約です。制限は 2 つあります。表に出し、抱え込まないこと(Cursor の設計判断、依頼されていないものの正当化できる変更、ブロッキングではない細かな指摘を報告すること)、そして スコープの変更時は停止すること(正しく完了するためにブリーフの範囲を超える必要がある場合は、権限を拡大せず、確認を求めること)です。references/review-and-land.md を参照してください。

参考資料

コメント