AGPL-3.0-or-later · forever.

the standard library

nika:notify

Send a notification · v0.1 engines support the webhook channel. One of 28 builtins in the closed nika: namespace.

the network familynetwork egress (permits.net-gated)

  • networkfamily2 tools
  • 5argsdeclared contract
  • 2requiredcheck teaches a miss
  • 2skeletonsship this tool

the contract

5 args · 2 required

A missing required arg is a nika check finding before anything runs; the vocabulary below comes from the binary itself (nika catalog --tools --json), not from prose.

channel
stringwebhook (v0.1) | slack | email | discord | sms (gated)
target*
stringthe webhook URL
message*
stringthe alert text
severity
stringinfo (default) | warn | error
data
optional structured context (any JSON · rides the payload beside the message)

in a real file

from the gate-and-act skeleton
gate-and-act.nika.yaml
  act:    with:      value: ${{ tasks.check.value }}   # the binding IS the edge · check → act    # when: is a SKIP gate — routing, not failure (a skipped task is not an error)    when: ${{ with.value > const.threshold }}   # SLOT: the CEL condition    invoke:      tool: "nika:notify"           # SLOT: the action · notify / write / exec      args:        channel: webhook        target: "${{ secrets.webhook }}"        message: "Threshold crossed · ${{ with.value }}"   # SLOT        severity: warning

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

the network family

2 tools

network egress (permits.net-gated).

Machines read the same vocabulary at /tools/catalog.json; the contract lives in spec 06 · stdlib. Install and ask the binary itself: nika catalog --tools. Read the spec →