atmos config set
Set a value in your atmos.yaml configuration using a dot-notation path. The edit
preserves comments, anchors/aliases, Atmos YAML functions, and Go templates.
Usage
atmos config set <path> <value> [--type <type>]
By default the value is written as a string. Use --type to write a typed scalar
or a raw YAML literal.
Examples
# String value (default).
atmos config set logs.level Debug
# Typed values.
atmos config set --type=bool components.terraform.apply_auto_approve true
atmos config set --type=int components.terraform.parallelism 10
# Raw YAML literal (lists, maps).
atmos config set --type=yaml 'logs.exclude' '["a", "b"]'
# Target a specific file.
atmos config set logs.level Trace --config ./atmos.yaml
Arguments
<path>(required)- Dot-notation path to the value (e.g.
logs.level). <value>(required)- The value to set. Interpreted according to
--type.
Flags
--type(string, defaultstring)- How to interpret
<value>:string,int,bool,float,null, oryaml(a raw YAML/yq literal inserted verbatim). --config(string, inherited)- Target a specific
atmos.yamlfile instead of the one discovered in the current directory or git root.
note
Edits that would alter or expand a YAML anchor or alias (including changing a value shared by an anchor) are rejected to avoid silently mutating shared data, as are multi-document YAML files and files that define the same anchor name more than once. Comments, anchors, indentation width, and line endings (CRLF/LF) are preserved, but blank lines between entries are dropped and non-indented sequence styles are normalized when a file is edited.