Atmos Compositions
Use this skill for compositions: named groupings of component instances that form a system. Compositions define the service contract; components fulfill services by referencing the composition.
Related Skills
| Need | Load |
|---|---|
| Container components that fulfill services | atmos-container |
| Stack manifest structure | atmos-stacks |
| Workflow orchestration across services | atmos-workflows |
Configuration
Declare composition service contracts at stack scope:
compositions:
app:
description: Application runtime
services:
- api
- worker
- db
components:
container:
api:
composition: app
worker:
composition: app
The composition describes expected services. Components declare which composition they fulfill.
Validation
Use atmos composition validate to inspect whether a stack provides all services for a composition.
atmos composition validate app -s plat-ue2-dev
Validation reports fulfilled and not-provided services. Use this before running workflows that assume a complete multi-service system.
Guidance
- Use compositions for systems made of multiple stack-scoped services.
- Keep service names stable and human-readable.
- Do not use composition names as a replacement for Atmos profiles or
ATMOS_PROFILE. - Put shared composition definitions in stack mixins/defaults when multiple stacks use the same service contract.
- Prefer composition validation over hand-written checks in shell steps.