OpenCode v2.2.3
OpenCode v2.2.3 was released on .
Summary
OpenCode 2.2.3 lets you use your Claude Code login and models right inside OpenCode, and long Desktop sessions now run smoother. Breaking changes hit @opencode/ai imports, so check before you upgrade.
Release Context
- This was the 206th OpenCode release of 2026 tracked by Havoptic.
- It shipped 1 day after OpenCode v2.2.2 (October 29, 2026).
Shipped around the same time
Within 3 days of this release, other AI coding tools also shipped:
- Claude Code v2.1.316 (October 31, 2026)
- Antigravity CLI v1.4.12 (October 30, 2026)
- Antigravity CLI v1.4.11 (October 30, 2026)
- Claude Code v2.1.314 (October 30, 2026)
- Replit Agent 2026.10.30 (October 30, 2026)
Compare OpenCode
- OpenCode vs Claude Code
- OpenCode vs OpenAI Codex CLI
- OpenCode vs Cursor
- OpenCode vs Gemini CLI
- OpenCode vs Kiro CLI
- OpenCode vs GitHub Copilot CLI
- OpenCode vs Devin Desktop
- OpenCode vs Antigravity CLI
- OpenCode vs Grok Build
- OpenCode vs Cline
- OpenCode vs Zed
- OpenCode vs Factory Droid
- OpenCode vs Devin
- OpenCode vs Lovable
- OpenCode vs Amp
- OpenCode vs GitHub Copilot in VS Code
- OpenCode vs Replit Agent
- OpenCode vs Bolt
- OpenCode vs v0
Release Notes
Highlights - Use Claude Code in OpenCode: Install Claude Code, run claude auth login, then select Claude Agent in /connect to use your Claude Code login and models. (58782) - Faster Long Sessions in Desktop: Streaming replies and long conversations now do much less rendering work. (60489, 60521, 60513, 60481) - Desktop Stability Fixes: Fixes side-panel tabs, repeated "Session not found" toasts, and Open file over HTTP. (60430, 60436, 60459, 60462) Breaking changes @opencode/ai experimental media and one tool() These changes affect code that imports @opencode/ai directly. They don't change the CLI, Desktop, or the HTTP API. - Speech, transcription, video, and their clients and types moved from @opencode/ai/effect to @opencode/ai/experimental. On the Promise client, use ai.experimental.speech, ai.experimental.transcription, and ai.experimental.video. TestSpeech, TestTranscription, and TestVideo moved to @opencode/ai/experimental/testing. (60484) - Both clients build tools with tool(...), which replaces AI.tool and Tool.make, and testing.tool is now testing.toolCall. (60407) TUI plugins require OpenTUI 0.8 @opencode/plugin now requires @opentui/core and @opentui/solid 0.8.0 or later. In OpenTUI 0.8, a ScrollBox's wrapper, viewport, content, and scrollbars are facade objects instead of renderables, and a custom RenderContext must implement clock and onAnimationTick. See the OpenTUI 0.8.0 release notes. (60385) Managed policy: integration.use covers integrations only integration.use now controls which integration accounts can be used, and the new mcp.use, skill.use, and plugin.use actions control MCP servers, skills, and plugins. Rules with the old mcp:, skill:, and plugin: resource prefixes are converted automatically, but a bare integration.use rule no longer applies to MCP servers, skills, or plugins. (60315) Core Improvements - Added the built-in Claude Agent provider. Install Claude Code, run claude auth login, and select Claude Agent in /connect; OPENCODECLAUDEPATH can override the Claude executable. Thanks @Tarquinen. (58782) - Added Code Mode JavaScript checks to experimental schedules, including statically authorized tool calls, persistent state, and custom wake messages. (60140) - Added separate managed-policy actions for connecting to integrations and using integrations, MCP servers, skills, and plugins. (60315) Bug fixes - Preserved plugin-provided model variants and delayed dynamic provider fallback until external SDK hooks have run. (60097, 60380) - Preserved permission reasons and feedback in MCP failures, and made Code Mode failures match direct tool-call failures. (60102, 60109) - Fixed invalid Code Mode schedule checks so creation fails immediately and existing invalid checks pause without repeated execution. (60349) - Removed a session’s persistent terminals when the session is deleted. (60322) - Kept nested tool progress from replacing the parent execute call rows. (60480) TUI Improvements - Added lazy loading for stored image references when experimental.mediablob is enabled. Images are downloaded only for previews, while undo, revert, fork, and prompt recall restore referenced attachments safely. (60116) - Added a distinct marker for the selected composer suggestion in the new designs. (60393) Bug fixes - Fixed PHP syntax highlighting for code blocks without an opening <?php tag. (60359) - Preserved in file-search paths unless it introduces a valid line range. (60336) - Kept the configured default cursor style after config reloads. (60302) - Matched the search cursor to the highlighted row when a selection dialog has no query. (60310) Desktop Improvements - Added a Desktop spellcheck toggle under Settings → General and system-language dictionary selection on Windows and Linux. (59129) - Added PageUp and PageDown timeline paging from the composer without moving the draft cursor or focus. (59426) - Added independently configurable question notifications and sounds under Settings → Notifications → Questions. Thanks @YuriNek0. ([60358](https://g...
Other Recent OpenCode Releases
- v2.2.5 (October 30, 2026)
- v2.2.1 (October 29, 2026)
- v1.19.5 (October 28, 2026)
- v2.2.0 (October 27, 2026)
- v1.19.4 (October 22, 2026)
Upgrading from v2.2.3? See all 2 releases since.
All OpenCode releases · All AI coding tool releases on Havoptic