v0.100.0
What's Changed
- docs(readme): the showcase example passes its own audit β hold for post-v0.99 tag by @ThibautMelen in #363
- feat(cli): bare trace show/verify/outputs/flow read the workspace latest by @ThibautMelen in #364
- refactor(nika-tmpl): the expression grammar comes home β schema keeps the checks by @ThibautMelen in #365
- fix(providers): gemini 2.5 dynamic thinking no longer burns structured budgets by @ThibautMelen in #366
- feat(check): the report states the affirmative permits contract by @ThibautMelen in #367
- fix(cli): the first screen speaks user β help voice, explain fix-forms, check points at explain by @ThibautMelen in #368
- fix(providers): the gemini thinking bound gates on the WIRE model β it never fired by @ThibautMelen in #369
- chore(nika-chart): the API baseline joins the coverage floor β 44/44 by @ThibautMelen in #371
- feat(cli): the machine dry-run form β one versioned plan object by @ThibautMelen in #370
- feat(check): unified findings[] β one loop, and parse-fatal --json stays JSON by @ThibautMelen in #372
- docs(changelog): the unreleased ledger catches the post-tag morning by @ThibautMelen in #373
- feat(mcp): streamable HTTP transport β the second pump over the same pure dispatch by @ThibautMelen in #374
- fix(ci): check-expect survives concurrent hooks β portable mktemp by @ThibautMelen in #376
- docs(changelog): the ledger learns the plan object and the http transport by @ThibautMelen in #377
- test(ci): the funnel plays the managed-host wire β mcp http leg by @ThibautMelen in #378
- feat(cli): explain fix-forms β four more high-traffic codes teach the edit by @ThibautMelen in #379
- refactor: cohesion at the two files nearest the cap β registry rows out of codes.rs, tests out of runtime lib.rs by @ThibautMelen in #380
- test(scripts): the trust battery β resumeΒ·reproduceΒ·tamperΒ·export, proven end to end by @ThibautMelen in #381
- ci(release): the tarball passes the trust battery too by @ThibautMelen in #382
- docs: readme + authoring skill name the discovery catalogs by @ThibautMelen in #385
- chore(deps): feed-rs 2.4.0 β the quick-xml DoS pair leaves the default build by @ThibautMelen in #386
- test(nika-sandbox-seatbelt): gate 5 attests measured β 96% killed, the last deferral falls by @ThibautMelen in #389
- docs(readme): the agents section links the full integrations map by @ThibautMelen in #387
- refactor(nika-http): the loopback e2e module gets its own file β 1319 β 1077 by @ThibautMelen in #391
- fix(tmpl,cel): arithmetic in a guard teaches jq β both voices by @ThibautMelen in #394
- docs(changelog): the evening ledger β trust battery + the rustsec pair by @ThibautMelen in #396
- fix(types,cap): unknown extract mode teaches the canonical route by @ThibautMelen in #397
- fix(init): the cursor rule teaches the shipped surface (#390) by @ThibautMelen in #398
- feat(nika-cli): binstall metadata β the release assets resolve (#383) by @ThibautMelen in #400
- fix(schema,types,http,browser): SSRF floor speaks at check β one static host oracle by @ThibautMelen in #403
- refactor(cli): the display surface descends to nika-display β unblocks #393 by @ThibautMelen in #399
- docs(changelog): the gauntlet triad lands in Unreleased by @ThibautMelen in #404
- fix(cli): the PERMITS panel renders floor escapes without a boundary by @ThibautMelen in #405
- feat(dist): flake.nix β nix run resolves the release binary (#388) by @ThibautMelen in #401
- feat(nika-cli): wire wave-2 β gemini, lmstudio, junie (#384) by @ThibautMelen in #406
- fix(schema,cli,lsp): an unknown arg teaches the declared vocabulary by @ThibautMelen in #408
- feat(dist): .pre-commit-hooks.yaml β nika check as a pre-commit hook (#407) by @ThibautMelen in #413
- chore(ci): the nightly installs cargo-audit β vector 15 stops yellowing by @ThibautMelen in #422
- feat(nika-cli): check audits several files in one call by @ThibautMelen in #420
- fix(nika-cli): the scoped run honours the whole-file audit (#411) by @ThibautMelen in #421
- docs(readme): the toolchain installs join get-started by @ThibautMelen in #423
- fix(types,providers,schema,cap): one did-you-mean metric, every closed namespace by @ThibautMelen in #414
- fix(nika-schema): the secrets surface teaches its own fixes by @ThibautMelen in #435
- docs: agent-facing metadata β llms-install Β· CITATION.cff Β· ADOPTERS by @ThibautMelen in #436
- feat(cli): nika check --fix β the in-binary repair loop converges by @ThibautMelen in #434
- docs: llms.txt on-ramp lists the install runbook by @ThibautMelen in #437
- docs: agent-surface round 2 β bare-metal install lane + context7.json by @ThibautMelen in #439
- fix(nika-builtin): a declared write permit creates its tree (#433) by @ThibautMelen in #438
- feat(cli): graph json projects the declared policy β retry, timeout, on_error, outputs by @ThibautMelen in #440
- feat(schema,cli): --fix heals dependency and reference renames β convergence by @ThibautMelen in #444
- chore(nika-pack): vendor the spec pack β 4 showcases + the tsv blind spot by @ThibautMelen in #443
- feat(schema,cli): the graph projects per-task permits β the contract field fills by @ThibautMelen in #445
- fix(cli): --fix publishes atomically β a crash never truncates the file by @ThibautMelen in #446
- docs(readme): the quickstart model answers without a think block (#428) by @ThibautMelen in #447
- fix(ci): the schema public-api baseline re-sits on the ubuntu render by @ThibautMelen in #448
- docs(cli): the scaffolded teaching surfaces learn check --fix by @ThibautMelen in #450
- fix(schema): chart and tts join the effect classification β no more self-refusing boundaries by @ThibautMelen in #451
- docs: software heritage archive badge by @ThibautMelen in #453
- fix(nika-schema): rename private module β rustdoc name collision by @ThibautMelen in #454
- feat(release): official multi-arch docker image on ghcr (#442) by @ThibautMelen in #463
- fix(cap,schema,cli): the agent-verb battery triad β compose parity, VAR-005 routes, explainable PERMITS by @ThibautMelen in #458
- fix(runtime,display): a token-burning empty answer warns on the console (#410) by @ThibautMelen in #460
- fix(runtime): the effective model joins a model-less infer's resume identity (#409) by @ThibautMelen in #461
- fix(cli): the example rescue tip keys on the failure kind (#145) by @ThibautMelen in #459
- docs(changelog): the repair loop and the agent triad land in Unreleased by @ThibautMelen in #467
- feat(release): official ghcr docker image β multi-arch, verified by @ThibautMelen in #465
- feat(runtime): settles stream on the ordered spine β a kill keeps settled siblings (#412) by @ThibautMelen in #462
- feat(http,schema): an exact loopback literal in permits clears the ssrf floor for that host (#395) by @ThibautMelen in #466
- fix(runtime): on_error.recover awaits a no-edge referent's terminal state (#291) by @ThibautMelen in #469
- fix(builtin): the headless prompt dead-end teaches both exits by @ThibautMelen in #471
- feat(cli): a paused run teaches its exact resume command by @ThibautMelen in #472
- docs(adr): three statuses speak the merged code β 029/091/093 accepted by @ThibautMelen in #474
- fix(hygiene): vector 1 compares the memory pointer to main, not the checkout by @ThibautMelen in #476
- docs(readme): the plain-punctuation pass (#455) by @ThibautMelen in #480
- feat(cli): wire wave-3a β claude-desktop closes the double gap, qwen rides by @ThibautMelen in #479
- fix(cli,schema): a typed --var override honors its declared type by @ThibautMelen in #477
- fix(agent): a provider failure speaks one language on both verbs by @ThibautMelen in #481
- docs(readme): the full loop as the teaching spine β check β fix β run β receipt by @ThibautMelen in #478
- feat(schema): hint a workflow output that forgot its ${{ }} wrapper by @ThibautMelen in #483
- feat(cli): graph mermaid paints verb identity β spec-parity classDefs by @ThibautMelen in #470
- feat(cli): nika model serve β the sidecar launch surface (adr-091) by @ThibautMelen in #482
- fix(schema): the parse lane joins the native-first/005 inventory (#475) by @ThibautMelen in #484
- feat(cli): registry refs on check and run β the verified pull by @ThibautMelen in #485
- feat(cli): wire wave-3b β cline resolves its two homes, continue owns a file by @ThibautMelen in #486
- feat(cli): cursor first-class β the kit gains its native manifest, init wires the mcp by @ThibautMelen in #488
- docs(readme): the constellation table catches up β action, starters, gh-nika by @ThibautMelen in #490
- feat(agents): the plugin becomes a suite β every use case gets its crew (0.4.0) by @ThibautMelen in #491
- feat(release): shell completions ride the tarballs β and one docker rail survives by @ThibautMelen in #492
- docs(llms-install): the gh extension lane joins the agent runbook by @ThibautMelen in #494
- docs(agents): kit 0.4.1 β every teaching earned by the fresh-user gauntlet by @ThibautMelen in #496
- fix(nika-cli): every trace reader resolves the names ls prints by @ThibautMelen in #495
- fix(nika-builtin): glob walks its literal prefix β scoped permits accept scoped globs by @ThibautMelen in #493
- chore(nika-catalog): the openai showcase seats leave 2024 β gpt-5.2 and gpt-5-mini by @ThibautMelen in #497
- feat(nika-cli): the one earned ask β welcome + init grow the community line by @ThibautMelen in #498
- docs(agents): kit 0.4.2 β the deep-verify patch by @ThibautMelen in #501
- fix(nika-mcp): explain teaches the runtime namespaces β one voice with the CLI by @ThibautMelen in #499
- feat(cli): examples run carries the run trio β var Β· no-progress Β· max-cost-usd by @ThibautMelen in #500
- docs(changelog): the gauntlet trio joins Unreleased by @ThibautMelen in #503
- docs(changelog): the earned-ask entry joins Unreleased (#498) by @ThibautMelen in #502
- feat(agents): kit 0.5.0 β the three seatbelts reach Claude Code by @ThibautMelen in #504
- fix(agents): kit 0.5.1 β the map survives a subdir session by @ThibautMelen in #508
- docs(changelog): the night's six fixes enter the unreleased ledger by @ThibautMelen in #510
- feat(agent): the agent verb consumes agent skills β skills: (#473) by @ThibautMelen in #506
- feat(cli): nika model pull/list/rm β one models dir by construction by @ThibautMelen in #507
- refactor(registry): the client descends to nika-registry-client (l2) by @ThibautMelen in #512
- feat(models): the pull receipt speaks the resume β plus the live-hub pin by @ThibautMelen in #513
- feat(cli): the mirror sees the sovereign lane by @ThibautMelen in #515
- fix(cli): the plural is part of the voice by @ThibautMelen in #516
- fix(providers): the error speaks operator, not rustdoc by @ThibautMelen in #517
- fix(cli): trace peek performs the autopsy it promised by @ThibautMelen in #520
- feat(nika-lsp): code actions β the --fix engine reaches every editor by @ThibautMelen in #519
- fix(media): the tape teaches trace verify's robust shape β bare, latest by @ThibautMelen in #522
- fix(models): the receipt speaks per-family β no false serve promise by @ThibautMelen in #521
- fix(check): the envelope-output hint teaches the golden-drift trap by @ThibautMelen in #524
- feat(models): pull borrows the tokenizer from the declared base model by @ThibautMelen in #525
- fix(tmpl): one scanner vocabulary β and found counterexamples persist by @ThibautMelen in #527
- docs(kit): 0.5.2 β the night's teachings reach the authoring skill by @ThibautMelen in #528
- feat(cli): trace verify takes the glob β per-file verdicts, worst-of exit by @ThibautMelen in #526
- feat(cli): the terminal learns to sing β verb band, live spinner, themed DAG, the founding wizard by @ThibautMelen in #489
- fix(agents): kit 0.5.3 β the seatbelts reach Codex, one manifest line by @ThibautMelen in #530
- fix(models): the list speaks per-family β no blind serve promise by @ThibautMelen in #529
- feat(nika-lsp): the spec completes itself β tools, provider models, closed enums by @ThibautMelen in #531
- fix(display): the plural voice reaches the band β one vocabulary by @ThibautMelen in #532
- chore(pack): vendor the template comment diet (spec 5c78e4572) by @ThibautMelen in #533
- feat(onboard): init equips Cursor fully β the binary carries the seatbelts by @ThibautMelen in #535
Full Changelog: v0.99.0...v0.100.0