nika:*
namespace, engine-native (no MCP round-trip, no subprocess), all invoked
the same way:
Canonical source:
nika-spec/stdlib/builtins-v0.1.md,
the Apache-2.0 language spec. The set was curated by the Rams
“less but better” sweep (ADR-086/087/088): one super-powerful builtin
with mode args beats five single-purpose ones.Overview
Builtins
tools · 6 categories
Extract modes
on
nika:fetchNamespace
nika:* · engine-nativeCore (6)
The workflow-control family: speak, signal, guard, ask, finish, pause.File (5)
Data (9)
jq is THE data language: map, filter, reshape, merge. The other eight
cover what jq genuinely cannot do: diff, validate, delete-on-null merge,
format conversion, generation, time, hashing, adjudication.
Network (2)
Introspection (2)
Media (4)
Design rules the set obeys
- One super-powerful builtin, multi-mode args:
fetch+extract,jq,convert,wait,date,inspectall follow the same pattern. No per-direction or per-shape builtin slots. - jq subsumes: anything that is a pure JSON transform is a jq expression, not a builtin. A builtin earns its slot only by doing what jq cannot.
- Additive forever: new builtins may join in stdlib v0.x; existing
arg shapes never break (the language envelope
nika: v1is frozen).
See also
Full stdlib spec
Per-builtin args, error codes (
NIKA-BUILTIN-*), trust classes, and
what jq subsumed out of v0.1.Verbs
How
invoke: dispatches nika:* builtins vs MCP tools.MCP catalog
External tools: the MCP server registry Nika knows by id.
Bindings
Templating that pipes output from one
invoke: to the next.