BoxClaw Diagnostics

Updated 2026-03-02T19:56:19.113Z | uptime 365s | pid 1

System

metricvalue
rss memory173.8 MB
heap used20.4 MB
database path/app/store/messages.db
registered groups1

Database Counts

metricvalue
chats3
messages7
registered groups1
sessions3
scheduled tasks0
active tasks0
paused tasks0
completed tasks0
task runs (24h)0

Queue

metricvalue
active containers1
waiting groups0
tracked groups1
groups with pending messages0
pending tasks0

Channels

channelstatus
slackconnected

Disk

mountused %usedavailable
/14%6.2 GB38.8 GB
/app/store14%6.2 GB38.8 GB
/app/data14%6.2 GB38.8 GB
/app/logs14%6.2 GB38.8 GB

HTTP Requests

timemethodpathstatusdurationip
2026-03-02T19:56:19.055ZGET/robots.txt4040ms216.73.216.152
2026-03-02T19:56:19.001ZGET/robots.txt4040ms216.73.216.152
2026-03-02T19:56:13.932ZGET/healthz2000msunknown
2026-03-02T19:56:13.628ZGET/healthz2000msunknown
2026-03-02T19:56:12.949ZGET/healthz2000msunknown
2026-03-02T19:56:04.212ZGET/2007ms143.105.205.211
2026-03-02T19:56:03.932ZGET/healthz2000msunknown
2026-03-02T19:56:03.628ZGET/healthz2000msunknown
2026-03-02T19:56:02.950ZGET/healthz2001msunknown
2026-03-02T19:55:53.932ZGET/healthz2000msunknown
2026-03-02T19:55:53.629ZGET/healthz2000msunknown
2026-03-02T19:55:52.950ZGET/healthz2000msunknown
2026-03-02T19:55:49.110ZGET/2006ms143.105.205.211
2026-03-02T19:55:43.933ZGET/healthz2000msunknown
2026-03-02T19:55:43.630ZGET/healthz2000msunknown
2026-03-02T19:55:42.950ZGET/healthz2000msunknown
2026-03-02T19:55:34.021ZGET/2006ms143.105.205.211
2026-03-02T19:55:33.934ZGET/healthz2000msunknown
2026-03-02T19:55:33.631ZGET/healthz2000msunknown
2026-03-02T19:55:32.951ZGET/healthz2000msunknown
2026-03-02T19:55:23.934ZGET/healthz2000msunknown
2026-03-02T19:55:23.632ZGET/healthz2001msunknown
2026-03-02T19:55:22.952ZGET/healthz2001msunknown
2026-03-02T19:55:18.854ZGET/2006ms143.105.205.211
2026-03-02T19:55:13.934ZGET/healthz2000msunknown
2026-03-02T19:55:13.632ZGET/healthz2001msunknown
2026-03-02T19:55:12.952ZGET/healthz2000msunknown
2026-03-02T19:55:03.934ZGET/healthz2000msunknown
2026-03-02T19:55:03.723ZGET/2006ms143.105.205.211
2026-03-02T19:55:03.632ZGET/healthz2000msunknown

Recent Inbound Messages

timechannelchatsendercontent
2026-03-02T19:51:57.876Zslackslack:C0AHS6BUYEQ:1772233033.486259Brian Huntnice. what color is the dog?
2026-03-02T19:51:33.317Zslackslack:C0AHS6BUYEQ:1772233033.486259Brian Hunthello there
2026-03-02T19:32:51.024Zslackslack:C0AHS6BUYEQ:1772233033.486259Brian Hunthello?
2026-03-02T19:32:03.915Zslackslack:C0AHS6BUYEQ:1772233033.486259Brian Huntthe dog is green. what color is the dog?
2026-03-02T19:31:41.228Zslackslack:C0AHS6BUYEQ:1772233033.486259Brian Huntwhat color is the dog?
2026-03-02T19:30:08.766Zslackslack:C0AHS6BUYEQ:1772464833.896389Brian Hunthey. cool
2026-03-02T18:57:07.007Zslackslack:C0AHS6BUYEQ:1772464833.896389Brian Hunttest

Recent Outbound Messages

No outbound messages

Recent Tasks

No tasks

Recent Task Runs

No task runs

Pipeline Events

