the language
agent
Delegate. An autonomous loop, on a leash you can read. One of the four verbs. A verb is a distinct native execution model, and every task speaks exactly one.
its lanedefault-deny tools · max_turns + max_tokens_total, never an unleashed loop
- 9block keysthe contract
- 1requiredprompt
- 4check gatestyped findings
- 1skeletonsspeak this verb
the shape
a complete workflowSchema-valid whole: this exact text passes nika check (the on-page YAML gate re-validates it on every test run).
nika: v1workflow: id: delegatemodel: ollama/llama3.2:3btasks: audit: agent: prompt: "Find every dead link in ./docs" tools: [ "nika:read", "nika:fetch" ]inside agent:
9 keys · 1 requiredThe block's vocabulary comes from the served contract itself (workflow.schema.json). Each key opens its register row.
- max_tokens_total
integer | stringCumulative token budget across every turn of the loop · the SPEND ceiling, where `max_turns` is the step ceiling. Default is engine-configurable (spec/02-verbs.md §agent).- max_turns
integer | stringthe agent’s loop bound; the worst case is finite- model
string- prompt*
stringthe model job, in words: interpolate ${{ }} references, never paste secrets- schema
objectJSON Schema · the contract the agent's FINAL message must satisfy. The out-of-core hatch; the typed door is task-level `returns:` (both on one task is NIKA-TYPE-003).- skills
arrayAgent Skill (SKILL.md) file paths · explicit static paths only, no globs and no templates. They follow the agentskills.io shape, and are loaded at compose time and injected into the system context.- system
stringSystem prompt · the standing instruction, sent ahead of `prompt:` and unchanged by any turn of the loop.- temperature
number | stringSampling temperature for every turn of the loop · 0 is the steadiest the provider offers, 2 the loosest. A number in 0-2, or a `${{ }}` reference.- tools
arrayWhitelist · DEFAULT-DENY (no tools if absent) · gitignore-style globs · `!` negation.
cross-references
skeletons that speak it
the check gates
where it lives
errors of this verb
The verbs are locked forever: four, never five (fetch is a builtin, not a verb; ordering is the DAG's job, not a word's). The grammar lives in spec 02 · verbs; every other key is in the keyword register. Read the spec →