Guide
Troubleshoot setup and bundle resolution
Diagnose installation, host setup, workspace selection, and local bundle health from their owning command receipts.
Outcome
Identify whether a failure comes from the installed CLI, host setup, project bundle selection, or bundle health, then use the owning command's recovery guidance. This page is written for the current stable release and its supported platforms.
Start with Install and set up Superbee if Superbee has never worked in this host. The examples below use macOS or Linux shell commands. Check the current release before assuming another platform is supported.
Collect the four useful receipts
Run these from the project where Superbee should be active:
superbee version
superbee setup --host <codex|claude-code|claude-desktop|opencode> --scope user
superbee bundle locate
superbee statusEach command answers a separate question:
| Command | Question |
|---|---|
version | Which package, source commit, and installed executable are running? |
setup | Which host capability needs the next action? |
bundle locate | Which exact local bundle would a bare command use? |
status | Is the selected bundle structurally healthy? |
If bundle locate fails, continue with the bundle-selection symptoms below. If it succeeds, use the
reported path in an explicit --dir <path> while diagnosing subsequent commands.
superbee is missing or the wrong build runs
Inspect the runtime and npm prefix:
command -v node
command -v superbee
npm prefix --global
superbee versionInstall the persistent CLI when it is absent:
npm install -g superbeeOpen a fresh terminal and run superbee version again. Persistent Skills, hooks, and MCP
registrations require the durable global installation. If setup emits an inspect command for an
npm-prefix or runtime mismatch, run that command first. Repeated installation into a different npm
prefix will not repair the executable used by the host.
Setup keeps returning another command
Setup is a read-only conductor. It reports one next action in dependency order. A partially configured host normally requires several cycles:
Read the reported capability, reason, and
next.command.Approve the exact change when it mutates configuration.
Run that command unchanged, filling only an explicit placeholder such as a catalog label.
Restart the host when the
restartfield names an affected integration.Rerun the same host-scoped setup command.
The setup journey is complete when a fresh run reports both ready: true and complete: true.
If setup reports foreign, unmanaged, blocked, or a newer compatibility contract, run the
read-only status command it provides. Preserve unknown files and registrations until their owner is
understood. Setup refuses to replace foreign configuration automatically.
If setup reports validated legacy private state, inspect and run:
superbee setup migrate-stateThis copies recognized private operational records into the current Superbee state root. Bundles and legacy bytes stay in place.
No local bundle is found
Run superbee bundle locate from the intended project root. A local command resolves the bundle in
this order:
an explicit
--dir <path>;the nearest project binding,
.superbee.jsonor the compatible.agentstate.json;the nearest enclosing bundle or conventional
.superbee/or.agentstate-lite/directory.
Choose the intended ownership and sharing boundary before creating a bundle. For a confirmed new local workspace, follow Create your first durable workspace. For an existing bundle elsewhere on disk, point the project to it with one committed local binding:
{
"bundle": "../shared-project/.superbee"
}A relative binding path is resolved from the directory containing the binding file. If a binding points to a missing directory, correct its path or restore the intended bundle. Create a new bundle at that target only after confirming that the missing target was meant to be new.
The wrong bundle is selected
Inspect the selection receipt:
superbee bundle locate --jsonThe selected_by value identifies explicit-dir, project-binding, or discovery. Retry the
original command with --dir <intended-path> to prove the intended bundle works before changing a
binding.
Check every ancestor between the current directory and the filesystem root for .superbee.json or
.agentstate.json. The nearest binding wins. A private workspace catalog entry has no role in bare
CLI selection and never becomes ambient project context.
Two binding files at the same directory level are an explicit conflict. Keep the one that expresses the current project decision and move the other outside the project. Two conventional bundle directories at the same level also cause a conflict. Confirm which bundle owns the project before moving either one.
A binding reports malformed JSON, an unavailable path, or a URL
A binding must be a regular JSON file with one non-empty local filesystem path:
{
"bundle": "../shared-project/.superbee"
}Fix invalid JSON or the bundle field named in the error. URL-valued bindings are rejected because
remote access requires an explicit choice on each command:
superbee <command> --remote <url>Use --dir <path> to bypass a faulty binding temporarily while repairing the committed project
configuration.
Setup is ready, yet the AI host has no Superbee tools
Inspect the exact host registration:
superbee mcp status --host <codex|claude-code|claude-desktop|opencode>
superbee setup --host <codex|claude-code|claude-desktop|opencode> --scope userRestart the host after MCP, Skill, or hook changes. Run setup again in the fresh session. Host setup verifies registration state; successful MCP App rendering still depends on the host version and its MCP Apps support. Use the browser presentation path in Show documents and Views to a human when the host does not render App panels.
The MCP server cannot find the intended workspace
Inspect the private catalog:
superbee catalog listRegister the intended local bundle explicitly:
superbee catalog add <label> --dir <path>Then ask the agent to call list_workspaces and select that exact label or ID. Catalog registration
does not change the current project's bundle and does not authorize reading another workspace as
project context.
The selected bundle opens, then a command fails
Run:
superbee status --limit 0Resolve malformed frontmatter first. Then inspect the category named by the command or report, such
as unresolved links, Kind warnings, invalid View registrations, or missing View entry blobs.
status reports findings and exits successfully after analysis, so automation should inspect its
structured fields instead of using only the process exit code.
Use the exact command help for the failing surface:
superbee <command> --helpFor document or View presentation failures, continue with the presentation recovery guide.
Evidence
These procedures are verified against
the current stable release evidence, the tagged
0.1.3 setup planner,
0.1.3 setup tests,
0.1.3 bundle resolver,
and
0.1.3 locator tests.
Bundle-health behavior is grounded in the tagged
status implementation
and
status tests.