AGPL-3.0-or-later · forever.

the language

prompt

the model job, in words: interpolate ${{ }} references, never paste secrets. One of 59 words the served contract declares, projected from workflow.schema.json, the same file your editor validates against.

  • 2surfacesinfer · agent
  • 2required ininfer · agent
  • stringtypethe declared shape
  • 6skeletonscarry this key

the contract

2 declarations

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.

infer*
stringthe model job, in words: interpolate ${{ }} references, never paste secretsinside infer:
agent*
stringthe model job, in words: interpolate ${{ }} references, never paste secretsinside agent:

in a real file

from the chain skeleton
chain.nika.yaml
  think:    with:      gather: ${{ tasks.gather.output }}    infer:      prompt: |        # SLOT: the one model job · interpolate ${{ with.gather }}        Summarize · ${{ with.gather }}

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

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