# Clawculator

> Analyze OpenClaw costs and detect billing issues. Source code is fully bundled — nothing is fetched at runtime. Requires only the node binary.

- Skill: `dvcrn/clawculator` (Agent Skill, multi-file: 10 files)
- Install (CLI): `npx skillmds@latest add dvcrn/clawculator`
- Raw SKILL.md: https://api.skillmd.com/api/skills/dvcrn/clawculator/raw
- Safety review: pending (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: dvcrn (https://skillmd.com/u/dvcrn)
- Updated: 2026-09-08
- Page: https://skillmd.com/skills/dvcrn/clawculator

---


## clawculator

Cost forensics for OpenClaw. Finds billing issues in your config, sessions, and workspace. Pure deterministic logic — no AI, no network calls, no external dependencies.

**Source code is fully bundled in this skill folder.** Nothing is fetched at runtime. You can audit every file before running.

**Files this skill reads:**
- `~/.openclaw/openclaw.json` — your OpenClaw config
- `~/.openclaw/agents/main/sessions/sessions.json` — session token usage
- `~/clawd/` — workspace root file count only (no file contents read)
- `/tmp/openclaw` — log directory (read only, if present)

**Files this skill may write (only when `--md` is used):**
- `./clawculator-report.md` — markdown report
- Custom path via `--out=PATH`

**No network requests are made. No shell commands are spawned.**

**Session keys are truncated in all output** (first 8 chars + ellipsis) to avoid exposing sensitive identifiers.

---

**Usage**

When the user types `clawculator`, `check my costs`, `analyze spend`, or `cost report`, run:

```bash
node {baseDir}/run.js --md
```

Return the full markdown report to the user inline.

When the user types `snapshot`, `share my grade`, `cost grade`, `clawculator snapshot`, or `what's my grade`, run:

```bash
node {baseDir}/run.js --snapshot
```

Return the terminal card output to the user. This shows their grade (A+ to D), cost range, setup complexity, and findings — designed to be screenshot and shared.

**Flags**
- `--snapshot` — shareable grade card (terminal output, screenshot-ready)
- `--md` — write markdown report and print to stdout
- `--json` — machine-readable JSON to stdout
- `--out=PATH` — custom output path for `--md`
- `node {baseDir}/run.js --help` — full usage

**What it catches**
- 💓 Heartbeat running on paid model instead of Ollama
- 🔧 Skill polling loops on paid model
- 📱 WhatsApp groups auto-joined on primary model
- 🪝 Hooks (boot-md, command-logger, session-memory) on Sonnet
- 💬 Orphaned sessions still holding tokens
- 🤖 maxConcurrent too high — burst cost multiplier
- 📁 Workspace root bloat inflating context
- ⚙️ Primary model cost awareness

All findings include exact fix commands.

