Releases: anomalyco/opencode
Releases Β· anomalyco/opencode
v1.17.11
Immutable
release. Only release title and notes can be modified.
Core
Improvements
- Add session snapshots and revert controls so you can roll a session back to an earlier message, including file changes.
Bugfixes
- Always print the MCP OAuth URL so manual sign-in still works when opening the browser flow.
Desktop
Improvements
- Add Chrome-style tab cycle shortcuts with
mod+1throughmod+9. - Add draggable tabs. (@arvsrn)
- Improve the empty home state when you have no sessions. (@arvsrn)
- Restyle the jump-to-latest button in the v2 session view. (@arvsrn)
- Improve the redesigned desktop layout, including better titlebar tabs and archived sessions. (@arvsrn)
Bugfixes
- Keep prompt drafts attached to the correct project server.
- Restore consistent titlebar tab sizing and layout.
- Restore home actions when session lists are empty or still loading.
- Keep todo docks in place when switching between sessions.
- Automatically close tabs for sessions that no longer exist.
- Keep provider dialogs, prompt rollbacks, and async attachments tied to the session where they started.
- Clear late session notifications after you open the session.
- Remove the session loading stripe.
Thank you to 2 community contributors:
- @isaachuangGMICLOUD:
- docs: add GMI Cloud provider entry to providers directory (#32914)
- @arvsrn:
v1.17.10
Immutable
release. Only release title and notes can be modified.
Core
Improvements
- Added MCP server instructions to session context. (@Arcadi4)
- Added Opencode-managed provider integration support.
- Added MCP resource template listing.
- Added MCP resource read tools.
- Added a
--miniCLI mode.
Bugfixes
- Hid MCP resource template tools when access is denied.
- Prevented MCP resource tools from colliding when servers expose the same keys.
- Emitted skill base directories as filesystem paths instead of
file://URLs. (@shyuan) - Restored legacy MCP tool names for existing integrations.
- Restored v1 account config loading.
- Bound MCP OAuth callbacks to IPv4 loopback for better local auth reliability. (@he-yufeng)
- Preserved structured error details in surfaced failures.
- Fixed snapshots from subdirectories so they only include the right files and paths.
- Fixed ACP resource text sourcing on Windows and other cross-platform path cases.
- Preserved file source paths in ACP resource text.
- Waited for plugins before loading reference-backed config and system context.
- Hid
gpt-5.5-prowhen using Codex OAuth.
TUI
Improvements
- Added a configurable keybind to open the diff viewer.
- Added diff viewer support for comparing against the main branch.
Bugfixes
- Prevented worker rejections from breaking the TUI process.
Desktop
Improvements
- Kept draft prompt state per tab.
- Added a new session progress indicator. (@arvsrn)
- Added mobile bottom navigation.
- Added collapsible server sections. (@arvsrn)
- Added server-aware session routes to keep same-session navigation separated across servers.
Bugfixes
- Always applied safe-area insets.
- Made session navigation more stable and faster.
- Routed new sessions through tabs correctly.
- Cleared viewed session notifications reliably.
- Scoped drafts created from Home to the right server and project.
- Throttled directory tree loading.
- Persisted drafts and prompt state more reliably.
- Improved iOS PWA shell behavior.
- Refined the mobile session layout.
- Added the server button dropdown. (@arvsrn)
- Restored review line comments.
- Improved the mobile home layout.
SDK
Improvements
- Exposed provider integration IDs in the SDK.
Extensions
Improvements
- Added namespaced plugin hook APIs.
- Added the V2 plugin API for Effect and Promise plugins.
Thank you to 6 community contributors:
- @remorses:
- feat(llm): add video and audio media support to Gemini protocol (#31889)
- @arvsrn:
- @ReStranger:
- fix: Skip bun version check for nix version (#33166)
- @he-yufeng:
- fix(mcp): bind oauth callback to IPv4 loopback (#30022)
- @shyuan:
- fix(skill): emit base directory as filesystem path, not file:// URL (#33580)
- @Arcadi4:
- feat(mcp): append server instructions to context (#32490)
v1.17.9
Immutable
release. Only release title and notes can be modified.
Core
Bugfixes
- Honor configured agent step limits by forcing a final text response instead of failing mid-run.
- Fix Devstral model detection when provider IDs use different casing. (@Robin1987China)
- Pass configured custom headers to Copilot model requests.
Improvements
- Add
highandmaxthinking variants for GLM-5.2 across supported providers. (@imranshaiedi-byte) - Stop wrapping follow-up user messages in a steering reminder so prompt caching stays effective.
TUI
Bugfixes
- Only show the background subagent shortcut when the server supports it.
Thank you to 4 community contributors:
- @Grantmartin2002:
- fix(core): fix command docs in customize-opencode skill (#32718)
- @Robin1987China:
- fix(opencode): use toLowerCase for Devstral model detection (#33109)
- @kimnamu:
- fix(experimental llm pkg): forward topK to Converse via additionalModelRequestFields (#33030)
- @imranshaiedi-byte:
- feat(opencode): expose High/Max thinking variants for GLM-5.2 (#32446)
v1.17.8
Immutable
release. Only release title and notes can be modified.
Core
Improvements
- Session timelines load much faster and avoid flicker or scroll jumps.
Bugfixes
- OpenAI-compatible providers now accept MCP tool schemas that previously failed validation. (@jquense)
- Cloudflare AI Gateway now receives the configured API key correctly. (@keefetang)
- MCP tools without declared schema properties now work with providers that expect object properties.
- Long-running MCP tools now keep their timeout alive when they report progress. (@Nomadcxx)
- The MCP OAuth callback server now shuts down once authorization finishes or is cancelled.
- MCP tool failures now surface the server's error text instead of a generic failure.
- MCP OAuth error pages now escape provider error text correctly.
Desktop
Improvements
- Added a Home tab toggle so you can quickly switch between Home and your last tab.
- The new desktop file and folder picker is faster and easier to navigate in the v2 layout.
Thank you to 3 community contributors:
v1.17.7
Immutable
release. Only release title and notes can be modified.
Core
Bugfixes
- Plugin client requests now reuse the active server instead of assuming the default local port.
- ACP shell tool calls now show the command and working directory from the start.
- Plugin-provided shell environment variables now apply to PTY sessions.
Improvements
- MCP servers can now receive the current workspace as a client root.
TUI
Bugfixes
- MCP debug now uses the SDK's latest protocol version.
Desktop
Bugfixes
- The new session route now stays scoped to its own draft server, so prompts and state target the right workspace.
SDK
Improvements
- SDK clients now refresh model and provider availability when integrations change, and credential update and remove calls accept
location.
v1.17.6
Immutable
release. Only release title and notes can be modified.
Core
Bugfixes
- Improved MCP server compatibility by declaring OpenCode's supported client capabilities.
v1.17.5
Immutable
release. Only release title and notes can be modified.
Core
Improvements
- Added external browser OAuth for the Snowflake Cortex provider (@santigc6)
- Improved project copy management and move-session flows in v2
Bugfixes
- Recovered expired MCP sessions instead of leaving MCP tools disconnected
- Cleared closed MCP clients so stale MCP connections do not linger
- Returned structured MCP tool output in a readable form
- Fixed duplicate renderable IDs that could break TUI rendering
- Fixed commands using
$ARGUMENTSso file contents are not injected twice (@verdverm)
TUI
Bugfixes
- Added auth headers to
RunCommandfetch requests (@OpeOginni)
Desktop
Improvements
- Brought v2 visibility settings to the web app
- Refreshed the oc-2 color theme (@arvsrn)
Bugfixes
- Made the terminal resize gutter easier to grab
- Faded overflowing titlebar tabs instead of clipping them abruptly
Thank you to 5 community contributors:
- @verdverm:
- fix(tui): double file content injection in commands using $ARGUMENTS (#31245)
- @arvsrn:
- feat(app): update oc-2 colors (#31071)
- @Slickstef11:
- docs: update North Mini Code privacy terms (#32096)
- @santigc6:
- feat(opencode): add external browser OAuth for snowflake cortex provider (#31700)
- @OpeOginni:
- fix(opencode): add authorization header to fetch requests in RunCommand (#29877)
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: