If a project's root is a subdirectory of a git repo, and that subdirectory only exists on a non-default branch, a new worktree thread can't start its agent. The chat shows:
could not start claude: No such file or directory
claude is installed and on the PATH, so the message points at the wrong thing. The worktree is created from the default branch (e.g. main), which doesn't contain the project's subdirectory. The thread's working directory (/) therefore doesn't exist. Starting the agent there fails with ENOENT, and Backplane reports that as the agent binary being missing.
Steps to reproduce:
- In a repo, add a new directory on a feature branch only (not on main), and check out that branch.
- Add that directory as a Backplane project.
- Start a new worktree thread in it and send a message.
Expected: The thread starts. If it can't, the error says the working directory doesn't exist.
Suggestions:
- Check that the working directory exists before starting the agent, and name the missing path in the error.
- Consider basing new worktrees on the branch currently checked out in the project's repo, or let the user choose the base branch.
Workaround: Use a Local thread, or merge the directory into the default branch first.
If a project's root is a subdirectory of a git repo, and that subdirectory only exists on a non-default branch, a new worktree thread can't start its agent. The chat shows:
could not start claude: No such file or directory
claude is installed and on the PATH, so the message points at the wrong thing. The worktree is created from the default branch (e.g. main), which doesn't contain the project's subdirectory. The thread's working directory (/) therefore doesn't exist. Starting the agent there fails with ENOENT, and Backplane reports that as the agent binary being missing.
Steps to reproduce:
Expected: The thread starts. If it can't, the error says the working directory doesn't exist.
Suggestions:
Workaround: Use a Local thread, or merge the directory into the default branch first.