Troubleshooting
Common issues when integrating the OpenBox plugin with OpenClaw, organized by symptom.
Plugin not loading
Symptom: No [openbox] plugin loaded message in OpenClaw logs. Tool calls proceed without governance.
Possible causes:
-
Plugin not installed. Run
openclaw plugins install .from the plugin directory. -
Gateway not restarted. Run
openclaw gateway restartafter installing or updating the plugin. -
Missing required config. Both
openboxUrlandopenboxApiKeymust be set in the plugin config. If either is missing, the plugin logs[openbox] Missing openboxUrl or openboxApiKey in plugin configand does not register hooks. Check youropenclaw.jsonand.envfile. -
Plugin not enabled. Ensure
"enabled": trueis set in the plugin entry:{
"plugins": {
"entries": {
"openbox": {
"enabled": true,
"config": { ... }
}
}
}
} -
Build not run. The plugin needs to be compiled before installation. Run
npm run buildin the plugin directory, then reinstall and restart the gateway.
Gateway not starting
Symptom: The LLM gateway health check (curl http://127.0.0.1:18919/health) fails or times out.
Possible causes:
-
Missing
llmBaseUrlorllmApiKey. The gateway only starts if both are configured. If you only want tool governance without LLM guardrails, this is expected — the gateway does not need to run. -
Port conflict. Another process is using port
18919. Either stop the conflicting process or change the port via thegatewayPortconfig option. Remember to update your model provider'sbaseUrlto match the new port. -
Gateway already started. If the plugin was loaded by multiple subsystems, the gateway may have already started. Check for
[openbox] LLM gateway started on http://127.0.0.1:18919/v1in earlier log output. The plugin prevents duplicate gateway starts.
No events appearing in the dashboard
Symptom: The agent runs and tool calls execute, but no sessions or activities appear in the OpenBox dashboard.
Possible causes:
-
Wrong
openboxUrl. Verify the URL matches your OpenBox Core instance. Check for typos and ensure the URL is reachable from your machine. -
Invalid API key. Check that your
openboxApiKeystarts withobx_live_orobx_test_and is active. Generate a new key in the OpenBox dashboard under Settings > API Keys if needed. -
Network issue. The plugin fails open on network errors, so tool calls will succeed even if Core is unreachable. Check logs for
[openbox] evaluate failed (fail-open)or[openbox] session registration failed— these indicate the plugin is trying to reach Core but failing. -
Session not registered. The session is registered on the first governance evaluation, not at
session_start. If the agent exits before making any tool calls, no session appears in the dashboard.
LLM requests bypassing guardrails
Symptom: LLM calls work but guardrails (PII detection, content filtering) are not being applied. No guardrail events in the dashboard.
Possible causes:
-
Model provider
baseUrlnot pointing to gateway. This is the most common cause. Your model provider inopenclaw.jsonmust point tohttp://127.0.0.1:18919/v1(or your configured gateway port). If it still points directly to the LLM provider URL (e.g.https://api.openai.com/v1), requests bypass the gateway entirely. -
Gateway not running. Check the health endpoint and logs. See Gateway not starting.
-
Guardrails not configured. Guardrails are configured in the OpenBox dashboard, not in the plugin config. Ensure you have active guardrail rules for the types you want to enforce.
Tools executing despite having a block policy
Symptom: You have a policy that should block a tool, but the tool executes anyway.
Possible causes:
-
Fail-open in effect. If Core is unreachable, the plugin allows all actions. Check logs for
[openbox] evaluate failed (fail-open)— this means the governance check failed and the tool was allowed to proceed. -
Policy not matching. The policy may not match the exact tool name or parameters being sent. Check the dashboard for the governance event to see what was sent to Core and how the policy evaluated it.
-
Policy not active. Verify the policy is active in the OpenBox dashboard. Newly created policies take effect immediately — no restart needed.
Gateway returning errors for LLM requests
Symptom: LLM calls through the gateway return error responses.
Possible causes:
-
Wrong
llmBaseUrl. The gateway forwards requests to this URL after governance evaluation. Verify it is correct (e.g.https://api.openai.com/v1). -
Invalid
llmApiKey. The gateway uses this key when forwarding to the LLM provider. Check it is valid and has sufficient quota. -
Unsupported route. The gateway only supports
POSTrequests to/v1/chat/completionsand/v1/responses. Requests to other paths return a404error. -
Request body parsing error. The gateway expects a valid JSON request body. If the body is malformed, the gateway returns a
500error. Check logs for[openbox] llm_gateway error.
Session shows as failed in dashboard
Symptom: The session appears in the dashboard with a WorkflowFailed status.
This is expected when the agent ends with an error. The plugin captures the agent result on agent_end and reports WorkflowFailed if event.success is false. Check the agent logs for the underlying error.
Log messages reference
| Log message | Meaning |
|---|---|
[openbox] plugin loaded | Plugin initialized and hooks registered |
[openbox] LLM gateway started on ... | Gateway is listening |
[openbox] session registered verdict=... | Session registered with Core |
[openbox] tool=X verdict=Y reason="Z" ms=N | Tool call evaluated |
[openbox] llm_input verdict=... | LLM inference start reported |
[openbox] llm_output verdict=... spans=N | LLM inference end reported |
[openbox] llm_gateway verdict=... reason="..." ms=N | Gateway guardrails evaluated |
[openbox] llm_gateway applying guardrails redaction | Sensitive content was redacted |
[openbox] evaluate failed (fail-open): ... | Core unreachable, tool allowed |
[openbox] session registration failed: ... | Could not register session with Core |
[openbox] session close failed: ... | Could not report session end to Core |
[openbox] LLM gateway server error: ... | Gateway server error (port conflict, etc.) |
[openbox] Missing openboxUrl or openboxApiKey ... | Required config missing |