timeleveleventcontext
2026-03-02T19:52:03.263ZinfoNew messages{"count":1}
2026-03-02T19:52:01.464ZinfoSlack event received{"event":{"type":"message","user":"UAY0SG0AX","ts":"1772481117.876869","client_msg_id":"3ebccc30-193b-45c1-b5a2-8eb7c4fe14a8","text":"nice. what color is the dog?","team":"T6469HSBA","thread_ts":"1772233033.486259","parent_user_id":"UAY0SG0AX","blocks":[{"type":"rich_text","block_id":"RDZUq","elements":[{"type":"rich_text_section","elements":[{"type":"text","text":"nice. what color is the dog?"}]}]}],"channel":"C0AHS6BUYEQ","event_ts":"1772481117.876869","channel_type":"channel"}}
2026-03-02T19:51:43.500ZinfoSlack message sent{"jid":"slack:C0AHS6BUYEQ:1772233033.486259","length":39,"threadTs":"1772233033.486259"}
2026-03-02T19:51:43.361ZinfoAgent output: Hey Brian! 👋 How can I help you today?{"group":"main"}
2026-03-02T19:51:37.258ZinfoSpawning container agent{"group":"main","containerName":"boxclaw-main-1772481097257","mountCount":5,"isMain":true}
2026-03-02T19:51:37.255ZinfoProcessing messages{"group":"main","messageCount":1}
2026-03-02T19:51:37.238ZinfoNew messages{"count":1}
2026-03-02T19:51:35.304ZinfoSlack event received{"event":{"type":"message","user":"UAY0SG0AX","ts":"1772481093.317699","client_msg_id":"308636c6-d5d6-49bf-9f87-376dd9b2744b","text":"hello there","team":"T6469HSBA","thread_ts":"1772233033.486259","parent_user_id":"UAY0SG0AX","blocks":[{"type":"rich_text","block_id":"hHmSl","elements":[{"type":"rich_text_section","elements":[{"type":"text","text":"hello there"}]}]}],"channel":"C0AHS6BUYEQ","event_ts":"1772481093.317699","channel_type":"channel"}}

Runtime Logs

timelevelmessagecontext
2026-03-02T19:52:03.263ZinfoNew messages{"count":1}
2026-03-02T19:52:01.472ZinfoChecking if channel is registered{"jid":"slack:C0AHS6BUYEQ:1772233033.486259","channelJid":"slack:C0AHS6BUYEQ","groupKeys":["slack:C0AHS6BUYEQ"]}
2026-03-02T19:52:01.464ZinfoEvent subtype check{}
2026-03-02T19:52:01.464ZinfoSlack event received{"event":{"type":"message","user":"UAY0SG0AX","ts":"1772481117.876869","client_msg_id":"3ebccc30-193b-45c1-b5a2-8eb7c4fe14a8","text":"nice. what color is the dog?","team":"T6469HSBA","thread_ts":"1772233033.486259","parent_user_id":"UAY0SG0AX","blocks":[{"type":"rich_text","block_id":"RDZUq","elements":[{"type":"rich_text_section","elements":[{"type":"text","text":"nice. what color is the dog?"}]}]}],"channel":"C0AHS6BUYEQ","event_ts":"1772481117.876869","channel_type":"channel"}}
2026-03-02T19:51:43.500ZinfoSlack message sent{"jid":"slack:C0AHS6BUYEQ:1772233033.486259","length":39,"threadTs":"1772233033.486259"}
2026-03-02T19:51:43.361ZinfoAgent output: Hey Brian! 👋 How can I help you today?{"group":"main"}
2026-03-02T19:51:37.258ZinfoSpawning container agent{"group":"main","containerName":"boxclaw-main-1772481097257","mountCount":5,"isMain":true}
2026-03-02T19:51:37.255ZinfoProcessing messages{"group":"main","messageCount":1}
2026-03-02T19:51:37.238ZinfoNew messages{"count":1}
2026-03-02T19:51:35.312ZinfoChecking if channel is registered{"jid":"slack:C0AHS6BUYEQ:1772233033.486259","channelJid":"slack:C0AHS6BUYEQ","groupKeys":["slack:C0AHS6BUYEQ"]}
2026-03-02T19:51:35.305ZinfoEvent subtype check{}
2026-03-02T19:51:35.304ZinfoSlack event received{"event":{"type":"message","user":"UAY0SG0AX","ts":"1772481093.317699","client_msg_id":"308636c6-d5d6-49bf-9f87-376dd9b2744b","text":"hello there","team":"T6469HSBA","thread_ts":"1772233033.486259","parent_user_id":"UAY0SG0AX","blocks":[{"type":"rich_text","block_id":"hHmSl","elements":[{"type":"rich_text_section","elements":[{"type":"text","text":"hello there"}]}]}],"channel":"C0AHS6BUYEQ","event_ts":"1772481093.317699","channel_type":"channel"}}
2026-03-02T19:50:25.199ZinfoBoxClaw running (trigger: @Andy)
2026-03-02T19:50:25.198ZinfoIPC watcher started (per-group namespaces)
2026-03-02T19:50:25.197ZinfoScheduler loop started
2026-03-02T19:50:25.196ZinfoSlack channel metadata synced{"count":1}
2026-03-02T19:50:24.486ZinfoSyncing channel metadata from Slack...
2026-03-02T19:50:24.486ZinfoConnected to Slack{"botUserId":"U0AHM1V0SJJ"}
2026-03-02T19:50:24.009ZinfoDiagnostics web server started{"host":"0.0.0.0","port":8080}
2026-03-02T19:50:24.006ZinfoState loaded{"groupCount":1}
2026-03-02T19:50:24.006ZinfoDatabase initialized
2026-03-02T19:50:24.003ZinfoStopped orphaned containers{"count":1,"names":["boxclaw-main-1772480443597"]}

