How to review the Markdown your AI agents write
Bobby Huang ·
Use a rendered view for long files; raw text works for a quick check. Read the header first, then the goal, then the steps. When the agent rewrites the file, look only at what changed since you last read it, using a saved copy and diff or git diff. Fix small mistakes in place, but save in a way that leaves the lines you did not touch alone, so the next diff stays small. Tick off check-box tasks as you confirm them.
Key takeaways
- Agent output is meant to be reviewed, not written, so read it rendered and save the raw view for when the formatting looks wrong.
- Read the header, the goal and the open questions before the step list. They tell you if the rest is worth reading.
- When the file changes, review only what changed since your last read. A saved copy plus diff works without git.
- A small fix should change one line in the file. An editor that reformats the whole file makes every later diff noisy.
- Skimmark is a Markdown reader in development, designed around this loop. Its features are planned for v1.
If you run AI coding agents, you read a lot of Markdown you did not write. Claude Code, Codex and similar tools save their plans, handoffs, drafts and receipts as .md files. Some of those files change while you read them. Some change after you have already signed off.
Most Markdown apps are built for writing. Reviewing is a different job. You need to read fast, see what is new, keep your place, and fix the odd line without disturbing the rest. This guide lays out a review loop you can run with tools you already have.
Why agent Markdown needs a different kind of reading
When you write a file, you know what is in it. When an agent writes a file, you start from zero each time. And the agent may rewrite it again in a minute.
That leads to three habits worth building:
- Read the parts that decide whether the rest matters.
- After the first read, look only at what changed.
- Keep your own edits small, so the agent's next diff stays readable.
The rest of this guide covers each one.
Rendered or raw: pick per task
A rendered page is easier to skim. Headings stand out. Tables line up. Check-box lists look like lists. Long agent output reads faster this way.
Raw text still has a job. Switch to raw when:
- a table looks broken or did not render
- the header at the top shows up as a block of text
- you need to copy an exact path, command or id
A good default is to read rendered and check raw when something looks off.
A five-step review loop
1. Open the file where you already are
If you live in a terminal, open the file from the terminal. If you live in Finder or File Explorer, double-click it. The point is speed. A review you have to set up is a review you put off.
2. Read the header first
Many agents start a file with a YAML front matter block. It sits between two --- lines and holds fields like status, date, owner or an id. Read it first. If the status says draft or blocked, you know how to read the rest.
3. Read the goal and the open questions
Before the step list, find what the file is trying to do and what it is unsure about. A plan with a wrong goal is wrong in every step. An open question is often the one thing the agent needs from you.
4. Read the steps, then tick what you confirm
Agents often write tasks as check-box lists, - [ ] for open and - [x] for done. Tick a box when you have confirmed the step, not when the agent says it is done. That keeps the list honest.
5. Fix small mistakes in place, then save carefully
If one line is wrong, fix that line. Do not let your editor rewrite the rest of the file on save. More on that below.
Seeing what changed without re-reading everything
Once you have read a file, you do not need to read it again. You need to read the changes.
With git. If the file is in a git project, git diff -- path/to/file.md shows what changed since the last commit. For prose, git diff --word-diff is often easier to read than line diffs.
Without git. Save a copy when you finish reading, for example cp plan.md plan.seen.md. When the agent rewrites the file, run diff plan.seen.md plan.md. You see only what is new. Copy again when you are done.
In an editor. VS Code has a Markdown diff preview. If you already work in VS Code, that is a fine option.
The hard part is not the diff tool. It is remembering where you stopped. A saved copy is a simple way to mark "I have read up to here."
Keep your place when the file is rewritten
Depending on the app, a changed file may reload and jump you back to the top. Or it may not reload at all, so you read a stale copy without knowing it. Both cost you time.
Two habits help:
- Before you hand a file back to the agent, note the heading you were on.
- After a reload, check the top of the file for a new status or date before you scroll back down.
Fix a line without reformatting the file
Here is a common way agent diffs get noisy. You fix one typo. Your editor saves the file and also changes every * list marker to -, wraps long lines, or trims spacing. The text looks the same, but the diff now shows dozens of changed lines.
The next time the agent reads the file, it has to sort your one real change from all that noise. So do you.
What helps:
- Turn off format-on-save for Markdown files you review.
- After saving, run a diff and check that only your line changed.
- If your editor cannot avoid it, make the fix in a plain text editor instead.
Where Skimmark fits
Skimmark is a small, fast Markdown reader and editor for people whose AI agents write Markdown all day. It is in development and has not been released.
It is designed around the loop above. Planned for v1:
- Live Reload that reloads the file in place when an agent rewrites it, and keeps your Reading Position.
- Changes View that shows what changed since you last marked the file as seen, with no git needed.
- Edit in place on the rendered page, with a save that leaves the lines you did not edit byte-for-byte the same.
- Frontmatter Table that shows the YAML header as key and value rows.
- Check-box tasks you can tick on the page.
The app itself has no AI features. Your agents do the writing. Skimmark is planned as the calm place you read it.
Next reads in this series
Skimmark is in development. You can see what it is and follow along at skimmark.com.
Questions
- Should I read agent Markdown raw or rendered?
- Rendered for reading, raw for checking. A rendered page is faster to skim and shows tables and check-boxes as they are meant to look. Switch to raw when something looks broken, such as a table that did not render or a header that shows up as text.
- How do I see what an agent changed in a Markdown file without git?
- Save a copy of the file each time you finish reading it. When the agent rewrites the file, run diff on the saved copy and the new file. Only the changed lines show up.
- Why does my agent's Markdown diff show changes on lines nobody touched?
- Some editors rewrite the whole file on save. They change list markers, wrap long lines, or change spacing. The text means the same thing, but every changed byte shows up in the diff.
- Does Skimmark use AI?
- No. There are no AI features inside the app. Skimmark is for people whose AI agents write Markdown. The agents do the writing; Skimmark is planned as the place you read and review it.