bandicot
Bandicot Docs
Chapter VReference · Available now

Troubleshooting

What each Bandicot error means and what to do: provider errors, context limits, local models, sessions, Versions, two apps on one Mac and engine error codes.

Available now. A current user-facing path exists within the stated scope.

Where errors show

A problem during a turn shows as a message in the chat, a refused action shows where you clicked, and quiet problems wait in the Activity list.

Errors and anything that needs you stay on screen until you dismiss them; warnings are also kept in the sidebar's Activity view. From Terminal, bandicot rpc prints the error code and message.

First steps for any problem: wait for the running turn to finish, try again once, and if it repeats, quit and reopen Bandicot. Your chats and settings live outside the app and are kept.

The model provider refused

A provider error names its HTTP status, and the status tells you whether to reconnect, pay, pick another model or wait.

A rate limit that says when to retry is waited out inside the turn when the wait is short. A plan limit on a signed-in account counts as spent until it resets.

Provider messages
MessageWhat to do
The provider rejected the credential. Reconnect it under Settings, Model. (HTTP 401)Open Settings › Model, disconnect the provider and connect it again.
The provider account needs payment or credit. (HTTP 402)Add credit or a payment method at the provider.
The provider refused this account or model. (HTTP 403)Check the plan at the provider, or pick another model.
The provider does not offer this model. Pick another model. (HTTP 404)Pick another model with ⇧⌘M.
The provider is rate limiting this account. (HTTP 429)Wait a moment, then send again.
The provider is unavailable right now. Try again shortly.The provider is down or busy (HTTP 5xx). Try again later or switch provider.
provider request failedBandicot could not reach the provider. Check the network connection.
No credential is connected for this provider.Connect it in Settings › Model.
OpenAI account sign-in expired.Reconnect the OpenAI account in AI Gateway.
Your OpenCode sign-in ended.Sign in again in AI Gateway.
Claude account: Claude Code is not installed.Install Claude Code, then reconnect the Claude account in AI Gateway.
Unlock your Mac to use your saved keysUnlock the Mac or the Keychain, then try again.

The conversation is too long or the agent stalls

When a conversation no longer fits the model, Bandicot compacts it and retries; with compaction off the turn ends with context overflow.

Turn Context compaction back on in Settings › Capabilities, run /compact, or start a new session. A session that grows past what Bandicot can continue says This session is too large to continue. Start a new one.

A turn that ends with stalled: stopped itself because the agent repeated the same tool calls, no tool call succeeded, or it kept hitting the same error. Read the last tool rows, correct the task and send it again.

If it goes wrong

A message says the model stopped responding with no update for a while and that your prompt is kept.
The model sent nothing for a minute and a half. Your prompt is still in the box; send it again, or pick another model. Stalled turns has more.

TypeSafe refused a call

When the agent calls a TypeSafe model and it fails, the tool result says why, and the status in the message tells you whether to reconnect or wait.

These appear in the tool row of the chat, not as a banner, and the agent reads them and can try again. Connect TypeSafe in Settings › Model.

TypeSafe messages
MessageWhat to do
TypeSafe rejected the API key (401): reconnect the TypeSafe provider with a valid keyPaste a fresh key from the TypeSafe console in Settings › Model.
TypeSafe rejected the request (422) and a reasonThe request was not valid. Read the reason, then ask again with different input.
TypeSafe rate-limited the call (429) after retries; try again shortlyWait a minute, then ask again.
TypeSafe is overloaded (529) after retries; try again shortlyWait a minute, then ask again.
TypeSafe returned and a statusTypeSafe answered with an error. Try again later.
TypeSafe returned a response this client could not parseTry again. If it repeats, update Bandicot.
could not reach TypeSafe and a reasonCheck the network connection.
[aborted]You stopped the turn while the call ran.

The agent could not use a file or a tool

A tool refuses with a plain reason when a file is outside the project, in a private place or changed since the agent read it; the reason names the fix.

The agent reads the reason and adapts, so you usually only see it in the tool row. Every refusal and what to change is listed with the agent's tools and private places.

Tool refusals
MessageWhat to do
reaching outside the project is disabled in Settings > CapabilitiesTurn reaching outside the project on in Settings › Capabilities, or move the file into the project.
workspace symlinks are refused while reaching outside the project is disabledThe link points out of the project. Copy the file in, or allow reaching outside.
this is a private place (keys, sign-ins or browser profiles); the agent never opens itNothing to change; the agent never opens those places.
it changed since you last read or wrote itLet the agent read the file again, then repeat the edit.
sub-session and a name, claimed itA sub-session owns that file. Message the sub-session instead of editing it.
This text holds a masked keyThe text contains a key Bandicot hides. Take the key out of the text.
Web and browser are disabled in Settings > CapabilitiesTurn on Web and browser in Settings › Capabilities.

A helper stopped

Voice, the agent's browser, Team channels and local models each run as a helper, and Activity shows a line when one restarts, stops or cannot start.