Log Tail: boxclaw.log


    

Log Tail: boxclaw.error.log


    

Recent Agent Run Logs

/app/groups/main/logs/container-2026-03-02T19-25-24-499Z.log

=== Container Run Log ===
Timestamp: 2026-03-02T19:25:24.499Z
Group: main
IsMain: true
Duration: 3327ms
Exit Code: 1
Stdout Truncated: false
Stderr Truncated: false
=== Input ===
{
  "prompt": "<messages>\n<message sender=\"Brian Hunt\" time=\"2026-03-02T18:57:07.007Z\">test</message>\n</messages>",
  "groupFolder": "main",
  "chatJid": "slack:C0AHS6BUYEQ",
  "isMain": true
}
=== Container Args ===
run -i --rm --name boxclaw-main-1772479521172 -e TZ=UTC -v /mnt/stateful_partition/boxclaw:/workspace/project:ro -v /mnt/stateful_partition/boxclaw/groups/main:/workspace/group -v /mnt/stateful_partition/boxclaw/data/sessions/main/.claude:/home/bun/.claude -v /mnt/stateful_partition/boxclaw/data/ipc/main:/workspace/ipc -v /mnt/stateful_partition/boxclaw/data/sessions/main/agent-runner-src:/app/src boxclaw-agent:latest
=== Mounts ===
/mnt/stateful_partition/boxclaw -> /workspace/project (ro)
/mnt/stateful_partition/boxclaw/groups/main -> /workspace/group
/mnt/stateful_partition/boxclaw/data/sessions/main/.claude -> /home/bun/.claude
/mnt/stateful_partition/boxclaw/data/ipc/main -> /workspace/ipc
/mnt/stateful_partition/boxclaw/data/sessions/main/agent-runner-src -> /app/src
=== Stderr ===
[agent-runner] Received input for group: main
[agent-runner] Starting query (session: new, resumeAt: latest)...
3 |
4 | // Version: 0.2.63
5 |
6 | // Want to see the unminified source? We're hiring!
7 | // https://job-boards.greenhouse.io/anthropic/jobs/4816199008
8 | var vK=Object.create;var{getPrototypeOf:TK,defineProperty:RQ,getOwnPropertyNames:xK}=Object;var yK=Object.prototype.hasOwnProperty;function gK(Q){return this[Q]}var hK,fK,x7=(Q,X,Y)=>{var $=Q!=null&&typeof Q==="object";if($){var W=X?hK??=new WeakMap:fK??=new WeakMap,J=W.get(Q);if(J)return J}Y=Q!=null?vK(TK(Q)):{};let G=X||!Q||!Q.__esModule?RQ(Y,"default",{value:Q,enumerable:!0}):Y;for(let H of xK(Q))if(!yK.call(G,H))RQ(G,H,{get:gK.bind(Q,H),enumerable:!0});if($)W.set(Q,G);return G};var E=(Q,X)=>()=>(X||Q((X={exports:{}}).exports,X),X.exports);var uK=(Q)=>Q;function lK(Q,X){this[Q]=uK.bind(null,X)}var y7=(Q,X)=>{for(var Y in X)RQ(Q,Y,{get:X[Y],enumerable:!0,configurable:!0,set:lK.bind(X,Y)})};var mK=Symbol.dispose||Symbol.for("Symbol.dispose"),cK=Symbol.asyncDispose||Symbol.for("Symbol.asyncDispose"),X0=(Q,X,Y)=>{if(X!=null){if(typeof X!=="object"&&typeof X!=="function")throw TypeError('Object expected to be assigned to "using" declaration');var $;if(Y)$=X[cK];if($===void 0)$=X[mK];if(typeof $!=="function")thr
error: EACCES: permission denied, open
      at J (/app/node_modules/@anthropic-ai/claude-agent-sdk/sdk.mjs:8:1483)
      at appendFileSync (/app/node_modules/@anthropic-ai/claude-agent-sdk/sdk.mjs:17:7619)
      at writeFn (/app/node_modules/@anthropic-ai/claude-agent-sdk/sdk.mjs:17:13324)
      at z (/app/node_modules/@anthropic-ai/claude-agent-sdk/sdk.mjs:17:12175)
Bun v1.2.17 (Linux x64 baseline)
=== Stdout ===

/app/groups/main/logs/container-2026-03-02T19-25-01-156Z.log

=== Container Run Log ===
Timestamp: 2026-03-02T19:25:01.156Z
Group: main
IsMain: true
Duration: 3352ms
Exit Code: 1
Stdout Truncated: false
Stderr Truncated: false
=== Input ===
{
  "prompt": "<messages>\n<message sender=\"Brian Hunt\" time=\"2026-03-02T18:57:07.007Z\">test</message>\n</messages>",
  "groupFolder": "main",
  "chatJid": "slack:C0AHS6BUYEQ",
  "isMain": true
}
=== Container Args ===
run -i --rm --name boxclaw-main-1772479497804 -e TZ=UTC -v /mnt/stateful_partition/boxclaw:/workspace/project:ro -v /mnt/stateful_partition/boxclaw/groups/main:/workspace/group -v /mnt/stateful_partition/boxclaw/data/sessions/main/.claude:/home/bun/.claude -v /mnt/stateful_partition/boxclaw/data/ipc/main:/workspace/ipc -v /mnt/stateful_partition/boxclaw/data/sessions/main/agent-runner-src:/app/src boxclaw-agent:latest
=== Mounts ===
/mnt/stateful_partition/boxclaw -> /workspace/project (ro)
/mnt/stateful_partition/boxclaw/groups/main -> /workspace/group
/mnt/stateful_partition/boxclaw/data/sessions/main/.claude -> /home/bun/.claude
/mnt/stateful_partition/boxclaw/data/ipc/main -> /workspace/ipc
/mnt/stateful_partition/boxclaw/data/sessions/main/agent-runner-src -> /app/src
=== Stderr ===
[agent-runner] Received input for group: main
[agent-runner] Starting query (session: new, resumeAt: latest)...
3 |
4 | // Version: 0.2.63
5 |
6 | // Want to see the unminified source? We're hiring!
7 | // https://job-boards.greenhouse.io/anthropic/jobs/4816199008
8 | var vK=Object.create;var{getPrototypeOf:TK,defineProperty:RQ,getOwnPropertyNames:xK}=Object;var yK=Object.prototype.hasOwnProperty;function gK(Q){return this[Q]}var hK,fK,x7=(Q,X,Y)=>{var $=Q!=null&&typeof Q==="object";if($){var W=X?hK??=new WeakMap:fK??=new WeakMap,J=W.get(Q);if(J)return J}Y=Q!=null?vK(TK(Q)):{};let G=X||!Q||!Q.__esModule?RQ(Y,"default",{value:Q,enumerable:!0}):Y;for(let H of xK(Q))if(!yK.call(G,H))RQ(G,H,{get:gK.bind(Q,H),enumerable:!0});if($)W.set(Q,G);return G};var E=(Q,X)=>()=>(X||Q((X={exports:{}}).exports,X),X.exports);var uK=(Q)=>Q;function lK(Q,X){this[Q]=uK.bind(null,X)}var y7=(Q,X)=>{for(var Y in X)RQ(Q,Y,{get:X[Y],enumerable:!0,configurable:!0,set:lK.bind(X,Y)})};var mK=Symbol.dispose||Symbol.for("Symbol.dispose"),cK=Symbol.asyncDispose||Symbol.for("Symbol.asyncDispose"),X0=(Q,X,Y)=>{if(X!=null){if(typeof X!=="object"&&typeof X!=="function")throw TypeError('Object expected to be assigned to "using" declaration');var $;if(Y)$=X[cK];if($===void 0)$=X[mK];if(typeof $!=="function")thr
error: EACCES: permission denied, open
      at J (/app/node_modules/@anthropic-ai/claude-agent-sdk/sdk.mjs:8:1483)
      at appendFileSync (/app/node_modules/@anthropic-ai/claude-agent-sdk/sdk.mjs:17:7619)
      at writeFn (/app/node_modules/@anthropic-ai/claude-agent-sdk/sdk.mjs:17:13324)
      at z (/app/node_modules/@anthropic-ai/claude-agent-sdk/sdk.mjs:17:12175)
Bun v1.2.17 (Linux x64 baseline)
=== Stdout ===

/app/groups/main/logs/container-2026-03-02T19-24-47-789Z.log

=== Container Run Log ===
Timestamp: 2026-03-02T19:24:47.789Z
Group: main
IsMain: true
Duration: 3336ms
Exit Code: 1
Stdout Truncated: false
Stderr Truncated: false
=== Input ===
{
  "prompt": "<messages>\n<message sender=\"Brian Hunt\" time=\"2026-03-02T18:57:07.007Z\">test</message>\n</messages>",
  "groupFolder": "main",
  "chatJid": "slack:C0AHS6BUYEQ",
  "isMain": true
}
=== Container Args ===
run -i --rm --name boxclaw-main-1772479484453 -e TZ=UTC -v /mnt/stateful_partition/boxclaw:/workspace/project:ro -v /mnt/stateful_partition/boxclaw/groups/main:/workspace/group -v /mnt/stateful_partition/boxclaw/data/sessions/main/.claude:/home/bun/.claude -v /mnt/stateful_partition/boxclaw/data/ipc/main:/workspace/ipc -v /mnt/stateful_partition/boxclaw/data/sessions/main/agent-runner-src:/app/src boxclaw-agent:latest
=== Mounts ===
/mnt/stateful_partition/boxclaw -> /workspace/project (ro)
/mnt/stateful_partition/boxclaw/groups/main -> /workspace/group
/mnt/stateful_partition/boxclaw/data/sessions/main/.claude -> /home/bun/.claude
/mnt/stateful_partition/boxclaw/data/ipc/main -> /workspace/ipc
/mnt/stateful_partition/boxclaw/data/sessions/main/agent-runner-src -> /app/src
=== Stderr ===
[agent-runner] Received input for group: main
[agent-runner] Starting query (session: new, resumeAt: latest)...
3 |
4 | // Version: 0.2.63
5 |
6 | // Want to see the unminified source? We're hiring!
7 | // https://job-boards.greenhouse.io/anthropic/jobs/4816199008
8 | var vK=Object.create;var{getPrototypeOf:TK,defineProperty:RQ,getOwnPropertyNames:xK}=Object;var yK=Object.prototype.hasOwnProperty;function gK(Q){return this[Q]}var hK,fK,x7=(Q,X,Y)=>{var $=Q!=null&&typeof Q==="object";if($){var W=X?hK??=new WeakMap:fK??=new WeakMap,J=W.get(Q);if(J)return J}Y=Q!=null?vK(TK(Q)):{};let G=X||!Q||!Q.__esModule?RQ(Y,"default",{value:Q,enumerable:!0}):Y;for(let H of xK(Q))if(!yK.call(G,H))RQ(G,H,{get:gK.bind(Q,H),enumerable:!0});if($)W.set(Q,G);return G};var E=(Q,X)=>()=>(X||Q((X={exports:{}}).exports,X),X.exports);var uK=(Q)=>Q;function lK(Q,X){this[Q]=uK.bind(null,X)}var y7=(Q,X)=>{for(var Y in X)RQ(Q,Y,{get:X[Y],enumerable:!0,configurable:!0,set:lK.bind(X,Y)})};var mK=Symbol.dispose||Symbol.for("Symbol.dispose"),cK=Symbol.asyncDispose||Symbol.for("Symbol.asyncDispose"),X0=(Q,X,Y)=>{if(X!=null){if(typeof X!=="object"&&typeof X!=="function")throw TypeError('Object expected to be assigned to "using" declaration');var $;if(Y)$=X[cK];if($===void 0)$=X[mK];if(typeof $!=="function")thr
error: EACCES: permission denied, open
      at J (/app/node_modules/@anthropic-ai/claude-agent-sdk/sdk.mjs:8:1483)
      at appendFileSync (/app/node_modules/@anthropic-ai/claude-agent-sdk/sdk.mjs:17:7619)
      at writeFn (/app/node_modules/@anthropic-ai/claude-agent-sdk/sdk.mjs:17:13324)
      at z (/app/node_modules/@anthropic-ai/claude-agent-sdk/sdk.mjs:17:12175)
Bun v1.2.17 (Linux x64 baseline)
=== Stdout ===