Skip to content

Releases: anomalyco/opencode

v1.16.2

05 Jun 15:58

Choose a tag to compare

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.
  • /mo now 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:

v1.16.0

05 Jun 03:08

Choose a tag to compare

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 --replay for 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:
    • fix(opencode): support sap-ai-core anthropic opus 4.7+ adaptive reasoning (#29991)
    • fix(opencode): route SAP AI Core reasoning variants through modelParams (#30482)
  • @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:
    • feat(app): v2 desktop UI improvements (#29689)
    • feat(app): polish home projects list UI (#30436)
    • feat(app): polish select-v2 component (#30446)
    • feat(app): new update button (#30460)
    • feat(app): color themes (#30824)
  • @StarpTech:
    • refactor(opencode): improve startup time by 38% (#30453)
  • @ulises-jeremias:
    • fix(github): enforce existing git author identity (#30507)
    • fix(opencode): fallback to sh for curl upgrade (#30499)
  • @ariane-emory:
    • fix(tui): show toast when variant_list keybind used with no variants (#30724)
  • @imnotlxy:
    • fix(opencode): ACP.loadSession should replay all messages (#30761)
  • @colinhacks:
    • fix: bump @openrouter/ai-sdk-provider to 2.9.0 (#30800)

v1.15.13

30 May 23:40

Choose a tag to compare

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

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: