Agent skill

Better Documents

by anildash in anildash/better-documents

Apply communication best practices when generating or reviewing any document, presentation, report, memo, slide deck, proposal, or email.

GPL-3.0Auto-check passedDocuments & Office

Install Better Documents

skills CLI
$ npx skills add anildash/better-documents --skill better-documents -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install anildash/better-documents better-documents --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
better-documents
GitHub stars
173
Token cost
~3.3k tokens
SKILL.md length
1,691 words
Files
5
Skills in repo
1
Repo updated
First seen
Licence
GPL-3.0

At a glance

Apply communication best practices when generating or reviewing any document, presentation, report, memo, slide deck, proposal, or email.

  • Works in 3 steps: Ask about brand or visual constraints… → If no brand guidance is given, default… → If the user explicitly wants visual…
  • Generate a document
  • SKILL.md covers Scope, Modes, The Five Passes and Output Format, plus 1 more section
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Better Documents is an agent skill from anildash/better-documents. Apply communication best practices when generating or reviewing any document, presentation, report, memo, slide deck, proposal, or email. Use this skill when asked to write, create, draft, or generate a document or presentation — apply the principles at generation time, not as an afterthought. Also use when asked to "review my doc," "look at this deck," "does this make sense," "is this clear," "improve this proposal," "check this before I send it," "make this more effective," or any request to evaluate whether a…

Its SKILL.md is about 3.3k tokens, which your agent loads only when the skill is triggered. The skill folder holds 4 other files (for example `BLOG-NOTES.md`, `README.md` and `document-design.md`).

It sits in Documents & Office, covering Slides and decks. The repository describes itself as: A SKILL.md for Claude that applies communication best practices to AI-generated and AI-reviewed business documents. The licence is GPL-3.0.

When your agent uses it

  • Generate a document
  • Presentation — apply the principles at generation time
  • Not as an afterthought
  • Asked to review my doc

Example prompts

  • “review my doc,”
  • “look at this deck,”
  • “does this make sense,”
  • “/better-documents”

Workflow steps

3 steps, taken from the first numbered list in SKILL.md.

  1. Ask about brand or visual constraints first. Does the user have brand
  2. If no brand guidance is given, default to neutral: black text on white,
  3. If the user explicitly wants visual styling, offer 2–3 distinct directions

What it can do on your machine

Read from SKILL.md and the folder at commit dd8d01d. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md.

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Links to these hosts (documentation or services it may open):

    • anildash.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Better Documents loads about 3.3k tokens when it runs. Until then it costs about 176 tokens; SKILL.md has 1,691 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~176
When it runs · the whole SKILL.md, loaded when a task matches
~3.3k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from anildash/better-documents at commit dd8d01d, republished under its GPL-3.0 licence (© anildash). 1,691 words, ~3,273 tokens.

