You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
desktop: SSH remote reports "running OpenCode 1" for a patch-version mismatch #61007
The desktop app's SSH remote connection refuses to connect when the remote service runs a different patch version of OpenCode 2, and reports it as "running OpenCode 1". The displayed 1 is a fallback value, not the real server version.
Environment
opencode version: Desktop 2.2.5; remote service 2.2.0
OS: macOS (desktop), Linux (remote)
Terminal: Not applicable (desktop app)
Shell: zsh (remote)
Install/channel: latest
Active plugins: None
Reproduction
On a remote Linux host, run an OpenCode 2.2.0 background service (service.json reports "version":"2.2.0").
In OpenCode Desktop 2.2.5, add an SSH remote connection to that host and try to connect.
The connection is marked incompatible and shows: This server is running OpenCode 1, which isn't compatible with this app. Upgrade it to OpenCode V2 to continue.
Click "Update and reconnect": the desktop installs its matching CLI version, restarts the remote service, and connects successfully.
Expected Behavior
The message should report the actual version mismatch (2.2.0 vs 2.2.5), or offer the update action directly. A patch-level mismatch should not be presented as an OpenCode 1 server that must be upgraded to V2.
Actual Behavior
The connection is presented as an incompatible OpenCode 1 server. Both sides are OpenCode V2; only the patch version differs. The message hides the real cause and the recovery action.
Additional Context
The SSH bootstrap compares the remote service registration version with the desktop app's bundled CLI version using strict equality. On mismatch it fails with a version error and marks the connection incompatible.
The row message uses server.row.incompatible with version: health?.version ?? "1". For an SSH target that never reaches the connected state, health.version is unavailable, so the UI displays the hardcoded fallback 1.
I think this is a duplicate of #53375. It describes 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 gets dropped, and the UI falls back to health?.version ?? "1". The result is that a patch-level V2 mismatch is shown as "running OpenCode 1". That issue also asks for the real version to be shown and for the update action to be offered, and it has been confirmed there on 2.2.1/2.2.0.
Possible duplicates and related issues, ordered by likelihood:
Since there's been no reply to the duplicate notice, I'm closing this as a duplicate of #53375. That issue covers the same problem: when an SSH remote's OpenCode V2 version differs from the desktop app's, even just in the patch version, it's reported as "running OpenCode 1" and the real version isn't shown. Please follow #53375 for updates. #60665 is the related request to allow patch-level differences between the app and the remote.
Until it's fixed, Update and reconnect works around it. So does running opencode upgrade and then opencode service restart on the remote.
If your problem turns out to be different from #53375, reply here and we can reopen this issue.
Activity
opencodejr commentedon Nov 1, 2026
Thanks for the clear report and the analysis.
I think this is a duplicate of #53375. It describes 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 gets dropped, and the UI falls back to
health?.version ?? "1". The result is that a patch-level V2 mismatch is shown as "running OpenCode 1". That issue also asks for the real version to be shown and for the update action to be offered, and it has been confirmed there on 2.2.1/2.2.0.Possible duplicates and related issues, ordered by likelihood:
opencodereplaces the Desktop-deployed service and causes a reconnect loopAs you found, Update and reconnect works around it. Running
opencode upgradeand thenopencode service restarton the remote also works.The bot will close this issue as a duplicate in 1 day unless you reply explaining how your problem is different.
opencodejr commentedon Nov 2, 2026
Since there's been no reply to the duplicate notice, I'm closing this as a duplicate of #53375. That issue covers the same problem: when an SSH remote's OpenCode V2 version differs from the desktop app's, even just in the patch version, it's reported as "running OpenCode 1" and the real version isn't shown. Please follow #53375 for updates. #60665 is the related request to allow patch-level differences between the app and the remote.
Until it's fixed, Update and reconnect works around it. So does running
opencode upgradeand thenopencode service restarton the remote.If your problem turns out to be different from #53375, reply here and we can reopen this issue.