OpenCode will be supported starting from next update! A few notes on the implementation #130
jsgrrchg
announced in
Announcements
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
OpenCode support will be merged soon and is expected to be available in the next NeverWrite update.
A few notes about the implementation and its current scope:
What will work
OpenCode is being added to NeverWrite as a native ACP runtime. This means users will be able to configure and use
opencode acpdirectly from the app, alongside the existing runtimes.The integration includes:
One important detail: connecting a new ACP runtime to NeverWrite’s review layer is not plug-and-play. Each provider implements diff streaming differently, so every runtime needs provider-specific handling.
Important note about subagents
OpenCode itself supports subagents, but exposing them in NeverWrite the same way Codex subagents work is a separate problem.
Codex currently works because the bundled Codex ACP bridge emits extra metadata and events for child sessions. NeverWrite uses those events to create real child tabs, link them to the parent conversation, and stream subagent activity into separate sessions.
This is a capability unique to NeverWrite, and it was implemented specifically to prevent silent writes.
OpenCode has real child sessions internally, but its current ACP bridge does not appear to expose those child sessions as independent ACP sessions in the same way. Because of that, NeverWrite can likely support a limited MVP later, where OpenCode subagent results are detected after a
taskcompletes and then shown as child sessions.However, full live support — with streaming child sessions like Codex — would likely require changes upstream in OpenCode’s ACP bridge.
Relevant OpenCode repo:
https://github.com/anomalyco/opencode
Likely relevant files:
packages/opencode/src/acp/agent.tspackages/opencode/src/acp/session.tspackages/opencode/src/tool/task.tsCurrent plan
For this release, the goal is to merge stable OpenCode ACP support first.
If you rely on NeverWrite’s review layer, please do not use subagents with OpenCode yet.
OpenCode subagent support will be tracked separately. I plan to submit a PR to the OpenCode repo for this, and I’ve already tried contacting the author, but there is no guarantee of a response or upstream acceptance.
Another possible solution would be to bundle a custom OpenCode runtime with NeverWrite. However, I’d prefer to avoid that for now, since NeverWrite’s binary size is already large enough.
The safest path is:
So, in short: OpenCode support is coming soon. OpenCode subagents are feasible, but full native subagent support is not part of this first merge.
Beta Was this translation helpful? Give feedback.
All reactions