invoke-agent について
invoke-agent は、現在の herdr ワークスペースでチームの役割を利用可能にするスキルです。該当する稼働中のエージェントを再利用するか新規作成し、プレイブックを読み込んでタスクを渡します。
主な機能
- 01現在のワークスペース内のエージェントを検索
- 02役割エージェントを再利用または作成
- 03プレイブックを読み込み
- 04エージェントにタスクを送信
活用シーン
- 01herdr ワークスペースで TESTER 役を利用可能にする
- 02新規または既存の役割エージェントにタスクを割り当てる
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ adminoryslabs/ armory --skill invoke-agentインストール後、Claude Code で/invoke-agentを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/PLAYBOOK-ARCH.mdPLAYBOOK-BA.mdPLAYBOOK-DEV.mdPLAYBOOK-LEAD.mdPLAYBOOK-PM.mdPLAYBOOK-TESTER.mdPLAYBOOK-UX.md詳細
Invoke Agent — herdrでロールを呼び出す
目標
指定されたロールのエージェントを、プレイブックを読み込んだ状態で現在の herdr ワークスペース内から利用できるようにします。すでに起動しているエージェントがあれば再利用し、なければ新しく作成します。
herdr に触れず、現在実行中のセッションにロールを読み込むには、代わりに init-agent を使用します。
利用可能なロール
init-agent と同じです:PM、BA、UX、ARCH、LEAD、TESTER、DEV
(references/PLAYBOOK-<ROL>.md)。herdr でのエージェント名の規則:ロールを小文字にします
(pm、ba、ux、arch、lead、tester、dev)。
入力
ロールのパラメーター。大文字と小文字は区別されません。例:/invoke-agent TESTER。
指定されていない場合、またはいずれのロールにも一致しない場合は、呼び出すロールを尋ねて返答を待ちます。デフォルトのロールを推測してはいけません。
ワークフロー
- 現在のワークスペースを特定します。 環境変数
HERDR_WORKSPACE_IDを読み取ります(利用できない場合は、herdr pane get $HERDR_PANE_IDで取得します)。 - 現在のワークスペースのペインを一覧表示します:
herdr pane list --workspace <workspace_id>。 - 起動中のエージェントを一覧表示します:
herdr agent list。 - 2つの一覧を照合します。
pane_idが現在のワークスペースのペインに含まれ、名前が指定されたロールの規則と一致するエージェントを探します。正しいロールの起動中エージェントでも、別のワークスペースにいる場合は対象外です。無視します。- 現在のワークスペースに存在する場合 → そのエージェントを宛先にします。手順6に進みます。
- 存在しない場合 → 手順5に進みます。
- 現在のワークスペースに新しいエージェントを作成します:
- ロール名が別のワークスペースの起動中エージェントにすでに使用されている場合は、数値のサフィックスを追加して空いている名前を選びます(
dev-2、dev-3、...)。 herdr pane split --current --direction right --focus→ 返されたpane_idを取得します。herdr agent start <nombre-resuelto> --kind <tu-agente> --pane <pane_id>。ユーザーから別の指定がない限り、現在実行中のものと同じ種類のエージェント(claude、opencode など)を使用します。
- ロール名が別のワークスペースの起動中エージェントにすでに使用されている場合は、数値のサフィックスを追加して空いている名前を選びます(
- ロールと作業をエージェント(新規または再利用)に渡します:
herdr agent prompt <target> "/init-agent <ROL>"— テキストで貼り付ける代わりに、エージェント自身にプレイブックを読み込ませます。- 実際のタスクを伝えるため、
herdr agent prompt <target> "<encargo concreto>"をもう一度実行します。入力資料の場所、プロジェクトの最小限のコンテキスト、関連する未解決事項を含めます。 - 作業完了の通知を待つ依頼の場合(たとえば、LEAD が成果物を待っている場合)、依頼内容に自分のエージェント名と通知の形式を含めます:
herdr agent prompt <tu-nombre> "ENTREGA <ROL>: ...". 自分の名前はherdr agent listを使い、pane_idが$HERDR_PANE_IDと一致するエージェントを探して取得します。
- エージェントを再利用したか新規作成したかを、
pane_idと名前とともにユーザーに1行で確認します。
エージェント間のメッセージ
エージェント間の通知には固定のプレフィックスを付け、受信側がテキストを解釈せずに何をすべきか分かるようにします。メッセージでは、内容がプロジェクトのファイルにあることだけを伝えます。
| プレフィックス | 送信元 → 送信先 | タイミング |
|---|---|---|
ENTREGA <ROL> | TESTER / DEV → LEAD | 作業単位の担当部分が完了した |
CONTEXTO TÉCNICO LISTO | ARCH → BA | 既存システムの技術的コンテキストを人間が承認した |
GLOSARIO: TÉRMINOS NUEVOS | BA → ARCH | コード内に場所が見つからない用語集の用語がある |
GLOSARIO COMPLETO | ARCH → BA | 場所の特定が完了した |
同じ2人のエージェント間で同じ意見の相違についてやり取りするのは、最大2回までです。その後は人間が判断します。
注意事項
- 呼び出すエージェントと同じ環境に
init-agentがインストールされている必要があります。インストールされていない場合は、代わりに最初のherdr agent promptで該当するプレイブックの内容をすべて貼り付けてください。 - 指定された役割のエージェントが別のワークスペースで起動中の場合は、アイドル状態であっても再利用しないでください。
- 名前がすでに使用されているために
herdr agent startが失敗した場合は、別の名前でむやみに再試行する前に、herdr agent list/herdr agent getで原因を調べてください。 - 時間のかかる作業の完了を待つために
--waitを使わないでください。タイムアウトしても、作業が失敗したとは限りません。そのために手順 6.3 の折り返し通知があります。