/gaia-infra-design
user-facingWhat 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-designWhat it does step by step
- Load architecture Extracts component inventory, service boundaries, and data stores.
- Environment design Defines environments (dev, staging, production), parity strategy, access policies, and promotion gates.
- Deployment topology Designs container orchestration, service mesh, load balancing, scaling strategy, and networking (VPC, subnets, CDN).
- IaC structure Defines the IaC tool (Terraform, Pulumi, etc.), project structure, module boundaries, and state management.
- Observability plan Defines logging (structured logs, aggregation, retention), metrics (application and infrastructure), tracing (distributed tracing, correlation IDs), and alerting (SLO-based alerts, escalation policies).
- Generate output Writes the infrastructure design document with Mermaid topology diagrams.
Inputs
| Input | Source | Description |
|---|---|---|
| Architecture | .gaia/artifacts/planning-artifacts/architecture.md | System components and service boundaries (required). |
Outputs
| Output | Location | Description |
|---|---|---|
| Infrastructure design | .gaia/artifacts/planning-artifacts/infrastructure-design.md | Environments, 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.mdWhat to run next
/gaia-create-epics-- break requirements into implementation work./gaia-readiness-check-- validate all planning artifacts are complete.
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_TEAMSreturns1(not empty).gaia/config/project-config.yamlcontains:orchestration: mode: team
If either is missing the framework silently uses Mode A and re-emits the warning each session.