mcpField
I
invoke-agent

invoke-agent

github.com/adminoryslabsエージェントワークフロー0104 回インストール3 日前に更新
リポジトリ

invoke-agent について

invoke-agent は、現在の herdr ワークスペースでチームの役割を利用可能にするスキルです。該当する稼働中のエージェントを再利用するか新規作成し、プレイブックを読み込んでタスクを渡します。

主な機能

  1. 01現在のワークスペース内のエージェントを検索
  2. 02役割エージェントを再利用または作成
  3. 03プレイブックを読み込み
  4. 04エージェントにタスクを送信

活用シーン

  1. 01herdr ワークスペースで TESTER 役を利用可能にする
  2. 02新規または既存の役割エージェントにタスクを割り当てる

インストール

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

$npx skills add https://github.com/adminoryslabs/armory --skill invoke-agent

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

同梱ファイル

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

references/
PLAYBOOK-ARCH.md
PLAYBOOK-BA.md
PLAYBOOK-DEV.md
PLAYBOOK-LEAD.md
PLAYBOOK-PM.md
PLAYBOOK-TESTER.md
PLAYBOOK-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。

指定されていない場合、またはいずれのロールにも一致しない場合は、呼び出すロールを尋ねて返答を待ちます。デフォルトのロールを推測してはいけません。

ワークフロー

  1. 現在のワークスペースを特定します。 環境変数 HERDR_WORKSPACE_ID を読み取ります(利用できない場合は、herdr pane get $HERDR_PANE_ID で取得します)。
  2. 現在のワークスペースのペインを一覧表示します: herdr pane list --workspace <workspace_id>。
  3. 起動中のエージェントを一覧表示します: herdr agent list。
  4. 2つの一覧を照合します。 pane_id が現在のワークスペースのペインに含まれ、名前が指定されたロールの規則と一致するエージェントを探します。正しいロールの起動中エージェントでも、別のワークスペースにいる場合は対象外です。無視します。
    • 現在のワークスペースに存在する場合 → そのエージェントを宛先にします。手順6に進みます。
    • 存在しない場合 → 手順5に進みます。
  5. 現在のワークスペースに新しいエージェントを作成します:
    1. ロール名が別のワークスペースの起動中エージェントにすでに使用されている場合は、数値のサフィックスを追加して空いている名前を選びます(dev-2、dev-3、...)。
    2. herdr pane split --current --direction right --focus → 返された pane_id を取得します。
    3. herdr agent start <nombre-resuelto> --kind <tu-agente> --pane <pane_id>。ユーザーから別の指定がない限り、現在実行中のものと同じ種類のエージェント(claude、opencode など)を使用します。
  6. ロールと作業をエージェント(新規または再利用)に渡します:
    1. herdr agent prompt <target> "/init-agent <ROL>" — テキストで貼り付ける代わりに、エージェント自身にプレイブックを読み込ませます。
    2. 実際のタスクを伝えるため、herdr agent prompt <target> "<encargo concreto>" をもう一度実行します。入力資料の場所、プロジェクトの最小限のコンテキスト、関連する未解決事項を含めます。
    3. 作業完了の通知を待つ依頼の場合(たとえば、LEAD が成果物を待っている場合)、依頼内容に自分のエージェント名と通知の形式を含めます: herdr agent prompt <tu-nombre> "ENTREGA <ROL>: ...". 自分の名前は herdr agent list を使い、pane_id が $HERDR_PANE_ID と一致するエージェントを探して取得します。
  7. エージェントを再利用したか新規作成したかを、pane_id と名前とともにユーザーに1行で確認します。

エージェント間のメッセージ

エージェント間の通知には固定のプレフィックスを付け、受信側がテキストを解釈せずに何をすべきか分かるようにします。メッセージでは、内容がプロジェクトのファイルにあることだけを伝えます。

プレフィックス送信元 → 送信先タイミング
ENTREGA <ROL>TESTER / DEV → LEAD作業単位の担当部分が完了した
CONTEXTO TÉCNICO LISTOARCH → BA既存システムの技術的コンテキストを人間が承認した
GLOSARIO: TÉRMINOS NUEVOSBA → ARCHコード内に場所が見つからない用語集の用語がある
GLOSARIO COMPLETOARCH → BA場所の特定が完了した

同じ2人のエージェント間で同じ意見の相違についてやり取りするのは、最大2回までです。その後は人間が判断します。

注意事項

  • 呼び出すエージェントと同じ環境に init-agent がインストールされている必要があります。インストールされていない場合は、代わりに最初の herdr agent prompt で該当するプレイブックの内容をすべて貼り付けてください。
  • 指定された役割のエージェントが別のワークスペースで起動中の場合は、アイドル状態であっても再利用しないでください。
  • 名前がすでに使用されているために herdr agent start が失敗した場合は、別の名前でむやみに再試行する前に、herdr agent list/ herdr agent get で原因を調べてください。
  • 時間のかかる作業の完了を待つために --wait を使わないでください。タイムアウトしても、作業が失敗したとは限りません。そのために手順 6.3 の折り返し通知があります。

コメント