/arn-infra-env
This skill should be used when the user says "manage environments", "arn infra env", "infra env", "environment setup", "configure environments", "set up staging", "set up production", "environment management", "create environment", "environment promotion", "promote to staging",
$ npx -y skills add AppsVortex/arness --skill arn-infra-env --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.
- You can call itInvoke it directly when you want it.
- Slash command
/arn-infra-env
Context preview
The summary Claude sees to decide when to auto-load this skill.
This skill should be used when the user says "manage environments", "arn infra env", "infra env", "environment setup", "configure environments", "set up staging", "set up production", "environment management", "create environment", "environment promotion", "promote to staging",
SKILL.md
arn-infra-env.SKILL.mdname: arn-infra-env
description: >-
This skill should be used when the user says "manage environments", "arn infra env",
"infra env", "environment setup", "configure environments", "set up staging",
"set up production", "environment management", "create environment",
"environment promotion", "promote to staging", "promote to production",
"environment isolation", "configure dev staging prod",
"environment-specific config", "tfvars per environment", "arn-infra-env",
or wants to configure, create, or manage infrastructure environments
(dev/staging/production) with isolation strategies, variable overrides,
and promotion rules.
version: 1.0.0
Arness Infra Env
Configure and manage infrastructure environments (dev, staging, production) with provider-specific isolation strategies, environment-specific variable overrides, resource sizing, and promotion rules. This skill generates environment-specific IaC configurations and updates the environment promotion pipeline.
This skill is expertise-adaptive: beginner users get simplified environment setups with opinionated defaults, while expert users have full control over isolation strategies and promotion configurations.
Prerequisites
Read `## Arness` from the project's CLAUDE.md. If no `## Arness` section exists or Arness Infra fields are missing, inform the user: "Arness Infra is not configured for this project yet. Run `/arn-infra-wizard` to get started — it will set everything up automatically." Do not proceed without it.
Check the **Deferred** field. If `Deferred: yes`, inform the user: "Infrastructure is in deferred mode. Environment management is not available until infrastructure is fully configured. Run `/arn-infra-assess` to un-defer." Stop.
Extract:
- **Experience level** -- derived from user profile. Read `~/.arness/user-profile.yaml` (or `.claude/arness-profile.local.md` if it exists — project override takes precedence). Apply the experience derivation mapping from `${CLAUDE_PLUGIN_ROOT}/skills/arn-infra-ensure-config/references/experience-derivation.md`. If no profile exists, check for legacy `Experience level` in `## Arness` as fallback.
- **Providers** -- cloud providers in use
- **Providers config** -- path to `providers.md` for per-provider details
- **Default IaC tool** -- the default IaC tool
- **Environments** -- current environment list in promotion order
- **Environments config** -- path to `environments.md`
---
Workflow
Step 1: Read Current Environment Configuration
Read the environment configuration:
Read <environments-config-path>
Extract the current state:
- Promotion pipeline order
- Per-environment settings (auto-deploy, approval required, last deployed, pending changes)
Read the provider configuration:
Read <providers-config-path>
Extract per-provider scope and IaC tool for environment-specific config generation.
**Present current state:** "Your current environment pipeline: [env1] --> [env2] --> [env3]
| Environment | Auto-deploy | Approval | Last deployed | |-------------|-------------|----------|---------------| [table of environments]"
Ask (using `AskUserQuestion`):
**"What would you like to do?"**
Options: 1. **Full environment setup** -- Run through all environment tasks sequentially 2. **Specific task** -- Choose a specific environment task
If **Full environment setup**: proceed through Steps 2-5 sequentially, pausing for user confirmation at each decision point.
If **Specific task**:
Ask (using `AskUserQuestion`):
**"Which task?"**
Options: 1. **Add environment** -- Add a new environment to the pipeline 2. **Configure environment** -- Set up isolation, variables, and sizing 3. **Configure promotion** -- Set up or update promotion rules between environments 4. **Generate configs** -- Generate environment-specific IaC configurations
Route each specific task to its corresponding step: Add environment maps to Step 2, Configure environment maps to Step 3, Configure promotion maps to Step 5, Generate configs maps to Step 4.
---
Step 2: Environment Isolation Strategy
> Read the local override or plugin default for `environment-patterns.md`.
For each provider, recommend an isolation strategy based on experience level:
**Expert:** Present all isolation options with trade-offs and let the user choose:
Ask (using `AskUserQuestion`):
**"For [provider], choose your isolation strategy:"**
Options: 1. **Account/project separation** -- Strongest isolation, separate billing, higher overhead 2. **VPC/network separation** -- Good isolation within same account, shared billing 3. **Namespace separation** -- Lightweight, shared resources, weakest isolation 4. **Resource naming** -- Minimal isolation, environments share everything
**Intermediate:** Present the recommended option with a brief alternative: "For [provider], I recommend [strategy] because [rationale]. An alternative would be [other option] which trades [trade-off]."
**Beginner:** Make the recommendation directly: "For [provider], I'll use [simplest appropriate strategy]. This gives you separate environments without extra complexity."
---
Step 3: Environment-Specific Variables and Sizing
For each environment, configure:
**Variable overrides:**
- Instance sizes (e.g., `t3.micro` for dev, `t3.medium` for staging, `t3.large` for prod)
- Replica counts (e.g., 1 for dev, 2 for staging, 3 for prod)
- Database tiers (e.g., `db.t3.micro` for dev, `db.r6g.large` for prod)
- Feature flags (e.g., debug mode on for dev, off for prod)
- Domain names and URLs per environment
- Log levels and retention periods
**Resource sizing guidance per experience level:**
**Expert:** Ask for specific resource specifications per environment.
**Intermediate:** Suggest a sizing matrix and ask for approval: "Here's a recommended sizing matrix: | Resource | Dev | Staging | Prod | |----------|-----|---------|------| | Compute | [small] | [medium] | [large] | | Database | [small] | [medium] | [large] | |
Read more
name: arn-infra-env description: >- This skill should be used when the user says "manage environments", "arn infra env", "infra env", "environment setup", "configure environments", "set up staging", "set up production", "environment management", "create environment", "environment promotion", "promote to staging", "promote to production", "environment isolation", "configure dev staging prod", "environment-specific config", "tfvars per environment", "arn-infra-env", or wants to configure, create, or manage infrastructure environments (dev/staging/production) with isolation strategies, variable overrides, and promotion rules. version: 1.0.0
Arness Infra Env
Configure and manage infrastructure environments (dev, staging, production) with provider-specific isolation strategies, environment-specific variable overrides, resource sizing, and promotion rules. This skill generates environment-specific IaC configurations and updates the environment promotion pipeline.
This skill is expertise-adaptive: beginner users get simplified environment setups with opinionated defaults, while expert users have full control over isolation strategies and promotion configurations.
Prerequisites
Read `## Arness` from the project's CLAUDE.md. If no `## Arness` section exists or Arness Infra fields are missing, inform the user: "Arness Infra is not configured for this project yet. Run `/arn-infra-wizard` to get started — it will set everything up automatically." Do not proceed without it.
Check the **Deferred** field. If `Deferred: yes`, inform the user: "Infrastructure is in deferred mode. Environment management is not available until infrastructure is fully configured. Run `/arn-infra-assess` to un-defer." Stop.
Extract:
- **Experience level** -- derived from user profile. Read `~/.arness/user-profile.yaml` (or `.claude/arness-profile.local.md` if it exists — project override takes precedence). Apply the experience derivation mapping from `${CLAUDE_PLUGIN_ROOT}/skills/arn-infra-ensure-config/references/experience-derivation.md`. If no profile exists, check for legacy `Experience level` in `## Arness` as fallback.
- **Providers** -- cloud providers in use
- **Providers config** -- path to `providers.md` for per-provider details
- **Default IaC tool** -- the default IaC tool
- **Environments** -- current environment list in promotion order
- **Environments config** -- path to `environments.md`
---
Workflow
Step 1: Read Current Environment Configuration
Read the environment configuration:
Read <environments-config-path>
Extract the current state:
- Promotion pipeline order
- Per-environment settings (auto-deploy, approval required, last deployed, pending changes)
Read the provider configuration:
Read <providers-config-path>
Extract per-provider scope and IaC tool for environment-specific config generation.
**Present current state:** "Your current environment pipeline: [env1] --> [env2] --> [env3]
| Environment | Auto-deploy | Approval | Last deployed | |-------------|-------------|----------|---------------| [table of environments]"
Ask (using `AskUserQuestion`):
**"What would you like to do?"**
Options: 1. **Full environment setup** -- Run through all environment tasks sequentially 2. **Specific task** -- Choose a specific environment task
If **Full environment setup**: proceed through Steps 2-5 sequentially, pausing for user confirmation at each decision point.
If **Specific task**:
Ask (using `AskUserQuestion`):
**"Which task?"**
Options: 1. **Add environment** -- Add a new environment to the pipeline 2. **Configure environment** -- Set up isolation, variables, and sizing 3. **Configure promotion** -- Set up or update promotion rules between environments 4. **Generate configs** -- Generate environment-specific IaC configurations
Route each specific task to its corresponding step: Add environment maps to Step 2, Configure environment maps to Step 3, Configure promotion maps to Step 5, Generate configs maps to Step 4.
---
Step 2: Environment Isolation Strategy
> Read the local override or plugin default for `environment-patterns.md`.
For each provider, recommend an isolation strategy based on experience level:
**Expert:** Present all isolation options with trade-offs and let the user choose:
Ask (using `AskUserQuestion`):
**"For [provider], choose your isolation strategy:"**
Options: 1. **Account/project separation** -- Strongest isolation, separate billing, higher overhead 2. **VPC/network separation** -- Good isolation within same account, shared billing 3. **Namespace separation** -- Lightweight, shared resources, weakest isolation 4. **Resource naming** -- Minimal isolation, environments share everything
**Intermediate:** Present the recommended option with a brief alternative: "For [provider], I recommend [strategy] because [rationale]. An alternative would be [other option] which trades [trade-off]."
**Beginner:** Make the recommendation directly: "For [provider], I'll use [simplest appropriate strategy]. This gives you separate environments without extra complexity."
---
Step 3: Environment-Specific Variables and Sizing
For each environment, configure:
**Variable overrides:**
- Instance sizes (e.g., `t3.micro` for dev, `t3.medium` for staging, `t3.large` for prod)
- Replica counts (e.g., 1 for dev, 2 for staging, 3 for prod)
- Database tiers (e.g., `db.t3.micro` for dev, `db.r6g.large` for prod)
- Feature flags (e.g., debug mode on for dev, off for prod)
- Domain names and URLs per environment
- Log levels and retention periods
**Resource sizing guidance per experience level:**
**Expert:** Ask for specific resource specifications per environment.
**Intermediate:** Suggest a sizing matrix and ask for approval: "Here's a recommended sizing matrix: | Resource | Dev | Staging | Prod | |----------|-----|---------|------| | Compute | [small] | [medium] | [large] | | Database | [small] | [medium] | [large] | |
Showing the first part of this file.
Arness — H not required. Structured AI workflows for Claude Code. From first idea to production deploy. Seven entry commands. That's all you need to remember.
Repo: AppsVortex/arness
Other skills on arness.
- /arn-assessing
This skill should be used when the user says "assessing", "arness assessing", "assess", "assess codebase", "technical review", "codebase assessment", "find improvements", "what should I improve", "tech debt review", "pattern compliance check", "codebase health check",
Open skill - /arn-code-assess
This skill should be used when the user says "arness code assess", "arn-code-assess", "assess codebase", "technical review", "codebase assessment", "find improvements", "what should I improve", "tech debt review", "tech debt audit", "pattern compliance check", "codebase health
Open skill - /arn-code-batch-cve-fix
This skill should be used when the user says "fix CVEs", "patch vulnerabilities", "apply security patches", "resolve security advisories", "batch CVE fix", "patch dependencies", "fix security findings", "remediate CVEs", "apply CVE fixes", "batch fix vulnerabilities", "resolve
Open skill - /arn-code-batch-cve-scan
This skill should be used when the user says "scan for CVEs", "CVE scan", "check for vulnerabilities", "find vulnerabilities", "check security advisories", "dependabot triage", "dependabot scan", "scan dependencies for security issues", "audit dependencies", "vulnerability
Open skill - /arn-code-batch-implement
This skill should be used when the user says "batch implement", "implement all", "batch execution", "implement all features", "parallel implement", "implement in parallel", "arness batch implement", "arn-code-batch-implement", "run batch implementation", "implement everything",
Open skill - /arn-code-batch-merge
This skill should be used when the user says "batch merge", "merge batch", "arness batch merge", "arn-code-batch-merge", "merge all PRs", "merge batch PRs", "merge the batch", "merge implemented features", "batch merge PRs", "merge open PRs", "merge all feature PRs", "combine
Open skill

