Releases: anomalyco/opencode
v1.2.5
Core
- Ensure SQLite migration logs to stderr instead of stdout
Desktop
- Fixed issue viewing new files opened from the file tree (@shanebishop1)
- Only navigate prompt history at input boundaries (@nexxeln)
- Add keyboard shortcut Shift+Tab to the application (@neriousy)
- Focus window after update and relaunch (@zerone0x)
- Add GeistMono Nerd Font to available mono font options (@brandon-julio-t)
Thank you to 7 community contributors:
- @brandon-julio-t:
- feat: Add GeistMono Nerd Font to available mono font options (#13720)
- @zerone0x:
- fix(desktop): focus window after update/relaunch (#13701)
- @dector:
- docs: add Ukrainian README translation (#13697)
- @neriousy:
- fix(app): keybind [shift+tab] (#13695)
- @nexxeln:
- fix(app): only navigate prompt history at input boundaries (#13690)
- @shanebishop1:
- fix(desktop): issue viewing new files opened from the file tree (#13689)
- @alexyaroshuk:
- feat(app): localize "free usage exceeded" error & "Add credits" clickable link (#13652)
v1.2.4
Core
- Add db command for database inspection and querying
- Derive all IDs from file paths during JSON migration
Desktop
- Clear notifications action
- Fixed stack overflow issue in file tree component
v1.2.3
Core
- Ensure Anthropic models on OpenRouter also have variant support
- Add WAL checkpoint on database open
- Ensure Vercel variants pass Amazon models under Bedrock key
v1.2.2
Core
- Add comprehensive test coverage for Session.list() filters
- Filter sessions at database level to improve session list loading performance
- Fix Vercel gateway variants
- Bump Vertex AI packages
v1.2.1
v1.2.0 and beyond includes a data migration that will execute on first run. It will migrate all flat files in data directory to a single sqlite database. Depending on how much data you have and speed of computer this can take some time.
if anything goes wrong you can retrigger the migration by deleting ~/.local/share/opencode/opencode.db* files (%APPDATA% on windows)
If you have any issues with the migration the original data is not yet deleted and downgrading should work. But please open an issue so we can investigate and include sqlite in the issue title.
SDK Users
We now have a PartDelta event which sends only incremental changes to parts. This avoids sending the full content of text parts over and over when it is updated
Core
- Show all project sessions from any working directory
- Tweak websearch tool description date info to avoid cache busts
v1.2.0
This release includes a data migration that will execute on first run. It will migrate all flat files in data directory to a single sqlite database. Depending on how much data you have and speed of computer this can take some time.
if anything goes wrong you can retrigger the migration by deleting ~/.local/share/opencode/opencode.db* files (%APPDATA% on windows)
If you have any issues with the migration the original data is not yet deleted and downgrading should work. But please open an issue so we can investigate and include sqlite in the issue title.
SDK Users
We now have a PartDelta event which sends only incremental changes to parts. This avoids sending the full content of text parts over and over when it is updated
PartDelta: BusEvent.define(
"message.part.delta",
z.object({
sessionID: z.string(),
messageID: z.string(),
partID: z.string(),
field: z.string(),
delta: z.string(),
}),
)Core
- Revert to SQLite database implementation
- Move timeout configuration from programmatic API to CLI flag (@yanhao98)
- Update AI SDK packages and use adaptive reasoning for Claude Opus 4.6 on Vertex, Bedrock, and Anthropic
TUI
- Prevent crash when tool inputs are malformed during opencode run (@0xK3vin)
- Add --dir option to run command (@BlankParticle)
Desktop
- Fix Rust compilation issues in desktop application (@Brendonovich)
- Remove OPENCODE_SQLITE environment variable from desktop (@Brendonovich)
- Terminal resize handling fixed in app
- Use prompt_async endpoint to avoid timeout over VPN/tunnel (@eytans)
- Remount SDK and sync tree when server URL changes (@ysm-dev)
- Sync docs locale cookie on alias redirects (@Seungjun0906)
- Performance optimization for showing large diffs and files in desktop (@neriousy)
Thank you to 12 community contributors:
- @BlankParticle:
- feat(cli): add --dir option to run command (#12443)
- @neriousy:
- fix(desktop): performance optimization for showing large diff & files (#13460)
- @Seungjun0906:
- @ysm-dev:
- fix(app): remount SDK/sync tree when server URL changes (#13437)
- @Annopick:
- docs: Fix zh-cn translation mistake in tools.mdx (#13407)
- @eytans:
- fix(web): use prompt_async endpoint to avoid timeout over VPN/tunnel (#12749)
- @G36maid:
- docs: add pacman installation option for Arch Linux alongside AUR (#13293)
- @yanhao98:
- fix(test): move timeout config to CLI flag (#13494)
- @niushuai1991:
- fix: standardize zh-CN docs character set and terminology (#13500)
- @kitlangton:
- fix(ui): support cmd-click links in inline code (#12552)
- @0xK3vin:
- fix: prevent opencode run crash on malformed tool inputs (#13051)
- @Brendonovich:
- desktop: remote OPENCODE_SQLITE env (#13545)
- desktop: fix rust
v1.1.65
Core
- Revert token substitution in OPENCODE_CONFIG_CONTENT
- Ensure @-mentioning a directory uses the read tool instead of deprecated list tool
- Add tool.definition hook for plugins to modify tool description and parameters (@spoons-and-mirrors)
- Remove worktree delete functionality
- Resolve ACP hanging indefinitely in thinking state on Windows (@ASidorenkoCode)
Desktop
- Reconnect event stream on disconnect
- Toggle all provider models in settings
- Clean up desktop loading page (@Brendonovich)
- Notification should navigate to session
- Fix prompt input behavior quirks
- Failed to create store in app
- Only show loading window if SQLite migration is necessary (@Brendonovich)
Thank you to 3 community contributors:
- @ASidorenkoCode:
- fix: resolve ACP hanging indefinitely in thinking state on Windows (#13222)
- @Brendonovich:
- desktop: only show loading window if sqlite migration is necessary
- cleanup desktop loading page
- @spoons-and-mirrors:
- feat(hook): add tool.definition hook for plugins to modify tool description and parameters (#4956)
v1.1.64
Core
- Token substitution in OPENCODE_CONFIG_CONTENT environment variable (@ariane-emory)
- Look for recent model in fallback in CLI (@smitchaudhary)
- Baseline CPU detection fixed (@Hona)
- Windows selection behavior and manual Ctrl+C handling (@Hona)
- Terminal PTY isolation for app
TUI
- Do not open console on error
Desktop
- Option to turn off sound effects
- Normalize OAuth error messages
- Suggestion active state broken
- Fixed remote HTTP server connections in the app
Thank you to 4 community contributors:
- @amankalra172:
- docs: update STACKIT provider documentation with typo fix (#13357)
- @Hona:
- @smitchaudhary:
- fix: look for recent model in fallback in cli (#12582)
- @ariane-emory:
- fix: token substitution in OPENCODE_CONFIG_CONTENT (#13384)
v1.1.63
Core
- Improve Codex model list
v1.1.62
Core
- Return image attachments from webfetch tool
- Expose tool arguments in shell hook for plugin visibility
Desktop
- Project icons no longer unload unexpectedly
- Preserve undo history for plain-text paste in app (@gitRasheed)
- Refactor app for better SolidJS hygiene
- More defensive session context metrics handling in app
Thank you to 2 community contributors:
- @dtfiedler:
- fix(docs): correct
formatattribute inStructuredOutputs(#13340)
- fix(docs): correct
- @gitRasheed:
- fix(app): preserve undo history for plain-text paste (#13351)