OpenCode 2.1.4 is out, per the project’s changelog dated October 23.
Highlights
- MCP input forms now appear. When an MCP server asks for input during a tool call, the form shows up instead of the call waiting until it times out. Desktop and web can show them too, including text, number, choice, multiselect, boolean and URL requests.
- Background compaction (experimental). Set
experimental.background_compactiontotrueto prepare a summary in the background as a session nears its compaction threshold, so automatic compaction doesn’t wait. The changelog warns that summaries that are never used still cost tokens.
Improvements
- When a compaction request exceeds the provider limit, older tool output and exchanges are shortened first so more useful history survives.
- ChatGPT sign-in context caps are now a documented built-in plugin that you can turn off.
- New
opencode debug heap-dumpcommand captures a running server’s heap without restarting it. Desktop gets a matching “Capture heap snapshots” command palette entry. - An experimental TUI tools option lets agents open and type into the session terminal without taking keyboard focus.
- The SDK adds
connectClientMcp()for hosting MCP tools in a client.
Fixes
- Sessions without their own model now use the selected agent’s model, and Codex models that ChatGPT accounts reject are hidden.
- MCP OAuth login keeps waiting after unrelated requests reach its callback, remote MCP requests stay open past Bun’s fetch idle timeout, and MCP servers no longer get duplicated during startup.
- Unicode direction marks (common in Hebrew and Arabic) no longer shift a TUI row by one column.
My take
The MCP forms fix is the real one. A tool call silently hanging until it times out is a miserable experience. Leave background compaction off unless you’re okay paying for summaries you might not use.
Have a blessed day! And Happy Hacking!