OpenCode 2 v2.2.2: image generation on by default, worktree picker shortcut#
Published by Alex Sorokoletov
Part of the OpenCode 2 Version Tracker series. | OpenCode on GitHub | OpenCode 2 docs
OpenCode 2 v2.2.2 follows v2.2.1. Agents can generate images without extra configuration whenever a connected provider supports image models (#60258). Clicking the Git branch on the new-session screen opens that project's worktree picker directly (#60263), and timeline quotes, terminal quotes, and browser annotations now share one optional-comment editor (#60164).
Image generation#
In v2.2.1 the image tool required the experimental.image_generate flag. v2.2.2 enables experimental_image_generate by default when a connected provider supports image models, so agents can call it with no added configuration; experimental.image_generate.model sets its preferred model (#60258). Each image-generation notice is now tied to the correct background job, and media is preserved when a session is forked or imported.
Desktop and quotes#
On the new-session screen, the current Git branch opens that project's "Run session in" worktree picker directly (#60263). Timeline quotes, terminal quotes, and browser annotations use one compact optional-comment editor, while source highlights stay attached to local drafts (#60164). Desktop restores classic question cards by default and adds a Settings → Experimental → New question UI toggle for the redesigned keyboard-oriented dock (#59723).
Smaller desktop changes land alongside these: a side-panel tab menu that keeps close buttons visible when tabs overflow, user-message actions moved into a compact menu, and an active todo pill that shows the current task next to concurrent work. Markdown fragment links scroll to the referenced heading, each tab keeps its timeline state when directories switch, and the inbox's Working shelf is ordered by execution start time.
New experimental surface#
| Flag | What It Does |
|---|---|
experimental_image_generate | The image tool, now on by default when a connected provider supports image models; experimental.image_generate.model sets its preferred model (#60258) |
experimental.row.newQuestionUI | Settings → Experimental toggle for the redesigned keyboard-oriented question dock; classic cards remain the default (#59723) |
SDK and attachments#
client.experimental.schedule.create accepts new if and until inputs, and schedule responses carry check results and output fields (#60137). SessionInfo.time.busy exposes the start time of a session's latest execution. Prompt file attachments can carry optional source metadata, and composer notes for extension integrations gain optional title and subtitle fields plus source-relative quote positioning (#60164).
On the TUI side, captured attachments keep their original source paths (#60222), Go and ChatGPT usage-limit errors are typed and displayed, and Go usage-limit messages include the reset time and an account page link.
When the image tool turns on now follows the provider#
Image tool availability follows provider connection state. Connecting a provider that supports image models makes experimental_image_generate available to agents without a config edit (#60258), so the capability an agent has depends on which providers are wired up rather than on a flag written ahead of time.
Generated media also becomes part of session state that travels with the session. Media survives a fork or import, and each image-generation notice is bound to the background job that produced it, so an image an agent made during a run stays with that session when it is copied or carried forward.
All trademarks and software referenced belong to their respective owners.
Previous OpenCode 2 analysis: v2.2.1 (October 29, 2026)
All 23 OpenCode 2 analyses: OpenCode 2 Version Tracker · Official OpenCode 2 changelog