Skip to main content

Template checklist (for humans and AI generators)

  • Every task has a unique name and its block matches its type (request: xor local:).
  • Every variable name matches [A-Za-z_][A-Za-z0-9_]* (and is not args/params).
  • Tasks are ordered so variables are produced before they are consumed.
  • Either agents: (with ≥1 module each) or top-level modules: + agent_plugin mode — never both.
  • Every module has name and type.
  • for_each references a variable that a filter produces as an array; element fields are accessed as {{ value.field }} for named captures or {{ value[0] }} for positional captures.
  • when: is a raw expression (no {{ }}); everything else uses {{ }} placeholders.
  • transfer.mode has its required options (tentacle.address / local.directory).
  • Validated with pandora-plugin_exec -t template.yml --dry-run -v before shipping.