Releases: anomalyco/opencode
Releases Β· anomalyco/opencode
v1.15.12
Core
Improvements
- ACP integrations can now send prompts, slash commands, and usage updates through
acp-next - Added WebSocket transport for OpenAI responses on supported channels (set OPENCODE_EXPERIMENTAL_WEBSOCKETS=true)
Bugfixes
- Enabled adaptive reasoning controls for Anthropic Opus 4.7+ models
- Allowed colons in passwords (@neriousy)
- Sped up warm
acp-nextmodel and config switches - Improved first-session
acp-nextstartup time - Kept OpenAI WebSocket response timeouts active
- Retried failed OpenAI WebSocket streams before falling back
- Handled
acp-nextpermission prompts correctly - Used the persisted session directory for existing-session requests
- Forwarded remote workspace request bodies correctly
- Supported custom base URLs for OpenAI WebSocket responses (@Tarquinen)
TUI
Improvements
- Added a workspace management dialog
Bugfixes
- Kept session navigation working while prompt modes are open
- Restored the thinking spinner
- Surfaced subagent retry status
- Fixed opening editors from non-Git project paths (@OpeOginni)
Desktop
Improvements
- Added a setting to switch tab layouts
Bugfixes
- Improved the home empty state and fixed V2 font usage
- Fixed tab close buttons not showing reliably
Thank you to 5 community contributors:
- @OpeOginni:
- fix(tui): handle non-git project paths when opening editor (#29180)
- @gotjoshua:
- docs: fix ts error in math examples (#18244)
- @Tarquinen:
- fix(openai): support websocket custom base URLs (#29636)
- @24KaratAu:
- docs: fix grammar in config.mdx (#29683)
- @neriousy:
- fix(core): allow colons inside passwords (#29576)
v1.15.11
Core
Improvements
- Added
headerTimeoutconfig for provider requests, with a 10s default for default OpenAI setups. - Experimental background agents now push updates without polling.
- You can now set only
modalities.inputormodalities.outputin config. (@robposch) - Remote-backed projects now resolve a stable project identity.
Bugfixes
- Dynamically added MCP servers now disconnect cleanly when removed.
- DigitalOcean inference now uses your OAuth token directly instead of creating a MAK. (@Spherrrical)
- Config loading now falls back cleanly when user info is unavailable.
- Fixed Google tool calling after the upstream tool ID regression.
- Experimental flags can now override the umbrella experimental flag.
- Resumed sessions no longer continue orphaned interrupted tools. (@edevil)
- OpenAI reasoning summaries now render as separate blocks.
- Updated Google Vertex support for reasoning signatures.
- The shell tool now advertises your configured timeout to the model.
TUI
Improvements
- Made the prompt resize with terminal width and added prompt size config. (@bjschafer)
Bugfixes
- Accelerated diff viewer scrolling.
- External editors now open from the worktree directory when available.
Desktop
Improvements
- Refined the Desktop v2 home screen, prompt, status popover, and session controls.
Bugfixes
- Fixed V2 titlebar errors when a session sync cache was deleted. (@Eric-Guo)
- Web deployments no longer run desktop health checks.
- Duplicate server connections are now merged in the server list.
- Stabilized virtualized session timeline interactions.
- Fixed the white flash when restoring the desktop window.
Extensions
Improvements
- Added a
disposehook for plugins.
Bugfixes
- Fixed Codex plugin requests to send the expected session ID header.
Thank you to 7 community contributors:
- @jerome-benoit:
- fix(nix): re-inherit patches in desktop, ad-hoc sign .app on darwin (#27869)
- @edevil:
- fix(session): exclude orphaned interrupted tools from run-loop continuation (#26178)
- @bjschafer:
- feat(tui): make prompt size responsive and configurable (#28255)
- @robposch:
- tweak (config): make modalities input/output fields optional so that u can specify one without both being required (#29268)
- @Eric-Guo:
- fix(app): handle deleted session sync cache in V2 titlebar (#29328)
- @StarpTech:
- @Spherrrical:
- fix(digitalocean): use OAuth token directly for inference instead of creating MAK (#28897)
v1.15.10
Desktop
Bugfixes
- Restored the legacy production desktop flows for opening projects and starting sessions.
v1.15.9
Core
Improvements
- Redesigned the diff viewer with a file tree and refreshed layout.
Bugfixes
- Return to the previous screen when closing the diff viewer.
- Show clearer errors when a default model is invalid or unavailable.
- Surface missing PTY session errors instead of failing generically.
- Improve diff viewer empty states and context handling.
- Show clearer errors when a skill invocation fails as expected.
- Show clearer errors when an installation upgrade fails.
- Show clearer project not found errors from the HTTP API.
- Return PTY error bodies from the HTTP API.
- Enable the diff viewer by default.
- Return MCP server not found errors from the HTTP API.
- Let MCP OAuth configs set a callback port and include configured scopes in client metadata. (@sebin)
- Use working Vertex Anthropic endpoints for
usandeumulti-region setups. (@JPFrancoia) - Return session busy error bodies from the HTTP API.
- Preserve native reasoning continuation metadata across turns.
TUI
Improvements
- Copy the current worktree path from the command palette.
Bugfixes
- Refine diff viewer keyboard shortcuts.
- Restore question prompt key handling.
- Keep the spinner color aligned with the active agent. (@OpeOginni)
Desktop
Improvements
- Move tab navigation into the title bar and tighten session tab shortcuts.
- Show session status in the title bar.
Bugfixes
- Extract user codes correctly from callback URLs that contain multiple colons. (@OpeOginni)
- Debounce VCS refreshes to reduce session page churn.
Thank you to 4 community contributors:
- @vglafirov:
- chore(deps): bump gitlab-ai-provider to 6.7.0 (#28218)
- @OpeOginni:
- @JPFrancoia:
- fix(vertex): Vertex (Antropic) provider: use .rep.googleapis.com for continental multi-region endpoints (us, eu) (#28347)
- @sebin:
- fix(mcp): include scope in clientMetadata and add callbackPort option (#28810)
v1.15.7
Core
Improvements
- Added Grok OAuth sign-in, including device-code login. (@Jaaneek)
Bugfixes
- V2 session APIs now return safe
UnknownErrorresponses with log reference IDs when stored messages are corrupt. - Generic API 500s no longer expose config details from server errors.
- Unknown API errors now include reference IDs so you can match responses to server logs.
- V2 session APIs now return
503 ServiceUnavailableErrorfor mutations that are not available yet. - V2 session APIs now return
SessionNotFoundErrorfor missing sessions. - Deduped concurrent Codex OAuth refreshes to avoid repeated refresh failures. (@cooper-oai)
- Restored native OpenAI OAuth requests.
- Tool schema failures now surface as friendly tool errors.
- Added PDF attachment support for Grok.
- Restored OpenAI reasoning streams.
TUI
Bugfixes
- Collapsed thinking labels now use clearer punctuation.
- New sessions now default to the local project.
- Single-select question checkmarks no longer run into option labels.
Desktop
Improvements
- Added a pinch zoom setting for the desktop app.
- Added a new desktop home view, session entry flow, and titlebar.
- Refined the new desktop UI and moved app update actions into the titlebar.
- Added desktop log export.
SDK
Bugfixes
- V2 global event streams now include account add, remove, and switch events.
Thank you to 3 community contributors:
- @cooper-oai:
- fix(opencode): dedupe concurrent Codex OAuth refreshes (#28236)
- @Jaaneek:
- feat(opencode): add xAI Grok OAuth (SuperGrok) + device-code login (#28557)
- @kagura-agent:
- fix(ui): preserve target attribute in DOMPurify config for markdown links (#28598)
v1.15.6
Core
Improvements
- Added a diff viewer in the TUI for reviewing changes.
- Collapsed single-child directories in the diff viewer file tree.
- Added shell mode to the
runprompt. - Replaced subagent tabs with an on-demand picker in
run. - Plugin file load errors no longer break the rest of plugin loading.
- Anthropic API-key models now use the native runtime.
- The v2 HTTP API now exposes structured public error schemas.
Bugfixes
- Zed editor context now only activates inside Zed terminals.
- The v2 HTTP API now exposes catalog errors.
- The v2 HTTP API now exposes request errors.
- The v2 OpenAPI spec now preserves endpoint error responses.
opencode loginnow defaults tohttps://console.opencode.ai.- Agent and command names now resolve correctly from relative config paths.
- Invalid
OPENCODE_PERMISSIONJSON no longer crashes startup. - Plugin tools with missing
argsno longer break tool loading. - Restored legacy
PgUpandPgDnTUI keybind aliases. - Native runtime now prefers the console provider token for OpenCode models.
TUI
Improvements
- The diff viewer now focuses the first file automatically.
Bugfixes
- Imported sessions now refresh their directory and relative path fields correctly. (@OpeOginni)
Desktop
Improvements
- Added initial desktop tabs support.
- Added a native app menu on Windows.
- Added Ukrainian locale support. (@MYMDO)
Bugfixes
- Custom providers now appear immediately after config updates. (@tianxiaoliang)
SDK
- Updated
opentuidependencies to0.2.15.
Thank you to 4 community contributors:
- @MYMDO:
- feat(i18n): add Ukrainian (uk) locale support (#28061)
- @StarpTech:
- @tianxiaoliang:
- fix(app): invalidate provider queries after config update to show custom providers immediately (#28313)
- @OpeOginni:
v1.15.5
Core
Improvements
- Preview the native OpenAI runtime path behind an experimental flag
- Add
--replayand--replay-limitto show recent history when resuming interactive runs
Bugfixes
- Fix plugin tools using
askso tool calls complete correctly - Reduce missed
/eventupdates caused by a subscription race - Sort the v2 session list by most recently updated
TUI
Improvements
- Refresh the prompt layout after pasting content
Bugfixes
- Keep file references scoped to the current workspace
- Preserve pasted prompt content when copying
- Collapse very long tool output lines to keep the layout readable
- Use a higher-contrast paste summary badge color in some themes (@kagura-agent)
Desktop
Improvements
- Allow desktop notifications from the renderer
- Show free-limit and usage-exceeded dialogs in Desktop
- Speed up large session timelines
Bugfixes
- Fix question dock overflow and message layout clipping
- Hide the prompt placeholder when the input only contains whitespace (@ShrootBuck)
- Sync the PWA status bar color with the active theme (@heimoshuiyu)
- Install the newest available desktop update instead of reusing a stale download
Thank you to 4 community contributors:
- @heimoshuiyu:
- fix: sync PWA status bar theme-color with app color scheme (#28006)
- @ShrootBuck:
- fix(app): hide prompt placeholder for whitespace input (#28101)
- @kagura-agent:
- fix(tui): use contrast-aware foreground for paste summary badge (#27969)
- @SpiritChen51:
- fix(ui): fallback to execCommand for clipboard copy when navigator.clipboard fails (#27993)
v1.15.4
Core
Bugfixes
- Fixed project-scoped bus events so file watcher and update notifications reach the right instance.
- Fixed custom LSP servers not sending refresh events after they initialize.
- Hid background subagent task instructions unless experimental background mode is enabled.
TUI
Improvements
- Made Markdown H1 headings easier to distinguish.
Thank you to 1 community contributor:
- @necropheus:
- docs: update README.es.md (#27739)
v1.15.3
Core
Bugfixes
- Reduced wasted work when reading very large files after output truncation.
TUI
Bugfixes
- Fixed async commands losing the active instance context, which could break agent generation and GitHub-driven runs.
v1.15.2
Core
Improvements
- Reduced unnecessary prompting around shell, task, and todo flows.
Bugfixes
- Fixed sync events not reaching project-scoped subscribers in injected instances.
TUI
Improvements
- Newly pinned sessions now stay at the end of the pinned list instead of jumping to the top.
Bugfixes
- Fixed
opencode run --agentresolving project-local agents.
Thank you to 1 community contributor:
- @gigamonster256:
- feat(nix): add opencode-electron derivation (#16163)