Skip to content
AID v2.3.0 is out.See what's new →
Skills

aid-design-infra

  • name — aid-design-infra
  • description — Develop an infrastructure-resource design as a DESIGN SEED in .aid/design/infra.md — the resource, its configuration, and its provisioning and teardown. Use this skill when a resource’s shape and access policy are still being worked out, before anything is provisioned. Grounded in the Knowledge Base (.aid/knowledge/) and the project source. It WRITES NO production code and NO KB document — realize the seed into the provisioned resource with /aid-create-infra once it is ready. To design the pipeline that ships to the resource rather than the resource itself, use /aid-design-cicd instead. Produced by the aid-architect agent and independently verified by aid-reviewer (full verify). Allocates a work-NNN folder.
  • allowed-tools — Read, Glob, Grep, Bash, Write, Edit, Agent
  • argument-hint — <subject> — the infrastructure resource to design (resource, config, provisioning)

Definition: canonical/skills/aid-design-infra/SKILL.md

flowchart TB
  classDef aidNode color:#fff
  classDef aidEntry fill:#166534,stroke:#14532d,color:#fff
  classDef aidExit fill:#991b1b,stroke:#7f1d1d,color:#fff
  classDef aidDecision fill:#92400e,stroke:#78350f,color:#fff
  classDef aidLoopBack fill:#1e3a8a,stroke:#1e3a8a,color:#fff
  classDef aidStep fill:#1a2035,stroke:#d4a853,color:#f1f5f9
  n1(["INTAKE"])
  n2["DESIGN"]
  n3["VERIFY"]
  n4["PRESENT<br/>hard stop -- the user decides"]
  n5(["DONE"])
  n1 --> n2
  n2 --> n3
  n3 -.-> n2
  n3 --> n4
  n4 --> n5
  class n1 aidEntry
  class n2 aidStep
  class n3 aidLoopBack
  class n4 aidStep
  class n5 aidExit
  class n1 aidNode
  class n2 aidNode
  class n3 aidNode
  class n4 aidNode
  class n5 aidNode

Every node in the chart above, in chart order, with the exact canonical/ text it was derived from.

1 · INTAKE · entry

canonical/skills/aid-design-infra/SKILL.md#L38-L48
## State: INTAKE
1. **Require a subject.** Empty argument -> ask one bootstrapping question ("What
infrastructure resource do you want to design -- the resource, its configuration, and
its provisioning?") and wait.
2. **Allocate** through the Work Initiation Gate exactly as the contract's Allocation rule
requires (`canonical/skills/aid-design/SKILL.md` INTAKE step 4 is the shape), with
`initiator: aid-design-infra`. `phase` is not driven.
3. **Acquire `.aid/design/`** per the contract, then read `.aid/design/infra.md` if a prior
seed exists -- re-invocation iterates it rather than starting over.
4. **Classify complexity** for the `aid-architect` dispatch (verifier tier >= producer).

Source: canonical/skills/aid-design-infra/SKILL.md#L38-L48 · full step: canonical/skills/aid-design-infra/SKILL.md#L38-L50

2 · DESIGN · step

canonical/skills/aid-design-infra/SKILL.md#L54-L62
## State: DESIGN
Dispatch **`aid-architect`** (clean context, tiered) to write or iterate
`.aid/design/infra.md` in the seed shape the contract fixes (`design-seed.md`;
feature-002 §4), grounded in `.aid/knowledge/` and the project source plus any seed read
in INTAKE. What this artifact's seed must settle: **the resource, its configuration, and
its provisioning and teardown**; its `## Destination` names where the provisioned resource
lands. **Never writes `.aid/knowledge/` and never writes production code** -- the `design`
invariant (`design-lifecycle.md`).

Source: canonical/skills/aid-design-infra/SKILL.md#L54-L62 · full step: canonical/skills/aid-design-infra/SKILL.md#L54-L64

3 · VERIFY · loop-back

canonical/skills/aid-design-infra/SKILL.md#L68-L71
## State: VERIFY
**Full verify**, as `design-lifecycle.md` defines it. Not clean -> loop to DESIGN; the
3-cycle circuit breaker there escalates to IMPEDIMENT + `lifecycle: Blocked`.

Source: canonical/skills/aid-design-infra/SKILL.md#L68-L71 · full step: canonical/skills/aid-design-infra/SKILL.md#L68-L73

4 · PRESENT — hard stop — the user decides · step

canonical/skills/aid-design-infra/SKILL.md#L77-L80
## State: PRESENT (hard stop -- the user decides)
Set `lifecycle: Paused-Awaiting-Input`. Present the seed clearly. Assert no resolution --
the user iterates (re-invoke this skill) or realizes it now (`/aid-create-infra`).

Source: canonical/skills/aid-design-infra/SKILL.md#L77-L80 · full step: canonical/skills/aid-design-infra/SKILL.md#L77-L82

5 · DONE · exit · UNSPECIFIED

canonical/skills/aid-design-infra/SKILL.md#L86-L89
## State: DONE
Set `lifecycle: Completed`, `updated` now, append a `## Lifecycle History` row. The seed
persists at `.aid/design/infra.md`; consumption happens at `/aid-create-infra`.

Source: canonical/skills/aid-design-infra/SKILL.md#L86-L89 · full step: canonical/skills/aid-design-infra/SKILL.md#L86-L89

Report an issue with this page →