A structured markdown syntax for iterating on documents with Claude AI
Frequently asked questions about the Document Iteration Skill.
This syntax helps you give precise feedback on documents when working with Claude. Instead of vague chat comments like “fix section 3”, you mark exactly what you mean.
Yes! Any markdown file. Technical docs, creative writing, planning documents, research papers - anything you’re iterating on.
No. Just a text editor. The syntax is plain markdown with some conventions.
%% and •%%>?%% comment %% - You write these for feedback•%%>response <%%• - Claude writes these as responses•%%> NOTE: <%%• - Claude can add these as helpful context(DB)?When you have multiple things to comment on in the same area. Tokens link your ==highlight(TOKEN)== to your %%(TOKEN) comment %%.
Add %% APPROVED %% after the section heading:
## Pricing %% APPROVED %%
Claude won’t modify approved sections.
Make sure you:
SKILL.md to your Claude project%% comment %% (two percent signs each side)Check that your token in ==text(TOKEN)== matches exactly with %%(TOKEN) comment %%. They’re case-sensitive.
This is a skill violation. Even with strict rules in SKILL.md, Claude may occasionally delete user comments when processing feedback.
What happened: Claude removed your %% comment %% instead of keeping it and adding a •%%>response <%%• below.
What to do:
•%%>response <%%• markersWhy this happens: The skill rules are clear, but execution can fail. This is rare but possible, especially with action-oriented comments like “move this” or “add that”.
Prevention tips:
See Mandatory Rules for examples of correct behavior.
%% instead of •%%> when creating new documentsWhat happened: When you ask Claude to create a new document (proposal, plan, draft), it adds notes using %% my note %% instead of the correct •%%> NOTE: my note <%%•.
Why: When “authoring” rather than “responding to feedback,” Claude can slip into using %% %% syntax because it’s writing the document from scratch.
What to do:
•%%> not %%”Prevention:
%% = user ONLY, •%%> = Claude ONLY. No exceptions, even when creating new documents.What happened: Claude added %% comments %% of its own (not responses), or marked sections %% APPROVED %% without you asking.
Why: Claude sometimes interprets patterns and “helps” by adding markup it shouldn’t.
What to do:
•%%>”Prevention:
What happened: Instead of •%%>Updated! <%%•, Claude says “I’ve updated the database section for you.”
Why: Claude defaults to chat-style responses.
What to do:
Prevention: