OpenCode

Tracking major feature releases, model weight updates, structural APIs, and developer roadmaps.

v1.15.13

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: @shantur : feat(core): add session metadata support ( #23068 )

v1.15.12

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-next model and config switches Improved first-session acp-next startup time Kept OpenAI WebSocket response timeouts active Retried failed OpenAI WebSocket streams before falling back Handled acp-next permission prompts correctly Used the persis...

v1.2.24

github-v1.2.24: refactor(server): unify instance httpapi middleware routing

Unify declared instance HTTP API endpoints under typed middleware routing, including event streaming and PTY WebSocket connect handling.\n\nPreserve PTY connect compatibility by checking missing PTYs before parsing optional cursor and ticket query fields, with regression coverage.

v1.15.11

v1.15.11

Core Improvements Added headerTimeout config 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.input or modalities.output in config. ( @robposch ) Remote-backed projects now resolve a stable project identity. Bugfixes Restored remote project identity resolution. Preserved cached project identity across reloads. Dynamically added MCP servers now disconnect cleanly when removed. DigitalOcean inference now uses your OAuth token directly instead of creating a MAK. ( @Spherrrical ) Co...

v1.15.10

v1.15.10

Desktop Bugfixes Restored the legacy production desktop flows for opening projects and starting sessions.

v1.15.9

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. Ret...

v1.15.7

v1.15.7

Core Improvements Added Grok OAuth sign-in, including device-code login. ( @Jaaneek ) Bugfixes V2 session APIs now return safe UnknownError responses 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 ServiceUnavailableError for mutations that are not available yet. V2 session APIs now return SessionNotFoundError for missing sessions. Deduped concurrent Codex OAuth refreshes to avoid repeated refresh fa...

v1.15.6

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 run prompt. 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 preserv...

v1.15.5

v1.15.5

Core Improvements Preview the native OpenAI runtime path behind an experimental flag Add --replay and --replay-limit to show recent history when resuming interactive runs Bugfixes Fix plugin tools using ask so tool calls complete correctly Reduce missed /event updates 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-co...

v1.15.4

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

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

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 --agent resolving project-local agents. Thank you to 1 community contributor: @gigamonster256 : feat(nix): add opencode-electron derivation ( #16163 )

v1.15.1

v1.15.1

Core Improvements Clarified how to recover when the npm package is installed without its native binary. Bugfixes Avoid duplicate consecutive entries in prompt history. Show full config validation errors during TUI startup instead of a generic failure. Fixed npm installs so the CLI can recover and fetch the right native binary on more setups. Fixed multiline @ mentions in prompts. Preserved custom tool metadata from Zod schemas. Preserved custom tool argument descriptions in generated schemas. Fixed file watching in repos where .git is a symlink. ( @kagura-agent ) TUI Improvements Added a colla...

v1.15.0

v1.15.0

Core Improvements Added an Effect-based core event system for more complete event delivery across sessions and integrations. Bugfixes Ignored invalid exports in custom tool modules instead of failing tool loading. Ignored project instruction lookup errors so sessions keep loading when project instruction discovery fails. Fixed versioned event projector lookups so event replay uses the right handlers. Desktop Improvements Auto-hide the menu bar on Linux and Windows. ( @shi-gg ) Bugfixes Fixed archived sessions being reprocessed when their archive state did not change. SDK Bugfixes Restored miss...

v1.14.51

v1.14.51

Core Improvements Added experimental background subagents so tasks can keep running while you continue working. Added the required billing origin header for NVIDIA endpoints. ( @nv-kasikritc ) Bugfixes Fixed worktree creation requests that omitted the POST body. Fixed sessions getting stuck with interrupted assistant messages after cancellation. Fixed repeated auto-compaction in sessions after compaction reordered messages. Updated LiteLLM compatibility to require v1.85.0-rc.2+ for current GPT-5 and tool-call behavior. ( @Sameerlite ) Fixed truncated shell output streams closing cleanly. Stopp...

v1.14.50

v1.14.50

Core Bugfixes Kept HTTP event streams open after the initial connect event so subscribers continue receiving instance updates. Returned proper busy errors when a session is already running prompt or shell work. Let invalid small_model config values fall back cleanly instead of breaking small-model selection. Improved missing-model errors with suggestions across CLI and typed callers. TUI Improvements Restored markdown rendering for session output by default. SDK Improvements Added instance.directory and instance.workspace query support to the v2 model and provider calls.

v1.14.49

v1.14.49

Core Improvements Added the v2 model and provider listing API. Added DigitalOcean OAuth and Inference Router support. ( @Spherrrical ) Create a global opencode.jsonc automatically when no config exists. Enable customize-opencode by default with a linked full schema. Autocomplete configured @mentions in prompts. Parse fenced Markdown code blocks in patch diffs by default. Bugfixes Fix keymap fallback priority and make TUI config errors clearer. Restore model suggestions for unloaded providers and missing models. Preserve layered permission rule order in config merges. ( @asuffield ) Preserve at...

v1.14.48

v1.14.48

Core Improvements Preserve original image attachments instead of resizing them before sending them to the model

v1.14.47

v1.14.47

Core Bugfixes Restored prompt editing keybindings in the TUI textarea, including aliases like esc and enter Model changes now persist reliably across session activity HTTP API schema validation errors now return a readable 400 response body Improvements Scout can now materialize configured reference repositories up front so they are ready to search Large image attachments are now auto-resized before sending, with configurable size limits TUI File and directory paths now render relative to the session directory when possible

v1.14.46

v1.14.46

Core Improvements Added a built-in customize-opencode skill so opencode config edits are less likely to break startup. Bugfixes Fixed numeric HTTP API query parameters in the generated OpenAPI spec and SDK for session and file endpoints. Fixed boolean HTTP API query handling so SDK types and runtime validation stay aligned. Tolerated legacy stored numeric values in sessions, diffs, and retry events instead of failing to load old data. Fixed old sessions with negative token counts causing message loads and Desktop startup to fail. Fixed MCP tool discovery when a server publishes broken outputSc...

v1.14.42

v1.14.42

Core Improvements Added HTTP API response compression for large non-streaming responses. Added the Scout agent for repo research, docs lookup, and dependency-source inspection. Added workspace sync so adapter-backed workspaces can be discovered and registered automatically. Added an interactive split-footer mode for opencode run . Simplified TUI keybinding config into a flat keybind format. Made duplicate worktree names fall back to the parent directory for clearer labels. Bugfixes Fixed HTTP API auth responses to match the previous wire format for empty authorize results and share errors. Ret...

v1.14.43

v1.14.43

Core Bugfixes Keep provider and config API responses working when auth loaders add non-JSON options to providers. Include tool image attachments in ACP updates and session replays. ( @SteffenDE ) Thank you to 1 community contributor: @SteffenDE : fix(acp): include tool image attachments in updates ( #25128 )

v1.14.44

v1.14.44

Core Bugfixes Fixed upgrades failing for existing workspaces when adding the time_used field.

v1.14.45

v1.14.45

Core Bugfixes Provider configs and API responses now accept models marked as active . Read tool permission rules now match worktree-relative paths, so read allowlists and denylists apply correctly. Workspace-routed HTTP API endpoints no longer reject valid directory and workspace query params. TUI Bugfixes Startup errors now report every failed bootstrap request instead of only the first one. Opening a session no longer crashes when the messages request fails. Desktop Bugfixes Older migrated sessions with missing diff file details load again. Older migrated sessions with missing diff patches l...

v1.14.41

v1.14.41

Core Bugfixes Restored formatter output handling so formatting still works when formatters write to stdout or stderr. ( @ferdinandyb ) Improvements Warping a session to another workspace can now carry over your uncommitted file changes. TUI Bugfixes Restored custom provider setup in /connect . Desktop Bugfixes Added a macOS Settings menu entry. ( @jessedi0n ) Improvements Moved the desktop app's local server into a separate utility process for more reliable startup and shutdown. Extensions Improvements ACP clients now restore the last model, mode, and effort when loading sessions, and can clos...

v1.14.40

v1.14.40

Core Improvements Support .well-known/opencode configs that point to a separate remote config file. Bugfixes Preserve assistant text when replaying signed reasoning blocks. ( @edevil ) Return consistent not-found errors for missing sessions. Apply CORS headers before auth so browser clients can reach legacy server endpoints. Fix serve , web , and ACP network options triggering runtime re-entry errors. Only show connected workspaces in warp flows, and carry the new directory into the session after warping. Restore web terminal CSP allowances. Sanitize invalid surrogate characters before provide...

v1.14.37

v1.14.37

Core Bugfixes Canceling a task now also cancels child subtask sessions. Improvements Improved v2 session rendering with cleaner tool states, better compaction summaries, and more accurate timing. Warp a session into another workspace or back to the local project. Desktop Bugfixes Run the desktop migration on startup so existing installs transition correctly after the desktop packaging move. Stabilized the Windows titlebar when changing zoom levels.

v1.14.38

v1.14.38

Core Bugfixes Embedded UI requests now work with arbitrary connect-src origins under the default CSP. Desktop Bugfixes Desktop now trusts system CA certificates for HTTPS connections.

v1.14.39

v1.14.39

Desktop Bugfixes Respect HTTP_PROXY and related proxy environment variables in the desktop app. Return null instead of failing when the desktop app cannot read a stored value.

v1.14.35

v1.14.35

Core Bugfixes Preserve diff patch boundaries so session diffs keep rendering correctly when file contents include diff --git text.

v1.14.34

v1.14.34

Core Improvements Add PTY connection tickets so authenticated terminal websockets work more reliably across clients. Add v2 session failure events so clients can detect and show failed runs. Improve shell command handling for Bash, PowerShell, and cmd sessions. Bugfixes Return structured error bodies from the effect HTTP server instead of empty failures. Reload server auth environment variables correctly for each new HTTP listener. Stop worktree creation from hanging while bootstrap commands run. Fix Azure Anthropic model resolution when using the Anthropic SDK. Fix the web UI proxy so public ...

v1.14.32

v1.14.32

Core Shell mode in the prompt stays editable, so backspace, cursor movement, and other editing keys work again. Fixed HTTP API workspace adapters losing instance context, which could break workspace create, sync, and routing flows. Fixed experimental workspace creation requests that omit extra . Fixed OpenAPI parameter schemas so generated clients match the public API. Unsupported image formats now fall back to text reads instead of being sent as image attachments. ( @zeke ) Agents can use the global temp directory without extra permission prompts. Fixed Bedrock sessions that include reasoning...

v1.14.33

v1.14.33

Core Fix issue with custom agents in plugins not loading Thank you to 3 community contributors: @jerome-benoit : fix(nix): remove stale packages/shared filter ( #24930 ) @OpeOginni : docs: CLI docs for current commands and flags ( #25399 ) @HyeokjaeLee : fix(instance): restore InstanceBootstrap init parameter for non-Effec… ( #25449 )

v1.14.31

v1.14.31

Core Azure setup now prompts for the resource name when needed and saves it with the API key. Task child sessions now preserve parent external_dir and deny permissions. ( @remorses ) Invalid remote MCP URLs now fail with a clear error instead of breaking setup. Desktop Restoring saved messages no longer crashes the app when a model is missing. Thank you to 1 community contributor: @remorses : fix(opencode): preserve external_dir and deny parent permissions in task child sessions ( #23290 )

v1.14.30

v1.14.30

Core Fixed missing sessions in Desktop caused by path mismatches, including recovery for existing stored data. Fixed Azure Responses defaults to avoid reasoning item ordering errors. Improved DeepSeek compatibility with providers that vary model naming. Added Mistral Medium 3.5 with reasoning support. ( @rubdos ) Made instruction precedence more predictable by applying global instructions before project and skill instructions. Reconnected editor context when switching to a session in another directory. Fixed forked sessions so compacted history stays intact. ( @spark4862 ) Reduced memory growt...

v1.14.29

v1.14.29

Core OpenAPI request body schemas now match the real HTTP API. Sessions now keep a relative workspace path. OpenAPI now documents instance directory and workspace query parameters correctly. Sync sequence validation now matches the HTTP API. Moonshot and Kimi tool schemas are sanitized to avoid rejected tool calls. MCP OAuth errors now match the native API more closely. Provider OAuth authorize errors now match the native API more closely. Shell cancellations now finish cleanly instead of leaving aborted commands in a bad state. Creating a session over HTTP now works with an empty request body...

v1.14.28

v1.14.28

Core Fixed issue with opencode upgrade failing for bun installs unless in a directory with package.json

v1.14.27

v1.14.27

Core Added a configurable default shell for terminals and agent shell commands, with a Desktop setting to manage it. Reduced extra terminal noise while creating TUI workspaces. TUI Hid provider connection checks until onboarding is complete. Restored the default toast timeout when no custom duration is provided. ( @OpeOginni ) Thank you to 1 community contributor: @OpeOginni : fix(tui): update toast duration handling to use default value ( #23395 )

v1.14.26

v1.14.26

Core Added HTTP API routes to list sessions from the experimental API. Added HTTP API routes to search files. Added HTTP API routes to read catalog data. Added HTTP API routes to read experimental data. Added HTTP API routes to read worktrees. Added HTTP API routes to dispose instances. Added HTTP API routes to update worktrees. Fixed config parsing to preserve permission rule order. Added HTTP API routes to update config. Added HTTP API routes to initialize project Git repos. Added HTTP API routes to update projects. Added HTTP API routes to manage MCP servers. Added HTTP API routes for MCP O...

v1.14.25

v1.14.25

Core Fixed permission config preserving rule order and exposes full IntelliSense for tool permission keys LSP permission prompts now include request details like the operation, file, and cursor position Shell commands keep the correct working directory after login shell startup files run Added Roslyn LSP support for Razor, .cshtml , and C# script files GPT-5.5 with OpenAI OAuth now uses the correct context limits to avoid compaction issues Thank you to 2 community contributors: @altendky : fix(opencode): clarify git amend condition to require verifying commit landed ( #19937 ) @b0o : fix(build...

v1.14.24

v1.14.24

Core Fixed DeepSeek assistant messages so reasoning is always included, avoiding provider formatting failures. Fixed inherited model configs so interleaved-capability models keep working when that field falls back to an existing model. ( @07akioni ) Added an experimental HTTP API endpoint for MCP server status. Added experimental HTTP API endpoints to list files, read file contents, and check project file status. Thank you to 1 community contributor: @07akioni : fix: use existingModel as fallback for interleaved field ( #24172 )

v1.14.23

v1.14.23

Core Respect custom .npmrc registry settings when checking package versions and updates. TUI Render all non-synthetic text in a user message instead of showing only the first text block.

v1.14.22

v1.14.22

Core Respect .npmrc settings during npm installs. Let projects store a custom icon override so the chosen icon persists correctly. Desktop Fix session views and nested session items not getting stuck with stale state when switching between sessions.

v1.14.21

v1.14.21

Core Support pull diagnostics from LSP servers that use them, including C# and Kotlin. Fix project detection and caching for bare Git repos and worktrees. ( @StevenTCramer ) Improve session compaction so long threads keep more useful context when older history is summarized. Preserve UTF-8 BOMs when files are edited, patched, or rewritten through tools. Use Roslyn Language Server for C# support instead of csharp-ls . ( @jmbryan4 ) Add the high reasoning variant for supported Mistral Small models. ( @rubdos ) Hide unsupported variants for Kimi models that do not expose them. TUI Fail fast when ...

v1.14.20

v1.14.20

Core Fixed a system theme regression in the TUI. Added GET /config to the experimental HTTP API. Fixed local dynamic imports on Windows when running under Node, improving plugin and tool loading. TUI Fixed permission replies using remote workspaces so they are sent to the correct workspace. Desktop Stopped prompt controls from replaying their fade-in animation on every render. Added a setting to hide the session progress bar while the agent is working. Fixed the Select Server dialog layout so the server list and actions size correctly. ( @OpeOginni ) Fixed synced project updates so desktop pro...

v1.14.19

v1.14.19

Core Prevented compiled binaries from failing on startup because of a circular session schema dependency. Renamed the compaction setting to preserve_recent_tokens for the budget that keeps recent turns verbatim. Preserved concurrent edits to the same file instead of letting parallel edits overwrite each other. Fixed managed installs on Windows and added bundled ripgrep support for Windows ARM64. Added NVIDIA as a built-in provider option, including connection docs and required attribution headers. ( @anniesurla ) Kept recent conversation turns verbatim during session compaction so follow-up wo...

v1.14.18

v1.14.18

Core Restore the native ripgrep backend so file search and file listing work reliably again. Thank you to 1 community contributor: @ariane-emory : docs: document --dangerously-skip-permissions CLI flag ( #23371 )

v1.14.17

v1.14.17

Core Preserve executable permissions before Docker builds when artifacts lose their exec bits. Fix plugins reinstalling more often than needed. Use display: summarized by default for Anthropic Bedrock Opus 4.7 requests. Detect attachment types from file contents so images and PDFs still work with incorrect or missing extensions. Support OTEL_RESOURCE_ATTRIBUTES for custom telemetry resource tags. Fix package installs when node_modules is missing. Fix GitHub Copilot Anthropic Haiku requests by disabling unsupported tool streaming. TUI Add a full-session option when forking from the session dial...