coordinating-multi-space-devops-agent

作成者: aws

1つのClaude Codeセッションから、複数のAgentSpacesにわたってAWS DevOps Agentを調整します — 質問を適切なスペース(prod vs staging vs knowledge)にルーティングし、…

npx skills add https://github.com/aws/agent-toolkit-for-aws --skill coordinating-multi-space-devops-agent

Querying multiple AgentSpaces

Pre-flight

If aws_devops_agent__list_agent_spaces is not in your available tools, the remote MCP server is not connected. Tell the user to ask "help me set up the AWS DevOps Agent" so the setup-devops-agent skill auto-loads.

Prerequisite: SigV4 auth required

Multi-space routing requires SigV4 authentication — Bearer tokens are scoped to a single AgentSpace and cannot route to other spaces.

Many real teams run more than one AgentSpace — typically a production space, a staging space, and a dedicated "knowledge" space that holds runbooks shared across accounts. Each space has its own set of associated AWS accounts, runbooks, and history.

This skill is the routing brain. Use it when the user has multiple spaces configured, or when a question genuinely spans accounts.

Discovering spaces

aws_devops_agent__list_agent_spaces()
→ {"agentSpaces": [{"agentSpaceId": "as-abc123", "name": "prod"}, ...]}

If only one space is returned, this skill doesn't apply — use chatting-with-aws-devops-agent or investigating-incidents-with-aws-devops-agent directly (no agent_space_id needed).

If more than one is returned, decide whether the user's question is:

Question shapeStrategy
Scoped to one environment ("prod is broken")Single space — pick the matching one
Spans environments ("compare prod vs staging")Parallel — query each, synthesize
Generic knowledge ("what runbooks do we have for ECS?")Route to the knowledge space if one is named that way
Ambiguous ("our service is slow")Ask the user which environment, don't guess

Per-session routing memory

If the user has a routing guide stored locally (e.g. .claude/aws-agents-for-devsecops.md, AGENTS.md, or per-project notes), read it once at the start of the session and use it as the routing table for the rest of the conversation. Format expected:

| Space | AWS Profile | Agent Space ID | Purpose |
|-------|-------------|----------------|---------|
| prod  | acme-prod   | as-abc123      | Production incidents, customer-facing services |
| stage | acme-stage  | as-def456      | Pre-prod validation, integration testing |
| kb    | acme-shared | as-ghi789      | Shared runbooks, cross-account knowledge |

If no guide exists, run discovery:

  1. aws_devops_agent__list_agent_spaces() → get all spaces.
  2. For each space: aws_devops_agent__chat(message="Summarize the AWS accounts, services, and runbooks you have access to.", agent_space_id="<SPACE_ID>") → get a one-paragraph summary.
  3. Offer to write the routing guide to the project (e.g. .claude/aws-agents-for-devsecops.md, AGENTS.md, or per-project notes) so future sessions skip discovery.

Pattern A — Parallel queries, one synthesized answer

Use when the user wants a comparison: "compare prod and staging error rates", "is this issue happening in both accounts?", "audit costs across all our environments".

# 1. Query each space in parallel with environment-specific context
aws_devops_agent__chat(message="<question> | env=prod | <prod IaC context>", agent_space_id="PROD_ID")
→ {"executionId": "...", "answer": "..."}

aws_devops_agent__chat(message="<question> | env=stage | <stage IaC context>", agent_space_id="STAGE_ID")
→ {"executionId": "...", "answer": "..."}

# 2. Synthesize locally — present a side-by-side summary, not two separate dumps

Don't just paste both responses. Read both, identify what's the same vs. different, and tell the user the delta — that's the value.

Pattern B — Knowledge lookup, then per-space action

Use when one space holds runbooks/knowledge that informs work in another space.

# 1. Ask the knowledge space first
aws_devops_agent__chat(
    message="What's our standard runbook for ECS 503 errors?",
    agent_space_id="KB_ID"
)
→ {"answer": "<runbook text>"}

