Skip to main content
Start with the Markdown report. It calculates a total and writes a real file. Then use the existing examples below to explore validation, dependencies, JSON transformations and caller inputs. None calls a model or an external service; no API key is required.

Get the matching files

The examples are part of the engine’s released source. Use the files from the release matching your binary, rather than copying a development branch. The documentation currently describes v.
For each link below, open Raw and save the file in your working directory. Its const: block supplies the known input; the configuration example additionally takes --var team=docs.

Check, run and compare

Run these commands from the directory containing the saved files:
Expected outputs, in the same order (JSON object key order is immaterial):
The workflows declare only their required built-in tools in permits:. They export JSON and leave execution traces; they do not write a business artifact. The introductory report adds an explicit ./report.md write permission and verifies the resulting file.

Inspect the evidence and a refusal

Each run prints the path of its trace under .nika/traces/. Pass the path printed by your run to nika trace verify. An intact hash chain and a signed record are separate checks: without a signing key, the verdict reports UNSEALED. Read the reported tiers rather than assuming exit zero means a signed receipt. To see a runtime refusal, copy 19-validate-records.nika, change one amount from 10 to -1, and check and run the copy. The schema rejects the negative amount; the dependent assertion fails and the report task does not complete. Static validation alone does not establish that runtime input data satisfies a schema. To see a static permission refusal, copy the introductory report and remove nika:write from its tool permissions. nika check refuses the missing authority before the file write runs. Restore the specific permission to make the intended write possible; do not disable security.

Add AI or an external integration

Use meeting actions to summarize documents with a configured model, or explore the full gallery. Those examples have additional requirements: input files, a running local model or a provider key, and sometimes authenticated services. Check those requirements and the output yourself. A successful offline example is evidence for its tested computation, not for every provider, connector or schedule.