Skip to content

Releases: anomalyco/opencode

v1.15.12

28 May 19:34

Choose a tag to compare

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 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:

v1.15.11

27 May 04:01

Choose a tag to compare

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

  • 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 dispose hook 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:
    • docs(web): update LSP docs wording (#29435)
    • docs: add tip to lsp section (#29444)
  • @Spherrrical:
    • fix(digitalocean): use OAuth token directly for inference instead of creating MAK (#28897)

v1.15.10

23 May 01:04

Choose a tag to compare

Desktop

Bugfixes

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

v1.15.9

22 May 21:18

Choose a tag to compare

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 us and eu multi-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:
    • fix(opencode): update spinner color logic (#28032)
    • fix(desktop): correct user code extraction when URL contains colons (#28837)
  • @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

21 May 15:51

Choose a tag to compare

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

20 May 21:44

Choose a tag to compare

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 preserves endpoint error responses.
  • opencode login now defaults to https://console.opencode.ai.
  • Agent and command names now resolve correctly from relative config paths.
  • Invalid OPENCODE_PERMISSION JSON no longer crashes startup.
  • Plugin tools with missing args no longer break tool loading.
  • Restored legacy PgUp and PgDn TUI 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 opentui dependencies to 0.2.15.

Thank you to 4 community contributors:

  • @MYMDO:
    • feat(i18n): add Ukrainian (uk) locale support (#28061)
  • @StarpTech:
    • chore(team): add starptech to the team members list (#28320)
    • chore(docs): remove beta zen go (#28317)
    • chore(triage): add 'starptech' to core and inference teams (#28376)
  • @tianxiaoliang:
    • fix(app): invalidate provider queries after config update to show custom providers immediately (#28313)
  • @OpeOginni:
    • fix(opencode): Update directory and path fields of imported session (#27516)
    • fix(enterprise): message nav hovercard and active state (#23964)

v1.15.5

18 May 20:57

Choose a tag to compare

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-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:

v1.15.4

17 May 17:44

Choose a tag to compare

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:

v1.15.3

16 May 14:07

Choose a tag to compare

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

16 May 12:53

Choose a tag to compare

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: