Releases: tobert/kaibo
Release list
v0.2.0-rc.5
Get it
Grab your platform's archive below (install + MCP registration) — or take the container image:
docker pull ghcr.io/tobert/kaibo:0.2.0-rc.5# one-line install into a devcontainer or any image — the binary is fully static
COPY --from=ghcr.io/tobert/kaibo:0.2.0-rc.5 /usr/local/bin/kaibo /usr/local/bin/kaibo(Pull version tags like 0.2.0-rc.5 — the sha256-* tags on the package page are
cosign signature/attestation artifacts riding alongside the image, not images.)
Verify it
Run these from the folder holding your downloads. Every artifact carries SLSA
build provenance — any downloaded file, one command:
gh attestation verify kaibo-v0.2.0-rc.5-x86_64-unknown-linux-musl.tar.gz -R tobert/kaibo
gh attestation verify oci://ghcr.io/tobert/kaibo:0.2.0-rc.5 -R tobert/kaiboOr keyless-verify the signed checksum manifest with cosign ≥ 3 (covers every file it lists, works offline):
cosign verify-blob \
--bundle checksums.txt.sigstore.json \
--certificate-identity "https://github.com/tobert/kaibo/.github/workflows/release.yml@refs/tags/v0.2.0-rc.5" \
--certificate-oidc-issuer "https://token.actions.githubusercontent.com" \
checksums.txt
sha256sum -c --ignore-missing checksums.txtWhat's Changed
- feat(release): per-tag get+verify block on every release page by @tobert in #72
- chore: bump to 0.2.0-rc.5 by @tobert in #73
Full Changelog: v0.2.0-rc.4...v0.2.0-rc.5
v0.2.0-rc.4
Get it
Grab your platform's archive below (install + MCP registration) — or take the container image:
docker pull ghcr.io/tobert/kaibo:0.2.0-rc.4# one-line install into a devcontainer or any image — the binary is fully static
COPY --from=ghcr.io/tobert/kaibo:0.2.0-rc.4 /usr/local/bin/kaibo /usr/local/bin/kaibo(Pull version tags like 0.2.0-rc.4 — the sha256-* tags on the package page are
cosign signature/attestation artifacts riding alongside the image, not images.)
Verify it
Run these from the folder holding your downloads. Every artifact carries SLSA
build provenance — any downloaded file, one command:
gh attestation verify kaibo-v0.2.0-rc.4-x86_64-unknown-linux-musl.tar.gz -R tobert/kaibo
gh attestation verify oci://ghcr.io/tobert/kaibo:0.2.0-rc.4 -R tobert/kaiboOr keyless-verify the signed checksum manifest with cosign ≥ 3 (covers every file it lists, works offline):
cosign verify-blob \
--bundle checksums.txt.sigstore.json \
--certificate-identity "https://github.com/tobert/kaibo/.github/workflows/release.yml@refs/tags/v0.2.0-rc.4" \
--certificate-oidc-issuer "https://token.actions.githubusercontent.com" \
checksums.txt
sha256sum -c --ignore-missing checksums.txtWhat's Changed
- feat(release): ghcr container image — multiarch distroless, born signed, built to be COPY'd (plan PR 4) by @tobert in #71
Full Changelog: v0.2.0-rc.3...v0.2.0-rc.4
v0.2.0-rc.3
What's Changed
- fix(release): bundle-only blob signature — cosign v3 ignores the legacy pair (rc.2 kink) by @tobert in #70
Full Changelog: v0.2.0-rc.2...v0.2.0-rc.3
v0.2.0-rc.2
What's Changed
- ci: first CI workflow — offline suite, clippy -D warnings, TLS tripwire by @tobert in #64
- feat: token usage on the provenance footer by @tobert in #66
- docs(readme): panel-driven tune-up — worked example with a measured receipt, honest install, async lane surfaced by @tobert in #67
- chore: bump kaish-kernel to 0.12.0, consume its embedder contract by @tobert in #68
- docs: plan the release pipeline (OSS / GitHub-native, living doc) by @tobert in #25
- feat(release): born-signed releases — cosign keyless + SLSA provenance + SPDX SBOM (plan PR 3) by @tobert in #69
Full Changelog: v0.2.0-rc.1...v0.2.0-rc.2
v0.2.0-rc.1
Considerable development went into kaibo before moving to a pull request model. That effort is tracked in git. Since then, the code has been gone over and over by reviewing agents.
What's Changede
- Bump kaish-kernel to 0.8.4 (clears 0.2.0 release gate) by @tobert in #1
- Infer the launch cwd as the default root by @tobert in #2
- Collapse the consultation surface to consult + oneshot, and make kaibo the legible door to an outside-family model by @tobert in #3
- Follow git worktrees of an already-allowed repo by @tobert in #4
- Bump kaish-kernel to 0.9.0 by @tobert in #5
- Teach grep, not the removed rg; bias read idioms toward whole files by @tobert in #7
- Docs hygiene: split issues/devlog, settle PR-discipline framing, tidy for public by @tobert in #6
- Batch tools: offline, max-effort fan-out — Anthropic + Gemini by @tobert in #8
- Fix tool_span flake (root cause) + two P3 honesty/discoverability fixes by @tobert in #9
- Batch attachments: inline workspace files as context by @tobert in #10
- oneshot attachments + sharpen the attach follow-ups by @tobert in #11
- Expand
$VAR / $ {VAR} in root and allow_paths for portable scratch reads by @tobert in #12 - Read attachments through the kaish VFS — close the check-then-open TOCTOU by @tobert in #16
- Provider failure policy: clean tool errors, retry hints, documented no-retry by @tobert in #15
- Expand
$VAR/$ {VAR} uniformly: user_files and api_key_file, not just root/allow_paths by @tobert in #14 - Escape attachment bodies and paths so contents can't forge a wrapper by @tobert in #13
- Bound the attachment surface: per-call count + cumulative-byte caps by @tobert in #17
- docs: align working-notes + commit-style conventions (devlog wording, commit style, gitignore signoff) by @tobert in #20
- Degrade orientation to a directory map for large repos, not a refusal by @tobert in #18
- Async consult: submit/wait surface, attach-on-consult, and a watchable live view by @tobert in #21
- Move tool usage guidance to kaibo://tools; terse the schemas by @tobert in #22
- Async consult: image attachments + fix wait returning too early by @tobert in #23
- Gate batch casts to the batch lane; rename openai built-in to openai-local by @tobert in #24
- Lighten the RW-mount danger policy: warn on / and $HOME only by @tobert in #26
- docs: stay read-only — retire per-builtin timeouts, defer general RW mounts by @tobert in #27
- generate_image: write artifact to out-dir, return the path by @tobert in #28
- docs: drop image generation — kaibo perceives and reasons, it doesn't render by @tobert in #29
- Advertise the live cast roster in the resident tool descriptions by @tobert in #32
- De-flake cwd-inference test; record the kaish-vfs list TOCTOU it exposed by @tobert in #30
- Async-job polish: job_capacity knob + get/list show the latest consult beat by @tobert in #31
- chore(deps): bump kaish-kernel 0.9.0 → 0.10.0 by @tobert in #33
- docs(config): recommend Gemini Pro batch-only by @tobert in #34
- feat(handshake): name each cast's synth model in the ## Casts roster by @tobert in #35
- docs: plan the model-facing text pass + explore/deliberate by @tobert in #36
- Model-facing surface pass: budget the handshake, job_* renames, standalone descriptions by @tobert in #37
- Per-slot lane (batch | direct): the config foundation for explore/deliberate by @tobert in #38
- explore: the evidence-gathering half of consult, as its own tool (Arc 2 PR 2) by @tobert in #39
- deliberate: explore → offline synth, two lanes (batch | direct) — Arc 2 PR 3 by @tobert in #40
- Batch-provider injection seam: test the batch handlers offline by @tobert in #41
- Single-source the lane→tool cast-enum partition (+ drift guard) by @tobert in #42
- feat(prompts): a Phase seam, kaibo://prompts, and the offline-synth override fix by @tobert in #43
- explore: advertise any cast with an explorer (deliberate/direct too) by @tobert in #44
- Drop the dead pre-backend OpenAI-key helpers (credentials cleanup) by @tobert in #45
- feat(telemetry): tag run_kaish spans with exit code and output size by @tobert in #46
- One TLS client-build site: crate::tls::https_client by @tobert in #47
- feat(prompts): explorer reads big files in wide spans, not tiny slices by @tobert in #48
- prompts: positive-framing sweep + wide-span reading across the sibling blocks by @tobert in #49
- docs: close out the surface/ladder arc — prune the tracker, melt the story by @tobert in #50
- refactor(consult): split the 4.3k-line consult.rs into a directory module by @tobert in #51
- refactor(server): split the 6.6k-line server.rs into a directory module by @tobert in #52
- refactor(consult): split the ConsultConfig grab-bag into a per-phase ladder by @tobert in #53
- fix: whole-call wall-clock deadline so a wedged backend can't hang a call overnight by @tobert in #54
- attach means the model sees the bytes — inline for consult, read-WHOLE directives for sweeps by @tobert in #56
- feat: first-class OpenRouter provider — one key, every family, reasoning on by default by @tobert in #55
- fix(attach): bound every raw read so a stat-then-read swap can't OOM by @tobert in #57
- fix(job_wait): park-and-coalesce so
level:"info"stops poll-storming by @tobert in #58 - chore(deps): upgrade kaish-kernel 0.10.0 → 0.11.0 by @tobert in #59
- ci: SHA-pin actions + least-privilege permissions by @tobert in #60
- ci: aarch64 leg on arm64 runners + per-leg smoke runs by @tobert in #61
- ci: reproducible archives + prebuilt zigbuild + precise C claim by @tobert in #62
- chore: v0.2.0-rc.1 — smoke tag for the never-run publish leg by @tobert in #63
Full Changelog: https://github.com/tobert/kaibo/commits/v0.2.0-rc.1