Download SKILL.mdSave it as .claude/skills/better-documents/SKILL.md (or your agent's skills folder). This skill also uses 4 other files; get the full folder from GitHub.
name
better-documents
description
Apply communication best practices when generating or reviewing any document, presentation, report, memo, slide deck, proposal, or email. Use this skill when asked to write, create, draft, or generate a document or presentation — apply the principles at generation time, not as an afterthought. Also use when asked to "review my doc," "look at this deck," "does this make sense," "is this clear," "improve this proposal," "check this before I send it," "make this more effective," or any request to evaluate whether a document will land with its audience. Use this skill even when the request seems minor — a "quick look" or a "short memo" is exactly when these principles matter most.

Document Review

Apply communication best practices when generating or reviewing any business document — whether the right message reaches the right audience in the right order.

This skill applies the principles from Anil Dash's Make better documents.

Scope

This skill covers business documents: presentations, slide decks, proposals, reports, memos, briefs, one-pagers, and emails. It does not cover UI, web components, or frontend applications — use the frontend-design skill for those.

The design principles here differ from frontend design in important ways:

  • Restraint over expression. UI benefits from bold aesthetic commitment and distinctive visual personality. Business documents benefit from getting out of the way of the content. Most people reading a board deck or a client proposal are not there to appreciate the typography.
  • The audience can't interact. A web interface rewards exploration. A document gets one read, often skimmed, often on a small screen or printed. Every design choice that draws attention to itself is attention stolen from the message.
  • Non-designers are both authors and audiences. UI is built and consumed with design context nearby. Business documents are built by operators, analysts, executives, and founders — and read by the same. Complexity that a designer handles intuitively becomes noise for everyone else.

Modes

ModeWhen to useWhat you do
generate"write me a proposal," "create a deck," "draft a memo"Apply all five principles while producing the document; no separate report needed
full-review"review this doc," "look at this deck"Run all five passes on an existing document, produce a structured report
rewrite"fix this," "make this better"Apply all passes and return a revised version
targeted"is the ask clear," "check the formatting"Run only the relevant pass(es)
quick"quick look," "does this work"Run passes 1 and 2 only, flag the top 3 issues

Default to generate when producing a new document from scratch. Default to full-review when given an existing document with no other instruction.


The Five Passes

Apply these in order. Each targets a different failure mode.

Pass 1 — Audience and Purpose

The most common reason documents fail: they were written for the author, not the reader.

Check for:

  • Missing context: Does the document assume knowledge the audience may not have? Flag any jargon, backstory, or acronyms that aren't explained.
  • Buried ask: Is there a request, decision, or action needed? If so, is it stated clearly in the first third of the document — not saved for the end?
  • Author-centered opening: Does the document open with the author's anxieties, backstory, or credentials rather than shared context? Flag and suggest reordering to start from common ground.
  • Missing deadline or stakes: If a decision or response is needed, is the timeline stated? Is the reason for that timeline explained from the audience's perspective, not just the author's?

Severity guide:

  • CRITICAL — The core ask or decision is absent or appears only at the end
  • MAJOR — The audience is unclear; the document would read differently to different readers
  • MINOR — Context gaps that could be filled with a sentence

Pass 2 — Structure and Sequencing

Order signals importance. Audiences assume the first thing is the most important. If it isn't, they'll be confused or dismissive before they reach the part that matters.

Check for:

  • Creation-order sequencing: Is the document structured in the order it was written (background → analysis → conclusion) rather than the order the audience needs (conclusion → supporting logic → call to action)?
  • Murder mystery structure: Does the document build to a reveal rather than stating the point upfront? Flag any document where the key conclusion or request appears in the second half.
  • Unannounced ordering: If the document is ordered chronologically, by category, or by any logic other than importance, is that explicitly stated? If not, the audience will hunt for meaning in the sequence.
  • Key information in the wrong channel: Is anything critical only in speaker notes, appendices, or footnotes? Central points belong in the main body.

Severity guide:

  • CRITICAL — The document's conclusion or core request is in the second half
  • MAJOR — Ordering is non-obvious and unexplained
  • MINOR — Supporting points could be reordered for better flow

Pass 3 — Formatting Restraint

Over-formatting is the most visible symptom of unclear thinking. When everything is emphasized, nothing is.

Check for:

  • Emphasis overload: Are bold, italic, underline, and color being combined on the same text? Flag any instance of two or more emphasis types on a single element.
  • Underlines on non-links: Flag every underline that isn't a hyperlink. Underlines exist to signal clickability; using them decoratively confuses readers.
  • Color proliferation: Count distinct colors in use (excluding images). More than two is almost always a problem. More than three is always a problem.
  • Border clutter: Flag tables and sections with heavy borders. White space separates content more clearly than lines.
  • Filler visuals: Flag images, icons, or clip art that aren't specific to the content's message. A blank space is better than a stock photo.
  • Formatting inconsistency: Do headings, titles, or labels vary in size, weight, or color across the document without clear reason? Flag inconsistencies that will read as meaningful to an audience even if they weren't intentional.

Severity guide:

  • CRITICAL — Formatting inconsistencies that will be read as semantic signals (e.g., random font changes mid-document)
  • MAJOR — Overuse of emphasis that makes it impossible to identify what's actually important
  • MINOR — Minor decoration that adds noise without adding meaning

Pass 4 — Wayfinding and Density

Audiences need to know where they are in the story, and how far they have to go.

Check for:

  • No orientation: Is there any indication of structure — a brief outline, section headers, or progress markers — for documents longer than one page or five slides? If not, flag.
  • Unsummarized data: Does any chart, table, or data display appear without a title or caption that states what it shows? Readers shouldn't have to interpret data cold. Flag every chart or table whose title doesn't answer "what does this show?"
  • Unanswerable questions: Are there open-ended questions in the document (as headers or prompts) that can't actually be answered with a choice? Flag any question that could lead to a philosophical discussion instead of a decision. Good: "Do we go with Option A or Option B?" Bad: "How do we improve?"
  • Dense, unbroken prose: Are there paragraphs longer than ~6 lines where bullet points would make the content more skimmable without losing meaning?

Severity guide:

  • CRITICAL — Data presented without any interpretive framing
  • MAJOR — Long documents with no structural signposts
  • MINOR — Questions that could be made more answerable

Show full SKILL.md (626 more words)Show less
Pass 5 — Naming and Versioning

The title is information. Most document names throw it away.

Check for:

  • Generic or auto-generated title: Does the document have a title like "Untitled," "Draft," "Meeting Notes," or the name of the person it's addressed to? Flag and suggest a title that includes: topic, date, and context/owner.
  • Recipient-first naming: If the document is for someone at another organization, is it named after them rather than the author or topic? They'll search for it by your name, not theirs.
  • Version ambiguity: Does the filename or title use _v2, _final, _final_final, or sequential numbers without dates? Flag and suggest date-based versioning.
  • Meeting invites named after participants: If the document is tied to a meeting, flag any invite titled "Meeting with [Name]" — it tells the recipient nothing about what the conversation is for.

Severity guide:

  • CRITICAL — Untitled or generic title on a document intended for external sharing
  • MAJOR — Version ambiguity on any document with multiple drafts
  • MINOR — Suboptimal naming that could make retrieval difficult later

Output Format

Generate mode

Produce the document applying all five principles as first-order constraints — not as a post-hoc checklist. Specifically:

  • State the conclusion or ask in the opening, not the closing
  • Order content by importance to the audience, not by how it was assembled
  • Use the minimum formatting necessary: one emphasis type at a time, no decorative underlines, no more than two colors, white space over borders
  • Include structural signposts if the document is longer than one page or five slides
  • Give the document a title that includes topic, date, and relevant context

Override default visual style. Claude's default document aesthetic — warm cream backgrounds, serif display type (Georgia, Fraunces, Playfair), terracotta or amber accents, and a "small all-caps label over a body copy block" slide layout — is recognizable as AI-generated and inappropriate for most professional contexts. Do not apply it.

Instead, before generating any document with visual styling:

  1. Ask about brand or visual constraints first. Does the user have brand colors, a template, or a font they use? If so, follow those exactly.
  2. If no brand guidance is given, default to neutral: black text on white, one sans-serif typeface throughout, no decorative color. The content should do the work, not the palette.
  3. If the user explicitly wants visual styling, offer 2–3 distinct directions in one sentence each (e.g. "neutral/minimal," "bold/high-contrast," "warm/ editorial") and let them choose before proceeding. Do not pick for them.

No review report is needed in generate mode. The principles are baked in.


Full-review and targeted mode
## Document Review: [Title or description]

### Summary
[2–3 sentences: what the document is trying to do, how well it's set up to succeed,
the one or two changes that would most improve it]

### Pass 1 — Audience and Purpose [N issues]
[Each issue: location → what the problem is → suggested fix → severity]

### Pass 2 — Structure and Sequencing [N issues]
[Same format]

### Pass 3 — Formatting Restraint [N issues]
[Same format]

### Pass 4 — Wayfinding and Density [N issues]
[Same format]

### Pass 5 — Naming and Versioning [N issues]
[Same format]

### Top 3 Changes
[The three revisions that would most improve this document's effectiveness,
ranked by impact]
Rewrite mode

Return the revised document with a brief note after explaining what was changed in each pass and why. Do not explain every small edit — only the structural decisions that changed meaning or order.

Quick mode

Return only the top 3 issues found across passes 1 and 2, with a one-line suggested fix for each. No full report.


Constraints

  • Don't alter the author's voice. In review and rewrite modes, improve structure and clarity, not style. If a sentence is clear and effective, leave it.
  • Don't invent content. If information is missing (a deadline, a decision option, context for the audience), flag the gap — don't fill it in.
  • Ask before generating if the audience is unclear. In generate mode, if the request doesn't specify who will read the document or what decision it needs to drive, ask before writing. A document built for the wrong audience fails regardless of how well it's structured.
  • Be specific. Every finding must reference the actual text or location. Never say "consider clarifying" without showing where and how.
  • Respect intentional choices. If the document is explicitly a narrative or a mystery-format pitch, flag the structural convention as a risk rather than a violation.

Based on Make better documents by Anil Dash.

© anildash, GPL-3.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 4 other files in the repository root of anildash/better-documents.

  • SKILL.md
  • BLOG-NOTES.md
  • LICENSE
  • README.md
  • document-design.md

Open the folder on GitHubat commit dd8d01d

Compare with similar skills

Better Documents next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Better Documents compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Better Documents this skillanildash/better-documents173—~3.3kAutomated safety check: PassGPL-3.0
Image To Editable Pptningzimu/image-to-editable-ppt-skill2.8k—~4.3kAutomated safety check: PassMIT
Slidesfcakyon/claude-codex-settings1.2k1 repos~1.1kAutomated safety check: PassMIT
Ppt Image FirstNyxTides/ppt-image-first1.2k—~1.6kAutomated safety check: PassApache-2.0
Vibe to Agentic Engineering Frameworkshanraisshan/claude-code-best-practice67k—~3.3kAutomated safety check: PassMIT
Gpt Image2 PptJuneYaooo/gpt-image2-ppt-skills1.3k—~8.9kAutomated safety check: NotesApache-2.0

Similar skills

  • Image To Editable Ppt

    ningzimu/image-to-editable-ppt-skill

    Rebuild slide images, scanned or image-based PPT/PPTX files, and PDF decks into object-level editable PowerPoint (.pptx), preserving speaker notes when supplied.

    2.8k GitHub stars~4.3k tokensUpdated 23 days ago
    Documents & OfficeAuto-check passed
  • Slides

    fcakyon/claude-codex-settings

    Create and edit presentation slide decks (.pptx) with PptxGenJS, bundled layout helpers, and render/validation utilities.

    1.2k GitHub starsUsed in 1 repo~1.1k tokens
    Documents & OfficeAuto-check passed
  • Ppt Image First

    NyxTides/ppt-image-first

    Build presentation plans for PPT / slides / decks through a conversation-first workflow, then propose multiple visual directions with preview images before writing deck specs.

    1.2k GitHub stars~1.6k tokensUpdated 5 mo ago
    Documents & OfficeAuto-check passed
  • Vibe to Agentic Engineering Framework

    shanraisshan/claude-code-best-practice

    Explains the conceptual model behind a presentation on moving from unstructured vibe coding to fully configured agentic engineering, including its 4-level scoring system and slide conventions.

    67k GitHub stars~3.3k tokensUpdated today
    Documents & OfficeAuto-check passed
  • Gpt Image2 Ppt

    JuneYaooo/gpt-image2-ppt-skills

    Generate visually striking PPT slides via OpenAI's gpt-image-2 -- use any style in styles/<collection/STYLEID.md or mimic a user-supplied .pptx template; outputs high-res slide PNGs and a 16:9 .pptx.

    1.3k GitHub stars~8.9k tokensUpdated 1 mo ago
    Documents & OfficeAuto-check: notes
  • Compiledeck

    scunning1975/MixtapeTools

    Create and compile beautiful Beamer presentations following the Rhetoric of Decks philosophy.

    473 GitHub starsUsed in 2 repos~3.1k tokens
    Documents & OfficeAuto-check passed

Questions about Better Documents

What does Better Documents do?

Apply communication best practices when generating or reviewing any document, presentation, report, memo, slide deck, proposal, or email. Better Documents is an agent skill from anildash/better-documents. Apply communication best practices when generating or reviewing any document, presentation, report, memo, slide deck, proposal, or email.

When should I use Better Documents?

Better Documents fits situations like: generate a document; presentation — apply the principles at generation time; not as an afterthought; asked to review my doc.

How do I install Better Documents in Claude Code?

Run `npx skills add anildash/better-documents --skill better-documents -a claude-code`. Or copy the skill folder (the anildash/better-documents repository) into .claude/skills/better-documents in your project. Claude Code loads it when a task matches its description.

How do I install Better Documents in Codex?

Run `npx skills add anildash/better-documents --skill better-documents -a codex`. Or copy the skill folder (the anildash/better-documents repository) into .agents/skills/better-documents in your project. Codex loads it when a task matches its description.

Can I use Better Documents in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add anildash/better-documents --skill better-documents -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/better-documents, .gemini/skills/better-documents, .github/skills/better-documents and .opencode/skills/better-documents in your project.

What does Better Documents need to run?

SKILL.md names no scripts, command-line tools or credentials: Better Documents is instructions for the agent only.

Does Better Documents access the network?

SKILL.md names 1 domain. As links in the text: anildash.com. This is read from the text; nothing was executed.

Is Better Documents safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Better Documents use?

Better Documents is published under the GPL-3.0 licence (from the LICENSE file in the skill folder). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Better Documents use?

About 3.3k tokens (SKILL.md is roughly 13k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Better Documents?

Skills that share tags, products or a category with Better Documents: Image To Editable Ppt (ningzimu/image-to-editable-ppt-skill, 2.8k stars), Slides (fcakyon/claude-codex-settings, 1.2k stars), Ppt Image First (NyxTides/ppt-image-first, 1.2k stars) and Vibe to Agentic Engineering Framework (shanraisshan/claude-code-best-practice, 67k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Better Documents?

anildash (a GitHub user) maintains it in anildash/better-documents, which has 173 GitHub stars. The repository was last updated on July 24, 2026.

Source: anildash/better-documents on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.