coderClaw

Diagnostics Flags

Diagnostics flags let you enable targeted debug logs without turning on verbose logging everywhere. Flags are opt-in and have no effect unless a subsystem checks them.

How it works

Enable via config

{
  "diagnostics": {
    "flags": ["telegram.http"]
  }
}

Multiple flags:

{
  "diagnostics": {
    "flags": ["telegram.http", "gateway.*"]
  }
}

Restart the gateway after changing flags.

Env override (one-off)

CODERCLAW_DIAGNOSTICS=telegram.http,telegram.payload

Disable all flags:

CODERCLAW_DIAGNOSTICS=0

Where logs go

Flags emit logs into the standard diagnostics log file. By default:

/tmp/coderclaw/coderclaw-YYYY-MM-DD.log

If you set logging.file, use that path instead. Logs are JSONL (one JSON object per line). Redaction still applies based on logging.redactSensitive.

Extract logs

Pick the latest log file:

ls -t /tmp/coderclaw/coderclaw-*.log | head -n 1

Filter for Telegram HTTP diagnostics:

rg "telegram http error" /tmp/coderclaw/coderclaw-*.log

Or tail while reproducing:

tail -f /tmp/coderclaw/coderclaw-$(date +%F).log | rg "telegram http error"

For remote gateways, you can also use coderclaw logs --follow (see /cli/logs).

Notes