Windows app SSH remote Git commit message generation fails copying remote index to local temp path
Summary
In the Codex Windows app, built-in Git actions for an SSH remote project fail before a commit message can be generated. The visible UI error says the app cannot generate the commit message, but the log shows the Git worker fails earlier while collecting the uncommitted diff.
The failure appears to happen because the Windows app/Git worker passes a Windows local temp path to a command running on the remote Linux host. The remote host then runs cp with that Windows path as the destination, which cannot exist on Linux.
Environment
- Codex Windows app:
26.616.10790.0 - Codex CLI reported by both local and remote app servers:
0.142.0 - Local OS: Windows
- Remote project: SSH remote Linux host
- Local Git is installed and available on
PATH - Remote Git is installed and available on
PATH - The remote project is a normal Git repository with uncommitted tracked and untracked changes
Steps to reproduce
- On Windows, configure an SSH host in the Codex app.
- Open a Git repository that lives on the SSH remote host.
- Make or keep uncommitted changes in that remote repository.
- Use the Codex app's built-in Git action to commit/push, or trigger commit message generation from the Git UI.
Expected behavior
Codex should collect the remote repository diff, generate a commit message, and allow committing/pushing from the app.
Actual behavior
The UI reports that it cannot generate a commit message. The app log shows the Git worker fails while trying to collect the tracked uncommitted diff:
warning [git] git.temp_index.remote_copy_failed exitCode=1
indexPath=/path/to/remote/repo/.git/index
stderr="cp: cannot create regular file 'C:\\Users\\<local-user>\\AppData\\Local\\Temp\\codex-git-indexXXXXXX/index': No such file or directory\n"
tempIndexFsPath=C:\Users\<local-user>\AppData\Local\Temp\codex-git-indexXXXXXX/index
error [git] failed to collect tracked uncommitted diff
errorMessage="failed to copy remote git index: process exited with code 1, signal null"
The important detail is that indexPath is a remote Linux path, while tempIndexFsPath is a local Windows path. The remote command appears to use Linux cp with the Windows temp path as the destination.
Notes
- This does not appear to be caused by a missing Git installation. Local Git and remote Git are both present.
- This does not appear to be caused by SSH authentication. The app connects to the SSH remote host, and the remote Codex app server reports version
0.142.0. - Manual
git commitandgit pushon the remote host work. - The failure is reproducible when using the built-in Git UI for the SSH remote project.
Suggested direction
For SSH remote projects, the Git worker likely needs to keep temporary index copies on the remote filesystem, or copy the remote index back to the local filesystem through the remote transport layer instead of asking the remote shell to cp directly into a Windows path.
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