friskme

See what your agent sessions were actually for.

One command reads the last month of sessions from your coding agents, such as Claude Code and Codex, and writes a report on your own machine. It shows what you used the agents for, which workflows you keep repeating, where tokens went to waste, and any secrets that leaked into a transcript.

npx friskme

Needs Node 22.15 or newer.

MIT licensed. You don't need an account, and friskme sends no telemetry.

friskme, exploded viewA probe drawn in five parts. A, the reader, receives session files from each coding agent's folder, such as ~/.claude and ~/.codex, read-only. B, the redactor, masks secrets and personal data. C, the analyzer, connects to a model CLI you already use, such as claude or codex, under your own login, only after asking, and can be skipped with --no-llm. D, the counter, computes waste, tokens and dollars. E writes the report: report.html, report.json and skills.~/.claude~/.codexmore agentsyour model CLIand loginoptional: --no-llmreport.htmlreport.jsonskills/A Readerreads sessions, read-onlyB Redactormasks secrets and PIIC Analyzerasks, then names intentsD Counterwaste, tokens, dollarsE Reportwritten to frisk-report/last 30 days by default
Fig. 1 friskme in exploded view, parts lettered in the order they run.

What the report shows

Intents
The plain-language jobs behind your sessions, and their share of your time.
Repeated workflows
Jobs you keep doing the same way, each with a draft SKILL.md you can review and install.
Waste
Loops that kept failing, the same command run over and over, error streaks and abandoned turns, each priced in tokens and dollars.
Sensitive data
API keys and personal data that surfaced in your sessions, masked, with a list of what to rotate.

Open a sample report built from synthetic sessions.

One run, part by part

Each letter matches a part in Fig. 1.

  1. Reader

    Reads each coding agent's session files from its own folder, like ~/.claude/projects or ~/.codex/sessions, and scans them for secrets and personal data as it reads. It never changes anything in those folders.

  2. Redactor

    Turns each session into a short card: your first prompt, a few follow-ups, the project folder name and coarse tool names. Anything the scan found is masked before the card is cached or sent.

  3. Analyzer

    Tells you how many model calls it plans and waits for your yes. A model CLI you already use, like claude or codex, then names the intents and drafts skills under your own login. Pass --no-llm to skip this part.

  4. Counter

    Finds loops, repeated commands, error streaks and abandoned turns, and adds up tokens and dollars at API list price. friskme computes every number itself, not the model.

  5. Report

    Writes frisk-report/report.html, report.json and draft SKILL.md files to your current folder. You decide which skills to install.

Your sessions stay on your machine

friskme makes no network calls of its own. Only your model CLI sends anything out, under your own login and after you say yes, and --no-llm stops that too. Nothing goes to FriskAI.

The docs list which agents friskme reads and what is sent where.

What leaves your machineInside your machine, friskme reads session files read-only and writes frisk-report. It hands redacted session cards to your own model CLI, such as claude or codex, only after you say yes. That command calls its model provider under your login. Nothing goes to FriskAI.Your machinefriskmesession filesread-onlyfrisk-report/your model CLIclaude, codex, …after yousay yesmodel providerunder your loginredactedcardsFriskAInothing
Fig. 2 What crosses the edge of your machine.