cookd

skill
Security Audit
Fail
Health Warn
  • License — License: MIT
  • Description — Repository has a description
  • Active repo — Last push 0 days ago
  • Low visibility — Only 5 GitHub stars
Code Fail
  • rm -rf — Recursive force deletion command in package.json
  • process.env — Environment variable access in scripts/seed-device.mjs
  • network request — Outbound network request in scripts/seed-device.mjs
  • exec() — Shell command execution in src/adapters/claude-code/transcript.ts
Permissions Pass
  • Permissions — No dangerous permissions requested

No AI report is available for this listing yet.

SUMMARY

Watch your Claude Code token window burn. Get roasted when it closes.

README.md

cookd

npm

THE ANTISOCIAL NETWORK.

Claude slammed the door. You have five hours.

Claude Code enforces a 5-hour rolling window on token usage. Every request counts against it — input tokens, output tokens, cache writes, agent turns, the whole ledger. When the window fills, Claude stops answering. No warning. One error message. Five hours on the clock.

Most developers doomscroll. Some switch to Gemini and feel bad about it. Some just close the laptop and stare at the ceiling. None of them get a roast card.

cookd is a two-part system. The companion — what you are reading right now — runs on your machine. It watches your local Claude Code transcripts, extracts the numbers, and syncs them to your dashboard in real time. The app shows you where you are: what percentage of your window is gone, which models you hit hardest, how fast you burned through it, which project consumed the most context. There is a Tonight's Anatomy: a live breakdown of your current session — prompt count, tool usage by function name, agent runs, cache hit rate, how long it took from your first prompt to the wall.

When you hit the limit, a roast card prints. It is generated by a sardonic tabloid editor who has studied your specific crimes — your real numbers: tokens burned, tools called, how deep into bypass-permissions mode you went, which model took the most punishment. It is, depending on your crimes, somewhere between accurate and deeply unfair.

You share it wherever your developer community lives. Someone who receives it wants their own. That is the loop.

cookd exists because the rate-limit wall gives you nothing when it hits. Just a timestamp and five hours of ceiling. This fills that gap — with numbers, with context, and with something shareable when you'd rather laugh about it than stare at the ceiling.

npx @codeclowns/cookd init

what happens

You run npx @codeclowns/cookd init. The companion reads your local Claude Code transcripts — token counts only, never content. It prints your field notes: how many tokens you torched, how fast you burned, what percentage of your window is gone. Then it generates a six-character press code.

You enter the press code in the app. The editor reads your file. A roast card prints. It is specific. It uses your real numbers. It is, depending on your crimes, somewhere between funny and deeply accurate.

You share it wherever your developer community lives. Someone who receives it wants their own. That is the loop.


the companion commands

npx @codeclowns/cookd init       # link this machine to your account
cookd status         # how deep are you right now
cookd watch          # start the background sync
cookd wrapped        # your full usage anatomy

what leaves your machine

The companion reads your Claude Code transcripts at ~/.claude/projects/. It extracts numbers and system identifiers. Here is exactly what gets transmitted.

Every sync:

  • Token counts by type: input, output, cache writes (5-min and 1-hour tiers), cache reads
  • Request timestamps
  • Anthropic model identifiers (e.g., claude-sonnet-4-6) — public strings defined by Anthropic, not specific to your account
  • Whether requests came from agent/subagent turns (boolean)
  • Whether you were in bypass-permissions mode (boolean — not what you typed)
  • Tool function names and call counts: [["Read", 47], ["Edit", 23], ["Bash", 11]] — names only, never arguments
  • Your current project's directory basename: cookd, my-app — never the full path
  • Derived aggregates: window percentage, session count, rate-limit hit count, peak hour, time-to-cook

When you hit the rate limit:

  • Timestamp, tokens used, token ceiling, minutes from first prompt to hit, top model, next reset time

Once, when you first link:

  • A deviceId — a random 32-character hex string generated locally. No email. No machine name. No username.

Never read or transmitted:

  • Anything you typed as a prompt
  • Anything a model returned
  • Code, file contents, or clipboard data
  • Tool arguments (what you asked each tool to do)
  • Full file paths

The complete field list is in src/sync/events.ts. The parser is in src/adapters/claude-code/transcript.ts. Local state lives at ~/.cookd/ with chmod 600 on all credential files. See SECURITY.md for the full per-field table.


the rolling window

Claude Code resets limits on a rolling 5-hour basis. cookd tracks your weighted token spend within that window and shows you what percentage of your limit you've torched.

Token weights: inputTokens × 1 · outputTokens × 4 · cacheCreationTokens × 1.25 · cacheReadTokens × 0.1


requirements

Node 22+. A terminal. A Claude Code session history. That last one is the only real requirement.

# one-time setup
npx @codeclowns/cookd init

# global install (for status / watch / wrapped without npx)
npm install -g @codeclowns/cookd

supported agents

agent status
Claude Code stable
Cursor coming soon
Windsurf coming soon
Gemini CLI coming soon

add an agent

cookd uses an open AgentAdapter interface. If your editor isn't listed, open a PR:

export interface AgentAdapter {
  readonly name: string;
  readonly displayName: string;
  detect(): Promise<boolean>;
  events(): Promise<UsageEvent[]>;
  watch(cb: () => void): () => void;
}

See CONTRIBUTING.md for the full spec and a worked example.


contribute

Bug reports, feature requests, and adapter PRs are welcome. Read CONTRIBUTING.md first.


license

MIT © 2026 CodeClowns Technologies LLP


no email. no password. no tourists.

if you don't have a terminal, this isn't for you.

Reviews (0)

No results found