Changelog
New updates and improvements to OpenCode
v1.2.9 Add missing id, sessionID, and messageID to MCP tool attachments
Improvements
- CoreRemove unnecessary deep clones from session loop and LLM stream
- CoreRemove User-Agent header assertion from LLM test to fix failing test
- DesktopRestore settings header mask
v1.2.8 Support adaptive thinking for Claude Sonnet 4.6
Improvements
- DesktopBlack screen on launch with sidecar server fixed
- DesktopClear todos on abort
v1.2.7 Fixed terminal rendering and interaction issues in the application
Improvements 111
- CoreNormalize file status paths relative to instance directory@shantur
- CoreMigrate from Bun.Glob to npm glob package
- CoreBump AI SDK packages for Google, Google Vertex, Anthropic, Bedrock, and provider utils
- CoreAdd support for medium reasoning with Gemini 3.1
- CoreRemove use of Bun.file
- CoreText files misclassified as binary
- CoreFetch default server at top level in desktop application
- CoreTerminal rework in the app
- CoreBake in the AWS and Google authentication packages
- CoreToken substitution in OPENCODE_CONFIG_CONTENT now works correctly@ariane-emory
- CoreRevert migration from Bun.file() to Filesystem module
- CoreMigrate project.ts from Bun.file() to Filesystem/stat modules
- CoreMigrate read tool from Bun.file() to Filesystem module
- CoreMigrate write tool from Bun.file() to Filesystem module
- CoreMigrate Edit tool from Bun.file() to Filesystem module
- CoreMigrate remaining tool files from Bun.file() to Filesystem/stat modules
- CoreMigrate storage.ts from Bun.file()/Bun.write() to Filesystem module
- CoreMigrate src/storage/json-migration.ts from Bun.file() to Filesystem module
- CoreMigrate MCP auth module from Bun file APIs to Filesystem module
- CoreMigrate storage database from Bun.file() to statSync for file existence checks
- CoreMigrate session prompt module from Bun.file() to Filesystem/stat modules
- CoreFix crash in
opencode runand show errored tool calls in output - CoreMigrate skill discovery to use Filesystem module instead of Bun file APIs
- CoreMigrate session instruction handling from Bun.file() to Filesystem module
- CoreMigrate provider.ts from Bun.file() to Filesystem module
- CoreMigrate shell.ts from Bun.file() to statSync for improved file system operations
- CoreMigrate log utility from Bun.file() to Node.js fs module for better compatibility
- CoreMigrate models.ts from Bun.file()/Bun.write() to Filesystem module
- CoreUse HashiCorp releases API for installing terraform-ls@edubxb
- CoreMigrate LSP server from Bun.file()/Bun.write() to Filesystem module
- CoreMigrate session command from Bun.file() to statSync for improved file system operations
- CoreMigrate agent.ts from Bun.file() to Filesystem module
- CoreMigrate auth module from Bun.file()/Bun.write() to Filesystem module
- CorePass sessionID and callID to shell.env hook input@tesdal
- CoreFix terminal cross-talk issue in the application
- CoreUpdate SST version
- CoreMigrate src/global/index.ts from Bun.file() to Filesystem module
- CoreEmit PROMPT_TOO_LARGE error when GitHub context overflows@elithrar
- CoreMigrate src/bun/index.ts from Bun.file()/Bun.write() to Filesystem module
- CoreMigrate config/markdown.ts from Bun.file() to Filesystem module
- CoreMigrate file/index.ts from Bun.file() to Filesystem module
- CoreMigrate format/formatter.ts from Bun.file() to Filesystem module
- CoreAllow readJson to be called without explicit type parameter
- CoreMigrate file/ripgrep.ts from Bun APIs to Filesystem module
- CoreMigrate index.ts from Bun.file() to Filesystem module
- CoreAdd Julia language server support@zarly
- CoreBump GitLab AI provider to 3.6.0 to add Sonnet 4.6 support@vglafirov
- CoreAdd centralized filesystem module for Bun.file migration
- CoreFix Clojure syntax highlighting@finalfantasia
- CoreEnsure explore subagent prompts for external directory permission instead of auto-denying
- CoreDon't autoload kilo
- CoreAdd Kilo as a native provider@Nomadcxx
- CoreSimplify redundant ternary in updateMessage@yikayiyo
- CoreEnsure Read tool uses fs/promises for all file system operations
- CoreMake read tool more memory efficient
- CoreSurface plugin auth providers in the login picker@anoldguy
- CoreInvalidate OAuth credentials when OAuth provider indicates they are invalid@GreenStage
- CoreDon't fetch models.dev on completion@gigamonster256
- CoreRecover state after SSE reconnect and harden SSE streams
- CoreKeep message part order stable when files resolve asynchronously
- CoreDrop IDs from attachments in tools and assign them in prompt.ts instead
- DesktopUpdate Japanese translations for WSL integration@taroj1205
- DesktopMade localhost URLs work correctly in isLocal function
- DesktopNavigate to last session when navigating to a project
- DesktopFix typecheck errors in app
- DesktopDeduplicate allServers list in app
- DesktopAdjust session turn horizontal padding
- DesktopTighten prompt dock padding in app
- DesktopFixed sidecar spawning a window on Windows
- DesktopDelay prompt mode toggle tooltip
- DesktopShorten prompt mode toggle tooltips in the app
- DesktopReduce review panel padding
- DesktopTweak search button style in UI
- DesktopExpanded color state on titlebar buttons
- DesktopTweak hover and active styles for title bar buttons
- DesktopShare button now has a border
- DesktopAdjust file tree background color
- DesktopHandle sidecar key in projectsKey for desktop projects
- DesktopFixed desktop app incorrectly identifying local servers
- DesktopRefactor server management backend
- DesktopUse group-hover for file tree icon color swap at all nesting levels
- DesktopSimplify mode toggle icon styling in TUI
- DesktopClean up desktop implementation
- DesktopTemporarily disable WSL support in desktop application
- DesktopUse radio group in prompt input
- DesktopSimplify prompt mode toggle icon colors via CSS and tighten message timeline padding in TUI
- DesktopFix prompt input quirks in app
- DesktopTerminal disconnect and resync functionality fixed
- DesktopReplicate tauri-plugin-shell logic in desktop application
- DesktopImprove modified file visibility and button spacing in TUI
- DesktopShow monochrome file icons by default in tree view, revealing colors on hover to reduce visual clutter
- DesktopFix share button text styling to use consistent 12px regular font weight
- DesktopAdd warning icon to permission requests for better visibility
- DesktopExtract dock prompt shell component
- DesktopUI no longer flashes when switching tabs@neriousy
- DesktopAvoid sidecar health-check timeout on shell startup in desktop app@ysm-dev
- DesktopIncrease prompt mode toggle height for better clickability
- DesktopAdd more end-to-end tests for desktop application@neriousy
- DesktopUpdate magnifying-glass icon in UI
- DesktopTighten titlebar action padding
- DesktopRefine titlebar search and open padding
- DesktopCenter titlebar search and soften keybind styling
- DesktopAlign titlebar search text size
- DesktopMatch titlebar active background to hover
- DesktopUse weak borders in titlebar actions
- DesktopReduce titlebar right padding
- DesktopKeep file tree toggle visible
- DesktopAdjust icon button spacing in UI
- DesktopSession timeline and turn handling reworked in app
- DesktopKeep Escape handling local to prompt input on macOS desktop@itskritix
- DesktopHide server CLI window on Windows
v1.2.6 Add dfmt formatter support for D language files
Improvements 8
- CoreBump GitLab provider and auth plugin for mid-session token refresh@vglafirov
- CoreRemove unnecessary per-message title LLM calls@rmk40
- CorePrioritize user-defined variables over environment variables in Google Vertex AI configuration
- CoreAdd OpenAI-compatible endpoint support for Google Vertex provider@leehack
- CoreAdd Venice support for temperature, topP, topK, and smallOption parameters@dpuyosa
- CoreAdd cljfmt formatter support for Clojure files@finalfantasia
- DesktopNormalize Linux Wayland/X11 backend and decoration policy@bnema
- DesktopUse process-wrap library instead of manual job object handling in desktop@Brendonovich
v1.2.5 Ensure SQLite migration logs to stderr instead of stdout
Improvements
- DesktopFixed issue viewing new files opened from the file tree@shanebishop1
- DesktopOnly navigate prompt history at input boundaries@nexxeln
- DesktopAdd keyboard shortcut Shift+Tab to the application@neriousy
- DesktopFocus window after update and relaunch@zerone0x
- DesktopAdd GeistMono Nerd Font to available mono font options@brandon-julio-t
v1.2.4 Add db command for database inspection and querying
Improvements
- CoreDerive all IDs from file paths during JSON migration
- DesktopClear notifications action
- DesktopFixed stack overflow issue in file tree component
v1.2.3 Ensure Anthropic models on OpenRouter also have variant support
Improvements
- CoreAdd WAL checkpoint on database open
- CoreEnsure Vercel variants pass Amazon models under Bedrock key
v1.2.2 Add comprehensive test coverage for Session.list() filters
Improvements
- CoreFilter sessions at database level to improve session list loading performance
- CoreFix Vercel gateway variants
- CoreBump Vertex AI packages
v1.2.1 Show all project sessions from any working directory
Improvements
- CoreTweak websearch tool description date info to avoid cache busts
v1.2.0 Revert to SQLite database implementation
Improvements 9
- CoreMove timeout configuration from programmatic API to CLI flag@yanhao98
- CoreUpdate AI SDK packages and use adaptive reasoning for Claude Opus 4.6 on Vertex, Bedrock, and Anthropic
- DesktopFix Rust compilation issues in desktop application@Brendonovich
- DesktopRemove OPENCODE_SQLITE environment variable from desktop@Brendonovich
- DesktopTerminal resize handling fixed in app
- DesktopUse prompt_async endpoint to avoid timeout over VPN/tunnel@eytans
- DesktopRemount SDK and sync tree when server URL changes@ysm-dev
- DesktopSync docs locale cookie on alias redirects@Seungjun0906
- DesktopPerformance optimization for showing large diffs and files in desktop@neriousy