Repository navigation
Description
desktop: SSH mismatch reports V1 for a V2 server; upgrade action is hard to discover
Description
OpenCode Desktop 2.2.1 reported that an SSH-managed remote server was running V1 and needed upgrading to V2, although the installed binary and running service were both 2.2.0.
The remote /api/info response confirmed "version":"2.2.0", with a PID matching the running opencode serve --service process. Restarting the desktop app did not resolve the error.
Response from /api/info (formatted; hostname and PID anonymized):
{
"version": "2.2.0",
"pid": 12345,
"hostname": "remote-host",
"urls": [
"http://127.0.0.1:49374"
],
"paths": {
"tmp": "/tmp/opencode"
},
"capabilities": {
"persistentPty": true
}
}The running process also used the desktop-managed 2.2.0 binary (PID and home-directory username anonymized; the PID corresponds to the API response above):
$ ps -ww -u "$(id -un)" -o pid=,args= | grep '[o]pencode'
12345 /home/remote-user/.opencode/desktop-ssh/2.2.0/opencode serve --serviceThe connection worked after opening Settings → Servers → ⋯ → Connect and selecting Update and reconnect.
Expected behavior
- Show the actual remote version and explain the required desktop/server version match.
- If the version cannot be determined, show unknown, not V1.
- Offer Update and reconnect directly from the home-page server list or connection error, rather than requiring users to discover the same server under Settings.
Implementation observations
Inspection of the installed 2.2.1 desktop bundle found:
- SSH bootstrap checks exact version equality.
- The session error panel uses
health?.version ?? '1', which can present missing health information as a V1 diagnosis.
This appears relevant to the misleading message, but the complete trigger has not been established.
Plugins
Not independently verified; no plugin-related trigger identified.
OpenCode version
- Desktop: 2.2.1
- SSH-managed remote service: 2.2.0 before the successful update.
Steps to reproduce
- Have an SSH-managed remote service running 2.2.0.
- Use Desktop 2.2.1 and open the remote server/session from the home page.
- Observe an incompatibility error indicating V1 / requiring V2, despite the remote API reporting 2.2.0.
- Restart Desktop; the error persists.
- Open Settings → Servers → ⋯ → Connect → Update and reconnect.
- The update completes and the connection succeeds.
Operating System
- Client: macOS (Apple silicon).
- Remote: Linux; distribution/version not collected.
Terminal
Not applicable: desktop SSH connection.
Activity
opencodejr commentedon Oct 29, 2026
Thanks for the detailed report and for checking
/api/infoand the running process.I think this is a duplicate of #53375. That issue reports the same problem with Desktop 2.0.23 and a 2.0.22 remote: the SSH bootstrap requires the desktop and remote versions to match exactly, the remote version is dropped, and the UI falls back to
health?.version ?? "1", so a patch-level V2 mismatch shows up as "running OpenCode 1". It also asks for the "Server update required" / "Update and reconnect" option to be shown for V2 mismatches, which matches your request to offer it outside Settings.Possible duplicates and related issues, ordered by likelihood:
opencodereplaces the Desktop-deployed service and causes a reconnect loop)For anyone else who hits this: Settings → Servers → ⋯ → Connect → Update and reconnect works, as does running
opencode upgradeand thenopencode service restarton the remote.The bot will close this issue as a duplicate in 1 day unless you reply explaining how your problem is different.
opencodejr commentedon Oct 30, 2026
We haven't heard back since the duplicate notice, so I'm closing this as a duplicate of #53375. That issue covers the same problem: an SSH server running a slightly different V2 version is reported as "running OpenCode 1" instead of showing its real version and offering Update and reconnect. Please follow #53375 for updates.
Until it's fixed, Settings → Servers → ⋯ → Connect → Update and reconnect works, as does running
opencode upgradeand thenopencode service restarton the remote.If your case turns out to be different from #53375, reply here and we can reopen it.