Major new features
- 🐙 A new GitHub panel in the session workspace rail shows the branch's PR — summary, comments, CI checks, and a stacked diff with a file-tree navigator — refreshing live as the agent pushes; pick a private repo to clone in New Chat, split Summary/Changes tabs, and authenticate git and
ghas your own connected account inside the sandbox. (#6145, #6311, #6366, #6380, #6678, #6680, #6795) - 🎨 Canvas is now a built-in page: a per-project board of draggable session cards with live status, worktree branches, and PR links, where you can open transcripts or start new sessions right from the board. (#6753, #6396)
- 📦 New managed-sandbox providers — run each host in a local libkrun microVM (
sandbox.provider: microsandbox) with sub-second boots and in-place resume, or as self-reclaiming Kubernetes agent-sandbox resources that stay alive while an agent runs, suspend when idle, and resume with their workspace intact; sandboxes that remain offline can also be reaped automatically. (#2875, #6230, #6127) - ⚡ Sessions feel instant — new conversations open immediately while the server catches up, sidebar rows label themselves with your first prompt and highlight on click, long transcripts virtualize for fast switching, and new sessions are auto-named (toggle in Settings). (#6737, #6144, #6660, #6522, #6772)
- 🔌 More harnesses and CLIs — Jcode joins as a first-class ACP harness, and the
EXTRA_HARNESS_CLISbuild-arg bakes extra harness CLIs (goose, jcode, cursor, kimi…) into the host image without forking the Dockerfile; enterprises also gain an opt-in OAuth 2.0 client-credentials grant and a HashiCorp Vault Transit credential-store backend. (#4661, #4148, #3977, #5953)
Breaking changes
⚠️ Managed terminals now require tmux 3.3 or newer — Omnigent warns during setup and fails early at terminal launch on older versions; upgrade tmux to keep using managed terminals. (#6255)⚠️ The standaloneomnigent-canvasextension is removed now that Canvas is built in — enable the built-in page withOMNIGENT_FEATURES=canvas. (#6753)
Deprecations
⚠️ omnigent updateis deprecated in favor ofomnigent upgrade— the old spelling still runs but prints a deprecation notice; switch toomnigent upgrade. (#6362)
Bug fixes
- 🔄 Native Claude and Codex sessions now survive resume and compaction — they keep compacted context and history across cold resumes, restarts, and forks, recover on a served model when a pinned one disappears, and continue on a fresh thread instead of failing every turn. (#6364, #6403, #6025, #6614, #6493, #6270, #6324)
- 🧾 Turn failures surface the real cause instead of blank turns or generic banners — streaming failures report the actual harness error, duplicate and empty error cards are gone, and Codex failure banners now show a descriptive headline with expandable details. (#6082, #6742, #6790, #5511)
- 🧹 Managed sandboxes no longer leak compute — failed launches, deletions, and transient cleanup errors are now torn down or retried instead of lingering until their lifetime cap expires. (#6488, #6358, #6128)
- 🤝 Sub-agent orchestration is more reliable — failed sub-agent turns stay failed and report their error to the parent, results waiting in a parent's inbox survive a runner restart, and Qwen sub-agents wake the parent with their final answer. (#5856, #6238, #6051)
- 📱 Mobile and cross-browser polish — switching conversations opens at the newest message, keyboard shortcuts match the platform (⌘ vs Ctrl), and multiline typing no longer jumps the composer in Firefox and Zen. (#6045, #6222, #6305)
💜 Thanks to our community
This release was shaped by the people who filed issues, opened PRs, and talked through feature requests with us on our Discord! Thank you for building omnigent with us, keep the bug reports, ideas and contributions coming :)
Full Changelog: https://github.com/omnigent-ai/omnigent/blob/main/CHANGELOG.md