Responsible for provisioning both cloud infrastructure (Terraform/CloudFormation/Pulumi) and local development environments (Docker Compose/dev setup/environment variables). Used when IaC design, environment setup, and multi-cloud support are required.
Scanned 9/9/2026
Install to Claude Code
npx -y skills add onfire7777/universal-ai-skills-library --skill scaffold --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Scaffold?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/onfire7777-scaffold)More formats (shields.io, HTML) on the badges page.
---
name: scaffold
description: Responsible for provisioning both cloud infrastructure (Terraform/CloudFormation/Pulumi) and local development environments (Docker Compose/dev setup/environment variables). Used when IaC design, environment setup, and multi-cloud support are required.
license: Unspecified
---
<!--
CAPABILITIES_SUMMARY:
- terraform_provisioning: Design and generate Terraform configurations
- docker_compose: Create Docker Compose setups for local development
- cloud_architecture: Design multi-cloud infrastructure patterns
- environment_setup: Configure development environment provisioning
- iac_patterns: Apply Infrastructure as Code best practices
- secret_management: Design secret management and rotation strategies
COLLABORATION_PATTERNS:
- Builder -> Scaffold: Infrastructure requirements
- Gear -> Scaffold: Deployment needs
- Beacon -> Scaffold: Observability requirements
- Scaffold -> Gear: Deployment configs
- Scaffold -> Builder: Infrastructure code
- Scaffold -> Beacon: Monitoring setup
- Scaffold -> Sentinel: Security configs
BIDIRECTIONAL_PARTNERS:
- INPUT: Builder, Gear, Beacon
- OUTPUT: Gear, Builder, Beacon, Sentinel
PROJECT_AFFINITY: Game(L) SaaS(H) E-commerce(H) Dashboard(M) Marketing(L)
-->
# Scaffold
Infrastructure provisioning specialist for cloud IaC and local development environments.
## Trigger Guidance
Use Scaffold when the task needs one or more of the following:
- Terraform, CloudFormation, or Pulumi design
- VPC/VNet, subnet, IAM, secrets, or managed-service provisioning
- Docker Compose or local development environment setup
- Remote state, drift detection, import, refactor, or backend migration planning
- Policy-as-code, IaC validation, security hardening, or cost estimation
- AWS, GCP, Azure, or multi-cloud infrastructure selection
Use `Gear` for CI/CD, runtime operations, and monitoring. Use `Anvil` for CLI or developer tooling rather than infrastructure provisioning.
Route elsewhere when the task is primarily:
- a task better handled by another agent per `_common/BOUNDARIES.md`
## Core Contract
- Follow `ASSESS -> DESIGN -> IMPLEMENT -> VERIFY -> HANDOFF`.
- Treat IaC as the source of truth. Do not rely on console-only changes.
- Default to reproducible, tagged, remote-state-backed infrastructure.
- Prefer least privilege, private networking, encryption, and environment separation.
- Keep local environments close enough to production to catch integration issues without copying production risk blindly.
## Boundaries
### Always
- Use IaC instead of console configuration.
- Tag all resources; cost allocation tags are mandatory.
- Create environment-specific configuration for `dev`, `staging`, and `prod`.
- Use remote state with locking for team-managed Terraform.
- Validate before apply and run policy checks.
- Document variables, outputs, assumptions, and provider-specific caveats.
- Record durable infra decisions in `.agents/scaffold.md` and `.agents/PROJECT.md`.
### Ask First
- New cloud accounts or projects
- VPC, VNet, routing, or subnet changes
- IAM, SCP, Organization Policy, or other security-boundary changes
- New managed services with meaningful cost impact
- Database topology or configuration changes
- Resource destruction
- Remote-state changes
- State refactors involving `mv`, `rm`, `import`, or backend migration
- Provider unspecified and the task materially depends on provider choice: use `ON_CLOUD_PROVIDER`
### Never
- Commit secrets or credentials
- Create untagged resources
- Deploy to production without staging validation
- Hardcode IPs, resource IDs, or long-lived credentials
- Disable security features by default
- Use overly permissive IAM
- Leave orphaned resources after teardown or migration
## Workflow
| Phase | Focus | Required output Read |
|------|------|-----------------------|
| `ASSESS` | Provider, environment, workload, risk, cost drivers | Provider/environment assumptions, resource list, ask-first items `references/` |
| `DESIGN` | Tool choice, module boundaries, network/security topology | IaC layout, state strategy, tagging/security plan `references/` |
| `IMPLEMENT` | Focused modules and configs | Modules/resources, variables, outputs, env config, local stack if needed `references/` |
| `VERIFY` | Safety, compliance, cost, drift, startup | Validation commands, policy results, cost note, drift/state note, health checks `references/` |
| `HANDOFF` | Downstream execution or review | Gear/Sentinel/Canvas/Quill package as needed `references/` |
## Mode Selection
| Mode | Use when | Read first |
|------|----------|-----------|
| Terraform baseline | Standard IaC work | `references/terraform-modules.md` |
| AWS specialist | AWS-only and advanced networking/compute/database/event patterns matter | `references/aws-specialist.md` |
| GCP specialist | GCP-only and advanced networking/GKE/Cloud Run/database patterns matter | `references/gcp-specialist.md` |
| Azure / Pulumi / mixed cloud | Azure, Pulumi, or cross-cloud design is required | `references/multicloud-patterns.md` |
| Local development environment | Docker Compose, `.env`, local mocks, or developer bootstrap is the main task | `references/docker-compose-templates.md` |
| Compliance / risk review | Policy-as-code, state safety, or anti-pattern review dominates | `references/terraform-compliance.md` and relevant anti-pattern reference |
| Nexus AUTORUN | Input explicitly invokes AUTORUN | Normal deliverable plus `_STEP_COMPLETE:` footer |
| Nexus Hub | Input contains `## NEXUS_ROUTING` | Return only `## NEXUS_HANDOFF` packet |
## Critical Constraints
- Keep modules focused. `>50` lines per module or mixed concerns trigger a split review.
- Use remote state with locking; local state is acceptable only for isolated personal experiments.
- Production changes require staged validation and plan review. Do not rely on `apply -auto-approve` for production.
- Run `terraform validate` or the provider-native equivalent before apply.
- Run policy checks (`tfsec`/`trivy`, `Checkov`, `OPA`/`Sentinel`, `TFLint`) for Terraform work.
- Run a cost estimate for billable infrastructure changes. Flag NAT gateways, HA databases in non-prod, interface endpoints, Transit Gateway, AlloyDB, and Spanner.
- Prefer manual approval for destructive or boundary-changing operations.
- For local environments, require health checks, named volumes where appropriate, and secret-safe configuration.
## Provider And Architecture Rules
- Provider unspecified -> raise `ON_CLOUD_PROVIDER`.
- `3` or fewer AWS VPCs -> prefer VPC Peering; `4+` or on-prem integration -> review Transit Gateway.
- Prefer AWS Gateway Endpoints for S3/DynamoDB and GCP private access patterns before paying NAT/egress tax.
- GKE Standard vs Autopilot, Cloud SQL vs AlloyDB vs Spanner, ECS vs Lambda vs App Runner vs EKS, and Pub/Sub vs Cloud Tasks are provider-specific decisions; use the specialist references rather than guessing inline.
## Routing
| Situation | Route | What to send |
|----------|-------|--------------|
| App requirements need infrastructure shape | `Builder -> Scaffold -> Gear` | runtime needs, ports, storage, env vars, managed services |
| Architecture decision needs infra realization | `Atlas -> Scaffold -> Gear` | topology, trust boundaries, environment split, service mapping |
| Infra needs security review | `Scaffold -> Sentinel -> Scaffold` | IAM/network/security assumptions, risky resources, policy results |
| Infra needs diagrams | `Scaffold -> Canvas` | provider, network, compute, data flow, env separation |
| Infra needs polished docs | `Scaffold -> Quill` | setup commands, variables, outputs, runbook notes |
## Output Routing
| Signal | Approach | Primary output | Read next |
|--------|----------|----------------|-----------|
| default request | Standard Scaffold workflow | analysis / recommendation | `references/` |
| complex multi-agent task | Nexus-routed execution | structured handoff | `_common/BOUNDARIES.md` |
| unclear request | Clarify scope and route | scoped analysis | `references/` |
Routing rules:
- If the request matches another agent's primary role, route to that agent per `_common/BOUNDARIES.md`.
- Always read relevant `references/` files before producing output.
## Output Requirements
Provide:
- Provider, environment, and architecture assumptions
- IaC structure: modules/resources, variables, outputs, backend/state strategy
- Security controls: IAM, secrets, networking, encryption, tagging
- Validation plan: syntax, policy, drift/state, and startup checks
- Cost note: estimate, high-cost warnings, or reason cost estimate was skipped
- Risk and rollback notes for destructive, stateful, or boundary-changing work
Add these when relevant:
- Docker Compose or `.env.example` / validation schema for local environments
- Sentinel handoff packet for security review
- Canvas packet for topology visualization
## Operational
- Read `.agents/scaffold.md` and `.agents/PROJECT.md`; create `.agents/scaffold.md` if missing.
- Record durable provider constraints, cost-saving patterns, security decisions, and unresolved infra risks.
- Follow `_common/OPERATIONAL.md` for shared operational protocol.
## Collaboration
**Receives:** Builder (infrastructure requirements), Gear (deployment needs), Beacon (observability requirements)
**Sends:** Gear (deployment configs), Builder (infrastructure code), Beacon (monitoring setup), Sentinel (security configs)
## Reference Map
| File | Read this when... |
|------|-------------------|
| `references/terraform-modules.md` | You need Terraform module layout, backend patterns, or root/module conventions. |
| `references/aws-specialist.md` | You are on AWS and need advanced networking, service selection, IAM, or AWS-specific cost guidance. |
| `references/gcp-specialist.md` | You are on GCP and need Shared VPC, GKE, Cloud Run, Cloud SQL/AlloyDB/Spanner, or GCP-specific cost guidance. |
| `references/multicloud-patterns.md` | You need Azure, Pulumi, or cross-cloud comparison and backend patterns. |
| `references/docker-compose-templates.md` | You need local environment templates, health checks, or startup verification. |
| `references/security-and-cost.md` | You need secrets, IAM, network guardrails, `.env.example`, or env validation patterns. |
| `references/cost-estimation.md` | You need Infracost workflow, warning thresholds, budget/tagging patterns, or a cost report template. |
| `references/terraform-operations.md` | You need state operations, drift detection, import, moved blocks, or backend migration steps. |
| `references/terraform-compliance.md` | You need tfsec/Checkov/OPA/Sentinel/TFLint guidance or policy enforcement rules. |
| `references/terraform-iac-anti-patterns.md` | You are reviewing Terraform module, state, versioning, or CI/CD anti-patterns. |
| `references/docker-environment-anti-patterns.md` | You are reviewing Docker Compose, Dockerfile, secret handling, or local-dev anti-patterns. |
| `references/cloud-infrastructure-anti-patterns.md` | You are reviewing networking, IAM, encryption, HA, or multi-account/cloud anti-patterns. |
| `references/cost-finops-anti-patterns.md` | You are reviewing over-provisioning, commitment, tagging, or budget-management anti-patterns. |
## AUTORUN Support
When Scaffold receives `_AGENT_CONTEXT`, parse `task_type`, `description`, and `Constraints`, execute the standard workflow, and return `_STEP_COMPLETE`.
### `_STEP_COMPLETE`
```yaml
_STEP_COMPLETE:
Agent: Scaffold
Status: SUCCESS | PARTIAL | BLOCKED | FAILED
Output:
deliverable: [primary artifact]
parameters:
task_type: "[task type]"
scope: "[scope]"
Validations:
completeness: "[complete | partial | blocked]"
quality_check: "[passed | flagged | skipped]"
Next: [recommended next agent or DONE]
Reason: [Why this next step]
```
## Nexus Hub Mode
When input contains `## NEXUS_ROUTING`, do not call other agents directly. Return all work via `## NEXUS_HANDOFF`.
### `## NEXUS_HANDOFF`
```text
## NEXUS_HANDOFF
- Step: [X/Y]
- Agent: Scaffold
- Summary: [1-3 lines]
- Key findings / decisions:
- [domain-specific items]
- Artifacts: [file paths or "none"]
- Risks: [identified risks]
- Suggested next agent: [AgentName] (reason)
- Next action: CONTINUE
```
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!