Open the Activity view of the sidebar to see the line. A helper that crashed once restarts by itself and the line reads restarted after a crash with the time; it stays for half an hour unless you dismiss it. If it crashes twice within two minutes it stays stopped, Activity says stopped with the reason 2 crashes in 2 minutes, and a notice with Restart appears. A line that reads could not start gives the reason after it.

Restart is on the browser and Team channels lines. If it fails the line adds that restart did not go through, so try again. The voice helper has no button: it starts again the next time you open the voice window. A local model has no button either: it starts again when you choose it. Move over the Activity list to find a small dot, Helpers, that lists every helper as running, idle or stopped. The Mac app describes the rest of the list.

If it goes wrong

Team is not available with Try again.
The Team helper is not running or the host is not reachable. Choose Try again; if it repeats, restart it from Activity.
Team channels are not available or No team yet in the sidebar footer.
No team is open on this Mac. Open or join a team first. See Team channels.
The local Teams assignment was not saved.
Try the assignment again once Team channels is running.
The agent's browser keeps stopping.
Restart it from Activity. After two crashes within two minutes it stays off until you do.

Doctor: check the state of the app

Doctor lists the host state and health checks, and each check reads pass or check so you can see what to fix.

Open Home, then the Account card, and choose Doctor. It shows Session & kernel, with the plain readouts, and Health checks. A line that says check is the one to look at first.

Doctor checks
CheckIt looks atIf it says check
Backend readyThe engine answers.Quit and reopen Bandicot.
Workspace openA project is open.Open a project with ⌘O.
Provider selectedA provider is chosen.Pick one with ⌘P.
Model selectedA model is chosen.Pick one with ⇧⌘M.
Provider usableThe provider has a working credential.Reconnect it in Settings › Model.
Session activeA chat is open.Start one with ⌘N.
Profile selectedA profile is in use.Choose one from Home.
Verification lane, Activity density, Context windowHow busy the session is and how full the window is.Compact or start a new session if the window is full.
Busy, Steering queue, Follow-ups, Compute class, Activity, ToolsPlain readouts, not checks.Nothing to do.

A local model will not start

A local model refuses to load when its file or runtime changed on disk; download it again or remove and add it in Models.

Bandicot never swaps in another model silently: when the chosen one cannot run, the turn says so and stops.

Local model messages
MessageWhat to do
The selected local model could not start.Reinstall or pick that model again in Models.
The selected local model is unavailable. No other model was used.Pick an installed model, or install this one.
This model's file changed after it was added, so it was not loadedRemove the model in Models and add it again.
This model's file changed on disk, so Bandicot is checking itWait for the check to finish, then send again.
A local model runtime does not match the build Bandicot shipsDownload it again in Models, or reinstall Bandicot.

A session will not open or save

Most session errors ask for one thing: wait for the last step, free disk space, update Bandicot or start a new session.

Each message here is the engine's own wording, so the fix beside it is the one Bandicot itself suggests.

Session messages
MessageWhat to do
Bandicot is still finishing the last step. Try again in a moment.Wait a moment and try again.
Too many messages are waiting. Let the current one finish first.Let the running turn finish before sending more.
This session no longer exists. Start a new one.Start a new session.
This session's file is damaged. Start a new session to keep working.Start a new session; the old file stays on disk.
A newer Bandicot wrote this session. Update Bandicot to open it.Install the latest Bandicot.
This session belongs to another profile.Switch to that profile, or start a new session here.
Bandicot could not save to this session.Check the disk, then try again.
The disk is full. Free some space and try again.Free disk space, then try again.

Versions refuses a folder

Versions never keeps history for a folder that holds Bandicot's own data, such as your home folder; open a project folder inside it instead.

Chat and tools still work in such a folder; only version history stays off. Pick a project folder when you want changes you can undo. Versions covers the rest.

Versions codes
CodeWhat it meansWhat to do
RootOverlapsDataDirectoryThe folder contains Bandicot's own data.Choose a project folder outside it, such as a folder inside your home folder.
EnrollmentRequiredVersions is not on for this folder.Open Versions and keep versions of the folder.
stale_previewWhat you reviewed changed after the preview.Open the preview again and confirm.
ExpiredPreviewThe check expired.Preview again.
ConflictChoiceRequiredA file changed after the run.Choose what to keep for each file.
RecoveryRequiredAn undo stopped partway.Run recovery in Versions before anything else changes.
HistoryLimitThe folder has the most named points it can hold.Remove a named point first.
ScanLimitThe folder has more files than Versions can keep.Keep versions of a smaller folder.
BlobMissing, BlobCorruptA saved version is missing or damaged.Pick another version.
DestinationNotEmptyThe export folder is not empty.Pick an empty folder.
NoSpaceLeftThe disk is full.Free space, then retry; Versions may ask for recovery.

Another Bandicot app manages this data

When Bandicot and Bandicot Beta are both open, only one runs automations, setup and recovery; do that work in the app that owns the data, or quit it.

The message reads Another Bandicot app open on this Mac manages automations for this data. Change or run them there, or quit it and try again. The apps never take the data from each other by themselves. Bandicot Beta explains which one owns it.

An update did not install

