/gaia-infra-design

user-facing
Category:
Planning
Lifecycle phase:
3 -- Solutioning
Arguments:
None

What it does

/gaia-infra-design designs the infrastructure topology and infrastructure-as-code (IaC) structure from your architecture. Covers environment design, deployment topology (containers, orchestration, networking), IaC project structure, and observability (logging, metrics, tracing, alerting).

When to use it

  • After creating the architecture, when you need to define deployment topology and IaC.

Prerequisites

  • Architecture must exist at .gaia/artifacts/planning-artifacts/architecture.md.

Orchestration mode

When /gaia-infra-design starts in subagent mode (Mode A -- the default), the framework emits a one-shot warning to your conversation. The warning text:


────────────────────────────────────────────────────────────────────────────
GAIA orchestration: running in subagent mode (Mode A)

The skill you're invoking belongs to a class (heavy-procedural or
conversational) whose output benefits from cross-step context. Mode A
dispatches each sub-agent in its own forked context, so context may
be lossy between steps — sub-agents return summaries, not full reasoning.

For the full-fidelity experience, enable Mode B (Agent Teams):
  1. Set CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1 in your environment.
  2. Add orchestration.mode: team to .gaia/config/project-config.yaml.

Mode B uses persistent teammates that preserve in-conversation state
across dispatches.

This warning is shown once per session.
────────────────────────────────────────────────────────────────────────────

Why Mode B is better for this command

The /gaia-infra-design skill declares orchestration_class: heavy-procedural in its SKILL.md frontmatter. Heavy-procedural skills produce output that benefits from cross-step context -- under Mode A every sub-agent dispatch runs in its own forked context and can only return a summary back to the orchestrator, losing the full reasoning trace of every prior step. Mode B uses persistent teammates that retain in-conversation state across dispatches, so each agent's contribution can build on what was said before instead of receiving only a summary.

How to enable Mode B

Both steps are required. If either is missing, the framework falls back silently to Mode A and the warning fires again on the next session.

Step 1 -- set the environment variable:

export CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1

Add this to your shell rc file to persist across sessions, or set it in Claude Code's settings.json.

Step 2 -- add the YAML block to .gaia/config/project-config.yaml:

orchestration:
  mode: team

One-shot semantics

The warning is emitted once per Claude Code session. A marker file at _memory/checkpoints/orchestration-warning-shown.<session-id> suppresses the warning for the rest of the session. Starting a new session re-emits the warning once.

How to invoke

/gaia-infra-design

What it does step by step

  1. Load architecture Extracts component inventory, service boundaries, and data stores.
  2. Environment design Defines environments (dev, staging, production), parity strategy, access policies, and promotion gates.
  3. Deployment topology Designs container orchestration, service mesh, load balancing, scaling strategy, and networking (VPC, subnets, CDN).
  4. IaC structure Defines the IaC tool (Terraform, Pulumi, etc.), project structure, module boundaries, and state management.
  5. Observability plan Defines logging (structured logs, aggregation, retention), metrics (application and infrastructure), tracing (distributed tracing, correlation IDs), and alerting (SLO-based alerts, escalation policies).
  6. Generate output Writes the infrastructure design document with Mermaid topology diagrams.

Inputs

InputSourceDescription
Architecture.gaia/artifacts/planning-artifacts/architecture.mdSystem components and service boundaries (required).

Outputs

OutputLocationDescription
Infrastructure design.gaia/artifacts/planning-artifacts/infrastructure-design.mdEnvironments, topology, IaC structure, and observability plan.

Example session

> /gaia-infra-design

Loading architecture... 4 services, 2 data stores.

Environments: dev, staging, production
  Parity: staging mirrors production (1:1 services, reduced scale)

Deployment: Kubernetes (EKS)
  3 namespaces, HPA auto-scaling, ALB ingress

IaC: Terraform
  modules/: vpc, eks, rds, redis, monitoring

Observability:
  Logging: structured JSON -> CloudWatch
  Metrics: Prometheus + Grafana
  Tracing: OpenTelemetry -> Jaeger
  Alerting: SLO-based (99.9% availability, p95 < 200ms)

Written to: .gaia/artifacts/planning-artifacts/infrastructure-design.md

What to run next

Troubleshooting

"Architecture doc not found"

Run /gaia-create-arch first.

I keep seeing the GAIA orchestration warning every time I start this command

The warning is shown once per session, so if it fires again that's a new session -- not a per-skill repeat. If you want to silence it entirely, enable Mode B (full-fidelity orchestration via Agent Teams). Both of these conditions must be true:

  • echo $CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS returns 1 (not empty)
  • .gaia/config/project-config.yaml contains:
    orchestration:
      mode: team

If either is missing the framework silently uses Mode A and re-emits the warning each session.