Vibestrate
Vibestrate
docs
Documentation

Troubleshooting

Concrete fixes for the issues people actually hit.

Each entry lists symptoms, likely cause, fix, and how to verify.


Install failed: vibe: command not found

Symptoms: npm install -g vibestrate succeeded, but vibe --version returns “command not found.”

Likely cause: Your shell’s PATH doesn’t include npm’s global bin directory.

Fix:

npm config get prefix
# Add <prefix>/bin to your PATH in ~/.zshrc or ~/.bashrc

Verify: which vibe returns a real path.


vibe init fails: not a git repository

Symptoms: Init refuses to run with a “not a git repository” error.

Likely cause: Vibestrate needs git for worktree isolation. The current directory isn’t initialized.

Fix:

git init
git add -A && git commit -m "Initial commit"
vibe init

Verify: git rev-parse --is-inside-work-tree returns true.


vibe doctor reports “no providers ready”

Symptoms: Doctor lists all providers as missing or detected-needs-setup.

Likely cause: No coding-agent CLI is installed on PATH, or none has a verified preset.

Fix: Install at least one:

# Claude Code: see https://docs.anthropic.com/claude/docs/claude-code
# Codex:       npm install -g @openai/codex
# Aider:       pipx install aider-chat
# Ollama:      curl -fsSL https://ollama.com/install.sh | sh

Then:

vibe provider detect
vibe provider setup
vibe provider test <id>

Verify: vibe provider detect shows at least one provider with confidence ready or a working detected-needs-setup after provider setup.


Run starts then immediately fails: “validation command not configured”

Symptoms: The run reaches validating, raises “no validation commands configured”, and ends in failed.

Likely cause: commands.validate in project.yml is empty.

Fix:

vibe config set commands.validate '["pnpm typecheck"]'
# or
vibe config set commands.validate '["pnpm typecheck", "pnpm test"]'

Verify: vibe config get commands.validate shows your array.


Run stuck in waiting_for_approval

Symptoms: Status is waiting_for_approval and nothing’s happening.

Likely cause: A policy gate at this stage requires explicit human approval (per policies.requireApprovalAtStages).

Fix:

vibe approvals list <runId>
vibe approvals decide <runId> <approvalId> --approve   # or --reject

Verify: Status transitions back to the stage it was about to enter.


Run stuck in paused

Symptoms: Status is paused and vibe resume doesn’t seem to do anything.

Likely cause: Either the orchestrator isn’t running (the process that owns the run ended), or the resume hasn’t reached the next polling tick yet.

Fix:

If Vibestrate’s process is alive: vibe resume <runId> and wait a few seconds for the next stage-boundary check.

If the process ended: start it again (vibe run or vibe ui) and the durable state will be picked up automatically.

Verify: vibe status shows the run transitioning out of paused.


Provider test fails: “command not found”

Symptoms: vibe provider test claude returns “claude: command not found.”

Likely cause: The provider’s CLI isn’t on the PATH of the shell Vibestrate was started from.

Fix: Add the CLI to your PATH. For shell-installed binaries, restart your terminal so the new PATH is loaded.

Verify: which claude (or whichever CLI) returns a real path.


Provider test passes but runs fail with “unexpected output”

Symptoms: vibe provider test returns success, but real runs end with “could not parse provider output.”

Likely cause: The provider’s prompt-flag preset is producing output Vibestrate can’t parse - usually because the provider changed its output format between releases.

Fix:

vibe provider setup    # walk the wizard again to confirm flags

If the flags are right but the output format changed, file an issue with the provider’s version (<cli> --version) and a sample of the captured output (under .vibestrate/runs/<runId>/outputs/).


Worktree creation failed: “main branch has uncommitted changes”

Symptoms: Run aborts at start with a requireCleanMain violation.

Likely cause: Your project.yml has git.requireCleanMain: true and main has uncommitted edits.

Fix: Commit or stash, then re-run:

git stash push -m "before vibe run"
vibe run "..."

Or flip the policy if you don’t want it:

vibe config set git.requireCleanMain false

Verify: Worktree appears under ../.vibestrate-worktrees/.


Notifications never arrive

Symptoms: Configured a Slack/webhook gateway, ran a task, no notification.

Likely cause: The gateway is registered but disabled, the webhook URL is wrong, or the notification severity is below the gateway’s threshold.

Fix:

vibe gateways list
vibe notifications list

Confirm the gateway is enabled and the webhook URL is reachable. Send a test:

vibe notifications test <gatewayId>

Dashboard tab is blank

Symptoms: vibe ui opens, but a tab shows no data even though there are runs.

Likely cause: The browser cached an older asset bundle, or the runs are in a different project root than the one vibe ui was started from.

Fix: Hard-reload (Cmd-Shift-R / Ctrl-Shift-R). Confirm vibe ui is running from the project root you expect: the dashboard reads .vibestrate/runs/ from cwd.


Worktree didn’t get cleaned up after abort

Symptoms: vibe abort <runId> succeeded, but ../.vibestrate-worktrees/<runId>-<slug> is still on disk.

Likely cause: This is by design. Worktrees are preserved across aborted, blocked, and failed so you can inspect or copy out partial work.

Fix:

cd your-project
git worktree remove ../.vibestrate-worktrees/<runId>-<slug>
git branch -D vibestrate/<runId>-<slug>

Verify: The directory is gone.

© 2026 Guy Shonshon · Made for educational and learning purposes · v0.1.1 · 3ade132 · 2026-05-30 Shonshon - Evolving Technologies