# 2. Apply that runbook in the target environment
aws_devops_agent__investigate(
    title="ECS 503 errors on checkout-service. [Runbook from knowledge space] <runbook text> [Local context] ...",
    agent_space_id="PROD_ID",
    priority="HIGH"
)

The DevOps Agent doesn't share state between spaces — you bridge it by quoting the knowledge space's response into the investigation's title.

Pattern C — Targeted single-space query

Use when the user explicitly names a space or environment.

# Pick the matching agentSpaceId from your routing memory, pass it on the call
aws_devops_agent__chat(message="<question>", agent_space_id="<matched_space_id>")

If the routing is ambiguous and the user doesn't say, ask once — better than firing into the wrong account.

Pattern D — Investigations don't share state

Investigations are per-space. If an issue spans accounts, you may need two investigations:

aws_devops_agent__investigate(title="Latency spike — prod side", agent_space_id="PROD_ID", priority="HIGH")
aws_devops_agent__investigate(title="Latency spike — stage side", agent_space_id="STAGE_ID", priority="HIGH")

Track both taskIds. Poll both. Surface findings together.

This is rare — usually one space owns the problem. Don't fan out by default.

What NOT to do

  • Don't blast every space with every question. It's slow, expensive, and the user has to read 3× as much output.
  • Don't fan out without verifying scope. If a space's description or recorded coverage doesn't mention the relevant service, skip it — sending a question into a scope-mismatched space typically hangs rather than returning "I don't know."
  • Don't fire investigations in parallel by default. They take 5–8 minutes each. Pick the one space that owns the incident.
  • Don't silently switch spaces mid-conversation. If a follow-up needs a different space, tell the user: "Switching to the knowledge space to look up the runbook."

Timeout guidance

The chat tool buffers the full response server-side before returning. Complex cross-account queries can take 30-90s per space. If a space doesn't respond within 90s, it's likely a scope mismatch — surface a message like "Space X did not respond within 90s — skipping (likely scope mismatch)" and move on rather than hanging.

See also

  • examples/multi-space-walkthrough.md for a fully worked scenario (prod incident with staging comparison and knowledge-space runbook lookup).
  • The setup-devops-agent skill for first-time configuration of multiple AgentSpaces, AWS profiles, and shell wrappers.

awsのその他のスキル

agents-build
aws
既存のエージェントプロジェクトを、メモリ、アプリ統合、VPC、マルチエージェント、移行、モデル、ブラウザ、コードインタープリター、決済、またはリソースで拡張するために使用します。
official
agents-connect
aws
エージェントをGateway経由で外部API、ツール、またはサービスに接続する場合、またはCedarポリシーでツールアクセスを制限する場合に使用します。ゲートウェイのセットアップ、ターゲット…
official
agents-debug
aws
エージェントや環境が壊れている場合に使用します。誤った回答、エラー、タイムアウト、ツールの失敗、CLIの問題など。トレースとログを読み、根本原因を診断します。…
official
agents-deploy
aws
エージェントをAWSにデプロイする際、またはデプロイが失敗した際に使用します。事前検証、CDK/IAM/クォータエラーの診断、バージョン管理、ロールバックなどを処理します。
official
agents-get-started
aws
開発者が新しいエージェントプロジェクトを作成したい場合や、AgentCoreを使い始めたい場合に使用します。フレームワークの選択、プロジェクトの雛形作成、初回デプロイなどを処理します。
official
agents-harden
aws
エージェントを本番環境向けに準備する際に使用します — IAMスコープ、インバウンド認証(JWT、SigV4)、シークレット管理、コールドスタート最適化、セッションライフサイクル、レート…
official
agents-pay
aws
実行時にx402で保護されたコンテンツの支払いが必要な場合に使用する:タスク途中でペイウォールに遭遇した際、AgentCore Paymentsを通じて決済し、適用する…
official
amazon-aurora-mysql
aws
Amazon Aurora MySQL — Aurora MySQLクラスター(MySQL互換エンジン、Auroraサーバーレス、パラレルクエリ)の作成、変更、およびアドバイスを特に行います。…
official