troubleshooting
bise doctor checks your Mac, the install, your keys and models in one command. start there.
bise doctor
bise doctorit checks this Mac, the install, your keys, each role's model and the running bise, without the network and without printing a key. each line is ✓ (fine) or ? (worth a look), and every ? says how to fix it:
checking your setup
✓ macOS macOS 15.5 arm64
✓ bise bise 3f2a91c0 (darwin-arm64) · ~/.local/share/bise/versions/3f2a91c0/bise
✓ home ~/.bise (default): config.toml ✓, auth.json ✓, hubs/ ✓, sessions/ ✓
✓ git git version 2.50.1
✓ github gh logged in; this repo's PRs: github.com/you/your-repo
✓ keys anthropic (auth.json), mistral (env MISTRAL_API_KEY)
✓ main anthropic/claude-opus-5-5 · high
✓ agents same as main
✓ small jobs anthropic/claude-haiku-4-5 · titles, summaries
✓ voice mistral/voxtral-transcribe-3 · language auto · listens when you talk
? PATH `bise` is not on PATH
fix: add ~/.local/bin to PATH (the installer does it; open a new terminal)
? 1 thing to check. it says how.bise doctor --verbose says more on each line.
common problems
bise: command not found
~/.local/bin isn't on your PATH yet. open a new terminal, or run ~/.local/bin/bise. the installer adds the line to your shell's rc file unless you passed --no-modify-path.
a key doesn't work
bise providers # where each key comes from
bise auth check anthropic # one tiny call; says what faileda key saved in bise (~/.bise/auth.json) wins over the one in your environment. if you changed the key in your shell, bise logout <provider> drops the saved one. when the check says the account has no credit, it links the provider's billing page.
unknown provider 'x'
the part before the first / of a model name must be a provider bise knows, or one you added under [providers.x] in config.toml. bise models lists them. see gateways and local models.
no answer from a local model or a gateway
no answer from localhost:11434 in 90 s (timeout) means the server sent nothing for 90 s. a local model reading a long prompt can take longer: raise idle_timeout_sec for that provider. see a slow server.
a key doesn't reach bise in Ghostty
cmd+v with an image, cmd+f, cmd+k, cmd+a and cmd+↑↓ need one line each in Ghostty's config: bise setup ghostty, or /setup.
a remote MCP server has no tools
bise plugins (or /plugins) shows each server's state. needs a login: run bise plugins login <server>. a header that uses an unset variable leaves the server out and names the variable.
an agent seems stuck
look for ? in the panel: it may wait for you in the inbox (ctrl+1). /interrupt in its view stops its turn, and a message starts the next one. /stop <agent> also takes its hands off Chrome and your apps.
logs
bise session show # the newest session's transcript
bise session show <id> # one session (a prefix of its id works)
bise session show --context # what the model sees nowstill stuck
open an issue on GitHub with the output of bise doctor and what you did. it never prints a key, so you can paste it as it is; check it holds no private path you'd rather keep.