← All prompts

Self-Review: How Do You Actually Use Claude Code?

Reads every session transcript on your machine and reports back, bluntly, how you really drive the tool.

The prompt

Analyze how I actually work with Claude Code, using my real transcripts.

DATA
Read my session logs in ~/.claude/projects/**/*.jsonl. Each line is a JSON
event. Extract only messages I typed myself: type=="user" with text content.
Discard tool_result blocks, <system-reminder> blocks, <local-command-stdout>,
hook output, and "Caveat:" lines - those are noise, not me.

MEASURE (report the real numbers, don't estimate)
- Sessions, total messages I typed, date range, projects touched
- Message length: median, % under 10 words, % that are bare "go/yes/ok/commit"
- How often I interrupt mid-turn, and the trend over time
- How often I re-send the same message with a missing detail appended
- Plan mode (ExitPlanMode) and TodoWrite usage vs. total sessions
- Tool-call distribution across all sessions
- How I verify work: screenshots, live URLs, tests, or taking claims on faith
- Manual /compact and "resume"/"where were we" frequency
- Any place I pasted a credential into the terminal (report THAT it happened,
  the date and the project - never the value, never grep for the value itself)

THEN TELL ME
1. What my working style actually is, in plain terms.
2. What I'm genuinely good at - with a short quoted example for each claim.
3. Where the style costs me - same, with evidence. Find the repeated
   failure patterns, not one-off bad days.
4. A rating table across dimensions you think matter, 1-10, plus one overall
   number. Separate "how good an engineer this person is" from "how well they
   drive this tool" if those differ.
5. The 3-5 changes ranked by payoff. Concrete: a keystroke, a habit, a rule.
   No generic advice I could have gotten from a blog post.

PRIVACY (this output will be shared)
- Mask every swear word and insult: f***, s***, "you i***t". Keep the tone
  visible, not the word.
- Never print a token, password, API key, SSH detail, or account number, even
  partially, even if I pasted it myself. Say "a GitHub token was pasted on
  <date>" and stop there.
- Redact my email, real domains, server IPs, and any third party's name from
  quotes. Replace with <email>, <mydomain>, <server>, <person>.
- Keep quotes under ~12 words.

RULES
Be blunt. No flattery, no softening, no compliment sandwich. If the data
contradicts a nice story about me, say the data. Every claim needs evidence
from the logs. If you can't measure something, say so instead of guessing.

Read-only, runs entirely on your machine, and censors itself so you can screenshot the result.

Why the RULES block matters

Without it you get a horoscope. With it you get sentences like “you are solving a mode problem with anger”, which is not pleasant but is considerably more useful than being told you communicate efficiently. If the output comes back glowing with no criticism at all, the block needs to be harsher.

Do not turn the credential check into a secret scan

It is deliberately shaped as report that it happened, with a date, never the value. Rewrite it into a literal scan and a permissions classifier will block it, and it should. The point is to find out whether you have a problem, not to dump the problem into a chat log.

What it found here

422 sessions, 1,822 messages typed by hand, eight weeks, twenty-five projects. Plan mode used three times. TodoWrite, zero. The habit I complained about most turned out to be a keystroke I never pressed.

Background: the post this came from →

Comments