cloudposse/docs/debugging-atmos
- community
Checking that the SKILL.md file is still in the repository.
Use when troubleshooting Atmos configuration, deployment errors, or unexpected behavior. Covers debug logging, describing stacks/components, interpreting errors, and common issues with stack resolution and Atmos functions.
Install
npx vskill@latest install cloudposse/docs/debugging-atmosSKILL.md
Debugging Atmos
Techniques for troubleshooting Atmos configuration and deployment issues.
Quick Debugging Commands
Inspecting Resolved Configuration
The most powerful debugging tool is atmos describe stacks, which shows the final YAML after all imports, merges, and inheritance:
The output includes the fully-resolved configuration for each component:
- vars - All variables with their final values
- settings - Component settings
- metadata - Component metadata (type, inheritance chain)
- backend - Terraform backend configuration
- env - Environment variables
What to Look For
- Variable values - Are vars what you expect? Check inheritance from catalog vs stack overrides
- Component resolution - Is
metadata.componentpointing to the right root module? - Backend configuration - Is the S3 bucket/DynamoDB table correct?
- Atmos function results - Have
!terraform.stateexpressions resolved?
Filtering with yq
Use yq to filter the YAML output and extract specific information:
Disabling Templates and Functions
To debug configuration before template/function processing, disable them:
Use cases:
- Debugging templates - See the raw
{{ }}expressions before evaluation - Debugging functions - See
!terraform.stateexpressions before they resolve - Faster iteration - Skip slow
!terraform.statelookups when debugging other issues - No authentication needed - Functions like
!terraform.staterequire AWS access; disable to debug without auth
When to Use Each Command
| Command | Use When | ||
|---|---|---|---|
atmos describe stacks -s <stack> | Debugging a stack - see all components and their resolved config | ||
| `atmos describe stacks -s <stack> \ | yq '...'` | Extract specific values from a stack | |
atmos describe stacks | Understanding full infrastructure (large output) | ||
atmos describe component <comp> -s <stack> | Focused debugging of a single component |
Debug Logging
Enable debug logging for detailed Atmos operations:
Debug output includes:
- Stack file loading and import resolution
- Variable inheritance chain
- Atmos function evaluation (
!terraform.state, etc.) - Provider configuration
- Backend initialization
Log Levels
info(default) - Normal operationdebug- Detailed debugging informationtrace- Maximum verbosity (rarely needed)
Common Issues
Stack Not Found
Error: stack 'xyz' not found
Debug:
Common causes:
- Typo in stack name
- Stack file doesn't exist
- Stack name doesn't match naming convention (
{tenant}-{region}-{stage})
Component Not Found
Error: component 'xyz' not found in stack
Debug:
Common causes:
- Component not imported in stack file
- Missing catalog import
- Component name mismatch between catalog and stack
Atmos Function Errors
Error: error evaluating !terraform.state: ...
Debug:
Common causes:
- Source component not deployed yet (no state)
- Wrong output name
- Wrong stack name in cross-stack lookups
- Circular dependency
For Atmos function syntax and patterns, see the atmos-functions skill.
Provider/Authentication Errors
Error: error configuring provider or AccessDenied
Debug:
For authentication issues, see the atmos-auth skill.
Variable Inheritance Issues
Problem: Variable has unexpected value
Debug:
Inheritance order (later wins):
- Component defaults (in Terraform
variables.tf) - Catalog defaults (
stacks/catalog/<component>/defaults.yaml) - Mixin imports (
stacks/mixins/) - Stack defaults (
stacks/orgs/acme/<tenant>/<stage>/_defaults.yaml) - Stack-specific config (
stacks/orgs/acme/<tenant>/<stage>/<region>/<layer>.yaml)
State/Cache Issues
Problem: Atmos behaving strangely, stale configuration
Fix:
This removes:
.terraform/directory- Rendered configuration files
- Provider cache
Use when:
- Provider versions are out of sync
- Module cache is corrupted
- Configuration changes aren't being picked up
Validation
Validate all stack configurations before deployment:
This checks:
- YAML syntax
- Required fields
- Schema compliance
- Import resolution
Debugging Workflow
- Start with describe stacks -
atmos describe stacks -s <stack>to see all resolved YAML - Check the basics - Stack exists? Component configured? Imports correct?
- Enable debug logging -
ATMOS_LOGS_LEVEL=debugfor detailed output - Clean and retry -
atmos terraform cleanto reset state - Check authentication - See
atmos-authskill if AWS errors - Check functions - See
atmos-functionsskill if!terraform.stateerrors
Security
- Security scanPassed, 100 of 100Pattern checks on the skill's files.
- Model reviewNot runA model review is scheduled for the next rescan.
Quality evaluation
- Task evaluationWarning, 83 of 100Marginal. 1 run. Evaluated 7 months ago.
Source
- SKILL.md in the repositoryCheckingexamples/snippets/.claude/skills/debugging-atmos/SKILL.md
Popularity
- Repository stars
- 94
- Repository forks
- 33
- 7-day trend score
- 23
Stars and forks are for the whole GitHub repository, not this skill alone. Refreshed 3 Apr 2026, 6 months ago.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/cloudposse/docs/debugging-atmos)