Releases: anomalyco/opencode
Releases Β· anomalyco/opencode
v1.17.4
Immutable
release. Only release title and notes can be modified.
Core
Improvements
- Added
cwdsupport for local MCP servers so they can start from a workspace-relative directory. (@Grantmartin2002) - Added connector-based authentication flows and support for stored provider credentials.
- Added v2 API endpoints to create and fetch sessions, list session questions, and resolve the active location.
- File reads now return raw content with the correct content type for API and SDK clients.
- MCP server log notifications are now surfaced in opencode logs.
Bugfixes
- Fixed Gemini tool schemas that used multi-type fields so compatible tools keep working. (@Killusions)
- Content-filtered model responses now surface as visible errors instead of failing silently. (@kkdawkins)
- Fixed MCP auth and debug requests dropping configured headers.
- Snapshot creation now reuses source Git objects to avoid long re-hashing delays on huge repos. (@dmtrKovalenko)
- Fixed MCP catalog request timeouts not applying when listing prompts, resources, or tools.
Thank you to 5 community contributors:
- @dmtrKovalenko:
- fix(snapshot): reuse source git objects to avoid re-hashing huge repos (#31798)
- @tobwen:
- fix(tui): preserve exit epilogue during scoped shutdown (#31805)
- @kkdawkins:
- fix(opencode): surface content-filter finish reason as visible error (#31745)
- @Killusions:
- fix(gemini): prevent gemini incompatibility with some tools (#31877)
- @Grantmartin2002:
- feat(opencode): support cwd on local MCP servers (#30676)
v1.17.3
Immutable
release. Only release title and notes can be modified.
Fixed issue with 1.17.2 desktop crashing
v1.17.2
Immutable
release. Only release title and notes can be modified.
Core
Bugfixes
- Recover from expired remote config auth by prompting you to log in again instead of failing to load config (@Ayushlm10)
- Let subagents use their own configured permissions again
Desktop
Bugfixes
- Restore Linux launcher and icon identity so pinned apps keep opening correctly (@neriousy)
- Restore the device attachment picker (@rexdotsh)
Thank you to 3 community contributors:
v1.17.1
Immutable
release. Only release title and notes can be modified.
Core
Improvements
- References can include usage descriptions for agents, show up in the new docs, and be hidden from
@autocomplete when needed.
Bugfixes
- Deprecated
referenceconfig entries continue to load under the newerreferencesconfig key. - MCP prompt and resource requests now respect configured server timeouts.
- Anthropic fallback responses are handled correctly again.
- MCP servers that fail during client setup now fail cleanly instead of leaving a broken connection behind.
Desktop
Improvements
- The new desktop session flow now has a dedicated
/new-sessionroute with draft tabs that keep your prompt and project selection together until you start the session.
Bugfixes
- Restored macOS auto-updates.
v1.17.0
Immutable
release. Only release title and notes can be modified.
Core
Improvements
- Faster file search across large projects with the new
fff-backed search tools. (@dmtrKovalenko) - Added
X-Session-Idheaders for proxy setups that need sticky routing. (@songchaow) - Added Cohere North model support.
- Added
reasoningas an interleaved field option for vLLM providers. (@delta9000) mcp addnow works in non-interactive flows.auth logoutnow supports search when choosing an account.
Bugfixes
- Improved MCP connection status messages so failures are easier to act on.
- Added Claude Fable reasoning support.
- MCP tool calls now receive abort signals, so cancellations stop more reliably.
- MCP catalogs now paginate correctly instead of truncating larger lists.
- OpenRouter reasoning variants now generate for all models. (@AnthonyMLau)
- Added MiniMax M3 thinking toggle support.
- Java multi-module Maven workspaces now resolve JDTLS from the topmost
pom.xml. (@areyouok) - MCP servers now respect advertised capabilities.
- Session lists now respect directory filters in workspace setups. (@rexdotsh)
- Sessions can recover once from provider context-overflow errors instead of failing immediately.
- Bedrock Mantle config now honors configured API key and region settings.
TUI
Improvements
- The session move flow now highlights project copies more clearly and keeps the current location selected.
- Project copies can now be deleted directly from the move dialog.
Bugfixes
- New project copies are now bootstrapped before the TUI switches into them.
- Moving a session now injects a reminder about the new working directory.
Desktop
Improvements
- Added a help button to the tabs bar.
- Prompt drafts are preserved while you switch tabs.
- File attachments now open in the active project.
- App updates now stay responsive and persist across restarts.
- Added WSL-backed Desktop support and WSL server management on Windows.
- Improved the sessions list UI. (@arvsrn)
- Improved the servers UI. (@arvsrn)
Bugfixes
- Updated Electron and fixed related panel layout issues.
- Fixed several WSL Desktop bugs. (@neriousy)
- Hidden agents no longer get cycled accidentally.
- MCP status now refreshes when the active directory changes.
- The Home screen now keeps a larger recent-session list with scrolling.
SDK
Improvements
- Large v2 tool outputs are now bounded and expose retained output paths for follow-up inspection.
Thank you to 11 community contributors:
- @rexdotsh:
- fix(session): respect directory filter with workspaces (#30804)
- @arvsrn:
- @dmtrKovalenko:
- feat(opencode): fff search tools (#27802)
- @fancive:
- docs: fix MCP header interpolation example to {env:VAR} (#31078)
- @robertDouglass:
- fix(tui): sort connect providers alphabetically (#30891)
- @neriousy:
- fix(desktop): few WSL bugs (#31095)
- @areyouok:
- fix(lsp): resolve JDTLS root to topmost pom.xml in Java Maven multi-module projects (#28761)
- @remorses:
- fix(session): merge per-call tool rules into session permission (#30529)
- @AnthonyMLau:
- fix(opencode): generate reasoning variants for all OpenRouter models. (#30332)
- @delta9000:
- feat: add "reasoning" as interleaved field option for vLLM providers (#30477)
- @songchaow:
- feat: add X-Session-Id header for proxy cache routing affinity (#31511)
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)