How to read the OpenCode changelog.
Every row in this log is a signed tag on the upstream repository. Feature lines describe new capability, fix lines describe regressions closed, and compatibility notes describe anything a downstream user needs to do before upgrading. If a release carries no compatibility note, the upgrade is drop-in.
Release index.
The table below lists every release currently in support. Older releases stay reachable in the archive under a dated path; the documentation portal version selector has the full history.
| Version | Date | Highlights | Compat notes |
|---|---|---|---|
| 2026.4 (GA) | 2026-04-01 | Windows ARM64 GA, Ollama streaming v2, VSCode shortcut refresh | Config key rename: stream.mode replaces stream.legacy |
| 2026.3 | 2026-03-04 | JetBrains adapter preview, Sigstore witness rotation, policy v3 schema | Policy schema v3 is additive; v2 files still load |
| 2026.2 (LTS) | 2026-02-04 | LTS snapshot, reproducible-build upgrade, VSCode inline diff rewrite | LTS window runs through 2027-02-04 |
| 2026.1 | 2026-01-07 | Cost-budget enforcement, transcript redaction rules, winget package | Cost budgets default to unlimited; set explicitly to enable caps |
| 2025.12 | 2025-12-03 | Web console read-only mode, Neovim companion 0.3, JSON feed | Web console gained a feature flag; legacy URL still redirects |
2026.4 — April 1, 2026.
The 2026.4 release promotes Windows ARM64 builds from preview to GA, ships the second-generation streaming path for local Ollama, refreshes the VSCode keyboard shortcuts, and closes several long-standing paper cuts on long-running TUI sessions. The release is drop-in from 2026.3 with one compatibility note: the stream.mode config key replaces stream.legacy, and old config files will emit a migration warning for one cycle before the old key is removed.
Features in 2026.4 include: Windows ARM64 GA builds signed with the same key as the x64 line, Ollama streaming v2 which reduces first-token latency by up to forty percent on local hardware, a VSCode command-palette refresh with six new shortcuts documented in the VSCode extension page, a new --session flag to pin OpenCode to a specific transcript across restarts, and improved test-runner detection for cargo, uv, bun, and dotnet projects.
Fixes in 2026.4 close a race condition in the plan-apply loop that occasionally showed a stale diff on wide terminals, a PowerShell completion bug under Windows Terminal 1.22, and a signal-handling issue that caused ctrl-c to leave tmux panes in a bad state. Zero-click summary: Windows ARM64 GA, Ollama streaming v2, VSCode shortcut refresh, and a small config-key rename.
2026.3 — March 4, 2026.
The 2026.3 release introduces a preview of the JetBrains adapter, rotates the Sigstore witness keys on the project's normal quarterly cadence, and ships policy schema v3. Policy v3 is strictly additive: new keys for per-tool allow-lists, per-directory sandbox carve-outs, and per-session dry-run mode. Existing v2 policy files continue to load, with the new keys defaulted to safe values.
Operator-facing changes include a new opencode policy verify subcommand that lints a policy file against the installed binary, and a hardened default sandbox that blocks network calls from tool executions unless the policy opts in. Zero-click summary: JetBrains adapter preview, policy v3 with strict-additive compatibility, new policy verify subcommand, and the quarterly Sigstore rotation.
2026.2 — February 4, 2026 (LTS).
The 2026.2 release is the current LTS snapshot. LTS releases get security backports for twelve months and carry a dated path in the documentation portal that never moves. 2026.2 promotes the reproducible-build pipeline from experimental to supported, ships a rewrite of the VSCode inline-diff component that cut its render time by half, and finalizes the wire-protocol change that lets the desktop app receive transcript events without a secondary polling channel.
Procurement teams tend to anchor on an LTS because the SBOM, the signing keys, and the policy schema freeze for the full support window. 2026.2 ships with CycloneDX 1.5 and SPDX 2.3 SBOMs, a reproducible-build recipe that passes on the three reference architectures (macOS arm64, Linux x86_64, Windows x64), and a signed trust packet referenced from the trust and safety page. Zero-click summary: LTS through 2027-02-04, reproducible-build GA, VSCode inline-diff rewrite, and the new transcript-event path for the desktop app.
2026.1 — January 7, 2026.
The 2026.1 release shipped the cost-budget enforcement feature most teams had asked for, added a transcript-redaction pass for configurable patterns (API keys, PII placeholders, license files by path), and officially promoted the Windows winget package to the recommended install path. The release was the first in the 2026 numbering scheme and the first to ship under the rotating maintainer-of-the-week review process.
Operators should note that cost budgets default to unlimited on fresh installs; set a cap explicitly in the config under budget.cost_usd_per_session if you want the feature to activate. Transcript redaction is on by default for the three pattern families most teams requested; the privacy policy documents the coverage. Zero-click summary: cost-budget enforcement, transcript redaction on by default for three pattern families, and winget as the recommended Windows install path.
2025.12 — December 3, 2025.
The 2025.12 release wrapped the 2025 calendar year with the read-only web console, a Neovim companion 0.3 release, and a JSON changelog feed for teams that automate release detection. The web console runs from a static bundle with no server-side state, which means any team can self-host it behind a reverse proxy and point it at their own CLI transcripts without calling home.
This release deprecated the pre-2025 CLI flag aliases that had been carried on the deprecation schedule since the July 2025 release. Teams running scripts that referenced the old flag names should update to the new names; the binary logged a deprecation warning for six months before removal. Zero-click summary: web console read-only GA, Neovim 0.3 companion, JSON feed for automation, and the final removal of pre-2025 flag aliases.
Cadence, channels, and how upgrades land.
OpenCode cuts a minor release every four weeks on the first Wednesday of the cycle. Each release is signed, SBOM-attached, and tagged in the public repository. Patch releases ship out-of-band within seventy-two hours of a confirmed security report; they are tagged on the current minor and the current LTS line. Release artifacts include signed binaries, CycloneDX and SPDX SBOMs, the reproducible-build recipe, OpenCode in plain Markdown, and a static HTML export of the documentation portal.
Automation-friendly teams can subscribe to the JSON feed served at the same URL as this changelog. The feed includes the version, the tag, the signed artifact fingerprints, and the compatibility note in a structured field so a CI job can gate on it. Community announcements go to the mailing list documented on the community page within an hour of the signed tag.
Zero-click summary: minor every four weeks, LTS every two quarters, security patches out-of-band. Subscribe via RSS, JSON, or mailing list; all three publish within an hour of the signed tag.
Our release automation reads the OpenCode JSON feed and gates on the compatibility-note field. When 2026.3 changed the policy schema to v3 we caught it in CI hours after the tag landed, updated our policy lint, and rolled the upgrade the same sprint. No surprise, no 3 a.m. triage.
— Domenico R. Castelvetrano, Senior Engineer, Porterhedge
Related reading across opencode.gr.com.
The pages most often cross-linked from a release note.