Skip to main content

Troubleshooting

If you only have 2 minutes, use this page as a triage front door.

First 60 seconds

Run this exact ladder in order:
fluffbuzz status
fluffbuzz status --all
fluffbuzz gateway probe
fluffbuzz gateway status
fluffbuzz doctor
fluffbuzz channels status --probe
fluffbuzz logs --follow
Good output in one line:
  • fluffbuzz status → shows configured channels and no obvious auth errors.
  • fluffbuzz status --all → full report is present and shareable.
  • fluffbuzz gateway probe → expected gateway target is reachable.
  • fluffbuzz gateway statusRuntime: running and RPC probe: ok.
  • fluffbuzz doctor → no blocking config/service errors.
  • fluffbuzz channels status --probe → channels report connected or ready.
  • fluffbuzz logs --follow → steady activity, no repeating fatal errors.

Anthropic long context 429

If you see: HTTP 429: rate_limit_error: Extra usage is required for long context requests, go to /gateway/troubleshooting#anthropic-429-extra-usage-required-for-long-context.

Plugin install fails with missing fluffbuzz extensions

If install fails with package.json missing fluffbuzz.extensions, the plugin package is using an old shape that FluffBuzz no longer accepts. Fix in the plugin package:
  1. Add fluffbuzz.extensions to package.json.
  2. Point entries at built runtime files (usually ./dist/index.js).
  3. Republish the plugin and run fluffbuzz plugins install <npm-spec> again.
Example:
{
  "name": "@fluffbuzz/my-plugin",
  "version": "1.2.3",
  "fluffbuzz": {
    "extensions": ["./dist/index.js"]
  }
}
Reference: /tools/plugin#distribution-npm

Decision tree

fluffbuzz status
fluffbuzz gateway status
fluffbuzz channels status --probe
fluffbuzz pairing list --channel <channel> [--account <id>]
fluffbuzz logs --follow
Good output looks like:
  • Runtime: running
  • RPC probe: ok
  • Your channel shows connected/ready in channels status --probe
  • Sender appears approved (or DM policy is open/allowlist)
Common log signatures:
  • drop guild message (mention required → mention gating blocked the message in Discord.
  • pairing request → sender is unapproved and waiting for DM pairing approval.
  • blocked / allowlist in channel logs → sender, room, or group is filtered.
Deep pages:
fluffbuzz status
fluffbuzz gateway status
fluffbuzz logs --follow
fluffbuzz doctor
fluffbuzz channels status --probe
Good output looks like:
  • Dashboard: http://... is shown in fluffbuzz gateway status
  • RPC probe: ok
  • No auth loop in logs
Common log signatures:
  • device identity required → HTTP/non-secure context cannot complete device auth.
  • unauthorized / reconnect loop → wrong token/password or auth mode mismatch.
  • gateway connect failed: → UI is targeting the wrong URL/port or unreachable gateway.
Deep pages:
fluffbuzz status
fluffbuzz gateway status
fluffbuzz logs --follow
fluffbuzz doctor
fluffbuzz channels status --probe
Good output looks like:
  • Service: ... (loaded)
  • Runtime: running
  • RPC probe: ok
Common log signatures:
  • Gateway start blocked: set gateway.mode=local → gateway mode is unset/remote.
  • refusing to bind gateway ... without auth → non-loopback bind without token/password.
  • another gateway instance is already listening or EADDRINUSE → port already taken.
Deep pages:
fluffbuzz status
fluffbuzz gateway status
fluffbuzz logs --follow
fluffbuzz doctor
fluffbuzz channels status --probe
Good output looks like:
  • Channel transport is connected.
  • Pairing/allowlist checks pass.
  • Mentions are detected where required.
Common log signatures:
  • mention required → group mention gating blocked processing.
  • pairing / pending → DM sender is not approved yet.
  • not_in_channel, missing_scope, Forbidden, 401/403 → channel permission token issue.
Deep pages:
fluffbuzz status
fluffbuzz gateway status
fluffbuzz cron status
fluffbuzz cron list
fluffbuzz cron runs --id <jobId> --limit 20
fluffbuzz logs --follow
Good output looks like:
  • cron.status shows enabled with a next wake.
  • cron runs shows recent ok entries.
  • Heartbeat is enabled and not outside active hours.
Common log signatures:
  • cron: scheduler disabled; jobs will not run automatically → cron is disabled.
  • heartbeat skipped with reason=quiet-hours → outside configured active hours.
  • requests-in-flight → main lane busy; heartbeat wake was deferred.
  • unknown accountId → heartbeat delivery target account does not exist.
Deep pages:
fluffbuzz status
fluffbuzz gateway status
fluffbuzz nodes status
fluffbuzz nodes describe --node <idOrNameOrIp>
fluffbuzz logs --follow
Good output looks like:
  • Node is listed as connected and paired for role node.
  • Capability exists for the command you are invoking.
  • Permission state is granted for the tool.
Common log signatures:
  • NODE_BACKGROUND_UNAVAILABLE → bring node app to foreground.
  • *_PERMISSION_REQUIRED → OS permission was denied/missing.
  • SYSTEM_RUN_DENIED: approval required → exec approval is pending.
  • SYSTEM_RUN_DENIED: allowlist miss → command not on exec allowlist.
Deep pages:
fluffbuzz status
fluffbuzz gateway status
fluffbuzz browser status
fluffbuzz logs --follow
fluffbuzz doctor
Good output looks like:
  • Browser status shows running: true and a chosen browser/profile.
  • fluffbuzz profile starts or chrome relay has an attached tab.
Common log signatures:
  • Failed to start Chrome CDP on port → local browser launch failed.
  • browser.executablePath not found → configured binary path is wrong.
  • Chrome extension relay is running, but no tab is connected → extension not attached.
  • Browser attachOnly is enabled ... not reachable → attach-only profile has no live CDP target.
Deep pages: