Skip to content

netclaw stats

netclaw stats tells you where your tokens are going, how many sessions are running, and whether memory is healthy. It also covers channel activity, webhook deliveries, and reminders. --json for scripts, --tui for a live dashboard.

Terminal window
netclaw stats [options]
netclaw stats skills [options]

Requires a running daemon. If it’s not up, start it with netclaw daemon start (or run netclaw init which starts it for you).

FlagDescriptionDefault
--days <N>Show trailing N-day daily breakdownNone (omits daily table)
--allShow all-time daily breakdownOff
--tuiVisual TUI dashboardOff
--jsonAlias for --format json
--format <text|json>Output formattext
Terminal window
netclaw stats

netclaw stats showing token usage, sessions, memory, channel activity, webhooks, and reminders

Without --days or --all, you get process-lifetime counters plus current snapshot data. No daily table.

SectionWhat it shows
this processToken consumption (in/out), turns completed, memories formed/recalled, skills loaded
sessionsTotal, active, and all-time turn count
memoryStatus (healthy, degraded, unavailable), anchor/document/record/edge counts, pending checkpoints
skillsTotal available skill count
<channel>Per-channel events (recv/routed/dropped) and replies (posted/rejected/failed)
webhooksRoute counts, delivery stats, rejection breakdown by HTTP status
remindersScheduled, active, and failed counts

The “this process” counters live in the daemon process’s memory and reset when the daemon restarts. Everything else (sessions, memory, daily breakdown) is persisted to SQLite and survives restarts.

If memory status shows degraded or unavailable, run netclaw doctor --fix to fix common issues automatically.

Add --days to see a per-day table of token usage and activity:

Terminal window
# Last 14 days
netclaw stats --days 14
# All time
netclaw stats --all

Columns: date, input/output tokens, turns, sessions, memories formed/recalled, skills loaded. When more than one day of data is returned, a totals row appears at the bottom.

Terminal window
netclaw stats --tui

Opens a full-screen dashboard. --tui always shows an ASCII bar chart of daily token usage, defaulting to the last 7 days. Pass --days N to change the window:

Terminal window
netclaw stats --tui --days 30

The lower half of the dashboard shows the Daily Token Usage bar chart by default. Memory, per-channel, and Webhooks panels take its place when there’s no daily breakdown data.

Q, Escape, or Ctrl+C to quit.

stats skills shows per-skill load counts broken down by day and invocation method (e.g., direct, auto, scheduled):

Terminal window
# Last 7 days (default)
netclaw stats skills
# Last 30 days
netclaw stats skills --days 30
# All time
netclaw stats skills --all

Each day shows total loads, a method breakdown, and per-skill counts (top 15). --tui doesn’t work with stats skills.

Terminal window
netclaw stats --json
Terminal window
# Total input tokens since daemon started
netclaw stats --json | jq '.tokens.inputTokensTotal'
# Daily token usage for the last 7 days
netclaw stats --days 7 --json | jq '.dailyBreakdown[] | {date, inputTokens, outputTokens}'
# Active session count
netclaw stats --json | jq '.sessions.activeSessions'
# Memory health status
netclaw stats --json | jq -r '.memory.status'

stats skills --json returns a separate shape with daily skill load breakdowns:

Terminal window
netclaw stats skills --json | jq '.daily[] | {date, totalLoads}'
CodeMeaning
0Success
1Daemon unreachable or error response

stats queries http://127.0.0.1:5199 by default. Override with:

  • NETCLAW_DAEMON_ENDPOINT environment variable
  • ~/.netclaw/client/config.json

See netclaw status for more on endpoint configuration.

You’ll see one of two errors:

Connection refused — the daemon process isn’t running at all:

[FAIL] stats: unable to reach daemon at http://127.0.0.1:5199: Connection refused
fix: run `netclaw daemon start` and retry.

503 response — the daemon is up but not ready (still starting, or something broke):

[FAIL] stats: daemon returned 503 from http://127.0.0.1:5199
fix: run `netclaw daemon start` and retry.

For 503s, netclaw doctor --fix can often sort out what’s wrong without a restart.

  • netclaw status — live health check for daemon, connectors, and model
  • netclaw doctor — config diagnostics with --fix for auto-repair
  • netclaw sessions — if stats show unexpected session counts, dig into individual conversations here
  • netclaw init — first-run setup (starts the daemon for you)