Skip to content

Releases: anomalyco/opencode

v1.14.18

19 Apr 09:36

Choose a tag to compare

Core

  • Restore the native ripgrep backend so file search and file listing work reliably again.

Thank you to 1 community contributor:

v1.14.17

19 Apr 03:02

Choose a tag to compare

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 dialog.
  • Show the session ID in the sidebar on non-production channels.

Thank you to 1 community contributor:

v1.4.11

18 Apr 00:29

Choose a tag to compare

Core

  • Fixed workspace routing so requests reach the correct workspace instance.
  • Stopped share sync attempts for sessions that were never shared.

v1.4.10

17 Apr 20:13

Choose a tag to compare

Core

  • Restored workspace history on connect so existing sessions catch up before live sync resumes
  • Passed OTEL exporter settings into managed workspaces so telemetry works there too
  • Normalized provider metadata defaults so models still load when catalog data is incomplete
  • Passed EXA_API_KEY to the websearch tool to reduce rate limits (@rasdani)

TUI

  • Added a restore flow for sessions whose workspace is unavailable, with clearer workspace status indicators
  • Fixed agent cycling when no agent is selected and improved prompt key handling

Thank you to 1 community contributor:

  • @rasdani:
    • fix(opencode): pass EXA_API_KEY to websearch tool to avoid rate limits (#16362)

v1.4.9

17 Apr 16:20

Choose a tag to compare

Core

  • Added LLM Gateway as a provider, including config support and model usage reporting. (@smakosh)
  • Limited GitHub Copilot Opus 4.7 models to medium reasoning effort to avoid unsupported variants. (@OpeOginni)
  • Improved remote workspace reconnection with exponential backoff and clearer failure handling.

TUI

  • Fixed --session-id so it opens the requested session after app startup.
  • Fixed light mode detection in Ghostty.

Desktop

  • Fixed the beta desktop app so the file tree still appears when enabled in settings.

Thank you to 3 community contributors:

  • @OpeOginni:
    • fix(opencode): rescrict github copilot opus 4.7 variants to "medium" (#23097)
  • @jenperson:
    • docs: adding Mistral to docs as a provider (it is already a provider, just docs update) #23070 (#23072)
  • @smakosh:
    • feat: add LLM Gateway provider (#7847)

v1.4.8

17 Apr 13:37

Choose a tag to compare

Core

  • Fixed a crash when experimental mode was enabled.
  • Let plugin tools return metadata in execute results. (@jquense)
  • Show real filenames instead of /dev/null in revert diffs.
  • Improved workspace session handling when a workspace no longer exists.
  • Fixed Windows ctrl+z terminal suspend and input undo behavior.
  • Enabled Azure prompt caching with a default per-session cache key.

TUI

  • Preserve prompt input when views unmount and remount.
  • Keep session list dialogs ordered more consistently within each day.

Desktop

  • Fixed desktop workspace loading so ready state persists correctly.
  • Fixed desktop session syncing when loading project data from query cache.
  • Added beta desktop settings to hide title bar tools like navigation, search, terminal, status, and file tree.
  • Improved desktop session change loading in the review panel.

Thank you to 1 community contributor:

  • @jquense:
    • fix: preserve plugin tool metadata in execute result (#22827)

v1.4.7

16 Apr 21:55

Choose a tag to compare

Core

  • GitHub Copilot gpt-5-mini now uses low reasoning effort for better request compatibility. (@thakrarsagar)
  • Workspaces now receive your auth context, so provider sign-in carries across workspace sessions.
  • Cloudflare AI Gateway now drops max_tokens for OpenAI reasoning models so GPT-5 and o-series requests stop failing. (@kobicovaldev)
  • Azure models now default store=true, fixing requests that require stored responses.
  • Claude Opus 4.7 now supports xhigh adaptive reasoning. (@GrahamCampbell)
  • Claude Opus 4.7 now shows summarized thinking by default.
  • TUI plugins now load against the correct project when multiple directories are open.
  • The bash tool uses less memory on large command output.
  • Experimental workspaces now wait for sync to finish before returning writes, reducing stale reads and missed updates.
  • Session restore can now replay a session into another workspace in batches.
  • Sessions now retry provider 5xx errors even when the provider SDK does not mark them retryable.

TUI

  • Pasting files or large text no longer inserts content twice.
  • --agent on the command line is no longer overwritten by the session's saved agent. (@CarloWood)
  • Empty LSP, MCP, formatter, and session status responses no longer break TUI sync state.

Desktop

  • Desktop builds now show a Beta or Dev badge in the title bar when applicable.

Thank you to 8 community contributors:

v1.4.6

15 Apr 07:26

Choose a tag to compare

Core

  • Fixed snapshot staging for very long file lists and improved staging performance.
  • Fixed OTEL header parsing when a header value contains =.

Desktop

  • Fixed prompt submission state updates to avoid failed or inconsistent sends.
  • Improved session title input spacing while editing.

Thank you to 1 community contributor:

  • @github-actions[bot]:
    • Update VOUCHED list

v1.4.5

15 Apr 04:25

Choose a tag to compare

Core

  • Export AI SDK telemetry spans to OTLP trace backends.
  • Expose the experimental question API schema and OpenAPI spec from @opencode-ai/server.
  • Expose a reusable question handler factory for custom question API hosts.

Desktop

  • Start desktop shell commands from the home directory.
  • Avoid bootstrap error popups while global sync initializes.

v1.4.4

15 Apr 00:04

Choose a tag to compare

Core

  • Restored instance and logger context during prompt runs so prompt-time tools and logging behave correctly.
  • Kept GitHub Copilot compaction requests valid.
  • Restored the flat reply shape for question API responses.
  • Persisted MCP OAuth connections that finish immediately, so authenticated servers stay connected.
  • Prevented duplicate user messages in ACP clients.
  • Stopped emitting user_message_chunk events during session and prompt turns in ACP clients. (@RAIT-09)
  • Fixed reasoning summary injection for @ai-sdk/openai-compatible providers. (@nazarhnatyshen)
  • Added the experimental compaction.autocontinue hook to stop auto-continuing after compaction.
  • Added Alibaba provider support with cache support.
  • Snapshots now fully respect .gitignore, including previously tracked files.
  • Reading images no longer counts against quota.
  • Sessions can now update project permissions mid-run. (@remorses)
  • Enabled thinking for zhipuai-coding-plan and fixed Korean IME truncation. (@claudianus)

TUI

  • Added opencode export --sanitize to redact PII and confidential transcript data.
  • Fixed diff line number contrast in built-in themes.
  • Plugin auth login now asks for an API key when a plugin needs authorization. (@goniz)
  • Plugin auth no longer asks for an API key when the plugin has no authorize method. (@goniz)

Desktop

  • Fixed the Windows desktop backend hanging before shutdown.

SDK

  • The JavaScript SDK now throws a clear error when an older server responds with HTML instead of the API.

Extensions

  • Plugins can now register custom workspace adaptors that appear in workspace creation.

Thank you to 9 community contributors:

  • @claudianus:
    • fix: enable thinking for zhipuai-coding-plan & prevent Korean IME truncation (#22041)
  • @remorses:
    • feat: allow session permission updates (#22070)
  • @simonklee:
    • chore(github): vouch simonklee (#22127)
  • @shafdev:
    • fix(opencode): remove spurious scripts and randomField from package.json (#22160)
  • @goniz:
    • fix(cli): auth login now asks for api key in handlePluginAuth (#21641)
    • fix(cli): handlePluginAuth asks for api key only if authorize method exists (#22475)
  • @github-actions[bot]:
    • Update VOUCHED list
  • @nazarhnatyshen:
    • fix(provider): guard reasoningSummary injection for @ai-sdk/openai-compatible providers (#22352)
  • @RAIT-09:
    • fix(acp): stop emitting user_message_chunk during session/prompt turn (#21851)
  • @gigamonster256:
    • chore(nix): remove external ripgrep (#22482)