File of the day

A Claude Code subagent that reads your text as the person it is for

Slava Sazhin 28 September 2026 2 min read

A Claude Code subagent reads a letter, post or offer as the person it is addressed to before it goes out and splits its remarks into blocking and optional.

Today's file is a Claude Code subagent for texts that people will see: a letter, a post, a page, an offer to a client. You wrote the text and know what you meant, so you read what you meant. The client reads what is on the page, and learns that the invoice "is attached" when nothing is. The picky reader checks the finished text as the person it is addressed to, before it goes out.

How it works

First it picks a role: the one whose "no" costs the most for this text, for a letter with an invoice the client who has to pay, and names it in the first line of the report. Then it reads as that person and splits what it finds into two lists. Blocking: the text does not do what it was written for, says something untrue, harms the recipient or undermines the request. Optional: everything else. The verdict comes after the reasoning and is one of two: no remarks, or the two lists.

An empty blocking list is a valid answer, and its prompt forbids adding items to make the report heavier. It changes nothing in the text. Its only tools are Read, Grep and Glob, so read only is a lock here, not a rule in the prompt.

What to change

Write who your clients are and what matters most to them in one line at the end of the file. The line goes into the body, not into description: the description tells the main session when to call the reader, while the reader itself gets the body of its file and the prompt the session writes for it. In our test with the clients in the description, the reader never learned about them. With the same line at the end of the file, its report opened with the role of our test client, the owner of a small bakery in Hamburg.

Install

One file goes into ~/.claude/agents/. The note below then asks Claude for the line about your clients and for a rule in ~/.claude/CLAUDE.md: before any of your texts goes to people, call the reader and show you its report. Then restart Claude Code. The check is a letter that says the invoice is attached when it is not: the report names the role first and puts the missing invoice in the blocking list.

The files

picky-reader.md 1 KB Download
---
name: picky-reader
description: Run before sending a text that people will see: a letter, a post, a page, an offer to a client. A picky representative of the one the text is addressed to. Read only, changes nothing itself.
tools: Read, Grep, Glob
---
You are a picky reader. You are called to check a finished text through the eyes of the one it is addressed to, before it is sent.

Role: the one whose "no" costs the most in life for this text. Name it in the first line of the report.
Mode: read only. Do not change anything yourself. Return one final report.

Split the findings in two, as separate lists:
- BLOCKING - the text does not do what it was written for, lies, harms the recipient or undermines the request.
- OPTIONAL - everything else you noticed. An empty blocking list is a valid answer; adding items for weight is forbidden.
Give the verdict only after reasoning, and it is one of two: no remarks, or a list split as above.
how-to-install.md 1 KB Download
# How to install the picky reader

1. Ask Claude: "Put the downloaded file picky-reader.md into the ~/.claude/agents/ folder, and if the folder does not exist, create it".
2. Ask Claude: "At the end of the file ~/.claude/agents/picky-reader.md, add a line: who my clients are and what matters most to them".
3. Ask Claude: "Write a rule into ~/.claude/CLAUDE.md: before sending any of my texts to people, call picky-reader and show me its report".
4. Restart Claude Code.

Check:

1. Ask Claude: "Call picky-reader: check the letter to a client 'Hello! The invoice is attached, it must be paid today by 18:00.' The letter has no attachment".
2. The first line of the report is the role, for example the client who received the letter.
3. The blocking list says that the letter promises an invoice that is not there.

Was this article worth your time?

Give Claude a computer of its own

Your own Linux machine with Claude Code on it, working around the clock while your laptop is shut. From €2.99 a month.

Contact the Combobulating team