che-cli

Troubleshooting

Symptom-first, fix-first. Run che doctor for a quick sweep before digging into specifics.

Source: github.com/chevp/che-cli · Back to overview


zsh: command not found: che

The dispatcher installed but its directory isn’t on $PATH.

echo $PATH                      # does it contain ~/.local/bin?
ls -l ~/.local/bin/che          # is the file there?

Re-run the installer — it will write the right export PATH=... line to your shell rc and tell you which file it touched.

./install.sh
source ~/.zshrc                 # or open a new terminal

If you want to handle PATH yourself, run CHE_NO_PATH_EDIT=1 ./install.sh and add the printed line to your dotfiles.


che commit: nothing staged, nothing to commit

git diff --cached came back empty. che commit always runs git add -A first, so this means the working tree is genuinely clean. Make a change and try again, or check that you’re in the right repo with git status.


che commit: provider 'ollama' not reachable

The local Ollama server isn’t responding on $CHE_OLLAMA_HOST (default http://localhost:11434).

che doctor ollama               # full diagnostics
curl http://localhost:11434/api/tags
ollama serve                    # start it manually if not running

If you haven’t installed Ollama yet, follow the companion guide cura-llm-local — it walks through the model pull as well.


che commit: provider 'claude-code' not reachable

The claude CLI isn’t on $PATH. che never speaks to cloud LLMs over HTTP — it shells out to the CLI, so the CLI must be installed and logged in.

command -v claude               # is the binary on PATH?
claude --version                # confirm install
che doctor claude-code          # full diagnostics

Install Claude Code from https://docs.claude.com/claude-code and run claude once interactively to complete login.


che commit: provider 'copilot' not reachable

Same root cause, different binary: the copilot CLI isn’t on $PATH.

command -v copilot              # is the binary on PATH?
copilot --version               # confirm install
che doctor copilot              # full diagnostics

Install the GitHub Copilot CLI from https://docs.github.com/en/copilot/how-tos/use-copilot-agents/use-copilot-cli and sign in once with copilot to complete login.


che commit: LLM returned empty message

The provider responded but the parsed message was blank. Two common causes:

  1. The diff was huge and got truncated mid-token. Bump CHE_MAX_DIFF_CHARS (default 8000) or commit in smaller chunks.
  2. The model is too small / quantized to follow the prompt. Try a different model (CHE_OLLAMA_MODEL=llama3.1) or switch providers.

Run with --dry-run to see what the model actually returned without committing:

che commit --dry-run

Spinner artifacts after Ctrl+C

ui_spin installs traps to restore the cursor and clear the line on EXIT / INT / TERM. If you still see a leftover glyph, your terminal multiplexer (tmux, screen) may have intercepted the signal. A fresh prompt or tput cnorm; clear will fix the display.


che ship skips a submodule

che ship skips submodules that are in detached HEAD state — there’s no branch to push to. Check the submodule out on a real branch first:

cd path/to/submodule
git checkout main               # or whichever branch you want
cd -
che ship

Commit message looks wrong / not in the right style

The prompt asks for a title plus 2–5 bullet points (skipping the body for trivial changes). If the model ignores the format, three things to try:


che doctor says everything is fine, but commits still fail

Run the failing command with bash’s trace flag to see exactly where it breaks:

bash -x ~/.local/lib/che/git/commit.sh

If the error is in a provider client, do the same for that file:

bash -x ~/.local/lib/che/ollama/client.sh

If you find a reproducible bug, please open an issue at github.com/chevp/che-cli/issues with the trace output and your che doctor results.


© 2025 Patrice Chevillat · Terms · Privacy · Impressum · Contact