Bandicot updates itself the next time you open it, and the top of the Activity list says when an update waits or fails.

Update waits: an agent is running clears when the work ends. Bandicot cannot update itself means the app sits in a folder you cannot change: move it to Applications. A failed install keeps the version you had, and download problems retry later by themselves.

Every engine error code

Each engine error has a code and a message; find the code here for what it means and what to do.

Codes written in lower case with underscores reach the app exactly so. Some reach it in CamelCase on a few paths, such as StalePreview for stale_preview.

Engine error codes
CodeWhat it meansWhat to do
bad_requestThe request was not valid.Use bandicot rpc, or fix the program that sent it.
request_too_largeThe request was over the size limit.Send less, such as a smaller file.
unsupported_protocol_versionThe client speaks another protocol version.Update the client or Bandicot.
out_of_memoryThe engine ran out of memory.Close other work and retry; restart Bandicot if it repeats.
not_implementedThis build does not do that yet.Nothing to do in this version.
not_data_ownerAnother Bandicot app manages this data.Use that app, or quit it and retry.
definition_changedThe automation changed since it was shown.Look at it again, then run it.
model_disabledThe model is off in this profile's AI Gateway.Enable it there, or pick another model.
private_placeThe path holds keys, sign-ins or browser profiles.Nothing; the agent never opens those places.
plan_limit_reachedThe plan has no profile left.Change the plan or remove a profile.
PluginUnavailableBandicot cannot run this kind of plugin.Use an agent, skill or hook plugin.
PluginEmptyThe plugin has nothing to install.A skill plugin needs a SKILL.md; a hook plugin needs a command.
ProfileChangedThe profile changed since the delete preview.Review it again before deleting.
EntitlementUnavailableThis build cannot check plans.Update Bandicot.
StaleEntitlementA newer plan is already on this Mac.Nothing to do.
InvalidEntitlementThe plan is not signed by Bandicot.Sign in again.
ForbiddenIt belongs to another profile, account or device.Switch to the right profile or account.
UnknownMethodThe engine has no such method.Update Bandicot; bandicot methods lists what it has.
UnknownSkill, UnknownAgent, UnknownToolThat skill, agent or tool is not installed for this profile.Check its name in the / list.
UnsupportedMcpThat prompt form is not supported.Ask in plain words instead.
UntrustedThe extension is not trusted yet.Trust it first, then install it.
StorageUnavailableA file Bandicot needs could not be opened.Check the disk and its permissions, then retry.
OperationNotFoundThe history entry is unknown.Reload the history and retry.
ExportCleanupFailedAn export failed and a partial folder may be left behind.Delete the partial folder, then export again.
NotFoundA backup request named a step the engine does not have.Update Bandicot, or fix the program that sent it.
SwapUnsupportedThe disk cannot do the restore safely.Restore on a Mac disk.
BusyA step is still finishing.Try again in a moment.
NoSuchRunThe run is unknown.Refresh.
RunConflictSomething is already running in that session.Wait for it, or use another session.
QueueFullToo many messages are waiting.Let the current work finish.
TerminalRunThe run has ended.Start a new run.
IdempotencyConflictThe same request key was reused with different content.Send it as a new request.
StaleApprovalThe approval is old or unknown.Ask again.
NoSuchSessionThe session no longer exists.Start a new one.
SessionTooLargeThe session is too large to continue.Start a new one.
SessionCorruptThe session file is damaged.Start a new session.
SessionTooNewA newer Bandicot wrote this session.Update Bandicot.
PageTooLargeThe page asked for is too large.Ask for fewer items.
CursorGapThe reader fell behind the kept events.Read again from the start.
EpochChangedYour captain changed since this view was read.Nothing; it reads again.
UnknownArtifactNo such artifact.Refresh the list.
ProviderUnavailableThe model's provider is not connected.Connect it in Settings › Model.
ProviderInUseThe provider is in use by the selected model or a profile.Switch model first.
NoDecisionModelNo decision model is set.Pick one in Models or Settings › Capabilities.
NoActiveSessionNo session is open.Open or start a session.
InvalidParamsA value was missing or not accepted.Check the request against bandicot methods.
WriteFailedA save failed.Check the disk.
KeychainUnavailableThe Keychain is locked.Unlock the Mac.
CanceledThe turn or call was stopped.Nothing to do.
BrowserUnavailable, BrowserFailedThe browser could not start or act.Try again.
RuntimeModified, ModelModified, ModelCheckingA local model or its runtime changed on disk.See local models above.
ContextOverflowThe conversation no longer fits the model.Compact, or start a new session.
stalledThe agent stopped repeating itself.Correct the task and send again.

Questions

What does RootOverlapsDataDirectory mean?

The folder contains Bandicot's own data, such as your home folder, so Versions cannot keep its history. Chat still works there; open a project folder inside it for version history.

Why does Bandicot say another app manages this data?

Bandicot and Bandicot Beta are both open and the other one owns the data. Do the work there, or quit it and try again.

Did Bandicot use a different model when mine failed?

No. When the chosen model cannot run, the turn says so and stops. No other model is used.