Atmos is an infrastructure runtime that coordinates tools such as Terraform, OpenTofu, Kubernetes, Helm, Packer, Ansible, and containers through consistent commands and configuration. It is for teams running cloud infrastructure on laptops, in CI, or through AI agents across environments and regions. Its catalogue entries provide skills, agents, commands, and other add-ons for Atmos workflows.
Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add cloudposse/atmos --skill atmos-starlarkgit clone --depth 1 https://github.com/cloudposse/atmosWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/cloudposse/atmos/atmos-starlark)<a href="https://agentmods.dev/skills/cloudposse/atmos/atmos-starlark"><img src="https://agentmods.dev/badge/skills/cloudposse/atmos/atmos-starlark/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/cloudposse/atmos/atmos-starlark"><img src="https://agentmods.dev/badge/skills/cloudposse/atmos/atmos-starlark.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00136 | $0.04149 |
| Opus 5.5 | $0.00054 | $0.01660 |
| Sonnet 5.5 | $0.00027 | $0.00830 |
| Haiku 4.5 | $0.00014 | $0.00415 |
Grade A, and why
atmos-starlark scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 286 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Atmos Automation Language
Atmos Automation Language is a Python-like scripting language built on embedded Starlark and run by the Atmos binary itself. There is no Python or Bash to install. A script can call Atmos directly, so it sees the same stacks, components, identities, and toolchain that the rest of Atmos uses.
Reach for it, instead of Bash or Python glue, when a task needs Atmos capabilities:
- Deploy components and run any Atmos command:
atmos.terraform("deploy", "vpc", "dev"), oratmos.container("build", "web", flags={"stack": "dev"})(then"push") to build and push container images. - Read resolved stack configuration:
components.get("vpc", "dev", "terraform").vars. - Pin tools without a manual install:
dependencies.tools("jqlang/jq", "1.7.1"). - Use identities and credentials configured under
authinatmos.yaml; the scripts inherit them like any other Atmos command. - Fan out work safely with
steps.parallel, retries, and per-task timeouts.
Keep simple one-command automation in YAML (atmos-workflows, atmos-custom-commands,
atmos-steps). Use a script when the logic needs loops, conditionals, data shaping,
or concurrency. Declarations of project commands and component bindings stay in YAML.
The script step configuration is type: script with interpreter: starlark.
Documentation: Language reference, Custom CLI apps, function reference, and the script step.
Choose the entry point
| Entry point | Run with | Inputs the script reads |
|---|---|---|
| Standalone script | atmos ./deploy.star args..., atmos deploy.star, or ./deploy with an Atmos shebang |
cli.command callback args and flags dicts; raw ctx.args. ctx.flags, ctx.arguments, and env are empty. |
| Custom command step | atmos <name> (command declared in atmos.yaml) |
ctx.flags (string, bool, and int types preserved), ctx.arguments (an omitted optional argument is ""). ctx.args is empty; arguments after -- are not exposed to scripts. |
| Workflow step | atmos workflow <name> |
ctx.flags (string map). env holds only the step's declared env. |
| Hook step | lifecycle event (kind: step, kind: steps, type: test) |
ctx.component, ctx.hook, ctx.operation. |
| Git hook step | git.hooks.<name>.steps run by the installed Git shim |
ctx.args holds the hook's arguments from Git, such as the commit message path for commit-msg. Shell steps get "$@" and ATMOS_GIT_HOOK_ARGS; ATMOS_GIT_HOOK_STDIN is a temp-file path for hooks that receive stdin. |
What ships with it
3 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 2d ago First seen · 286 lines · 136 tokens per session scan A 97f17f32e6be
atmos-starlark is a skill published in the GitHub repository cloudposse/atmos (1,403 stars, last pushed today), licensed Apache-2.0. It adds 136 tokens to every session and 4,149 once invoked, about $0.0005 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-10-15.
Other skills, from other repositories
gke-basics
Trigger: Use when working with Google Kubernetes Engine basics — cluster setup, node pools, workloads, networking, and storage fundamentals.
clum-mcp
A procedure for using clum, a remote Linux operations platform that runs commands through a secure proxy rather than direct SSH. It also describes how to inspect systems, investigate failures, compare solutions, and review incidents.
skypilot-multi-cloud-orchestration
Multi-cloud orchestration for ML workloads with automatic cost optimization. Use when you need to run training or batch jobs across multiple clouds, leverage spot instances with auto-recovery, or optimize GPU costs across providers.
x-nets
Enhanced netstat module with cached data and structured output. View network connections, routing tables, and interface statistics in interactive or TSV/CSV formats. Dependency: This is an x-cmd module. Install x-cmd first (see x-cmd skill for installation options). see x-cmd skill for installation.
x-osv
CLI for Google OSV database. Query vulnerabilities for packages, scan local projects for vulnerable dependencies. Dependency: This is an x-cmd module. Install x-cmd first (see x-cmd skill). Required Tool: Install osv-scanner for project scanning (see https://github.com/google/osv-scanner).
x-uptime
Enhanced uptime with structured YAML output showing uptime, users, and 1/5/15-minute load averages. Dependency: This is an x-cmd module. Install x-cmd first (see x-cmd skill for installation options). see x-cmd skill for installation.