Runtime 0.8.8 job compatibility binding
Runtime/CLI 0.8.8 adds strict job_input_v2 preflight and immutable execution-profile binding while preserving job_input_v1 for existing direct clients. job preflight proves the requested preset, approval policy pack, required tools, profile fingerprint, and policy revision without creating a job, thread, run, checkout, or worktree. V2 job run rejects missing, stale, or altered binding evidence before dispatch. Install it with npm install -g @kestrel-agents/kestrel@0.8.8 on Node.js 22.
Runtime 0.8.7 packaging correction
Runtime/CLI 0.8.7 replaces the unusable npm-only 0.8.6 artifact. Version 0.8.6 referenced a private MCP security package and the not-yet-published Files package, so a clean npm install could not resolve its dependency graph. Do not install Runtime 0.8.6.
The 0.8.7 package removes the private MCP package from the npm dependency graph, publishes @kestrel-agents/files@0.8.5, excludes compiled test artifacts, and validates the same packed tarball that is installed during the clean consumer smoke. Runtime remains compatible with the exact 0.8.5 public dependency versions declared in its manifest. Install it with npm install -g @kestrel-agents/kestrel@0.8.7 on Node.js 22.
Desktop 0.8.6 hotfix
Desktop 0.8.6 fixes a finalization failure where a stale queued conversation message could reject detached follow-up processing and abort Local Core. The queue now pauses and reports the route failure instead, leaving the running conversation and Desktop process available for recovery.
This is a Desktop-only release. Its signed DMG, ZIP, checksums, notarization evidence, and updater metadata are published under the immutable Desktop 0.8.6 release path. The later Runtime 0.8.7 packaging correction remains independent of this Desktop release.
Kestrel 0.8.5 overview
Kestrel 0.8.5 was the last coordinated source release and aligned Desktop, CLI/TUI, Kestrel One, Runtime, Protocol, Conversation, SDK, Memory, adapters, Observability, and Workspace Skills at publication time. Desktop has since advanced independently to 0.8.6; the remaining 0.8.5 sections describe that earlier coordinated release.
Runtime and Protocol
- Contextual continuation windows keep follow-up work attached to the durable Thread.
- Shared Conversation contracts now drive Desktop, Kestrel One, and the TUI.
- Stream recovery and typed reads remain available across reconnect and hosted runtime recovery.
- Hosted workspaces retire completed execution runtimes and use explicit shutdown and recovery budgets.
- Action-bound approvals, Mission Control authority, durable budgets, and evaluation contracts remain exact.
- Protocol Apps are executable plugin manifests with explicit installation, configuration, enablement, driver, and capability state.
SDK, Memory, and adapters
At the coordinated 0.8.5 release, nine public packages used version 0.8.5. Conversation became a public package and supplies the framework-neutral thread, streaming, queue, composer, activity, and interaction kernel used by first-party clients. Files 0.8.5 was added to npm with the later Runtime packaging correction.
CLI/TUI
The coordinated release installed with npm install -g @kestrel-agents/kestrel@0.8.5 on Node.js 22. Use Runtime/CLI 0.8.8 for current npm installs. Release verification covers macOS arm64 and Linux x64. The TUI uses the shared Conversation platform for durable turns, streaming activity, composer behavior, cancellation, reconnect, and readable history.
Desktop
Desktop 0.8.5 simplifies navigation, strengthens authoritative Mission Control and active-run presentation, and unifies Apps around executable plugin records. Legacy MCP and direct App settings migrate while credential registrations remain in Keychain; retired workflow-App selections are removed. A one-time pre-v12 settings backup supports downgrade recovery. Desktop ships as a signed and notarized macOS arm64 download and stable OTA update from 0.7.0 and 0.8.0.
Kestrel One source and hosted service
Kestrel One carries product/source version 0.8.5. Scheduled runs now have titles, selected models, Chat or Build mode, manual test execution, trigger and request identity, and corrected DST handling. Apps use executable manifests and action-bound approval policy instead of workflow selection or prompt injection. The Lumi-hosted service remains invitation-only.
Mission Control, approvals, and recovery
Desktop and Kestrel One inspect authoritative Mission Control state and use revision-checked actions. Approval grants bind to exact external effects and share one policy and presentation model. Hosted runtime recovery allows the PGlite-backed runner enough time to reopen, bounds normal and fatal shutdown, and retires completed runtime profiles without losing replay records.
Observability and evaluations
Trace context connects request, conversation, run, turn, provider, tool/effect, and terminal result. Provider reasoning remains distinct from committed agent progress. Runtime evaluation policies, calibration assets, replay, and delivery controls record evidence without rewriting the primary outcome.
Breaking changes and migration
Upgrade all Kestrel packages and clients together. Consumers of the previous workflow-App manifest fields must move to executable plugin manifests and lifecycle state. Desktop performs its local settings migration automatically. Existing hosted schedules receive a title and existing schedule runs receive a title snapshot when migration 0076 is applied. See Upgrading to 0.8.
Artifacts and evidence
The coordinated v0.8.5 release owns source archives, package notes, CLI archive/checksum, signed Desktop assets, and Kestrel One deployment evidence. Artifacts are immutable and tied to the tagged revision. Later Desktop-only releases use their own desktop-v<version> release identity.
Known limitations
- Products remain Beta.
- Desktop release support is macOS arm64.
- CLI release support is macOS arm64 and Linux x64.
- Kestrel One source/local development is supported, but turnkey production self-hosting is not promised.
- Lumi-hosted Kestrel One requires an invitation.
Earlier 0.8 history
The v0.8.0 release established the coordinated 0.8 contracts and signed Desktop installed base. Runtime npm versions 0.8.1 and 0.8.2 were packaging corrections. Version 0.8.4 was staged on npm and tagged for provenance but was never promoted to GitHub Latest, npm latest, Desktop stable, or production because its Runtime package was incomplete. The coordinated 0.8.5 line superseded them; Runtime 0.8.7 superseded the broken npm-only 0.8.6 artifact, and Runtime 0.8.8 adds strict job compatibility binding.
Kestrel 0.7.0 history
The 0.7 release established public packages, signed Desktop distribution, manual update checking, and the prior terminal-result contract. Its package and Desktop gates remained structurally separate, and Kestrel One was documented only as invitation-managed. Read Upgrading to 0.7 only when maintaining historical consumers.