A second agent: opencode
Next to the Claude Code chat lives an exploratory prototype: opencode is started as a server (opencode serve), and the api talks to it over HTTP.
It has a screen of its own in the web UI (/opencode) and on Android (the bot icon in the home screen header): a list of chats, a new chat with a directory and a model to pick, a feed with text, thinking and tool calls, and the model's questions and permission requests in the same cards as Claude's. The model can be anything, a local one included.
It is built differently
And that is more interesting than the list of screens:
| Claude Code | opencode | |
|---|---|---|
| Process | one per session | one server for all directories |
| Transcript | a JSONL file | the server's own SQLite |
| Feed | read from the file | read over HTTP |
| Survives an api restart | the session doesn't, the file does | the reply survives |
That last row is the main practical gain: an opencode reply isn't cut off just because the api restarted.
It is a prototype
Not a replacement for the Claude chat. What it doesn't have yet: notifications, the agents screen, images and the plan.
How to start the server and what to configure is in docs/opencode.md in the repository.