-
-
Notifications
You must be signed in to change notification settings - Fork 135
Restructure documentation with progressive learning path and simplified URLs #1588
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
…nsive YAML reference ## what - Created 9 new progressive learning pages in Learn Atmos section - Added comprehensive YAML reference guide with anchors, type coercion, and best practices - Created migration guides for Terragrunt and Terraform Workspaces users - Reorganized advanced topics (Stacks, Workflows, Vendoring, Validation, Templates) under CLI/Reference - Refreshed Terraform Maturity Journey with empathetic, helpful tone - Fixed 100+ broken internal links throughout documentation - Added 25+ redirects for moved pages to maintain backwards compatibility - Updated sidebars with new structure (Learn vs Reference separation) ## why - Newcomers were overwhelmed by documentation lacking clear progression from basics to advanced - Missing fundamental concepts (YAML scope, deep merge, imports/inheritance basics) - Examples were too complex too early without simpler "Hello World" starting point - Advanced topics mixed with learning content, making it hard to find reference material - No migration guides for users coming from other tools (Terragrunt, Workspaces) - Documentation tone felt defensive rather than empathetic to learner journey - YAML gotchas (NO → false, type coercion, Go template braces) caused confusion without comprehensive reference ## references - Inspired by React, Next.js, and Terragrunt documentation patterns - Implements progressive complexity with clear separation of learning vs reference content 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
|
Warning This PR exceeds the recommended limit of 1,000 lines.Large PRs are difficult to review and may be rejected due to their size. Please verify that this PR does not address multiple issues. |
|
Warning Rate limit exceeded@osterman has exceeded the limit for the number of commits or files that can be reviewed per hour. Please wait 14 minutes and 18 seconds before requesting another review. ⌛ How to resolve this issue?After the wait time has elapsed, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our FAQ for further information. 📒 Files selected for processing (4)
📝 WalkthroughWalkthroughComprehensive documentation reorganization restructuring the Atmos website with path migrations from Changes
Estimated code review effort🎯 4 (Complex) | ⏱️ ~60–90 minutes Areas requiring extra attention:
Possibly related PRs
Pre-merge checks and finishing touches✅ Passed checks (3 passed)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 6
🧹 Nitpick comments (1)
website/docs/stacks/catalogs.mdx (1)
11-11: Align Stack link with new slug.The surrounding edits pivot these docs to
/stacks/..., but this sentence still links the child Stack reference through the old/core-conceptspath. Please swap it to/stacksso the copy stays consistent with the new IA.
📜 Review details
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
Disabled knowledge base sources:
- Linear integration is disabled by default for public repositories
You can enable these sources in your CodeRabbit configuration.
📒 Files selected for processing (99)
website/docs/best-practices/stacks.mdx(2 hunks)website/docs/best-practices/terraform.mdx(1 hunks)website/docs/cli/commands/describe/describe-component.mdx(5 hunks)website/docs/cli/commands/terraform/usage.mdx(3 hunks)website/docs/cli/commands/validate/validate-stacks.mdx(1 hunks)website/docs/cli/commands/vendor/vendor-pull.mdx(4 hunks)website/docs/cli/commands/workflow.mdx(1 hunks)website/docs/cli/configuration/configuration.mdx(3 hunks)website/docs/cli/configuration/stacks.mdx(1 hunks)website/docs/core-concepts/components/terraform/backends.mdx(2 hunks)website/docs/core-concepts/components/terraform/providers.mdx(2 hunks)website/docs/core-concepts/components/terraform/state-backend.mdx(1 hunks)website/docs/core-concepts/components/terraform/workspaces.mdx(1 hunks)website/docs/core-concepts/concepts-overview.mdx(1 hunks)website/docs/core-concepts/connecting-components.mdx(1 hunks)website/docs/core-concepts/deploy/deploy.mdx(2 hunks)website/docs/core-concepts/describe/components.mdx(2 hunks)website/docs/core-concepts/first-stack.mdx(1 hunks)website/docs/core-concepts/imports-basics.mdx(1 hunks)website/docs/core-concepts/inheritance-basics.mdx(1 hunks)website/docs/core-concepts/next-steps.mdx(1 hunks)website/docs/core-concepts/organizing-stacks.mdx(1 hunks)website/docs/core-concepts/projects/configuration/configuration.mdx(4 hunks)website/docs/core-concepts/projects/configuration/packer.mdx(1 hunks)website/docs/core-concepts/projects/configuration/stores.mdx(1 hunks)website/docs/core-concepts/projects/layout.mdx(1 hunks)website/docs/core-concepts/share-data/remote-state.mdx(1 hunks)website/docs/core-concepts/share-data/share-data.mdx(2 hunks)website/docs/core-concepts/stacks/define-components.mdx(3 hunks)website/docs/core-concepts/stacks/stacks.mdx(3 hunks)website/docs/core-concepts/why-atmos.mdx(1 hunks)website/docs/core-concepts/yaml-guide.mdx(1 hunks)website/docs/design-patterns/abstract-component.mdx(1 hunks)website/docs/design-patterns/component-catalog-template.mdx(3 hunks)website/docs/design-patterns/component-catalog-with-mixins.mdx(2 hunks)website/docs/design-patterns/component-catalog.mdx(2 hunks)website/docs/design-patterns/component-inheritance.mdx(2 hunks)website/docs/design-patterns/component-overrides.mdx(2 hunks)website/docs/design-patterns/inline-component-configuration.mdx(1 hunks)website/docs/design-patterns/inline-component-customization.mdx(1 hunks)website/docs/design-patterns/layered-stack-configuration.mdx(1 hunks)website/docs/design-patterns/organizational-structure-configuration.mdx(2 hunks)website/docs/design-patterns/partial-component-configuration.mdx(3 hunks)website/docs/design-patterns/partial-stack-configuration.mdx(1 hunks)website/docs/functions/template/index.mdx(1 hunks)website/docs/functions/yaml/env.mdx(1 hunks)website/docs/functions/yaml/exec.mdx(1 hunks)website/docs/functions/yaml/include.mdx(2 hunks)website/docs/functions/yaml/index.mdx(1 hunks)website/docs/functions/yaml/store.get.mdx(1 hunks)website/docs/functions/yaml/store.mdx(1 hunks)website/docs/functions/yaml/template.mdx(1 hunks)website/docs/functions/yaml/terraform.output.mdx(1 hunks)website/docs/functions/yaml/terraform.state.mdx(1 hunks)website/docs/integrations/github-actions/atmos-terraform-plan.mdx(1 hunks)website/docs/integrations/github-actions/component-updater.mdx(1 hunks)website/docs/integrations/github-actions/github-actions.mdx(1 hunks)website/docs/introduction/faq.mdx(2 hunks)website/docs/introduction/index.mdx(1 hunks)website/docs/introduction/use-cases.mdx(1 hunks)website/docs/introduction/why-atmos/why-atmos.mdx(1 hunks)website/docs/migration/native-terraform.mdx(1 hunks)website/docs/migration/terraform-workspaces.mdx(1 hunks)website/docs/migration/terragrunt.mdx(1 hunks)website/docs/quick-start/advanced/advanced.mdx(1 hunks)website/docs/quick-start/advanced/configure-cli.mdx(2 hunks)website/docs/quick-start/advanced/configure-terraform-backend.mdx(2 hunks)website/docs/quick-start/advanced/configure-validation.mdx(2 hunks)website/docs/quick-start/advanced/create-atmos-stacks.mdx(4 hunks)website/docs/quick-start/advanced/create-workflows.mdx(1 hunks)website/docs/quick-start/advanced/next-steps.md(1 hunks)website/docs/quick-start/advanced/vendor-components.mdx(1 hunks)website/docs/quick-start/introduction.mdx(1 hunks)website/docs/quick-start/mindset.mdx(1 hunks)website/docs/quick-start/simple/configure-cli.mdx(2 hunks)website/docs/quick-start/simple/configure-stacks.mdx(1 hunks)website/docs/quick-start/simple/extra-credit/create-workflows.mdx(2 hunks)website/docs/quick-start/simple/extra-credit/vendor-components.mdx(2 hunks)website/docs/reference/alternatives.mdx(3 hunks)website/docs/reference/yaml-reference.mdx(1 hunks)website/docs/stacks/catalogs.mdx(2 hunks)website/docs/stacks/dependencies.mdx(2 hunks)website/docs/stacks/imports.mdx(4 hunks)website/docs/stacks/inheritance.mdx(3 hunks)website/docs/stacks/mixins.mdx(1 hunks)website/docs/stacks/overrides.mdx(2 hunks)website/docs/stacks/stacks.mdx(1 hunks)website/docs/templates/templates.mdx(9 hunks)website/docs/tutorials/atmos-example-infra.mdx(1 hunks)website/docs/validation/opa.mdx(1 hunks)website/docs/validation/validate.mdx(1 hunks)website/docs/vendoring/components-manifest.mdx(1 hunks)website/docs/vendoring/url-syntax.mdx(1 hunks)website/docs/vendoring/vendor-manifest.mdx(2 hunks)website/docs/vendoring/vendor.mdx(1 hunks)website/docs/workflows/workflows.mdx(1 hunks)website/docusaurus.config.js(1 hunks)website/sidebars.js(3 hunks)website/src/pages/index.js(1 hunks)
🧰 Additional context used
📓 Path-based instructions (5)
website/**
📄 CodeRabbit inference engine (.cursor/rules/atmos-rules.mdc)
website/**: Update website documentation in website/ when adding features
Ensure consistency between CLI help text and website documentation
Follow the website's documentation structure and style
Keep website code in website/ and follow its architecture/style; test changes locally
Keep CLI and website documentation in sync; document new features with examples and use cases
Files:
website/docs/cli/commands/validate/validate-stacks.mdxwebsite/docs/quick-start/advanced/vendor-components.mdxwebsite/docs/design-patterns/abstract-component.mdxwebsite/docs/core-concepts/components/terraform/workspaces.mdxwebsite/docs/design-patterns/layered-stack-configuration.mdxwebsite/docs/core-concepts/stacks/define-components.mdxwebsite/docs/core-concepts/projects/configuration/packer.mdxwebsite/docs/integrations/github-actions/component-updater.mdxwebsite/docs/design-patterns/partial-stack-configuration.mdxwebsite/docs/quick-start/simple/extra-credit/create-workflows.mdxwebsite/docs/design-patterns/component-catalog-template.mdxwebsite/docs/quick-start/advanced/next-steps.mdwebsite/docs/templates/templates.mdxwebsite/docs/cli/configuration/stacks.mdxwebsite/docs/vendoring/vendor.mdxwebsite/docs/core-concepts/inheritance-basics.mdxwebsite/docs/integrations/github-actions/atmos-terraform-plan.mdxwebsite/docs/stacks/mixins.mdxwebsite/docs/vendoring/components-manifest.mdxwebsite/docs/cli/commands/vendor/vendor-pull.mdxwebsite/docs/quick-start/advanced/create-workflows.mdxwebsite/docs/migration/terraform-workspaces.mdxwebsite/docs/best-practices/terraform.mdxwebsite/docs/quick-start/advanced/create-atmos-stacks.mdxwebsite/docs/validation/validate.mdxwebsite/docs/functions/yaml/store.mdxwebsite/docs/design-patterns/inline-component-configuration.mdxwebsite/docs/core-concepts/imports-basics.mdxwebsite/docusaurus.config.jswebsite/docs/introduction/use-cases.mdxwebsite/docs/core-concepts/connecting-components.mdxwebsite/docs/reference/alternatives.mdxwebsite/docs/quick-start/simple/configure-stacks.mdxwebsite/docs/cli/commands/terraform/usage.mdxwebsite/docs/functions/yaml/env.mdxwebsite/docs/functions/yaml/index.mdxwebsite/docs/core-concepts/organizing-stacks.mdxwebsite/docs/best-practices/stacks.mdxwebsite/docs/core-concepts/first-stack.mdxwebsite/docs/design-patterns/organizational-structure-configuration.mdxwebsite/docs/quick-start/simple/configure-cli.mdxwebsite/src/pages/index.jswebsite/docs/validation/opa.mdxwebsite/docs/design-patterns/component-overrides.mdxwebsite/docs/core-concepts/share-data/remote-state.mdxwebsite/docs/vendoring/url-syntax.mdxwebsite/docs/migration/terragrunt.mdxwebsite/docs/core-concepts/share-data/share-data.mdxwebsite/docs/tutorials/atmos-example-infra.mdxwebsite/docs/design-patterns/component-catalog.mdxwebsite/docs/design-patterns/inline-component-customization.mdxwebsite/docs/stacks/dependencies.mdxwebsite/docs/introduction/faq.mdxwebsite/docs/core-concepts/describe/components.mdxwebsite/docs/quick-start/advanced/configure-terraform-backend.mdxwebsite/docs/design-patterns/component-catalog-with-mixins.mdxwebsite/docs/vendoring/vendor-manifest.mdxwebsite/docs/reference/yaml-reference.mdxwebsite/docs/design-patterns/partial-component-configuration.mdxwebsite/docs/quick-start/mindset.mdxwebsite/docs/core-concepts/next-steps.mdxwebsite/docs/workflows/workflows.mdxwebsite/docs/core-concepts/components/terraform/backends.mdxwebsite/docs/introduction/index.mdxwebsite/docs/functions/yaml/exec.mdxwebsite/docs/cli/configuration/configuration.mdxwebsite/docs/core-concepts/projects/configuration/stores.mdxwebsite/docs/quick-start/advanced/configure-validation.mdxwebsite/docs/core-concepts/stacks/stacks.mdxwebsite/docs/core-concepts/components/terraform/providers.mdxwebsite/docs/functions/yaml/store.get.mdxwebsite/docs/core-concepts/yaml-guide.mdxwebsite/docs/functions/yaml/terraform.output.mdxwebsite/docs/stacks/catalogs.mdxwebsite/docs/functions/yaml/terraform.state.mdxwebsite/docs/functions/yaml/template.mdxwebsite/docs/core-concepts/concepts-overview.mdxwebsite/docs/core-concepts/why-atmos.mdxwebsite/docs/quick-start/advanced/advanced.mdxwebsite/docs/stacks/overrides.mdxwebsite/docs/cli/commands/workflow.mdxwebsite/docs/stacks/stacks.mdxwebsite/docs/cli/commands/describe/describe-component.mdxwebsite/docs/core-concepts/projects/configuration/configuration.mdxwebsite/docs/quick-start/advanced/configure-cli.mdxwebsite/docs/functions/yaml/include.mdxwebsite/docs/quick-start/simple/extra-credit/vendor-components.mdxwebsite/docs/design-patterns/component-inheritance.mdxwebsite/docs/migration/native-terraform.mdxwebsite/docs/quick-start/introduction.mdxwebsite/docs/introduction/why-atmos/why-atmos.mdxwebsite/docs/core-concepts/deploy/deploy.mdxwebsite/docs/integrations/github-actions/github-actions.mdxwebsite/docs/functions/template/index.mdxwebsite/docs/core-concepts/projects/layout.mdxwebsite/docs/core-concepts/components/terraform/state-backend.mdxwebsite/sidebars.jswebsite/docs/stacks/inheritance.mdxwebsite/docs/stacks/imports.mdx
website/docs/cli/commands/**/*.mdx
📄 CodeRabbit inference engine (CLAUDE.md)
website/docs/cli/commands/**/*.mdx: All new commands/flags/parameters must have Docusaurus documentation under website/docs/cli/commands//.mdx using definition lists for arguments and flags.
Follow Docusaurus conventions (front matter, Purpose note, usage, examples; consistent section ordering: Usage → Examples → Arguments → Flags).
Files:
website/docs/cli/commands/validate/validate-stacks.mdxwebsite/docs/cli/commands/vendor/vendor-pull.mdxwebsite/docs/cli/commands/terraform/usage.mdxwebsite/docs/cli/commands/workflow.mdxwebsite/docs/cli/commands/describe/describe-component.mdx
website/docs/**/*.{md,mdx}
📄 CodeRabbit inference engine (CLAUDE.md)
website/docs/**/*.{md,mdx}: Build the website after modifying any docs under website/docs/ to verify no broken links or formatting issues.
Document user-facing template functions in the website documentation.
Files:
website/docs/cli/commands/validate/validate-stacks.mdxwebsite/docs/quick-start/advanced/vendor-components.mdxwebsite/docs/design-patterns/abstract-component.mdxwebsite/docs/core-concepts/components/terraform/workspaces.mdxwebsite/docs/design-patterns/layered-stack-configuration.mdxwebsite/docs/core-concepts/stacks/define-components.mdxwebsite/docs/core-concepts/projects/configuration/packer.mdxwebsite/docs/integrations/github-actions/component-updater.mdxwebsite/docs/design-patterns/partial-stack-configuration.mdxwebsite/docs/quick-start/simple/extra-credit/create-workflows.mdxwebsite/docs/design-patterns/component-catalog-template.mdxwebsite/docs/quick-start/advanced/next-steps.mdwebsite/docs/templates/templates.mdxwebsite/docs/cli/configuration/stacks.mdxwebsite/docs/vendoring/vendor.mdxwebsite/docs/core-concepts/inheritance-basics.mdxwebsite/docs/integrations/github-actions/atmos-terraform-plan.mdxwebsite/docs/stacks/mixins.mdxwebsite/docs/vendoring/components-manifest.mdxwebsite/docs/cli/commands/vendor/vendor-pull.mdxwebsite/docs/quick-start/advanced/create-workflows.mdxwebsite/docs/migration/terraform-workspaces.mdxwebsite/docs/best-practices/terraform.mdxwebsite/docs/quick-start/advanced/create-atmos-stacks.mdxwebsite/docs/validation/validate.mdxwebsite/docs/functions/yaml/store.mdxwebsite/docs/design-patterns/inline-component-configuration.mdxwebsite/docs/core-concepts/imports-basics.mdxwebsite/docs/introduction/use-cases.mdxwebsite/docs/core-concepts/connecting-components.mdxwebsite/docs/reference/alternatives.mdxwebsite/docs/quick-start/simple/configure-stacks.mdxwebsite/docs/cli/commands/terraform/usage.mdxwebsite/docs/functions/yaml/env.mdxwebsite/docs/functions/yaml/index.mdxwebsite/docs/core-concepts/organizing-stacks.mdxwebsite/docs/best-practices/stacks.mdxwebsite/docs/core-concepts/first-stack.mdxwebsite/docs/design-patterns/organizational-structure-configuration.mdxwebsite/docs/quick-start/simple/configure-cli.mdxwebsite/docs/validation/opa.mdxwebsite/docs/design-patterns/component-overrides.mdxwebsite/docs/core-concepts/share-data/remote-state.mdxwebsite/docs/vendoring/url-syntax.mdxwebsite/docs/migration/terragrunt.mdxwebsite/docs/core-concepts/share-data/share-data.mdxwebsite/docs/tutorials/atmos-example-infra.mdxwebsite/docs/design-patterns/component-catalog.mdxwebsite/docs/design-patterns/inline-component-customization.mdxwebsite/docs/stacks/dependencies.mdxwebsite/docs/introduction/faq.mdxwebsite/docs/core-concepts/describe/components.mdxwebsite/docs/quick-start/advanced/configure-terraform-backend.mdxwebsite/docs/design-patterns/component-catalog-with-mixins.mdxwebsite/docs/vendoring/vendor-manifest.mdxwebsite/docs/reference/yaml-reference.mdxwebsite/docs/design-patterns/partial-component-configuration.mdxwebsite/docs/quick-start/mindset.mdxwebsite/docs/core-concepts/next-steps.mdxwebsite/docs/workflows/workflows.mdxwebsite/docs/core-concepts/components/terraform/backends.mdxwebsite/docs/introduction/index.mdxwebsite/docs/functions/yaml/exec.mdxwebsite/docs/cli/configuration/configuration.mdxwebsite/docs/core-concepts/projects/configuration/stores.mdxwebsite/docs/quick-start/advanced/configure-validation.mdxwebsite/docs/core-concepts/stacks/stacks.mdxwebsite/docs/core-concepts/components/terraform/providers.mdxwebsite/docs/functions/yaml/store.get.mdxwebsite/docs/core-concepts/yaml-guide.mdxwebsite/docs/functions/yaml/terraform.output.mdxwebsite/docs/stacks/catalogs.mdxwebsite/docs/functions/yaml/terraform.state.mdxwebsite/docs/functions/yaml/template.mdxwebsite/docs/core-concepts/concepts-overview.mdxwebsite/docs/core-concepts/why-atmos.mdxwebsite/docs/quick-start/advanced/advanced.mdxwebsite/docs/stacks/overrides.mdxwebsite/docs/cli/commands/workflow.mdxwebsite/docs/stacks/stacks.mdxwebsite/docs/cli/commands/describe/describe-component.mdxwebsite/docs/core-concepts/projects/configuration/configuration.mdxwebsite/docs/quick-start/advanced/configure-cli.mdxwebsite/docs/functions/yaml/include.mdxwebsite/docs/quick-start/simple/extra-credit/vendor-components.mdxwebsite/docs/design-patterns/component-inheritance.mdxwebsite/docs/migration/native-terraform.mdxwebsite/docs/quick-start/introduction.mdxwebsite/docs/introduction/why-atmos/why-atmos.mdxwebsite/docs/core-concepts/deploy/deploy.mdxwebsite/docs/integrations/github-actions/github-actions.mdxwebsite/docs/functions/template/index.mdxwebsite/docs/core-concepts/projects/layout.mdxwebsite/docs/core-concepts/components/terraform/state-backend.mdxwebsite/docs/stacks/inheritance.mdxwebsite/docs/stacks/imports.mdx
website/src/**
📄 CodeRabbit inference engine (CLAUDE.md)
Build the website after modifying any component under website/src/.
Files:
website/src/pages/index.js
website/sidebars.js
📄 CodeRabbit inference engine (CLAUDE.md)
Build the website after changing navigation in website/sidebars.js.
Files:
website/sidebars.js
🧠 Learnings (11)
📚 Learning: 2025-07-05T20:59:02.914Z
Learnt from: aknysh
PR: cloudposse/atmos#1363
File: internal/exec/template_utils.go:18-18
Timestamp: 2025-07-05T20:59:02.914Z
Learning: In the Atmos project, gomplate v4 is imported with a blank import (`_ "github.com/hairyhenderson/gomplate/v4"`) alongside v3 imports to resolve AWS SDK version conflicts. V3 uses older AWS SDK versions that conflict with newer AWS modules used by Atmos. A full migration to v4 requires extensive refactoring due to API changes and should be handled in a separate PR.
Applied to files:
website/docs/templates/templates.mdx
📚 Learning: 2025-10-02T20:13:55.539Z
Learnt from: CR
PR: cloudposse/atmos#0
File: CLAUDE.md:0-0
Timestamp: 2025-10-02T20:13:55.539Z
Learning: Applies to **/*.go : Organize imports into three groups (stdlib, third-party, Atmos) separated by blank lines; sort alphabetically within each group; maintain existing aliases.
Applied to files:
website/docs/templates/templates.mdx
📚 Learning: 2025-09-24T20:45:40.401Z
Learnt from: Benbentwo
PR: cloudposse/atmos#1475
File: tests/fixtures/scenarios/atmos-auth/stacks/deploy/nonprod.yaml:3-4
Timestamp: 2025-09-24T20:45:40.401Z
Learning: In Atmos stack files, the correct syntax for importing other stack files is `import:` (singular), not `imports:` (plural). All stack files in the Atmos codebase consistently use `import:` followed by a list of paths to import.
Applied to files:
website/docs/cli/configuration/stacks.mdxwebsite/docs/quick-start/advanced/create-atmos-stacks.mdxwebsite/docs/tutorials/atmos-example-infra.mdxwebsite/docs/stacks/overrides.mdx
📚 Learning: 2025-01-19T22:30:27.600Z
Learnt from: aknysh
PR: cloudposse/atmos#0
File: :0-0
Timestamp: 2025-01-19T22:30:27.600Z
Learning: The Atmos YAML function `!env` is used to retrieve environment variables and assign them to sections in stack manifests. It supports both simple types (string, number, boolean) and complex types (JSON-encoded lists, maps, objects).
Applied to files:
website/docs/functions/yaml/store.mdxwebsite/docs/functions/yaml/env.mdxwebsite/docs/functions/yaml/exec.mdxwebsite/docs/functions/yaml/store.get.mdxwebsite/docs/functions/yaml/terraform.output.mdxwebsite/docs/functions/yaml/terraform.state.mdx
📚 Learning: 2025-01-19T22:30:27.600Z
Learnt from: aknysh
PR: cloudposse/atmos#0
File: :0-0
Timestamp: 2025-01-19T22:30:27.600Z
Learning: The Atmos YAML function `!include` allows downloading local or remote files from different sources and assigning their contents to sections in stack manifests. It supports various protocols (file, http, git, s3, etc.) and can filter content using YQ expressions.
Applied to files:
website/docs/functions/yaml/store.mdxwebsite/docs/functions/yaml/env.mdxwebsite/docs/functions/yaml/index.mdxwebsite/docs/functions/yaml/exec.mdxwebsite/docs/functions/yaml/store.get.mdxwebsite/docs/functions/yaml/terraform.output.mdxwebsite/docs/functions/yaml/terraform.state.mdxwebsite/docs/functions/yaml/include.mdx
📚 Learning: 2024-12-01T00:33:20.298Z
Learnt from: aknysh
PR: cloudposse/atmos#810
File: examples/tests/stacks/catalog/terraform/template-functions-test2/defaults.yaml:28-32
Timestamp: 2024-12-01T00:33:20.298Z
Learning: In `examples/tests/stacks/catalog/terraform/template-functions-test2/defaults.yaml`, `!exec atmos terraform output` is used in examples to demonstrate its usage, even though `!terraform.output` is the recommended approach according to the documentation.
Applied to files:
website/docs/functions/yaml/store.mdxwebsite/docs/functions/yaml/env.mdxwebsite/docs/introduction/faq.mdxwebsite/docs/functions/yaml/exec.mdxwebsite/docs/functions/yaml/store.get.mdxwebsite/docs/functions/yaml/terraform.output.mdxwebsite/docs/functions/yaml/terraform.state.mdx
📚 Learning: 2025-09-10T21:17:55.273Z
Learnt from: samtholiya
PR: cloudposse/atmos#1466
File: toolchain/http_client_test.go:3-10
Timestamp: 2025-09-10T21:17:55.273Z
Learning: In the cloudposse/atmos repository, imports should never be changed as per samtholiya's coding guidelines.
Applied to files:
website/docs/tutorials/atmos-example-infra.mdx
📚 Learning: 2025-01-09T22:27:25.538Z
Learnt from: samtholiya
PR: cloudposse/atmos#914
File: cmd/validate_stacks.go:20-23
Timestamp: 2025-01-09T22:27:25.538Z
Learning: The validate commands in Atmos can have different help handling implementations. Specifically, validate_component.go and validate_stacks.go are designed to handle help requests differently, with validate_stacks.go including positional argument checks while validate_component.go does not.
Applied to files:
website/docs/quick-start/advanced/configure-validation.mdx
📚 Learning: 2025-10-02T20:13:55.539Z
Learnt from: CR
PR: cloudposse/atmos#0
File: CLAUDE.md:0-0
Timestamp: 2025-10-02T20:13:55.539Z
Learning: Applies to /pkg/datafetcher/schema/stacks/stack-config/1.0.json : Update the stack config schema when adding configuration options.
Applied to files:
website/docs/core-concepts/stacks/stacks.mdx
📚 Learning: 2024-12-03T04:01:16.446Z
Learnt from: aknysh
PR: cloudposse/atmos#810
File: website/docs/core-concepts/stacks/yaml-functions/terraform.output.mdx:0-0
Timestamp: 2024-12-03T04:01:16.446Z
Learning: In the `terraform.output.mdx` documentation file (`website/docs/core-concepts/stacks/yaml-functions/terraform.output.mdx`), the cache invalidation and cache scope behavior for the `!terraform.output` function are already described.
Applied to files:
website/docs/functions/yaml/terraform.output.mdxwebsite/docs/functions/yaml/terraform.state.mdx
📚 Learning: 2024-11-12T13:06:56.194Z
Learnt from: osterman
PR: cloudposse/atmos#768
File: website/docs/cheatsheets/vendoring.mdx:70-70
Timestamp: 2024-11-12T13:06:56.194Z
Learning: In `atmos vendor pull --everything`, the `--everything` flag uses the TTY for TUI but is not interactive.
Applied to files:
website/docs/quick-start/simple/extra-credit/vendor-components.mdx
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (5)
- GitHub Check: Build (windows-latest, windows)
- GitHub Check: Lint (golangci)
- GitHub Check: Analyze (go)
- GitHub Check: website-deploy-preview
- GitHub Check: Summary
🔇 Additional comments (32)
website/docs/design-patterns/inline-component-customization.mdx (1)
14-14: Link tweak looks right.Glad to see the import reference pointing at
/stacks/importsnow—it tracks with the refreshed docs layout.website/docs/functions/yaml/template.mdx (1)
185-185: Please confirm docs build.
Nice catch on the new/stacks/inheritancepath—mind running the docs build (yarn --cwd website buildor equivalent) to be sure everything renders and the link resolves as expected?website/docs/cli/configuration/stacks.mdx (1)
77-77: Good link updateThe new
/stacks/importstarget aligns with the stacks docs reorg. All good.website/docs/design-patterns/abstract-component.mdx (1)
235-236: Link swap looks good.Nice cleanup on the references; the new
/stacks/inheritancetarget matches the current structure.website/docs/cli/commands/terraform/usage.mdx (1)
356-357: Link update aligns with stacks docs. Thanks for pointing this flag at/stacks/dependencies/; matches the new doc layout cleanly.website/docs/functions/yaml/index.mdx (1)
79-79: Link update looks good.The path change from
/core-concepts/stacks/templatesto/templatesaligns with the docs reorganization. Just ensure the redirect is configured in Docusaurus to prevent 404s.website/docs/integrations/github-actions/component-updater.mdx (1)
16-16: Vendoring link updated correctly.The path shift from
/core-concepts/vendorto/vendoring/vendoris consistent with the broader reorganization.website/docs/functions/yaml/store.get.mdx (1)
62-62: Template link updated properly.The change from
/core-concepts/stacks/templatesto/templatesmatches the documentation restructuring pattern.website/docs/functions/yaml/terraform.output.mdx (1)
52-52: Template reference updated.Link change from
/core-concepts/stacks/templatesto/templatesfollows the established pattern.website/src/pages/index.js (1)
34-34: Homepage link updated.The change from
/core-concepts/stacks/catalogsto/stacks/catalogsaligns with the stacks documentation relocation.website/docs/design-patterns/inline-component-configuration.mdx (1)
14-14: Imports link updated correctly.Path change from
/core-concepts/stacks/importsto/stacks/importsis consistent with the stacks reorganization.website/docs/functions/yaml/exec.mdx (1)
66-66: Template link updated.The path from
/core-concepts/stacks/templatesto/templatesfollows the same pattern as the other YAML function docs.website/docs/quick-start/advanced/vendor-components.mdx (2)
37-37: Vendoring reference updated.Path change from
/core-concepts/vendorto/vendoring/vendormatches the vendoring documentation migration.
1-266: Build the website and verify no broken linksPer docs guidelines, manually run the site build (e.g.,
cd website && npm run build) and confirm there are no broken links or formatting issues after these changes.website/docs/core-concepts/deploy/deploy.mdx (1)
20-20: LGTM—links updated to new navigation structure.The workflow and dependency links now point to the new top-level paths (
/workflowsand/stacks/dependencies), consistent with the broader documentation reorganization in this PR.Also applies to: 28-28, 44-44
website/docs/migration/terragrunt.mdx (1)
1-574: Strong migration guide—clear structure and practical examples.This comprehensive guide effectively maps Terragrunt concepts to Atmos equivalents with side-by-side comparisons, real-world examples, and actionable migration steps. The tone is welcoming and the content is well-organized.
A few observations:
- The checklist at line 528-540 provides a clear migration path
- Code examples are consistently formatted and easy to follow
- The "Why Migrate?" section (542-558) balances benefits with honest tradeoffs
website/docs/core-concepts/imports-basics.mdx (1)
1-301: LGTM—clear and well-structured import basics guide.The guide effectively explains import mechanics with practical examples. The deep merge explanation (lines 64-127) is particularly clear, showing both the input files and the merged result.
Strong points:
- Progressive complexity (simple examples first)
- Clear distinction between imports and inheritance (lines 272-284)
- Useful organizational patterns (lines 129-164)
website/docs/migration/native-terraform.mdx (1)
1-636: Excellent migration guide—pragmatic and encouraging.This guide nails the balance between quick wins and long-term value. The "Crawl, Walk, Run" structure (lines 27-33) sets clear expectations, and the "20-minute migration" examples make adoption feel achievable.
Particularly strong:
- Honest about existing tool fatigue (lines 18-26)
- Clear about what stays the same (lines 169-175)
- Transparent about limitations (lines 495-509)
- The tone is motivating without overselling
website/docs/core-concepts/yaml-guide.mdx (1)
1-303: LGTM—clear explanation of YAML mechanics in Atmos.The guide effectively clarifies the "no file-level scope" concept (lines 17-22), which is crucial for understanding Atmos configuration merging. The deep merge explanation (lines 64-126) with before/after examples is particularly helpful.
Strong sections:
- YAML tags vs Go templates comparison (lines 161-202)
- Gotchas with practical fixes (lines 224-286)
- Clear examples throughout
website/sidebars.js (2)
80-91: LGTM—Migration Guides category added appropriately.The new category is properly configured with
collapsible: trueandcollapsed: true, which makes sense for optional migration content that won't clutter the main navigation.
183-289: LGTM—new top-level categories align with documentation restructuring.The addition of Stack Configuration, Templates, Workflows, Validation, and Vendoring categories properly reflects the new top-level documentation structure. Each category uses autogenerated items, which keeps the sidebar config maintainable.
website/docs/quick-start/simple/extra-credit/vendor-components.mdx (1)
24-24: LGTM—vendoring links updated to new path.Both references now correctly point to
/vendoring/vendor, consistent with the documentation restructuring.Also applies to: 156-156
website/docs/vendoring/url-syntax.mdx (2)
473-473: LGTM—vendor manifest link updated to new path.The reference now correctly points to
/vendoring/vendor-manifest, consistent with the documentation restructuring.
473-473: Install dependencies and build the website to verify no broken links.Run in the website directory:
npm install npm run buildConfirm the build completes without errors or “broken”/warning messages.
website/docs/design-patterns/component-catalog-template.mdx (1)
17-18: Link updates look consistent.All internal documentation links correctly updated from
/core-concepts/stacks/*to/stacks/*paths, matching the broader documentation restructuring.Also applies to: 49-49, 52-52, 203-203
website/docs/design-patterns/organizational-structure-configuration.mdx (1)
47-47: Link updates are consistent.Documentation references correctly updated to the new top-level paths:
/stacks/imports,/stacks/catalogs, and/stacks/mixins.Also applies to: 570-571
website/docs/core-concepts/concepts-overview.mdx (1)
1-133: Well-structured introduction to core concepts.The new concepts overview page provides clear explanations with practical examples. Navigation links are properly structured for the new documentation layout.
website/docs/core-concepts/components/terraform/providers.mdx (1)
96-96: Link updates are correct.Both references to inheritance documentation correctly updated to
/stacks/inheritance.Also applies to: 177-177
website/docs/core-concepts/stacks/define-components.mdx (1)
10-10: Link updates are symmetric and correct.All references updated consistently across both Terraform and Helmfile sections:
/stacks/*paths and/validation/validating.Also applies to: 69-69, 176-176
website/docs/templates/templates.mdx (1)
18-18: Comprehensive link updates are consistent.All internal references correctly updated across multiple sections:
/stacks/inheritance,/stacks/imports,/vendoring/*, and/templates/datasources.Also applies to: 40-40, 151-151, 200-200, 390-392, 407-407, 411-411, 427-427, 583-583, 738-738
website/docs/stacks/stacks.mdx (1)
1-237: Well-organized landing page for Stack Configuration.The new overview page provides clear navigation to advanced stack features with consistent link structure using the new top-level paths.
website/docusaurus.config.js (1)
122-214: No broken-link issues; redirects cover all path changes—confirm the commented-out workflows/templates redirects are intentional.
website/docs/integrations/github-actions/atmos-terraform-plan.mdx
Outdated
Show resolved
Hide resolved
## what - Add comprehensive dot notation section to YAML guide - Add detailed dot notation section to YAML reference - Include examples of when to use vs when not to use dot notation - Show dot notation works everywhere (vars, settings, env, etc.) - Add to key takeaways in YAML guide ## why - Users need to know they can use dot notation for cleaner, more readable configuration - When setting single values in deeply nested structures, dot notation is more concise - Reduces unnecessary nesting while maintaining clarity - Example: `settings.spacelift.workspace_enabled: true` vs full nested structure 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #1588 +/- ##
==========================================
- Coverage 72.15% 72.15% -0.01%
==========================================
Files 475 475
Lines 45713 45713
==========================================
- Hits 32986 32984 -2
- Misses 10105 10106 +1
- Partials 2622 2623 +1
Flags with carried forward coverage won't be shown. Click here to find out more. 🚀 New features to boost your workflow:
|
## what
- Remove defensive language ("Let's be honest", "This isn't a failure")
- Convert passive voice to active voice throughout
- Add humor and friendly metaphors to YAML guide
- Fix yaml-reference slug from /reference/yaml-reference to /reference/yaml
## why
- Defensive language sounds apologetic rather than confident
- Active voice is clearer and more direct
- Humor makes technical content more approachable
- Clean URLs without redundant terms
## changes
### Remove Defensive Language
- "Let's be honest: nobody uses pure Terraform" → "Most teams don't use Terraform in isolation"
- "This isn't a failure—it's natural evolution" → "This is the natural evolution"
- "Let's be honest:" before limitations → "Here's what to expect:"
### Convert Passive to Active Voice
- "Files are processed sequentially" → "Atmos processes files sequentially"
- "YAML tags are evaluated during parsing" → "Atmos evaluates YAML tags during parsing"
- "Go templates are processed after" → "Atmos processes Go templates after"
- "after all imports are processed" → "Atmos processes all imports"
### Add Humor & Friendliness
- YAML opening: "has a few party tricks up its sleeve... features, not bugs (OK, definitely features)"
- Type coercion: "The NO Problem (Or: How Norway Broke YAML)"
- Deep merge metaphor: "like layering transparencies... infrastructure inheritance, YAML style"
### Fix Technical Issues
- yaml-reference.mdx slug: /reference/yaml-reference → /reference/yaml (remove redundancy)
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 2
📜 Review details
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
Disabled knowledge base sources:
- Linear integration is disabled by default for public repositories
You can enable these sources in your CodeRabbit configuration.
📒 Files selected for processing (4)
website/docs/core-concepts/yaml-guide.mdx(1 hunks)website/docs/introduction/why-atmos/why-atmos.mdx(1 hunks)website/docs/migration/native-terraform.mdx(1 hunks)website/docs/reference/yaml-reference.mdx(1 hunks)
🚧 Files skipped from review as they are similar to previous changes (1)
- website/docs/core-concepts/yaml-guide.mdx
🧰 Additional context used
📓 Path-based instructions (2)
website/**
📄 CodeRabbit inference engine (.cursor/rules/atmos-rules.mdc)
website/**: Update website documentation in website/ when adding features
Ensure consistency between CLI help text and website documentation
Follow the website's documentation structure and style
Keep website code in website/ and follow its architecture/style; test changes locally
Keep CLI and website documentation in sync; document new features with examples and use cases
Files:
website/docs/reference/yaml-reference.mdxwebsite/docs/introduction/why-atmos/why-atmos.mdxwebsite/docs/migration/native-terraform.mdx
website/docs/**/*.{md,mdx}
📄 CodeRabbit inference engine (CLAUDE.md)
website/docs/**/*.{md,mdx}: Build the website after modifying any docs under website/docs/ to verify no broken links or formatting issues.
Document user-facing template functions in the website documentation.
Files:
website/docs/reference/yaml-reference.mdxwebsite/docs/introduction/why-atmos/why-atmos.mdxwebsite/docs/migration/native-terraform.mdx
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (5)
- GitHub Check: Build (windows-latest, windows)
- GitHub Check: website-deploy-preview
- GitHub Check: Lint (golangci)
- GitHub Check: Analyze (go)
- GitHub Check: Summary
🔇 Additional comments (1)
website/docs/introduction/why-atmos/why-atmos.mdx (1)
1-75: Reads clean—nice work.Narrative flows well and the component usage matches the rest of the docs.
## what - Add explicit slugs to problem files (components.mdx, custom-commands.mdx, share-data.mdx) - Fix all /learn/yaml-guide → /learn/yaml references (5 files) - Fix all /core-concepts button links → /learn (5 files) - Fix intro index /core-concepts → /learn button ## why - Files without explicit slugs caused Docusaurus to generate unexpected URLs - Bulk find/replace missed some button links with specific syntax - Need explicit slugs for predictable URLs ## stats - Fixed ~40 additional broken links - Down from 66 broken links to ~15 remaining - Remaining issues are mostly category page links (/learn, /components) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
- Fix homepage links: /introduction → /intro, /core-concepts/components → /components/components, /core-concepts/stacks → /learn/stacks - Fix integration page links: /components/ → /components/components (3 instances) - Build now succeeds with 0 broken links 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 21
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (22)
website/docs/quick-start/simple/extra-credit/create-workflows.mdx (1)
85-90: Fix workflow name mismatch in example commentsThe comments reference plan-all-vpc-flow-logs and apply-all-components, but the defined workflows are plan-all and apply-all. Update the comments to match.
-# Execute the workflow `plan-all-vpc-flow-logs` from the workflow manifest `weather.yaml` +# Execute the workflow `plan-all` from the workflow manifest `weather.yaml` atmos workflow plan-all -f weather -# Execute the workflow `apply-all-components` from the workflow manifest `weather.yaml` +# Execute the workflow `apply-all` from the workflow manifest `weather.yaml` atmos workflow apply-all -f weatherwebsite/docs/quick-start/install-atmos.mdx (6)
42-47: Brewfile guidance: fix command and version pinning approach.
- Use brew bundle, not brew install, to consume a Brewfile.
- Homebrew Brewfile does not support explicit version strings like "1.2.3". Pin via Brewfile.lock.json (commit it) and use brew bundle --no-upgrade for reproducibility.
Apply:
- <File title="Brewfile"> - <pre><code>brew "atmos", "<LatestRelease />"</code></pre> - </File> - - Then just run `brew install` in the same directory as the `Brewfile`. + <File title="Brewfile"> + <pre><code>brew "atmos"</code></pre> + </File> + + Then run `brew bundle` in the same directory. Commit the generated `Brewfile.lock.json` to pin versions, and use `brew bundle --no-upgrade` in CI/dev for consistency.
56-62: Copy/paste breaks: Unicode pipe in Debian snippet.The pipe is U+2502 (│). Replace with ASCII '|' so the command works.
- curl -1sLf 'https://dl.cloudsmith.io/public/cloudposse/packages/cfg/setup/bash.deb.sh' │ bash + curl -1sLf 'https://dl.cloudsmith.io/public/cloudposse/packages/cfg/setup/bash.deb.sh' | bashAlso consider
sudo -E bashif not running as root.
70-75: Copy/paste breaks: Unicode pipe in RPM snippet.Same issue; use ASCII pipe.
- curl -1sLf 'https://dl.cloudsmith.io/public/cloudposse/packages/setup.rpm.sh' │ sudo -E bash + curl -1sLf 'https://dl.cloudsmith.io/public/cloudposse/packages/setup.rpm.sh' | sudo -E bash
84-89: Copy/paste breaks: Unicode pipe in Alpine snippet (+ shell choice).
- Replace Unicode pipe with ASCII.
- Alpine may not have bash; pipe to sh.
- curl -fsSL 'https://dl.cloudsmith.io/public/cloudposse/packages/setup.alpine.sh' │ bash + curl -fsSL 'https://dl.cloudsmith.io/public/cloudposse/packages/setup.alpine.sh' | sh
141-143: Go install needs version suffix.With modern Go, go install of remote modules requires @Version (e.g., @latest).
- go install github.com/cloudposse/atmos + go install github.com/cloudposse/atmos@latestYou already show pinned and latest variants below—keep this consistent.
296-296: Typo.“troule” → “trouble”.
-If you're having any troule, try [iTerm2](https://iterm2.com/) or any other modern day terminal that supports +If you're having any trouble, try [iTerm2](https://iterm2.com/) or any other modern day terminal that supportswebsite/docs/cli/commands/terraform/terraform-generate-varfiles.mdx (2)
65-73: Fix copy/paste in Flags: "backend" wording and wrong formats.This command generates varfiles, not backends; supported formats include yaml (examples show it), not backend-config.
Apply:
@@ <dt>`--components` <em>(optional)</em></dt> <dd> - Only generate backend files for the specified Atmos components (comma-separated values). + Only generate varfiles for the specified Atmos components (comma-separated values). </dd> @@ <dt>`--format` <em>(optional)</em></dt> <dd> - Backend file format: `json`, `hcl`, `backend-config` (`json` is default) . + Varfile format: `json`, `hcl`, `yaml` (`json` is default). </dd>
6-6: Correct varfile extension.Terraform varfiles use .tfvars (and variants), not .tfvar.
-description: Use this command to generate the Terraform varfiles (`.tfvar`) for all Atmos terraform components in all stacks. +description: Use this command to generate Terraform varfiles (`.tfvars`, `.tfvars.json`, or `.tfvars.hcl`) for all Atmos Terraform components in all stacks.website/docs/components/terraform/terraform.mdx (1)
6-6: Duplicate Docusaurus doc id 'terraform' (will fail build).This id duplicates another page’s id. Make ids unique.
Apply:
-id: terraform +id: terraform-root-moduleswebsite/docs/projects/configuration/terraform.mdx (1)
5-5: Unique Docusaurus doc id requiredDuplicate id "terraform" collides with other pages. In website/docs/projects/configuration/terraform.mdx frontmatter, update:
-id: terraform +id: configure-terraformwebsite/docs/cli/configuration/components.mdx (2)
206-213: Backtick/spacing issues incluster_name_patternsection.
- Missing opening backtick around ENV var and extra spaces (Line 208).
- Stray trailing backtick in example (Line 211).
These can break formatting.- Can also be set using ATMOS_COMPONENTS_HELMFILE_CLUSTER_NAME_PATTERN` ENV var. + Can also be set using `ATMOS_COMPONENTS_HELMFILE_CLUSTER_NAME_PATTERN` ENV var. @@ - {namespace}-{tenant}-{environment}-{stage}-eks-cluster` + {namespace}-{tenant}-{environment}-{stage}-eks-cluster
1-214: Components configuration docs: add missing slug page and ENV var docs
- No
/core-concepts/links remain.- The
/components/terraformslug page is missing (addwebsite/docs/components/terraform/index.mdxwith appropriate frontmatter).- Terraform CLI docs omit the
append_user_agentsetting and itsATMOS_COMPONENTS_TERRAFORM_APPEND_USER_AGENTENV var—please document both under the Terraform component section.website/docs/functions/yaml/store.mdx (1)
120-123: Incorrect function name referenced (“!terraform.output”).This page documents
!store; update the sentence to reference!store, not!terraform.output.Apply:
-There are multiple ways you can specify the Atmos stack parameter in the `!terraform.output` function. +There are multiple ways you can specify the Atmos stack parameter in the `!store` function.website/docs/components/terraform/backends.mdx (5)
12-14: Fix Terraform link and grammar
- Link "Terraform" should point to HashiCorp docs, not OpenTofu.
- Use plural pronoun (“their state”).
Apply:
-Backends define where [Terraform](https://opentofu.org/docs/language/state/) and -[OpenTofu](https://opentofu.org/docs/language/state/) store its state. +Backends define where [Terraform](https://developer.hashicorp.com/terraform/language/state) and +[OpenTofu](https://opentofu.org/docs/language/state/) store their state.
53-55: Clarify local backend lockingLocal backend has only local file locking; it lacks distributed/remote locking and is unsafe for multi-user concurrency.
Suggested copy:
-- **No Concurrency and Locking**: Local backend lacks locking, leading to race conditions when multiple users modify the state. +- **Limited Concurrency/Locking**: Local backend uses local file locks only; it doesn't provide distributed locking, making it unsafe for multi-user access.
301-305: Typo: backend key should begcs(notgcp)This will break backend generation if copied verbatim.
- backend: - gcp: - prefix: "my-component" + backend: + gcs: + prefix: "my-component"
320-323: Typo: JSON backend key should begcs(notgcp)- "gcp": { + "gcs": { "bucket": "tf-state", "prefix": "my-component" }
206-210: Missing documentation pages for new routes
The following linked routes in website/docs/components/terraform/backends.mdx (as well as at lines 408–410, 418–420) have no corresponding source files under website/docs, resulting in broken links after build:
- /workflows
- /learn/stacks
- /cli/commands/terraform/generate-backend
- /cli/commands/terraform/generate-backends
Add the appropriate .md/.mdx (or index.md(x)) files for these routes or adjust the links.
website/docs/design-patterns/abstract-component.mdx (1)
173-181: Invalid YAML: nestedimportkeyUse a single
importwith a sequence.-```yaml title="stacks/orgs/acme/plat/prod/us-east-2.yaml" -import: - import: - - orgs/acme/plat/prod/_defaults - - mixins/region/us-east-2 - # Import the `vpc/defaults` component from the `catalog/vpc/defaults.yaml` manifest - - catalog/vpc/defaults +```yaml title="stacks/orgs/acme/plat/prod/us-east-2.yaml" +import: + - orgs/acme/plat/prod/_defaults + - mixins/region/us-east-2 + # Import the `vpc/defaults` component from the `catalog/vpc/defaults.yaml` manifest + - catalog/vpc/defaultswebsite/docs/learn/stacks/define-components.mdx (1)
53-57: Movesettingsout ofmetadatain the example
settingsis a top-level block (sibling ofmetadata,vars), not nested undermetadata.metadata: # Components can be of type "real" (default) or "abstract" type: real # This is the directory path of the component. # In this example, we're referencing a component in the `components/terraform/stable/example` folder. component: stable/example - - # We can leverage multiple inheritance to sequentially deep merge multiple configurations - inherits: - - example-defaults - - # Settings are where we store configuration related to integrations. - # It's a freeform map; anything can be placed here. - settings: - spacelift: {} + # We can leverage multiple inheritance to sequentially deep merge multiple configurations + inherits: + - example-defaults + + # Settings are where we store configuration related to integrations. + # It's a freeform map; anything can be placed here. + settings: + spacelift: {}website/docs/functions/yaml/include.mdx (1)
141-152: Fix broken documentation links
In website/docs/functions/yaml/include.mdx (lines 141-152), these links point to non-existent pages:
- /learn/stacks
- /cli/commands/list/stacks
- /cli/commands/list/components
Update them to valid paths or add the missing docs.
♻️ Duplicate comments (5)
website/docs/components/terraform/brownfield.mdx (1)
59-59: Consistent link update; same verification appliesMatches the new connections path. Covered by the prior check.
website/docs/quick-start/simple/extra-credit/add-custom-commands.mdx (1)
22-23: Links updated to new custom-commands path look right.Change aligns with the new docs structure.
Build check from prior comment covers this too.
Also applies to: 65-66
website/docs/migration/native-terraform.mdx (1)
529-530: Fix the generated tfvars filename.Atmos writes terraform.tfvars.json, not .auto.tfvars.json.
-Atmos auto-generates `.auto.tfvars.json` from your `vars:` section. +Atmos auto-generates `terraform.tfvars.json` from your `vars:` section.-**Yes.** Atmos can generate `.auto.tfvars.json` from your stack YAML, but you can also keep using existing `.tfvars` files during migration. +**Yes.** Atmos can generate `terraform.tfvars.json` from your stack YAML, but you can also keep using existing `.tfvars` files during migration.Also applies to: 619-620
website/docs/reference/yaml-reference.mdx (1)
271-306: Cross-file anchor dereference will fail; use same-file anchor or Atmos inheritanceAnchors are file-scoped;
<<: *vpc_defaultswon’t resolve acrossimport. Replace with same-file anchor reuse or Atmos component inheritance.Proposed fix (switch to inheritance):
-<File title="stacks/catalog/vpc-defaults.yaml"> +<File title="stacks/catalog/vpc-defaults.yaml"> ```yaml components: terraform: vpc-base: metadata: type: abstract - vars: &vpc_defaults + vars: enable_dns_hostnames: true enable_dns_support: true enable_nat_gateway: true single_nat_gateway: false create_igw: true map_public_ip_on_launch: false-
+```import: - catalog/vpc-defaults components: terraform: vpc-prod: metadata: component: vpc + inherits: + - vpc-base vars: - <<: *vpc_defaults # Inherit all VPC defaults cidr_block: "10.0.0.0/16" availability_zones: ["us-east-1a", "us-east-1b", "us-east-1c"] single_nat_gateway: true # Override for prodAlternatively, keep the anchor example but keep both
&vpc_defaultsand its<<: *vpc_defaultsusage in the same file.website/docs/integrations/github-actions/atmos-terraform-plan.mdx (1)
97-98: Confirm target: /learn/stacks/ vs /stacks/.Is the “Atmos stack configuration” link intentionally pointing to the Learn page? If this should reference the stacks reference section, consider
/stacks/instead.
🧹 Nitpick comments (36)
website/docs/intro/why-atmos/stage-8.mdx (1)
35-38: Approve link update: ‘/intro/why-atmos/nirvana’ page exists and routing is correct. Optional: use<Link>for the stage-9 button or switch to a relative./nirvanapath for consistency.website/docs/deploy/deploy.mdx (1)
20-20: Flatten the Custom Commands URL.Given the simplified URLs, prefer /custom-commands over /custom-commands/custom-commands.
Apply this diff:
-... including [custom commands](/custom-commands/custom-commands). +... including [custom commands](/custom-commands).website/docs/intro/why-atmos/stage-2.mdx (1)
34-39: Internal links verified; targets exist. Both/intro/why-atmos/stage-5(id:stage-5) and/intro/why-atmos/stage-3(id:stage-3) pages are present. Optional: switch to Docusaurus<Link>for internal links to match the CTA and enable prefetch.-... [to realize the inefficiencies of this approach (stage 5)](/intro/why-atmos/stage-5). +... <Link to="/intro/why-atmos/stage-5">to realize the inefficiencies of this approach (stage 5)</Link>. -... [everything new as a module](/intro/why-atmos/stage-3). +... <Link to="/intro/why-atmos/stage-3">everything new as a module</Link>.website/docs/projects/layout.mdx (1)
94-94: Link looks right; consider precise wording.Confirm /validation/validating exists post‑move. Optional: tighten phrasing to standard terms.
-This folder contains the [JSON or OPA schemas used to validate the stack configurations](/validation/validating). +This folder contains the [JSON Schema or OPA (Rego) policies used to validate stack configurations](/validation/validating).website/docs/intro/faq.mdx (1)
60-60: Diversify duplicate link targets: Both “component architecture” and “advanced features” currently point to /stacks/inheritance; consider linking “component architecture” to a more specific page or anchor that better reflects its content.website/docs/cli/commands/terraform/terraform-generate-varfile.mdx (1)
67-71: Capitalize “Terraform” for consistency.Match product name casing.
- Enable/disable Go template processing in Atmos stack manifests when executing terraform commands. + Enable/disable Go template processing in Atmos stack manifests when executing Terraform commands. @@ - Enable/disable YAML functions processing in Atmos stack manifests<br/>when executing terraform commands. + Enable/disable YAML functions processing in Atmos stack manifests<br/>when executing Terraform commands.Also applies to: 77-81
website/docs/cli/commands/completion.mdx (4)
52-54: Code fence language mismatch in Bash section.Use bash fence for sourcing ~/.bashrc.
-```zsh +```bash source ~/.bashrc
59-59: Tab label prop likely wrong.TabItem should use label, not name.
-<TabItem value="zsh" name="Zsh"> +<TabItem value="zsh" label="Zsh">
26-26: Capitalize PowerShell in prose.Keep narrative capitalization consistent.
-This command generates completion scripts for `Bash`, `Zsh`, `Fish` and `powershell`. +This command generates completion scripts for `Bash`, `Zsh`, `Fish` and `PowerShell`.
18-34: Optional: reorder sections to match CLI docs convention.Per guidelines, prefer: Usage → Examples → Arguments → Flags. Consider moving “Examples” above “Configuring Your Shell.”
As per coding guidelines
Also applies to: 100-131
website/docs/quick-start/simple/configure-cli.mdx (2)
133-134: Unify validation links.If validation content moved under /validation/validating, consider pointing “Manifests Validation” (Line 132) there too for consistency, unless /cli/schemas is intentionally separate.
143-149: Links updated correctly; small grammar nit.Nice switch to /connections/remote-state and /learn/stacks. Suggest “which tries” (singular “code”) in Line 148.
-which try to locate the [CLI config](/cli/configuration) `atmos.yaml` file before parsing and processing [Atmos stacks](/learn/stacks). +which tries to locate the [CLI config](/cli/configuration) `atmos.yaml` file before parsing and processing [Atmos stacks](/learn/stacks).website/docs/cli/commands/terraform/terraform-generate-varfiles.mdx (1)
47-49: Add “Arguments” section for consistency (none).Guideline order is Usage → Examples → Arguments → Flags. Add a stub.
@@ -## Flags +## Arguments + +This command has no positional arguments. + +## FlagsAs per coding guidelines
website/docs/quick-start/simple/provision.mdx (1)
61-61: Minor copy tweak to match new structure.Consider replacing “core concepts” with “Learn Atmos” or linking “Learn” to keep terminology consistent with the new section.
website/docs/components/terraform/providers.mdx (1)
96-96: Update link text and fix grammar
- Change link text in website/docs/components/terraform/providers.mdx:96 from “Atmos Component Inheritance” to “Inherit Configurations”
- Fix typo at line 177: “list are” → “lists are”
@@ website/docs/components/terraform/providers.mdx -Refer to [Atmos Component Inheritance](/stacks/inheritance) for more information on all types of component inheritance +Refer to [Inherit Configurations](/stacks/inheritance) for more information on all types of component inheritance -[inheritance](/stacks/inheritance) chain since list are not deep-merged, they are replaced. +[inheritance](/stacks/inheritance) chain since lists are not deep-merged, they are replaced.website/docs/migration/terragrunt.mdx (2)
57-72: Link to the Remote State docs for discoverability.Add a reference to the Remote State guide so readers can go deeper right away.
-### Terragrunt `dependency` → Atmos Remote State +### Terragrunt `dependency` → Atmos Remote State + +See: [/connections/remote-state](/connections/remote-state)
491-497: Note: exec usage may require enabling it.If gomplate exec is gated by config in your setup, add a one-liner note or link on enabling it to avoid surprises.
website/docs/migration/native-terraform.mdx (2)
52-56: Homebrew install: use the Cloud Posse tap.Recommend the explicit tap to avoid install failures on macOS.
-# macOS -brew install atmos +# macOS +brew install cloudposse/tap/atmos
518-526: Verifycommandkey placement.Typically the Terraform binary override lives under settings.terraform.command. If that’s the case here, update the example.
components: terraform: vpc: - command: "/usr/bin/terraform" + settings: + terraform: + command: "/usr/bin/terraform" vars: # Variables defined herewebsite/docs/reference/yaml-reference.mdx (2)
347-351: Add a note on YAML schema/version used by AtmosBoolean and octal behavior differ between YAML 1.1 and 1.2. Add a brief callout (e.g., “Atmos parses YAML using go-yaml’s YAML 1.1 schema semantics; booleans like YES/NO and octal 0644 apply”) to ground the guidance in this section.
389-401: Extend boolean table with y/n for completenessYAML 1.1 also treats
y→ true andn→ false. Add rows fory/nto avoid surprises.website/docs/projects/configuration/terraform.mdx (1)
18-18: Verify target path for Custom Commands.Is the canonical URL /custom-commands or /custom-commands/custom-commands? Adjust if needed.
website/docs/connections/share-data.mdx (1)
7-7: Use a more specific slug
The frontmatter slug is currently/connectionsbut this page is about “Share Data.” Change it to/connections/share-data(or drop the custom slug to let the default/connections/share-datatake effect) to better match its content and avoid confusion with the section root.website/docs/learn/first-stack.mdx (1)
20-23: Add AWS credentials to prerequisites.Readers need creds or the plan/apply will fail.
Apply this diff:
- Basic Terraform knowledge - A Terraform component (or create a simple one) + - AWS credentials configured (e.g., AWS_PROFILE or AWS_ACCESS_KEY_ID/AWS_SECRET_ACCESS_KEY)website/docs/cli/configuration/components.mdx (3)
17-19: Good link update; fix minor typo on the next line.Path looks correct. Also fix “and and” on Line 18.
- To instruct Atmos how to interact with that component, we must specify the command to run and and where the code + To instruct Atmos how to interact with that component, we must specify the command to run and where the code
23-24: Typo: duplicate “the”.Single “the” reads better.
- Think of it as the bootstrapping configuration. This is where we can define the the `command` to run, + Think of it as the bootstrapping configuration. This is where we can define the `command` to run,
197-205: Inconsistent example for helm AWS profile pattern.Earlier default uses “-gbl-” literal (Line 159). Example here shows
{gbl}token. Align to literal for consistency.- ``` - {namespace}-{tenant}-{gbl}-{stage}-helm - ``` + ``` + {namespace}-{tenant}-gbl-{stage}-helm + ```website/docs/learn/inheritance-basics.mdx (2)
118-129: Keep metadata consistent across examples.This base snippet omits
metadata.component, while others include it. Add it for clarity.components: terraform: vpc-base: metadata: - type: abstract + component: vpc + type: abstract vars: enable_nat_gateway: true single_nat_gateway: true
159-167: Use consistent variable names in VPC examples.Earlier sections use
enable_dns_hostnamesandenable_dns_support, but here it’senable_dns. Align to avoid confusion.vars: - enable_dns: true + enable_dns_hostnames: true + enable_dns_support: truewebsite/docs/learn/next-steps.mdx (3)
66-71: Duplicate links to the same /workflows pageTwo bullets both point to /workflows. Either split into distinct pages or dedupe to a single bullet.
- - **[Workflow Basics](/workflows)** - Multi-step automation - - **[Workflow Orchestration](/workflows)** - Conditional logic and error handling + - **[Workflows](/workflows)** - Multi-step automation, conditional logic, and error handlingIf separate pages exist, update targets accordingly (e.g., /workflows/basics and /workflows/orchestration). Please verify.
68-69: Suspicious slug: /custom-commands/custom-commandsLikely should be the section root.
- - **[Custom Commands](/custom-commands/custom-commands)** - Extend Atmos with your own commands + - **[Custom Commands](/custom-commands/)** - Extend Atmos with your own commands
109-113: Link text/URL mismatch“Terraform Maturity Journey” links to /intro/why-atmos/. Either adjust the text to “Why Atmos” or update the URL to the maturity-journey page if that exists.
- - **[Terraform Maturity Journey](/intro/why-atmos/)** - Understanding where you are and where you're going + - **[Why Atmos](/intro/why-atmos/)** - Understanding where you are and where you're goingwebsite/docs/learn/stacks/define-components.mdx (1)
203-206: Optional: dedupe sentenceSentence repeats info already stated above about
metadata.type. Consider removing one occurrence.website/docs/cli/configuration/configuration.mdx (2)
32-41: Tighten “Configuration File” copy and headings.Minor grammar/formatting nits for clarity.
-The --config-path flag designates a directory containing Atmos configuration files. files name should be (atmos.yaml, .atmos.yaml,atmos.yml, .atmos.yml). Only files from the specified directory will be loaded. +The --config-path flag designates a directory containing Atmos configuration files. File names should be one of: atmos.yaml, .atmos.yaml, atmos.yml, or .atmos.yml. Only files from the specified directory will be loaded. @@ -Configuration Load Order -If --config and --config-path not specified in command +### Configuration Load Order +If --config and --config-path are not specified The CLI config is loaded from the following locations (from lowest to highest priority):
23-26: Optional: unify trailing-slash usage.Consider using /learn/stacks (no trailing slash) for consistency with other links.
website/docs/intro/use-cases.mdx (1)
17-18: No legacy paths or double slashes detected
No occurrences of/core-concepts/or/introduction/, and no//in link targets. Trailing-slash usage appears consistent; standardize them site-wide if desired.
📜 Review details
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
Disabled knowledge base sources:
- Linear integration is disabled by default for public repositories
You can enable these sources in your CodeRabbit configuration.
📒 Files selected for processing (107)
website/docs/best-practices/components.mdx(2 hunks)website/docs/best-practices/terraform.mdx(2 hunks)website/docs/cli/commands/completion.mdx(1 hunks)website/docs/cli/commands/describe/describe-affected.mdx(2 hunks)website/docs/cli/commands/describe/describe-component.mdx(7 hunks)website/docs/cli/commands/terraform/terraform-generate-backends.mdx(1 hunks)website/docs/cli/commands/terraform/terraform-generate-planfile.mdx(1 hunks)website/docs/cli/commands/terraform/terraform-generate-varfile.mdx(1 hunks)website/docs/cli/commands/terraform/terraform-generate-varfiles.mdx(1 hunks)website/docs/cli/commands/terraform/usage.mdx(4 hunks)website/docs/cli/commands/workflow.mdx(1 hunks)website/docs/cli/configuration/commands.mdx(1 hunks)website/docs/cli/configuration/components.mdx(2 hunks)website/docs/cli/configuration/configuration.mdx(5 hunks)website/docs/cli/configuration/stacks.mdx(2 hunks)website/docs/components/component-library.mdx(1 hunks)website/docs/components/components.mdx(2 hunks)website/docs/components/terraform/backends.mdx(3 hunks)website/docs/components/terraform/brownfield.mdx(2 hunks)website/docs/components/terraform/providers.mdx(2 hunks)website/docs/components/terraform/state-backend.mdx(3 hunks)website/docs/components/terraform/terraform.mdx(2 hunks)website/docs/components/terraform/workspaces.mdx(1 hunks)website/docs/connections/remote-state.mdx(3 hunks)website/docs/connections/share-data.mdx(6 hunks)website/docs/core-concepts/core-concepts.mdx(0 hunks)website/docs/custom-commands/custom-commands.mdx(1 hunks)website/docs/deploy/deploy.mdx(2 hunks)website/docs/describe/components.mdx(1 hunks)website/docs/design-patterns/abstract-component.mdx(2 hunks)website/docs/design-patterns/inline-component-configuration.mdx(1 hunks)website/docs/design-patterns/inline-component-customization.mdx(1 hunks)website/docs/functions/template/atmos.Component.mdx(2 hunks)website/docs/functions/template/atmos.Store.mdx(1 hunks)website/docs/functions/yaml/include.mdx(3 hunks)website/docs/functions/yaml/index.mdx(2 hunks)website/docs/functions/yaml/store.get.mdx(2 hunks)website/docs/functions/yaml/store.mdx(2 hunks)website/docs/functions/yaml/terraform.output.mdx(3 hunks)website/docs/functions/yaml/terraform.state.mdx(4 hunks)website/docs/glossary/terralith.mdx(1 hunks)website/docs/integrations/github-actions/affected-stacks.mdx(1 hunks)website/docs/integrations/github-actions/atmos-terraform-plan.mdx(1 hunks)website/docs/integrations/github-actions/component-updater.mdx(1 hunks)website/docs/integrations/github-actions/github-actions.mdx(1 hunks)website/docs/integrations/spacelift.mdx(2 hunks)website/docs/intro/faq.mdx(2 hunks)website/docs/intro/index.mdx(5 hunks)website/docs/intro/use-cases.mdx(1 hunks)website/docs/intro/why-atmos/nirvana.mdx(1 hunks)website/docs/intro/why-atmos/stage-0.mdx(1 hunks)website/docs/intro/why-atmos/stage-1.mdx(1 hunks)website/docs/intro/why-atmos/stage-10.mdx(1 hunks)website/docs/intro/why-atmos/stage-2.mdx(1 hunks)website/docs/intro/why-atmos/stage-3.mdx(2 hunks)website/docs/intro/why-atmos/stage-4.mdx(1 hunks)website/docs/intro/why-atmos/stage-5.mdx(1 hunks)website/docs/intro/why-atmos/stage-6.mdx(1 hunks)website/docs/intro/why-atmos/stage-7.mdx(2 hunks)website/docs/intro/why-atmos/stage-8.mdx(1 hunks)website/docs/intro/why-atmos/stage-9.mdx(1 hunks)website/docs/intro/why-atmos/why-atmos.mdx(1 hunks)website/docs/learn/concepts-overview.mdx(1 hunks)website/docs/learn/connecting-components.mdx(1 hunks)website/docs/learn/first-stack.mdx(1 hunks)website/docs/learn/imports-basics.mdx(1 hunks)website/docs/learn/inheritance-basics.mdx(1 hunks)website/docs/learn/next-steps.mdx(1 hunks)website/docs/learn/organizing-stacks.mdx(1 hunks)website/docs/learn/stacks/define-components.mdx(4 hunks)website/docs/learn/stacks/stacks.mdx(4 hunks)website/docs/learn/why-atmos.mdx(1 hunks)website/docs/learn/yaml-guide.mdx(1 hunks)website/docs/migration/native-terraform.mdx(1 hunks)website/docs/migration/terraform-workspaces.mdx(1 hunks)website/docs/migration/terragrunt.mdx(1 hunks)website/docs/projects/configuration/configuration.mdx(6 hunks)website/docs/projects/configuration/helmfile.mdx(2 hunks)website/docs/projects/configuration/opentofu.mdx(3 hunks)website/docs/projects/configuration/packer.mdx(1 hunks)website/docs/projects/configuration/stores.mdx(1 hunks)website/docs/projects/configuration/terraform.mdx(1 hunks)website/docs/projects/layout.mdx(2 hunks)website/docs/quick-start/advanced/add-custom-commands.mdx(1 hunks)website/docs/quick-start/advanced/advanced.mdx(1 hunks)website/docs/quick-start/advanced/configure-cli.mdx(3 hunks)website/docs/quick-start/advanced/configure-repository.md(1 hunks)website/docs/quick-start/advanced/create-atmos-stacks.mdx(4 hunks)website/docs/quick-start/advanced/create-workflows.mdx(1 hunks)website/docs/quick-start/advanced/next-steps.md(1 hunks)website/docs/quick-start/advanced/vendor-components.mdx(3 hunks)website/docs/quick-start/install-atmos.mdx(1 hunks)website/docs/quick-start/mindset.mdx(9 hunks)website/docs/quick-start/simple/configure-cli.mdx(4 hunks)website/docs/quick-start/simple/configure-project.mdx(1 hunks)website/docs/quick-start/simple/configure-stacks.mdx(3 hunks)website/docs/quick-start/simple/extra-credit/add-custom-commands.mdx(2 hunks)website/docs/quick-start/simple/extra-credit/create-workflows.mdx(2 hunks)website/docs/quick-start/simple/provision.mdx(1 hunks)website/docs/quick-start/simple/simple.mdx(1 hunks)website/docs/quick-start/simple/summary.mdx(1 hunks)website/docs/quick-start/simple/write-components.mdx(3 hunks)website/docs/reference/alternatives.mdx(4 hunks)website/docs/reference/yaml-reference.mdx(1 hunks)website/docs/stacks/catalogs.mdx(3 hunks)website/docs/stacks/dependencies.mdx(2 hunks)website/docs/stacks/imports.mdx(4 hunks)
⛔ Files not processed due to max files limit (10)
- website/docs/stacks/inheritance.mdx
- website/docs/stacks/stacks.mdx
- website/docs/templates/datasources.mdx
- website/docs/templates/templates.mdx
- website/docs/tutorials/atmos-getting-started.mdx
- website/docs/tutorials/first-aws-environment.mdx
- website/docs/workflows/workflows.mdx
- website/docusaurus.config.js
- website/sidebars.js
- website/src/pages/index.js
💤 Files with no reviewable changes (1)
- website/docs/core-concepts/core-concepts.mdx
✅ Files skipped from review due to trivial changes (19)
- website/docs/custom-commands/custom-commands.mdx
- website/docs/cli/commands/terraform/terraform-generate-planfile.mdx
- website/docs/components/component-library.mdx
- website/docs/intro/why-atmos/stage-9.mdx
- website/docs/cli/commands/describe/describe-affected.mdx
- website/docs/quick-start/simple/simple.mdx
- website/docs/cli/commands/terraform/terraform-generate-backends.mdx
- website/docs/components/terraform/state-backend.mdx
- website/docs/projects/configuration/configuration.mdx
- website/docs/best-practices/components.mdx
- website/docs/cli/configuration/commands.mdx
- website/docs/learn/yaml-guide.mdx
- website/docs/projects/configuration/stores.mdx
- website/docs/functions/template/atmos.Component.mdx
- website/docs/components/terraform/workspaces.mdx
- website/docs/quick-start/advanced/configure-repository.md
- website/docs/quick-start/advanced/add-custom-commands.mdx
- website/docs/projects/configuration/packer.mdx
- website/docs/connections/remote-state.mdx
🚧 Files skipped from review as they are similar to previous changes (19)
- website/docs/design-patterns/inline-component-configuration.mdx
- website/docs/quick-start/advanced/vendor-components.mdx
- website/docs/functions/yaml/store.get.mdx
- website/docs/quick-start/advanced/configure-cli.mdx
- website/docs/quick-start/advanced/advanced.mdx
- website/docs/stacks/dependencies.mdx
- website/docs/quick-start/mindset.mdx
- website/docs/integrations/github-actions/component-updater.mdx
- website/docs/stacks/imports.mdx
- website/docs/quick-start/simple/configure-stacks.mdx
- website/docs/best-practices/terraform.mdx
- website/docs/migration/terraform-workspaces.mdx
- website/docs/quick-start/advanced/create-atmos-stacks.mdx
- website/docs/cli/commands/terraform/usage.mdx
- website/docs/functions/yaml/terraform.output.mdx
- website/docs/reference/alternatives.mdx
- website/docs/design-patterns/inline-component-customization.mdx
- website/docs/integrations/github-actions/github-actions.mdx
- website/docs/cli/configuration/stacks.mdx
🧰 Additional context used
📓 Path-based instructions (3)
website/**
📄 CodeRabbit inference engine (.cursor/rules/atmos-rules.mdc)
website/**: Update website documentation in website/ when adding features
Ensure consistency between CLI help text and website documentation
Follow the website's documentation structure and style
Keep website code in website/ and follow its architecture/style; test changes locally
Keep CLI and website documentation in sync; document new features with examples and use cases
Files:
website/docs/integrations/spacelift.mdxwebsite/docs/projects/layout.mdxwebsite/docs/intro/why-atmos/stage-1.mdxwebsite/docs/design-patterns/abstract-component.mdxwebsite/docs/quick-start/simple/extra-credit/create-workflows.mdxwebsite/docs/intro/why-atmos/stage-0.mdxwebsite/docs/learn/imports-basics.mdxwebsite/docs/learn/stacks/stacks.mdxwebsite/docs/cli/commands/completion.mdxwebsite/docs/intro/why-atmos/stage-4.mdxwebsite/docs/describe/components.mdxwebsite/docs/intro/why-atmos/stage-10.mdxwebsite/docs/intro/why-atmos/stage-2.mdxwebsite/docs/intro/why-atmos/stage-7.mdxwebsite/docs/reference/yaml-reference.mdxwebsite/docs/projects/configuration/helmfile.mdxwebsite/docs/intro/why-atmos/stage-5.mdxwebsite/docs/learn/concepts-overview.mdxwebsite/docs/quick-start/simple/provision.mdxwebsite/docs/quick-start/advanced/next-steps.mdwebsite/docs/cli/commands/terraform/terraform-generate-varfiles.mdxwebsite/docs/intro/why-atmos/nirvana.mdxwebsite/docs/components/terraform/providers.mdxwebsite/docs/intro/index.mdxwebsite/docs/components/terraform/terraform.mdxwebsite/docs/quick-start/install-atmos.mdxwebsite/docs/intro/faq.mdxwebsite/docs/cli/commands/describe/describe-component.mdxwebsite/docs/glossary/terralith.mdxwebsite/docs/cli/configuration/configuration.mdxwebsite/docs/functions/template/atmos.Store.mdxwebsite/docs/deploy/deploy.mdxwebsite/docs/functions/yaml/include.mdxwebsite/docs/functions/yaml/index.mdxwebsite/docs/functions/yaml/store.mdxwebsite/docs/learn/next-steps.mdxwebsite/docs/learn/inheritance-basics.mdxwebsite/docs/cli/configuration/components.mdxwebsite/docs/learn/connecting-components.mdxwebsite/docs/quick-start/simple/configure-project.mdxwebsite/docs/functions/yaml/terraform.state.mdxwebsite/docs/learn/stacks/define-components.mdxwebsite/docs/intro/why-atmos/stage-8.mdxwebsite/docs/components/terraform/brownfield.mdxwebsite/docs/projects/configuration/terraform.mdxwebsite/docs/learn/organizing-stacks.mdxwebsite/docs/components/components.mdxwebsite/docs/stacks/catalogs.mdxwebsite/docs/integrations/github-actions/affected-stacks.mdxwebsite/docs/quick-start/simple/summary.mdxwebsite/docs/intro/why-atmos/stage-3.mdxwebsite/docs/intro/use-cases.mdxwebsite/docs/cli/commands/workflow.mdxwebsite/docs/quick-start/simple/configure-cli.mdxwebsite/docs/intro/why-atmos/stage-6.mdxwebsite/docs/quick-start/simple/write-components.mdxwebsite/docs/components/terraform/backends.mdxwebsite/docs/connections/share-data.mdxwebsite/docs/integrations/github-actions/atmos-terraform-plan.mdxwebsite/docs/learn/first-stack.mdxwebsite/docs/quick-start/simple/extra-credit/add-custom-commands.mdxwebsite/docs/migration/native-terraform.mdxwebsite/docs/learn/why-atmos.mdxwebsite/docs/quick-start/advanced/create-workflows.mdxwebsite/docs/migration/terragrunt.mdxwebsite/docs/cli/commands/terraform/terraform-generate-varfile.mdxwebsite/docs/projects/configuration/opentofu.mdxwebsite/docs/intro/why-atmos/why-atmos.mdx
website/docs/**/*.{md,mdx}
📄 CodeRabbit inference engine (CLAUDE.md)
website/docs/**/*.{md,mdx}: Build the website after modifying any docs under website/docs/ to verify no broken links or formatting issues.
Document user-facing template functions in the website documentation.
Files:
website/docs/integrations/spacelift.mdxwebsite/docs/projects/layout.mdxwebsite/docs/intro/why-atmos/stage-1.mdxwebsite/docs/design-patterns/abstract-component.mdxwebsite/docs/quick-start/simple/extra-credit/create-workflows.mdxwebsite/docs/intro/why-atmos/stage-0.mdxwebsite/docs/learn/imports-basics.mdxwebsite/docs/learn/stacks/stacks.mdxwebsite/docs/cli/commands/completion.mdxwebsite/docs/intro/why-atmos/stage-4.mdxwebsite/docs/describe/components.mdxwebsite/docs/intro/why-atmos/stage-10.mdxwebsite/docs/intro/why-atmos/stage-2.mdxwebsite/docs/intro/why-atmos/stage-7.mdxwebsite/docs/reference/yaml-reference.mdxwebsite/docs/projects/configuration/helmfile.mdxwebsite/docs/intro/why-atmos/stage-5.mdxwebsite/docs/learn/concepts-overview.mdxwebsite/docs/quick-start/simple/provision.mdxwebsite/docs/quick-start/advanced/next-steps.mdwebsite/docs/cli/commands/terraform/terraform-generate-varfiles.mdxwebsite/docs/intro/why-atmos/nirvana.mdxwebsite/docs/components/terraform/providers.mdxwebsite/docs/intro/index.mdxwebsite/docs/components/terraform/terraform.mdxwebsite/docs/quick-start/install-atmos.mdxwebsite/docs/intro/faq.mdxwebsite/docs/cli/commands/describe/describe-component.mdxwebsite/docs/glossary/terralith.mdxwebsite/docs/cli/configuration/configuration.mdxwebsite/docs/functions/template/atmos.Store.mdxwebsite/docs/deploy/deploy.mdxwebsite/docs/functions/yaml/include.mdxwebsite/docs/functions/yaml/index.mdxwebsite/docs/functions/yaml/store.mdxwebsite/docs/learn/next-steps.mdxwebsite/docs/learn/inheritance-basics.mdxwebsite/docs/cli/configuration/components.mdxwebsite/docs/learn/connecting-components.mdxwebsite/docs/quick-start/simple/configure-project.mdxwebsite/docs/functions/yaml/terraform.state.mdxwebsite/docs/learn/stacks/define-components.mdxwebsite/docs/intro/why-atmos/stage-8.mdxwebsite/docs/components/terraform/brownfield.mdxwebsite/docs/projects/configuration/terraform.mdxwebsite/docs/learn/organizing-stacks.mdxwebsite/docs/components/components.mdxwebsite/docs/stacks/catalogs.mdxwebsite/docs/integrations/github-actions/affected-stacks.mdxwebsite/docs/quick-start/simple/summary.mdxwebsite/docs/intro/why-atmos/stage-3.mdxwebsite/docs/intro/use-cases.mdxwebsite/docs/cli/commands/workflow.mdxwebsite/docs/quick-start/simple/configure-cli.mdxwebsite/docs/intro/why-atmos/stage-6.mdxwebsite/docs/quick-start/simple/write-components.mdxwebsite/docs/components/terraform/backends.mdxwebsite/docs/connections/share-data.mdxwebsite/docs/integrations/github-actions/atmos-terraform-plan.mdxwebsite/docs/learn/first-stack.mdxwebsite/docs/quick-start/simple/extra-credit/add-custom-commands.mdxwebsite/docs/migration/native-terraform.mdxwebsite/docs/learn/why-atmos.mdxwebsite/docs/quick-start/advanced/create-workflows.mdxwebsite/docs/migration/terragrunt.mdxwebsite/docs/cli/commands/terraform/terraform-generate-varfile.mdxwebsite/docs/projects/configuration/opentofu.mdxwebsite/docs/intro/why-atmos/why-atmos.mdx
website/docs/cli/commands/**/*.mdx
📄 CodeRabbit inference engine (CLAUDE.md)
website/docs/cli/commands/**/*.mdx: All new commands/flags/parameters must have Docusaurus documentation under website/docs/cli/commands//.mdx using definition lists for arguments and flags.
Follow Docusaurus conventions (front matter, Purpose note, usage, examples; consistent section ordering: Usage → Examples → Arguments → Flags).
Files:
website/docs/cli/commands/completion.mdxwebsite/docs/cli/commands/terraform/terraform-generate-varfiles.mdxwebsite/docs/cli/commands/describe/describe-component.mdxwebsite/docs/cli/commands/workflow.mdxwebsite/docs/cli/commands/terraform/terraform-generate-varfile.mdx
🧠 Learnings (12)
📚 Learning: 2025-10-02T20:13:55.579Z
Learnt from: CR
PR: cloudposse/atmos#0
File: CLAUDE.md:0-0
Timestamp: 2025-10-02T20:13:55.579Z
Learning: Applies to /pkg/datafetcher/schema/stacks/stack-config/1.0.json : Update the stack config schema when adding configuration options.
Applied to files:
website/docs/learn/stacks/stacks.mdx
📚 Learning: 2025-03-18T12:26:25.329Z
Learnt from: Listener430
PR: cloudposse/atmos#1149
File: tests/snapshots/TestCLICommands_atmos_vendor_pull_ssh.stderr.golden:7-7
Timestamp: 2025-03-18T12:26:25.329Z
Learning: In the Atmos project, typos or inconsistencies in test snapshot files (such as "terrafrom" instead of "terraform") may be intentional as they capture the exact output of commands and should not be flagged as issues requiring correction.
Applied to files:
website/docs/components/terraform/terraform.mdxwebsite/docs/migration/native-terraform.mdx
📚 Learning: 2024-12-01T00:33:20.298Z
Learnt from: aknysh
PR: cloudposse/atmos#810
File: examples/tests/stacks/catalog/terraform/template-functions-test2/defaults.yaml:28-32
Timestamp: 2024-12-01T00:33:20.298Z
Learning: In `examples/tests/stacks/catalog/terraform/template-functions-test2/defaults.yaml`, `!exec atmos terraform output` is used in examples to demonstrate its usage, even though `!terraform.output` is the recommended approach according to the documentation.
Applied to files:
website/docs/intro/faq.mdxwebsite/docs/functions/yaml/index.mdxwebsite/docs/functions/yaml/store.mdxwebsite/docs/functions/yaml/terraform.state.mdxwebsite/docs/quick-start/simple/write-components.mdxwebsite/docs/connections/share-data.mdx
📚 Learning: 2024-12-03T05:18:49.169Z
Learnt from: aknysh
PR: cloudposse/atmos#810
File: internal/exec/terraform_utils.go:40-213
Timestamp: 2024-12-03T05:18:49.169Z
Learning: In the context of the Atmos project, it's acceptable for functions like `execTerraformOutput` to remain as single functions if they perform a single purpose, such as retrieving Terraform outputs for a component in a stack, even if the function is lengthy.
Applied to files:
website/docs/glossary/terralith.mdx
📚 Learning: 2024-12-11T18:40:12.808Z
Learnt from: Listener430
PR: cloudposse/atmos#844
File: cmd/helmfile.go:37-37
Timestamp: 2024-12-11T18:40:12.808Z
Learning: In the atmos project, `cliConfig` is initialized within the `cmd` package in `root.go` and can be used in other command files.
Applied to files:
website/docs/cli/configuration/configuration.mdxwebsite/docs/quick-start/simple/configure-cli.mdx
📚 Learning: 2024-11-25T17:17:15.703Z
Learnt from: RoseSecurity
PR: cloudposse/atmos#797
File: pkg/list/atmos.yaml:213-214
Timestamp: 2024-11-25T17:17:15.703Z
Learning: The file `pkg/list/atmos.yaml` is primarily intended for testing purposes.
Applied to files:
website/docs/cli/configuration/configuration.mdxwebsite/docs/quick-start/simple/configure-cli.mdx
📚 Learning: 2025-01-19T22:30:27.600Z
Learnt from: aknysh
PR: cloudposse/atmos#0
File: :0-0
Timestamp: 2025-01-19T22:30:27.600Z
Learning: The Atmos YAML function `!include` allows downloading local or remote files from different sources and assigning their contents to sections in stack manifests. It supports various protocols (file, http, git, s3, etc.) and can filter content using YQ expressions.
Applied to files:
website/docs/functions/yaml/include.mdxwebsite/docs/functions/yaml/index.mdxwebsite/docs/functions/yaml/store.mdxwebsite/docs/functions/yaml/terraform.state.mdx
📚 Learning: 2025-01-19T22:30:27.600Z
Learnt from: aknysh
PR: cloudposse/atmos#0
File: :0-0
Timestamp: 2025-01-19T22:30:27.600Z
Learning: The Atmos YAML function `!env` is used to retrieve environment variables and assign them to sections in stack manifests. It supports both simple types (string, number, boolean) and complex types (JSON-encoded lists, maps, objects).
Applied to files:
website/docs/functions/yaml/include.mdxwebsite/docs/functions/yaml/index.mdxwebsite/docs/functions/yaml/store.mdxwebsite/docs/functions/yaml/terraform.state.mdxwebsite/docs/connections/share-data.mdx
📚 Learning: 2024-12-03T04:01:16.446Z
Learnt from: aknysh
PR: cloudposse/atmos#810
File: website/docs/core-concepts/stacks/yaml-functions/terraform.output.mdx:0-0
Timestamp: 2024-12-03T04:01:16.446Z
Learning: In the `terraform.output.mdx` documentation file (`website/docs/core-concepts/stacks/yaml-functions/terraform.output.mdx`), the cache invalidation and cache scope behavior for the `!terraform.output` function are already described.
Applied to files:
website/docs/functions/yaml/index.mdxwebsite/docs/connections/share-data.mdx
📚 Learning: 2025-10-02T20:13:55.579Z
Learnt from: CR
PR: cloudposse/atmos#0
File: CLAUDE.md:0-0
Timestamp: 2025-10-02T20:13:55.579Z
Learning: Applies to website/docs/cli/commands/**/*.mdx : Follow Docusaurus conventions (front matter, Purpose note, usage, examples; consistent section ordering: Usage → Examples → Arguments → Flags).
Applied to files:
website/docs/learn/next-steps.mdx
📚 Learning: 2025-01-19T15:49:15.593Z
Learnt from: samtholiya
PR: cloudposse/atmos#955
File: tests/snapshots/TestCLICommands_atmos_validate_editorconfig_--help.stdout.golden:0-0
Timestamp: 2025-01-19T15:49:15.593Z
Learning: In future commits, the help text for Atmos CLI commands should be limited to only show component and stack parameters for commands that actually use them. This applies to the example usage section in command help text.
Applied to files:
website/docs/quick-start/simple/extra-credit/add-custom-commands.mdx
📚 Learning: 2025-09-13T16:39:20.007Z
Learnt from: samtholiya
PR: cloudposse/atmos#1466
File: cmd/markdown/atmos_toolchain_aliases.md:2-4
Timestamp: 2025-09-13T16:39:20.007Z
Learning: In the cloudposse/atmos repository, CLI documentation files in cmd/markdown/ follow a specific format that uses " $ atmos command" (with leading space and dollar sign prompt) in code blocks. This is the established project convention and should not be changed to comply with standard markdownlint rules MD040 and MD014.
Applied to files:
website/docs/quick-start/simple/extra-credit/add-custom-commands.mdx
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (6)
- GitHub Check: Build (windows-latest, windows)
- GitHub Check: Lint (golangci)
- GitHub Check: Analyze (go)
- GitHub Check: Run pre-commit hooks
- GitHub Check: website-deploy-preview
- GitHub Check: Summary
Address CodeRabbit review feedback with the following fixes: **Grammar & Typo Fixes:** - Fix double "there" in best-practices/stacks.mdx - Fix "using implementing" → "implementing" in components/components.mdx - Fix "list are" → "lists are" in providers.mdx - Fix "even of" → "even thousands of" in terraform.mdx - Fix "makes it easy identify" → "makes it easy to identify" in affected-stacks.mdx **Link Fixes:** - Fix vendor manifest link: /vendoring/vendor-manifest → /vendoring/component-manifest - Capitalize "PowerShell" consistently in completion.mdx - Fix TabItem prop: name → label in completion.mdx **Code Example Fixes:** - Add missing S3 backend `key` attribute in terraform-workspaces.mdx (both prod and dev examples) - Fix cross-file YAML anchor example in yaml-reference.mdx (anchors are file-scoped) - Fix incorrect tfvars filename: .auto.tfvars.json → terraform.tfvars.json in native-terraform.mdx **Documentation Updates:** - Update supported backends list in share-data.mdx (now shows all backends: local, S3, azurerm, gcs, remote, consul, cos, http, kubernetes, oss, pg, cloud) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
Fix 5 duplicate word typos found during grammar audit: - stacks/catalogs.mdx: "at at time" → "at any time" - integrations/github-actions/atmos-terraform-plan.mdx: "from from the" → "from the" - stacks/dependencies.mdx: "from the the" → "from the" - cli/configuration/components.mdx: "and and where" → "and where" - cli/configuration/components.mdx: "define the the" → "define the" These were copy-paste artifacts that slipped through review. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
Critical Fixes: - intro/index.mdx: Fix "Atmos is you" → "Atmos is for you" (critical typo on landing page) Inclusive Language Updates: - Replace "master/mastering" → "learn/learning" terminology for modern standards: - learn/next-steps.mdx: "Master Atmos templating" → "Learn Atmos templating" - quick-start/simple/simple.mdx: "finish mastering" → "finish learning" - quick-start/simple/extra-credit/vendor-components.mdx: "to master" → "to learn" This aligns with modern technical writing guidelines used at Google, Facebook, and other leading tech companies by avoiding potentially exclusionary terminology. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
Reduced the size and visual prominence of large admonitions that made the page feel overwhelming and suggested the function shouldn't be used. Changes: - Converted large WARNING admonition about backend support to a small 2-line NOTE with key information, moved detailed backend list to regular documentation - Converted large PERFORMANCE ADVANTAGE tip (15 lines) to a new "Performance Comparison" section with regular prose and a small 2-line tip for the key takeaway - All important information retained, just reorganized for better readability - Both admonitions now < 3 lines each instead of 10-15 lines The page now feels more balanced and approachable while maintaining all technical details. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 2
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
website/docs/cli/configuration/components.mdx (1)
206-212: Fix the broken inline code formatting.
cluster_name_patternparagraph dropped the opening backtick beforeATMOS_COMPONENTS_HELMFILE_CLUSTER_NAME_PATTERN, which causes malformed Markdown, and the sample value line ends with an extra backtick. Clean both spots so the env var renders correctly and the code block stays intact.- Can also be set using ATMOS_COMPONENTS_HELMFILE_CLUSTER_NAME_PATTERN` ENV var. + Can also be set using `ATMOS_COMPONENTS_HELMFILE_CLUSTER_NAME_PATTERN` ENV var. @@ - {namespace}-{tenant}-{environment}-{stage}-eks-cluster` + {namespace}-{tenant}-{environment}-{stage}-eks-cluster
♻️ Duplicate comments (6)
website/docs/cli/commands/completion.mdx (1)
52-54: Swap the fence language back tobash.The “apply the changes” snippet in the Bash tab is tagged as
zsh. Retag it asbashso the highlighting matches the shell you’re documenting.website/docs/intro/index.mdx (5)
20-24: Update components link to the new slug.Still pointing at
/components/components; the move flattened that path, so this will 404. Please swap it to/components/.
36-38: CTA should target the intro path.The “Learn Atmos” button needs
to="/intro/why-atmos"now that the learn sequence relocated.
82-83: Same components slug issue here.Stacks paragraph still links to
/components/components; please change it to/components/to match the new structure.
153-153: Fix the custom commands link.
/custom-commands/custom-commands/is obsolete; the right target is/custom-commands/.
178-178: Core concepts bullet should use the new page.This should read
/learn/concepts-overviewper the updated learn path.
📜 Review details
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
Disabled knowledge base sources:
- Linear integration is disabled by default for public repositories
You can enable these sources in your CodeRabbit configuration.
📒 Files selected for processing (20)
website/docs/best-practices/stacks.mdx(2 hunks)website/docs/cli/commands/completion.mdx(3 hunks)website/docs/cli/configuration/components.mdx(1 hunks)website/docs/components/components.mdx(2 hunks)website/docs/components/terraform/providers.mdx(2 hunks)website/docs/components/terraform/terraform.mdx(2 hunks)website/docs/connections/share-data.mdx(6 hunks)website/docs/functions/yaml/terraform.state.mdx(4 hunks)website/docs/integrations/github-actions/affected-stacks.mdx(1 hunks)website/docs/integrations/github-actions/atmos-terraform-plan.mdx(2 hunks)website/docs/intro/index.mdx(5 hunks)website/docs/learn/next-steps.mdx(1 hunks)website/docs/migration/native-terraform.mdx(1 hunks)website/docs/migration/terraform-workspaces.mdx(1 hunks)website/docs/quick-start/simple/extra-credit/vendor-components.mdx(2 hunks)website/docs/quick-start/simple/simple.mdx(2 hunks)website/docs/reference/yaml-reference.mdx(1 hunks)website/docs/stacks/catalogs.mdx(3 hunks)website/docs/stacks/dependencies.mdx(3 hunks)website/docs/vendoring/vendor.mdx(1 hunks)
🚧 Files skipped from review as they are similar to previous changes (11)
- website/docs/stacks/dependencies.mdx
- website/docs/learn/next-steps.mdx
- website/docs/best-practices/stacks.mdx
- website/docs/components/components.mdx
- website/docs/functions/yaml/terraform.state.mdx
- website/docs/quick-start/simple/extra-credit/vendor-components.mdx
- website/docs/stacks/catalogs.mdx
- website/docs/components/terraform/providers.mdx
- website/docs/quick-start/simple/simple.mdx
- website/docs/migration/terraform-workspaces.mdx
- website/docs/integrations/github-actions/atmos-terraform-plan.mdx
🧰 Additional context used
📓 Path-based instructions (3)
website/**
📄 CodeRabbit inference engine (.cursor/rules/atmos-rules.mdc)
website/**: Update website documentation in website/ when adding features
Ensure consistency between CLI help text and website documentation
Follow the website's documentation structure and style
Keep website code in website/ and follow its architecture/style; test changes locally
Keep CLI and website documentation in sync; document new features with examples and use cases
Files:
website/docs/migration/native-terraform.mdxwebsite/docs/intro/index.mdxwebsite/docs/connections/share-data.mdxwebsite/docs/integrations/github-actions/affected-stacks.mdxwebsite/docs/components/terraform/terraform.mdxwebsite/docs/vendoring/vendor.mdxwebsite/docs/cli/commands/completion.mdxwebsite/docs/cli/configuration/components.mdxwebsite/docs/reference/yaml-reference.mdx
website/docs/**/*.{md,mdx}
📄 CodeRabbit inference engine (CLAUDE.md)
website/docs/**/*.{md,mdx}: Build the website after modifying any docs under website/docs/ to verify no broken links or formatting issues.
Document user-facing template functions in the website documentation.
Files:
website/docs/migration/native-terraform.mdxwebsite/docs/intro/index.mdxwebsite/docs/connections/share-data.mdxwebsite/docs/integrations/github-actions/affected-stacks.mdxwebsite/docs/components/terraform/terraform.mdxwebsite/docs/vendoring/vendor.mdxwebsite/docs/cli/commands/completion.mdxwebsite/docs/cli/configuration/components.mdxwebsite/docs/reference/yaml-reference.mdx
website/docs/cli/commands/**/*.mdx
📄 CodeRabbit inference engine (CLAUDE.md)
website/docs/cli/commands/**/*.mdx: All new commands/flags/parameters must have Docusaurus documentation under website/docs/cli/commands//.mdx using definition lists for arguments and flags.
Follow Docusaurus conventions (front matter, Purpose note, usage, examples; consistent section ordering: Usage → Examples → Arguments → Flags).
Files:
website/docs/cli/commands/completion.mdx
🧠 Learnings (4)
📚 Learning: 2025-03-18T12:26:25.329Z
Learnt from: Listener430
PR: cloudposse/atmos#1149
File: tests/snapshots/TestCLICommands_atmos_vendor_pull_ssh.stderr.golden:7-7
Timestamp: 2025-03-18T12:26:25.329Z
Learning: In the Atmos project, typos or inconsistencies in test snapshot files (such as "terrafrom" instead of "terraform") may be intentional as they capture the exact output of commands and should not be flagged as issues requiring correction.
Applied to files:
website/docs/migration/native-terraform.mdxwebsite/docs/components/terraform/terraform.mdx
📚 Learning: 2024-12-01T00:33:20.298Z
Learnt from: aknysh
PR: cloudposse/atmos#810
File: examples/tests/stacks/catalog/terraform/template-functions-test2/defaults.yaml:28-32
Timestamp: 2024-12-01T00:33:20.298Z
Learning: In `examples/tests/stacks/catalog/terraform/template-functions-test2/defaults.yaml`, `!exec atmos terraform output` is used in examples to demonstrate its usage, even though `!terraform.output` is the recommended approach according to the documentation.
Applied to files:
website/docs/connections/share-data.mdx
📚 Learning: 2024-12-03T04:01:16.446Z
Learnt from: aknysh
PR: cloudposse/atmos#810
File: website/docs/core-concepts/stacks/yaml-functions/terraform.output.mdx:0-0
Timestamp: 2024-12-03T04:01:16.446Z
Learning: In the `terraform.output.mdx` documentation file (`website/docs/core-concepts/stacks/yaml-functions/terraform.output.mdx`), the cache invalidation and cache scope behavior for the `!terraform.output` function are already described.
Applied to files:
website/docs/connections/share-data.mdx
📚 Learning: 2025-01-19T22:30:27.600Z
Learnt from: aknysh
PR: cloudposse/atmos#0
File: :0-0
Timestamp: 2025-01-19T22:30:27.600Z
Learning: The Atmos YAML function `!env` is used to retrieve environment variables and assign them to sections in stack manifests. It supports both simple types (string, number, boolean) and complex types (JSON-encoded lists, maps, objects).
Applied to files:
website/docs/connections/share-data.mdx
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (5)
- GitHub Check: Build (windows-latest, windows)
- GitHub Check: website-deploy-preview
- GitHub Check: Lint (golangci)
- GitHub Check: Analyze (go)
- GitHub Check: Summary
Brings in 120 commits from main including: - Auth commands documentation (16 pages) - Version command restructure - Mask configuration documentation - Provider development design pattern - 31 new blog posts - GCS and Azure backend support for terraform.state - Various content improvements Resolved conflict in terraform.state.mdx: - Kept main's GCS/Azure backend documentation - Updated internal links to new flatter structure (/connections) - Used cleaner admonition formatting
- /core-concepts/components/terraform/providers → /components/terraform/providers - /core-concepts/workflows → /workflows
|
💥 This pull request now has conflicts. Could you fix it @osterman? 🙏 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 2
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (2)
website/docs/design-patterns/component-inheritance.mdx (1)
151-158: Fix nestedimportsyntax error in YAML example.Lines 152–158 contain a nested
importkey (import: import:) which violates Atmos YAML syntax. Per the learnings, the correct syntax is a singleimport:key followed by a list of paths.import: - import: - - orgs/acme/plat/prod/_defaults + - orgs/acme/plat/prod/_defaults - mixins/region/us-east-2 - catalog/vpc/defaultswebsite/docs/design-patterns/component-catalog/with-mixins.mdx (1)
44-44: Update pattern name in Design Pattern section to match file renaming.Line 44 still references the old "Component Catalog with Mixins" name, but the file has been renamed to "Configuration Catalog with Mixins." Update this for consistency.
- The **Component Catalog with Mixins** Design Pattern prescribes the following: + The **Configuration Catalog with Mixins** Design Pattern prescribes the following:
🧹 Nitpick comments (5)
website/blog/2025-11-14-terraform-command-documentation.mdx (1)
66-66: Minor: Consider em dash for stylistic consistency with LanguageTool.Static analysis suggests an em dash here, though the current dash pattern matches lines 64–65, keeping the bullet list consistent. If updating, apply the same style across all three items or leave as-is.
website/blog/2025-11-07-azure-authentication-support.mdx (1)
395-395: Minor: Consider em dash for readability.The static analysis tool suggests using an em dash (—) instead of a hyphen (-) to join the link description with the trailing text for better typographical clarity.
Apply this diff if aligning with style preferences:
- **[Azure Authentication Guide](/tutorials/azure-authentication)** - Complete tutorial covering all authentication methods + **[Azure Authentication Guide](/tutorials/azure-authentication)** — Complete tutorial covering all authentication methodswebsite/docs/functions/yaml/index.mdx (1)
53-58: Minor grammar fix: add punctuation after list item.Line 53-54 ends the description of the
!storefunction without punctuation. Add a period to match formatting of surrounding list items.- The [__`!store`__](/functions/yaml/store) YAML function allows reading the values from a - remote [store](/cli/configuration/stores) (e.g. SSM Parameter Store, Artifactory, etc.) - into Atmos stack manifests + The [__`!store`__](/functions/yaml/store) YAML function allows reading the values from a + remote [store](/cli/configuration/stores) (e.g. SSM Parameter Store, Artifactory, etc.) + into Atmos stack manifests.website/blog/2025-10-24-macos-xdg-cli-conventions.md (1)
159-159: Minor: Consider using em dash for better typography.Line 159 joins two independent clauses with a hyphen-dash. Per the static analysis hint, consider using an em dash (
—) for better readability:- - [Configuring Geodesic with Atmos Auth](/tutorials/configuring-geodesic) - Simplified configuration (no setup needed!) + - [Configuring Geodesic with Atmos Auth](/tutorials/configuring-geodesic) — Simplified configuration (no setup needed!)website/docs/learn/mindset.mdx (1)
22-22: Minor: Typographic quote style inconsistency (static analysis note).Lines 22 and 87 use straight quotes (
") around terms like "root modules" and "root module." The static analysis suggests using typographic quotation marks for better visual presentation in documentation. This is purely a style preference but worth addressing for consistency with modern documentation standards.Suggested change for line 22:
"root modules"→"root modules"(curly/smart quotes)Also applies to: 87-87
- Reorganize design patterns into logical subfolders: - inheritance-patterns/: Component inheritance, abstract components, multiple inheritance - stack-organization/: Basic, multi-region, organizational hierarchy, layered stacks - configuration-composition/: Component overrides, partial component configuration - component-catalog/: Catalog patterns, mixins, archetypes, templates - Add new patterns: - Basic Stack Organization: Simple dev/staging/prod for beginners - Multi-Region Configuration: Deploy to multiple AWS regions - Multiple Inheritance: Inherit from multiple abstract components - Component Archetypes: Pre-configured variants (S3 public/logging/artifacts) - Improve Mixins documentation: - Show two locations: stacks/mixins/ (global) and catalog/<component>/mixins/ (feature flags) - Add feature flag examples: vpc/mixins/multi-az, vpc/mixins/nat-gateway - Add version mixin examples: eks/mixins/1.27, eks/mixins/1.28 - Simplify existing patterns: - Reduce examples from 15+ components to 3 focused components - Remove unnecessary organizational complexity from examples - Fix name_template syntax: use .vars.tenant not .tenant - Remove Provider Development pattern (belongs in HowTo guide) - Remove Partial Stack Configuration (redundant with Layered Stack) - Update all cross-references and sidebar configuration 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
Rewrote the Component Overrides design pattern documentation to clearly explain when and why to use overrides vs regular vars/inheritance: - Added "The Problem" section showing the limitation of regular vars (applies to ALL components in the final stack) - Added "The Solution" section explaining overrides are scoped to components in the current manifest and its imports only - Used simple team-based example (Platform vs Security teams) - Added comparison table for when to use vars vs overrides - Added clear "Overrides vs Inheritance" section with simple mental model - Reduced from ~400 lines to ~165 lines while improving clarity - Kept layer-based example but simplified to 2 layers instead of 8 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
The schemas configuration section in atmos.yaml examples is not required for the design pattern examples and adds unnecessary complexity. Atmos has sensible defaults for schema paths. Removed from: - component-catalog/index.mdx - component-catalog/template.mdx - configuration-composition/partial-component-configuration.mdx - inheritance-patterns/multiple-component-instances.mdx - inline-component-configuration.mdx (2 occurrences) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
Updated Component Overrides documentation to make the key distinction clearer: - Added prominent tip box: "Overrides are file-scoped and don't get inherited" - Added comparison table showing scope, inheritance, and visibility differences between vars and overrides - Added ASCII diagram showing how overrides only see their own import tree while vars see the final merged result - Renamed section from "Overrides vs Inheritance" to "Overrides vs Vars" for clarity 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
The IAM permissions documentation for AWS SSO identity provisioning belongs in the CLI auth configuration for providers, not in the auth login command reference. - Moved IAM permissions section to cli/configuration/auth/providers.mdx under the AWS IAM Identity Center section - Removed from cli/commands/auth/auth-login.mdx - Added "See Also" link from auth-login to providers configuration 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
Added documentation for the AWS IAM Identity Center provider options that enable automatic identity discovery: - `auto_provision_identities`: When true, Atmos automatically discovers all AWS accounts and permission sets assigned to the user - `include_tags`: When true, retrieves AWS tags from permission sets and includes them as labels on auto-provisioned identities Updated the example YAML to show these options in use. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
- Remove redundant Session Configuration section (already documented in SSO example) - Fix profiles syntax to use directory-based profiles instead of inline - Use consistent provider name (acme-corp) across all profile examples - Explain key benefit: identities work unchanged across environments - Use tabs to save space in profile examples 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
…nces - Add ActionCard to atlantis, aws, describe, docs, list, theme, version commands - Create new /cli/configuration/docs.mdx for documentation generation config - Create new /cli/configuration/version.mdx for version checking config - Ensures consistent navigation between command usage and configuration docs 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
- Standardize ActionCard format to use PrimaryCTA component - Add ActionCard to workflow command linking to /cli/configuration/workflows - Add version section to default atmos.yaml configuration 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
- validate editorconfig → /cli/configuration/validate - validate stacks → /cli/configuration/schemas - validate component → /cli/configuration/schemas - validate schema → /cli/configuration/schemas 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
Changed from explicit item list to autogenerated from cli/configuration directory. New pages like version and docs will now automatically appear. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
- Restructure vendor docs into hierarchical folders: - vendor/config/ with index, sources, imports pages - vendor/component-manifest/ with index, source, mixins pages - Move Vendor section above How-To Guides in sidebar - Make VENDOR header link to vendor overview page - Hide vendor.mdx from sidebar (accessible via header) - Unhide URL Syntax page in vendor section - Add glob pattern documentation to imports page - Fix broken links throughout docs pointing to old vendor paths - Update docusaurus.config.js redirects for new structure 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 6
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
website/blog/2025-11-08-terminal-themes.mdx (1)
13-65: Fix broken anchor link in the blog post.Line 62 links to
/cli/commands/theme/usage#theme-configuration, but the target file (website/docs/cli/commands/theme/usage.mdx) contains only### Configuration File(line 79), not### Theme Configuration. Update the link to#configuration-fileto match the actual heading, or alternatively update the heading in the usage documentation to### Theme Configurationfor consistency.
♻️ Duplicate comments (3)
website/docs/components/components-overview.mdx (1)
174-174: Verify and fix documentation link references.Line 174 references
/howto/inheritance—confirm this path exists in the new structure. Line 183 contains a broken link to/validation/validating. Per prior analysis, the actual validation documentation is located at/quick-start/advanced/configure-validation.#!/bin/bash # Verify referenced documentation paths exist paths=( "website/docs/stacks/imports.mdx" "website/docs/howto/inheritance.mdx" "website/docs/cli/commands/describe/component.mdx" "website/docs/quick-start/advanced/configure-validation.mdx" "website/docs/describe/stacks.mdx" ) for path in "${paths[@]}"; do if [ -f "$path" ]; then echo "✓ Found: $path" else echo "✗ Missing: $path" fi doneApply this fix for line 183:
- Developing [validation policies](/validation/validating) + Developing [validation policies](/quick-start/advanced/configure-validation)Also applies to: 183-183
website/docs/cli/configuration/profiler.mdx (1)
34-49: Document file-based profiling flags in Configuration Reference.The Configuration Reference section documents only the HTTP pprof server settings (
profiler.enabled/host/port), but lines 110-114 reference environment variables for file-based profiling (ATMOS_PROFILE_FILE,ATMOS_PROFILE_TYPE). Users reading the Configuration Reference won't discover these file-based profiling options. Add documentation for--profile-fileand--profile-typeflags (or clarify the distinction between the two profiling modes) analogous to the existing profiler entries.website/docs/cli/configuration-overview.mdx (1)
98-98: Fix broken documentation links on lines 113 and 128.Line 98 correctly links to
/components/terraform/stack-config(verified), but lines 113 and 128 reference/components/helmfileand/components/packerwhich do not exist in the website documentation structure. These paths need to be corrected or the links removed if helmfile and packer documentation is not yet available.
🧹 Nitpick comments (13)
website/docs/components/components-overview.mdx (1)
84-84: Polish typography and redundant phrasing.Minor style improvements per LanguageTool hints:
- Each instance: - - Has its own Terraform state (or Helmfile release, Packer build) + Each instance: + - Owns independent Terraform state (or Helmfile release, Packer build)- Each type has its own configuration schema, but they share common patterns for `metadata` and `settings`. + Each type has a distinct configuration schema, but they share common patterns for `metadata` and `settings`.- There's no "one way" to organize your components—it's configurable based on your needs. + There's no 'one way' to organize your components—it's configurable based on your needs.- For terraform, we recommend placing the terraform "root" modules in the `components/terraform` folder. + For terraform, we recommend placing the terraform 'root' modules in the `components/terraform` folder.- ...and all the other resources provisioned inside of the VPC (e.g. databases). + ...and all the other resources provisioned inside the VPC (e.g. databases).Also applies to: 113-113, 148-148, 166-166, 170-170
website/docs/cli/configuration/settings/markdown-styling.mdx (1)
36-36: Consider centralizing color values instead of hardcoding hex.The color configuration was changed from template placeholders (e.g.,
${colors.text}) to hardcoded hex values. While explicit hex values are clear, hardcoding them means:
- Centralized theme updates require edits in multiple places
- Harder to maintain a consistent color scheme across docs
If these colors are part of the Atmos brand palette, consider keeping them as references to a shared theme configuration or documenting where the canonical color definitions live (e.g., in
docusaurus.config.jsor a shared constants file).Can you clarify the color strategy for this PR—are these colors now the source of truth, or should they reference a shared theme configuration?
Also applies to: 38-38, 41-41, 44-44, 47-47, 50-50
website/docs/cli/commands/support.mdx (1)
54-56: Verify link paths and consider em dashes for better typography.Two things:
The links to
/communityand/community/office-hoursneed verification—confirm these pages exist in the new documentation structure after the path restructuring.LanguageTool flags the description-list hyphens (lines 54–56) and suggests em dashes for better grammar. The current form is readable, but updating to em dashes would be more polished:
- [`atmos about`](/cli/commands/about) - Learn about Atmos - [Community](/community) - Community resources and discussions - [Office Hours](/community/office-hours) - Join our weekly office hours + [`atmos about`](/cli/commands/about) — Learn about Atmos + [Community](/community) — Community resources and discussions + [Office Hours](/community/office-hours) — Join our weekly office hourswebsite/docs/cli/commands/workflow.mdx (1)
29-29: Minor: Tighten wording for conciseness.Line 29: "run in order to achieve" could be shortened to "run to achieve" with no loss of clarity.
-An Atmos workflow is a series of steps that are run in order to achieve some outcome. +An Atmos workflow is a series of steps that are run to achieve some outcome.website/docs/design-patterns/component-catalog/mixins.mdx (1)
330-338: Excellent comprehensive new Mixins documentation. The content is well-structured with clear use-cases, practical YAML examples, and a solid before/after comparison. One minor polish: the related patterns list uses regular dashes; consider em dashes for typographic consistency (e.g., "Multi-Region Configuration — Uses region mixins").website/docs/design-patterns/component-catalog/template.mdx (1)
2-2: Comprehensive renaming and path updates completed successfully. All references transitioned from "Component Catalog Template" to "Configuration Catalog Template" and paths updated from/core-concepts/*to new structure. Thename_templatestandardization across catalog docs is consistent.For polish: Related Patterns (lines 180, 187, 190) could use em dashes for typographic consistency (e.g., "Component Archetypes — Pre-configured variants..."), but this is optional.
Also applies to: 4-5, 14-14, 17-18, 22-22, 49-49, 52-52, 88-88, 180-194
website/docs/design-patterns/component-catalog/with-mixins.mdx (1)
193-207: Excellent addition of conceptual comparison tables. The "Common Archetype Patterns" table (RDS/primary/replica/analytics, Lambda/api-handler/etc.) provides valuable reference material. The "When to Use This vs Mixins" table clarifies the scope difference—this is pedagogically strong and addresses a likely source of user confusion.For polish: Related Patterns (lines 211-214) could use em dashes (e.g., "Mixins — Reusable fragments...") for typographic consistency.
website/docs/design-patterns/component-catalog/index.mdx (1)
390-405: Related Patterns subsections improve clarity. Grouping patterns into "Configuration Catalog Variations," "Alternative Approaches," and "Organizational Patterns" helps users navigate conceptual relationships. All paths updated to new structure.Optional polish suggestions from static analysis: Line 379 ("very simple organizational structure") could be strengthened with a more specific phrase (e.g., "minimal" or "single-organization"); lines 391–400 could use em dashes for typographic consistency (e.g., "Mixins — Reusable configuration fragments").
website/docs/cli/configuration/profiles.mdx (2)
253-267: Team collaboration example is helpful.Minor wording note: Line 258 says ".atmos/profiles/" with comment "team-shared profiles (gitignored user overrides)". This phrasing might confuse readers—is
.atmos/profiles/committed or not? If team profiles are shared via version control, clarify that.atmos/profiles/is committed and team-level but individual user overrides might live elsewhere.
283-293: Links and references look good; minor typographical tweak.Verify that the three profile command pages (
/cli/commands/profile/usage,profile-list,profile-show) exist in this PR. Also, LanguageTool flags line 293: consider using an em dash to join the clause. Change "See Also - Global Flags - Using..." to "See Also — Global Flags — Using..." for better punctuation.website/docs/cli/configuration/stores.mdx (1)
190-194: Minor: Consider using em dashes in Related section.The Related section uses hyphens (
-) to separate link descriptions. Per the static analysis tool, consider using em dashes for better readability when joining clauses or introducing related items:- [External Stores](/stacks/sharing-state/stores) - Using `!store` function in stacks - [Hooks](/stacks/hooks) - Writing to stores with hooks - [Terraform State](/stacks/sharing-state/terraform-state) - Alternative data sharing method + [External Stores](/stacks/sharing-state/stores) — Using `!store` function in stacks + [Hooks](/stacks/hooks) — Writing to stores with hooks + [Terraform State](/stacks/sharing-state/terraform-state) — Alternative data sharing methodwebsite/docs/cli/configuration/integrations.mdx (1)
31-31: Minor grammar: Add comma after 'e.g.'Standard punctuation for "e.g." abbreviations requires a comma. Update:
- # All the intermediate folders will be created automatically (e.g. 'path: /config/atlantis/atlantis.yaml') + # All the intermediate folders will be created automatically (e.g., 'path: /config/atlantis/atlantis.yaml')website/docs/cli/commands/auth/usage.mdx (1)
108-126: Improve prose variety in Default Identity Handling section. Three successive sentences begin with "If" (lines 112–114), which reduces readability. Consider varying the sentence structure:- If you configure a single identity and mark it as `default: true`, Atmos will always use it without requiring you to pass `--identity`. - If multiple identities are defined, you can still mark one as default, but you'll need to explicitly choose another when you don't want the default. - If no default is set and multiple identities exist, Atmos will require you to specify which identity to use. + Configuring a single identity marked as `default: true` means Atmos will always use it without requiring you to pass `--identity`. + With multiple identities, you can still mark one as default, though you'll need to explicitly choose another when you don't want the default. + If no default is set and multiple identities exist, Atmos will require you to specify which identity to use.
Renamed sidebar labels from simple key names to spec.* prefix to reflect their actual position in vendor.yaml/component.yaml schema. Added command class for monospace styling consistent with other configuration keys in the documentation. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
- Fix blog post auth command link (/cli/commands/auth/login → /cli/commands/auth/auth-login) - Fix mindset.mdx quick-start links (/quick-start/simple → /quick-start/simple/simple) - Add missing period in describe-dependents.mdx - Fix repeated config_templates typo in atlantis.mdx (should be config_templates, project_templates, workflow_templates) - Update Terraform Component links in spacelift.mdx to /components/terraform - Add slug to terraform.mdx to enable /components/terraform URL 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
The CodeRabbit review suggestions were incorrect for this codebase: - /cli/commands/auth/login is correct (uses id: login from frontmatter) - /quick-start/simple is correct (sidebar links to doc with id) Reverting the changes that broke the Docusaurus build. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
what
Restructured documentation with progressive learning path:
/core-concepts→/learn(clearer learning intent)/introduction→/intro(shorter, cleaner URLs)Simplified URL structure:
/learn/*for all learning content/learn/yaml(was/learn/yaml-guide)/intro/*,/install,/faq,/features,/use-cases(top-level)/migration/*(promoted and visible)/components/*,/projects/*,/connections/*,/custom-commands/*,/deploy/*,/describe/*Previous work in this PR:
New restructure work:
why
/introvs/introduction,/learn/yamlvs/learn/yaml-guidechanges
Directory Structure
docs/core-concepts/→docs/learn/(9 learning pages remain)docs/introduction/→docs/intro/(4 intro pages + why-atmos/)docs/core-concepts/components/→docs/components/(6 files)docs/core-concepts/projects/→docs/projects/(6 files)docs/core-concepts/share-data/→docs/connections/(2 files, renamed)docs/core-concepts/custom-commands/→docs/custom-commands/(1 file)docs/core-concepts/deploy/→docs/deploy/(1 file)docs/core-concepts/describe/→docs/describe/(3 files)Sidebar Configuration
Before: Mixed autogenerated and explicit, advanced content in learn
After: Clean separation with explicit learning path
Link Updates (218 references)
/core-concepts/*→/learn/*(bulk replace)/introduction/*→/intro/*(bulk replace)/learn/components/*→/components/*/learn/projects/*→/projects/*/learn/custom-commands/*→/custom-commands/*URL Changes
/core-concepts/why-atmos/learn/why-atmos/core-concepts/yaml-guide/learn/yaml/introduction/index/intro/index/core-concepts/components/components/core-concepts/share-data/connectionsstats
git mvto dedicated sectionsmigration notes
/core-concepts/*→/learn/*redirects preserve bookmarksreferences
🤖 Generated with Claude Code
Co-Authored-By: Claude [email protected]
Summary by CodeRabbit
Release Notes
Documentation
New Features
✏️ Tip: You can customize this high-level summary in your review settings.