cursor-agent-supervisor について
`cursor-agent`コマンドでCursorのサブエージェントを管理するスキルです。タスク別エージェントの作成や再開、コンテキストの準備、完了後の確認方法を扱います。
主な機能
- 01サブエージェント会話の作成と再開
- 02タスクに使うモデルの選択
- 03焦点を絞ったタスク指示の準備
- 04変更内容の確認と検証の実行
活用シーン
- 01範囲を絞ったコード変更の委任
- 02JJリビジョンに関する作業の割り当て
- 03サブエージェントの実装内容の確認
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ ypares/ agent-skills --skill cursor-agent-supervisorインストール後、Claude Code で/cursor-agent-supervisorを入力して読み込まれたか確認します。
詳細
エージェントスーパーバイザー
次のようにしてサブエージェントを起動できます(例:特定の JJ リビジョンで作業するため):
# Create a conversation with a sub-agent:
cursor-agent --print --model <model-name> create-chat # Prints a conversation uuid
# Give a task to the sub-agent: (command will finish when sub-agent is done)
cursor-agent --print --resume <conversation-uuid> "...description of the subagent's task..."
モデルの選択
cursor-agent --print --model unknown-model はエラーを出力し、利用可能なモデルの一覧が表示されます。
タスクに最適なモデルがわからない場合は、とりあえずデフォルトで sonnet-4.5 を使用してください。
呼び出し
重要: サブエージェントのタスクには数分かかることがあります。常により長いタイムアウトを指定してください:
# In your Shell tool call, set timeout to 10 minutes
timeout: 600000
--print フラグを指定すると、サブエージェントは単独で実行され、完了したときだけ返信します。
サブエージェントのための環境を整える
エージェントがタスクに集中できるように準備してください(例:JJ を使用している場合、本当に必要な場合を除いて jj コマンドを実行させる必要はありません。
特に、作業を行うリビジョンに入るために、まず自分で jj edit を実行してください)。
理想的には、サブエージェントはあなたの指示を読み、コードを書き換え、ビルドやテストを実行し、またコードを書き換える、といったことを
指示が実装されるまで繰り返し、最後に最終的な回答を返すだけでよいようにします。
帳簿管理の責任はあなたにあります。彼らではありません。大局を把握しているのはあなたであり、彼らではありません。
適切な指示の出し方
サブエージェントがタスクを完了するために必要な指示を与えてください。ただし、彼らを圧倒しないでください。
すべきこと:
- 明確で具体的なゴールを示す
- 読むべき/変更すべき主要なファイルを列挙する
- 「完了」の状態がどういうものかを明示する
- 従うべき関連パターンや参照実装を含める
- 必要であれば、読み込むべきスキルを伝える
すべきでないこと:
- 一部のスキルしか必要としていないのに、スキル全体を投げつけたりリンクしたりする
- 無関係なコンテキストを含める
- 成功基準を曖昧なままにする
タスク説明テンプレート
Work on [specific task] in [repo/directory].
**Setup:**
- Skills to load or files to read IN FULL
- Summarized instructions from skills or files, tailored to the task
**Goal:**
[Clear description of what to implement/fix]
**Key files:**
- path/to/main/file.ts - [why it matters]
- path/to/reference.ts - [pattern to follow]
**Requirements:**
- [Specific requirement 1]
- [Specific requirement 2]
**Done when:**
- [Testable criterion 1]
- [Testable criterion 2]
- [e.g., "pnpm -F @pkg lint passes"]
サブエージェント完了後
常にサブエージェントの作業を検証してください:
- 何が変わったかを確認する: コミット/リビジョンの差分を確認し、タスクとの適合性を確認する
- 実際のコードをレビューする(変更が些細でない場合)
- 検証コマンドを実行する(テスト、型チェック、lint)
- 結果に基づいてタスクのステータスを更新する(jj-todo-workflow を使用している場合)
問題が発生したとき
サブエージェントが次のような場合:
- 失敗またはエラーになった場合: 出力を読み、阻害要因を修正し、より多くのコンテキストを付けて再試行する
- 不完全な作業を生み出した場合: 自分で作業を続けるか、指示を明確にして別のサブエージェントを起動する
- 軌道から外れた場合: 何が起きたかを確認し、必要に応じて変更を元に戻し、より厳しい制約で再試行する
- ツールの使用で行き詰まった場合: 明示的なコマンドやパスを提供する必要があるかもしれません