Releases: anomalyco/opencode
Releases Β· anomalyco/opencode
v1.16.2
Core
Bugfixes
- Reasoning summaries now only run on providers that support them, avoiding GPT-5 request failures on compatible backends.
- Edit operations now refuse loose matches that could overwrite the wrong code or replace an existing file by mistake.
- Fixed Bedrock sessions hanging before a model response starts. (@alblez)
Improvements
- Diff viewer now supports next and previous hunk navigation.
- Terminal themes now refresh after live terminal reloads without stale colors or broken highlighting.
- Running subagents can now be sent to the background so you can keep working.
- Sessions now persist system context updates during long-running conversations.
- Added Snowflake Cortex provider support. (@kameshsampath)
TUI
Bugfixes
- Fixed the external editor fallback so attach-mode sessions still open when the original project path is unavailable locally. (@pcadena-lila)
- Permission replies now route through the correct session directory.
/monow prefers the models command in slash autocomplete.- Fixed crashes from malformed path or diff metadata in permission and session views.
Desktop
Bugfixes
- Fixed titlebar tab overflow clipping.
- Fixed overflowed titlebar tabs so scrolling and drag regions behave correctly.
- Improved tab closing and navigation so the next tab is selected more reliably.
Improvements
- Improved multi-server desktop support with per-server home state and session tabs.
Thank you to 5 community contributors:
- @kameshsampath:
- feat(core): add Snowflake Cortex provider (#29901)
- @pcadena-lila:
- fix(tui): fall back to local cwd when editor spawns in attach mode (#30583)
- @weiconghe:
- fix: use mapError instead of orDie for context snapshot decoding (#30905)
- @alblez:
- fix(opencode): resolve Bedrock hang by using node build conditions (#30873)
- @jerome-benoit:
- fix(workflows): retry nix-hashes compute-hash on transient failure (#30743)
v1.16.0
Core
Improvements
- Added managed workspace cloning that keeps dirty and untracked files.
- Added moving sessions between workspaces and directories.
- Added proper OpenAI model support through AWS Bedrock.
- Added skill discovery and file-based agent loading.
- Updated GitHub Copilot usage tracking for token-based billing.
- Added
run --replayfor interactive session replay. - Improved startup time. (@StarpTech)
Bugfixes
- Added Vue syntax highlighting.
- Restored full ACP session replay when loading saved sessions. (@imnotlxy)
- Fixed shell cancellation races.
- Fixed SAP AI Core OpenAI reasoning variants. (@jerome-benoit)
- Fixed delegated tasks losing their selected reasoning variant.
- Fixed OpenAI websocket sessions getting stuck idle.
- Fixed Windows path normalization in migrated storage.
- Fixed prompt corruption when pasting near wide characters. (@dauphinYan)
- Fixed ACP cancel so it aborts the active run. (@smagnuso)
- Fixed SAP AI Core Anthropic Opus 4.7+ adaptive reasoning. (@jerome-benoit)
TUI
Improvements
- Improved the experimental session switcher.
- Truncated long sidebar file paths.
Bugfixes
- Show a toast when the variant hotkey is used with no variants. (@ariane-emory)
- Routed question responses to the right session directory.
- Stopped the background task spinner from sticking.
Desktop
Improvements
- Added color themes. (@arvsrn)
- Show local server startup failures in the app.
- Added a thinking level selector for v2 prompts.
- Added a Servers tab in Settings.
- Added an update button. (@arvsrn)
Bugfixes
- Fixed session review refresh and VCS diff caching.
- Hid update actions when desktop updates are unavailable.
- Fixed tab title truncation and close button placement.
- Show project sessions before path sync finishes. (@mhart)
SDK
- Exposed session location data in v2 responses.
Extensions
Bugfixes
- GitHub now refuses to commit without an existing git author identity. (@ulises-jeremias)
Thank you to 10 community contributors:
- @jerome-benoit:
- @mhart:
- fix(app): show project sessions before path sync resolves (#30167)
- @smagnuso:
- fix(acp): honor session/cancel by aborting the running turn (#30145)
- @dauphinYan:
- fix(tui): prevent prompt corruption when pasting near wide characters (#29710)
- @arvsrn:
- @StarpTech:
- refactor(opencode): improve startup time by 38% (#30453)
- @ulises-jeremias:
- @ariane-emory:
- fix(tui): show toast when variant_list keybind used with no variants (#30724)
- @imnotlxy:
- fix(opencode):
ACP.loadSessionshould replay all messages (#30761)
- fix(opencode):
- @colinhacks:
- fix: bump @openrouter/ai-sdk-provider to 2.9.0 (#30800)
v1.15.13
Core
Bugfixes
- Gateway Anthropic Opus 4.7+ adaptive reasoning now keeps summarized thinking instead of returning empty thinking blocks.
Improvements
- Sessions can now store custom metadata through the API and SDK. (@shantur)
- Config now loads from the opened location upward, so directory-specific settings and provider policies apply more predictably.
TUI
Bugfixes
- Wrapped inline tool rows now stay aligned, and failed inline tools can expand their error details in place.
Thank you to 1 community contributor:
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)