Add Entity
fullstackhero/dotnet-starter-kit
Add a domain entity/aggregate with EF configuration and a migration to an existing FSH module.
Bootstrapping new Atmos projects with atmos init: built-in template catalog, differences from atmos scaffold generate, project record, and update-safe 3-way merge
$ npx skills add cloudposse/atmos --skill atmos-init -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install cloudposse/atmos atmos-init --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/cloudposse/atmos.git skills-src && mkdir -p .claude/skills && cp -r skills-src/agent-skills/skills/atmos-init .claude/skills/atmos-init && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "atmos-init" agent skill from https://github.com/cloudposse/atmos/tree/main/agent-skills/skills/atmos-init into .claude/skills/atmos-init/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "atmos-init", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/cloudposse/atmos/tree/main/agent-skills/skills/atmos-initType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add cloudposse/atmos --skill atmos-init -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install cloudposse/atmos atmos-init --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/cloudposse/atmos.git skills-src && mkdir -p .agents/skills && cp -r skills-src/agent-skills/skills/atmos-init .agents/skills/atmos-init && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "atmos-init" agent skill from https://github.com/cloudposse/atmos/tree/main/agent-skills/skills/atmos-init into .agents/skills/atmos-init/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "atmos-init", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add cloudposse/atmos --skill atmos-init -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install cloudposse/atmos atmos-init --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/cloudposse/atmos.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/agent-skills/skills/atmos-init .cursor/skills/atmos-init && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "atmos-init" agent skill from https://github.com/cloudposse/atmos/tree/main/agent-skills/skills/atmos-init into .cursor/skills/atmos-init/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "atmos-init", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/cloudposse/atmos.git --path agent-skills/skills/atmos-init--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add cloudposse/atmos --skill atmos-init -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install cloudposse/atmos atmos-init --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/cloudposse/atmos.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/agent-skills/skills/atmos-init .gemini/skills/atmos-init && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "atmos-init" agent skill from https://github.com/cloudposse/atmos/tree/main/agent-skills/skills/atmos-init into .gemini/skills/atmos-init/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "atmos-init", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install cloudposse/atmos atmos-initInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add cloudposse/atmos --skill atmos-init -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/cloudposse/atmos.git skills-src && mkdir -p .github/skills && cp -r skills-src/agent-skills/skills/atmos-init .github/skills/atmos-init && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "atmos-init" agent skill from https://github.com/cloudposse/atmos/tree/main/agent-skills/skills/atmos-init into .github/skills/atmos-init/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "atmos-init", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add cloudposse/atmos --skill atmos-init -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install cloudposse/atmos atmos-init --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/cloudposse/atmos.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/agent-skills/skills/atmos-init .opencode/skills/atmos-init && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "atmos-init" agent skill from https://github.com/cloudposse/atmos/tree/main/agent-skills/skills/atmos-init into .opencode/skills/atmos-init/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "atmos-init", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
atmos-initBootstrapping new Atmos projects with atmos init: built-in template catalog, differences from atmos scaffold generate, project record, and update-safe 3-way merge
Atmos Init is an agent skill from cloudposse/atmos. Bootstrapping new Atmos projects with atmos init: built-in template catalog, differences from atmos scaffold generate, project record, and update-safe 3-way merge
Its SKILL.md is about 1.2k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Development, covering Project scaffolding. The repository describes itself as: Atmos is the open-source runtime for infrastructure — it builds, authenticates, and ships Terraform, OpenTofu, Packer, Ansible, Kubernetes, Helm, and containers the same way on… The licence is Apache-2.0.
Read from SKILL.md and the folder at commit bbe58a6. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md (its code samples are bash).
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Atmos Init loads about 1.2k tokens when it runs. Until then it costs about 43 tokens; SKILL.md has 482 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from cloudposse/atmos at commit bbe58a6, republished under its Apache-2.0 licence (© cloudposse). 482 words, ~1,206 tokens.
.claude/skills/atmos-init/SKILL.md (or your agent's skills folder).Use this skill for bootstrapping a brand-new Atmos project from the built-in
template catalog via atmos init.
atmos init is a thin, project-bootstrap-scoped wrapper around the exact same
engine atmos scaffold generate uses (pkg/generator/ui.InitUI). For authoring a
new template — custom fields, conditional when: on fields/files, hooks — load
atmos-scaffold instead; everything documented there (field types, conditional
prompts/files, spec.hooks:, 3-way merge mechanics) applies unchanged to project
templates consumed via init. This skill only covers what's specific to init.
atmos init basic ./my-project
atmos init aws/landing-zone ./my-project
atmos init # interactive template + target selectionBuilt-in templates: basic (minimal cloud-agnostic layout), simple, atmos
(atmos.yaml only), aws/app (SDLC repo: dev/staging/prod, native CI, emulator-enabled),
aws/landing-zone, gcp/landing-zone, azure/landing-zone. Run atmos scaffold list
to see all templates, including remote/catalog ones not built in.
atmos init ships experimental — behavior may change between releases.
Every init template is an AtmosScaffoldConfig, so it uses the same contract
as atmos scaffold generate: spec.fields, spec.files, and spec.hooks.
Fields and files can use when: predicates or CEL expressions over earlier
answers; generation hooks run at before.scaffold.generate or
after.scaffold.generate. Scaffold hooks deliberately support only kind: step
and ordered kind: steps, even though stack lifecycle hooks support more kinds.
Load atmos-scaffold before authoring or changing any of those template
features. It contains the field, CEL, file-condition, hook, and template-context
rules that init consumes unchanged.
atmos scaffold generateatmos init | atmos scaffold generate | |
|---|---|---|
--git default | true (auto-creates initial commit) | false |
--dry-run | not available | available |
--defaults | not available (non-interactive detection only) | available |
list/validate subcommands | none — use atmos scaffold list/validate | scaffold list/scaffold validate |
| Template sources | embedded + catalog + direct remote (git/https/s3/oci) | embedded + custom (atmos.yaml) + catalog + direct remote (git/https/s3/oci) |
Both share every other flag: --force, --update, --base-ref, --interactive/-i,
--set key=value, --source-override (env ATMOS_INIT_SOURCE_OVERRIDE, also accepts
ATMOS_SCAFFOLD_SOURCE_OVERRIDE), --ref, --no-git, --merge-strategy,
--skip-hooks (env ATMOS_INIT_SKIP_HOOKS) — same semantics as documented in
atmos-scaffold.
A successful atmos init writes .atmos/scaffold.yaml into the generated project —
the same AtmosScaffoldConfig manifest kind, now carrying the user's answers
(spec.values) and provenance (spec.source, spec.baseRef). This record makes later
atmos init --update re-runs against the same template possible without re-answering
every question, and is what --update's 3-way merge uses as the base-ref default
source of truth for "what generated this."
cd my-project
atmos init --update
atmos init --update --merge-strategy=theirsSame 3-way merge mechanics as atmos scaffold generate --update — see
atmos-scaffold's references/merge-strategy.md
for the full mechanics (base storage, conflict strategies, the "offer to update instead
of failing" interactive prompt, shared verbatim between both commands).
| Need | Skill |
|---|---|
Template authoring: spec.fields, CEL when:, conditional files, step-backed hooks, full schema | atmos-scaffold |
| 3-way merge mechanics | atmos-scaffold → references/merge-strategy.md |
| Shared hook vocabulary | atmos-hooks |
Project layout produced by a template (atmos.yaml, stacks, components) | atmos-project-layout |
atmos init is for consuming the built-in project-template catalog to bootstrap a
new repo. Authoring a new template — even one you intend to use via init — is
atmos-scaffold territory.--git defaults to true here (opposite of scaffold generate) — an accidental
atmos init in an existing git repo will create an initial commit unless --no-git
is passed.© cloudposse, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in agent-skills/skills/atmos-init of cloudposse/atmos.
Open the folder on GitHubat commit bbe58a6
Atmos Init next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Atmos Init this skillcloudposse/atmos | 1.4k | — | ~1.2k | Automated safety check: Pass | Apache-2.0 | |
| Add Entityfullstackhero/dotnet-starter-kit | 6.8k | — | ~1.2k | Automated safety check: Pass | MIT | |
| Add Featurefullstackhero/dotnet-starter-kit | 6.8k | — | ~1.1k | Automated safety check: Pass | MIT | |
| Add Integration Eventfullstackhero/dotnet-starter-kit | 6.8k | — | ~1.1k | Automated safety check: Pass | MIT | |
| Add Modulefullstackhero/dotnet-starter-kit | 6.8k | — | ~1.5k | Automated safety check: Pass | MIT | |
| Query Patternsfullstackhero/dotnet-starter-kit | 6.8k | — | ~1.2k | Automated safety check: Pass | MIT |
fullstackhero/dotnet-starter-kit
Add a domain entity/aggregate with EF configuration and a migration to an existing FSH module.
fullstackhero/dotnet-starter-kit
Add a vertical-slice feature (command/query + handler + validator + endpoint) to an existing FSH module.
fullstackhero/dotnet-starter-kit
Publish a cross-module integration event via the Outbox and handle it idempotently in another module.
fullstackhero/dotnet-starter-kit
Create a new module (bounded context) — runtime + Contracts projects, IModule, DbContext, permissions, migrations, and the four registration sites.
fullstackhero/dotnet-starter-kit
Implement read queries — paginated lists, search/filter/sort, and single-entity fetches — the FSH way (DbContext LINQ + PagedResponse).
Kilo-Org/kilo-marketplace
Sets up and maintains AzureML-ready Python projects as uv workspaces with devcontainers, a Makefile and job YAML, so local runs match cloud jobs and experiments stay reproducible.
cloudposse/atmos
A skill your agent uses when implementing, finishing, documenting, or reviewing a fix, repair, remediation, bug fix, debug-and-fix task, workflow fix, infrastructure fix, or any change that should…
cloudposse/atmos
Atmos Terraform linting with TFLint: standalone atmos terraform lint, component-aware config discovery and toolchain versions, TFLint rule configuration, and lifecycle hooks/CI findings.
cloudposse/atmos
Blog post authoring for Atmos: MDX template, frontmatter, website/blog/tags.yml and authors.yml rules, problem-first framing, backtick-opening ban, optional cast embeds, and no-Go-internals leakage.
cloudposse/atmos
Decide whether a PR's new or changed default needs edition-journal handling (pkg/edition, docs/prd/editions.md), and do the mechanical work if so: journal entries, the four-layer default check…
cloudposse/atmos
Migrate to Atmos from native Terraform, Terraform Workspaces, Terramate, Terragrunt, Make, Just, or Task; migrate tool versions from mise or Aqua CLI; migrate AWS/GCP/Azure CLI configs, Leapp…
cloudposse/atmos
Start an hourly background loop that keeps the current branch's PR rebased, its addressed CodeRabbit threads resolved, its CI checks passing, its lint clean, its tests passing with adequate patch…
Categories
Bootstrapping new Atmos projects with atmos init: built-in template catalog, differences from atmos scaffold generate, project record, and update-safe 3-way merge. Atmos Init is an agent skill from cloudposse/atmos.
Atmos Init fits situations like: tasks that involve Project scaffolding.
Run `npx skills add cloudposse/atmos --skill atmos-init -a claude-code`. Or copy the skill folder (agent-skills/skills/atmos-init in cloudposse/atmos) into .claude/skills/atmos-init in your project. Claude Code loads it when a task matches its description.
Run `npx skills add cloudposse/atmos --skill atmos-init -a codex`. Or copy the skill folder (agent-skills/skills/atmos-init in cloudposse/atmos) into .agents/skills/atmos-init in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add cloudposse/atmos --skill atmos-init -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/atmos-init, .gemini/skills/atmos-init, .github/skills/atmos-init and .opencode/skills/atmos-init in your project.
SKILL.md names no scripts, command-line tools or credentials: Atmos Init is instructions for the agent only.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Atmos Init is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.2k tokens (SKILL.md is roughly 4.8k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Atmos Init: Add Entity (fullstackhero/dotnet-starter-kit, 6.8k stars), Add Feature (fullstackhero/dotnet-starter-kit, 6.8k stars), Add Integration Event (fullstackhero/dotnet-starter-kit, 6.8k stars) and Add Module (fullstackhero/dotnet-starter-kit, 6.8k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
cloudposse (a GitHub organization) maintains it in cloudposse/atmos, which has 1,395 GitHub stars. The repository holds 70 skills in this directory. The repository was last updated on October 7, 2026.
Source: cloudposse/atmos on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.