Repository navigation
Description
Client or integration
OpenCodex dashboard
Area
Platform (Windows / macOS / Linux)
Summary
The Home runs every Child command through REMOTE_OCX_SCRIPT (src/link/ssh-argv.ts), which uses the non-interactive SSH PATH plus ~/.bun/bin:~/.local/bin:/opt/homebrew/bin:/usr/local/bin. It never looks in ~/.opencodex-desktop/bin or the app bundle. Desktop writes its PATH block only to interactive startup files (.zshrc, .bashrc; desktop/src-tauri/src/cli_command_posix.rs), which a non-interactive SSH session does not read. Any older npm or Bun install on the Child therefore wins over the Desktop CLI.
Two cases from one rollout:
- macOS Child with OpenCodex.app 2.83.0 and a leftover Bun-global
ocxwhose shebang is#!/usr/bin/env node(no Node installed): the script resolves~/.bun/bin/ocxand getsenv: node: No such file or directory.envexits 127, the status the Home treats as "ocx was not found". The only fix was adding the Desktop bin directory to~/.zshenv. - Windows machine with OpenCodex Desktop 2.77.0 installed: Test connection and host confirmation succeed, then the dashboard says "OpenCodex on the remote computer is too old … run ocx update … opencodex 2.58.0", because an npm-global 2.58.0 shim comes first on PATH. The advice is wrong twice:
ocx updatewould target the npm install, and a current version would not make Windows a supported Child.
Reproduction
- On a macOS Child, install OpenCodex.app and keep an older npm/Bun-global
ocxin~/.bun/bin. - From the Home:
ssh <child> 'sh -c '\''PATH="$PATH:$HOME/.bun/bin:$HOME/.local/bin:/opt/homebrew/bin:/usr/local/bin"; command -v ocx; ocx --version'\''' - Output:
/Users/<user>/.bun/bin/ocxandenv: node: No such file or directory. After adding~/.opencodex-desktop/binto~/.zshenv, the same command prints the Desktop CLI andopencodex 2.83.0. - Windows: Add Child for a host with Desktop installed plus an older npm-global
ocx→ "too old … opencodex 2.58.0".
Expected:
- Look for Desktop CLIs (
~/.opencodex-desktop/bin/ocx,/Applications/OpenCodex.app/Contents/MacOS/ocx, the deb's/usr/bin/ocx) before the generic directories, or have Desktop also publish a non-interactive PATH entry. - When the remote is Windows (MSYS/MINGW
uname, or a Windowsocx), report that Windows Children are unsupported instead of "too old".
Version
Home 2.81.0 (OpenCodex Desktop); Children 2.83.0 (macOS Desktop) and 2.77.0 (Windows Desktop). REMOTE_OCX_SCRIPT is unchanged on dev 9b6f4b2632.
Operating system
Home macOS 27 arm64; Children macOS 27 arm64 and Windows 11 x64 (OpenSSH, Git Bash default shell)
Provider and model
No response
Logs or error output
/Users/<user>/.bun/bin/ocx
env: node: No such file or directory
원격 컴퓨터의 OpenCodex가 원격 연결을 쓰기에는 오래되었습니다. 그 컴퓨터에서 ocx update를 실행해 2.66.0 이상으로 올린 뒤 다시 시도하세요. 이유: opencodex 2.58.0
Screenshots and supporting files
No response
Redacted configuration
No response
Checks
- I searched existing issues and documentation.
- I removed secrets, tokens, account details, request credentials, and personal data.
Activity
lidge-jun commentedon Oct 11, 2026
Follow-up from the same rollout: a Windows Child works end to end once the PATH problem above is fixed, even though the guide lists Windows as outside the supported flow.
Setup: Windows 11, OpenSSH server with Git Bash as the default shell, OpenCodex Desktop upgraded from 2.77.0 to 2.83.0 (MSI). The only blocker was an npm-global
@bitkyc08/opencodex2.58.0 under nvm that came beforeC:\Program Files\OpenCodexin the SSH session's PATH. The system Path holds the nvm entries, and Desktop only prepends to the user Path. Afternpm uninstall -g @bitkyc08/opencodex,REMOTE_OCX_SCRIPTresolved/c/Program Files/OpenCodex/ocx(2.83.0), and Add Child from the Home completed. After restarting the Child's proxy (see #6939),/healthzreportedrole: clientand a/v1/responsesrequest on the Child was relayed to and answered by the Home. The relaunched runtime stays under Desktop in the console session.So for Windows, the "too old" message is not just misleading: once
ocxresolves to the Desktop CLI, the flow can actually succeed. A Windows-aware check could look forC:\Program Files\OpenCodex\ocx.exefirst, or report that a staleocxshadows the Desktop install.lidge-jun commentedon Oct 11, 2026
Fixed on dev by #6955 (squash 34bf006). Exact-head bfdfcb2: PR CI 38156344376 and Cross-platform CI lane=all 38156346377 succeeded (macos 1/2 needed one rerun after a 20-minute runner limit, with no failing test). Independent security/correctness review passed; no unresolved review threads.