AGPL-3.0-or-later · forever.

the language

secrets

Vault-backed masked references · `${{ secrets.X }}` · never inline literals. One of 59 words the served contract declares, projected from workflow.schema.json, the same file your editor validates against.

  • 1surfaceenvelope
  • optionaleverywherea choice, never a miss
  • objecttypethe declared shape
  • 3skeletonscarry this key

the contract

1 declaration

Descriptions are the schema's own; the deeper invariants (value languages and regexes) ride the same projection. A miss is a nika check finding before anything runs.

envelope
objectVault-backed masked references · `${{ secrets.X }}` · never inline literals.the file itself

in a real file

from the gate-and-act skeleton
gate-and-act.nika.yaml
secrets:  webhook:    source: env    key: ALERTS_WEBHOOK_URL         # SLOT: where the act lands    egress:      - to: "nika:notify"        host_from_self: true        # the secret value IS the destination URL

a verbatim slice, real line numbers from gate-and-act.nika.yaml, conformance-gated upstream on every spec push. open the full skeleton →

cross-references

the check gates that name it

from the blog

defined by

the block it lives in

The whole grammar in one place: the four verbs · the standard library · the spec. Try it in the playground. Read the reference →