Diagram Design
cathrynlavery/diagram-design
Creates branded diagrams, from architecture, flowchart and sequence to charts and maps, as self-contained HTML with inline SVG, with import from draw.io, Mermaid and Excalidraw.
Review prose written for others (e.g., user-facing documentation, prompts for other LLMs, reports, plans, inline comments, docstrings) for local jargon leakage, orphaned references, missing…
$ npx skills add w-winter/dot314 --skill prose-review -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install w-winter/dot314 prose-review --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/w-winter/dot314.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/prose-review .claude/skills/prose-review && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "prose-review" agent skill from https://github.com/w-winter/dot314/tree/main/skills/prose-review into .claude/skills/prose-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "prose-review", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/w-winter/dot314/tree/main/skills/prose-reviewType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add w-winter/dot314 --skill prose-review -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install w-winter/dot314 prose-review --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/w-winter/dot314.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/prose-review .agents/skills/prose-review && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "prose-review" agent skill from https://github.com/w-winter/dot314/tree/main/skills/prose-review into .agents/skills/prose-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "prose-review", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add w-winter/dot314 --skill prose-review -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install w-winter/dot314 prose-review --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/w-winter/dot314.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/prose-review .cursor/skills/prose-review && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "prose-review" agent skill from https://github.com/w-winter/dot314/tree/main/skills/prose-review into .cursor/skills/prose-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "prose-review", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/w-winter/dot314.git --path skills/prose-review--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add w-winter/dot314 --skill prose-review -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install w-winter/dot314 prose-review --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/w-winter/dot314.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/prose-review .gemini/skills/prose-review && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "prose-review" agent skill from https://github.com/w-winter/dot314/tree/main/skills/prose-review into .gemini/skills/prose-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "prose-review", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install w-winter/dot314 prose-reviewInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add w-winter/dot314 --skill prose-review -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/w-winter/dot314.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/prose-review .github/skills/prose-review && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "prose-review" agent skill from https://github.com/w-winter/dot314/tree/main/skills/prose-review into .github/skills/prose-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "prose-review", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add w-winter/dot314 --skill prose-review -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install w-winter/dot314 prose-review --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/w-winter/dot314.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/prose-review .opencode/skills/prose-review && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "prose-review" agent skill from https://github.com/w-winter/dot314/tree/main/skills/prose-review into .opencode/skills/prose-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "prose-review", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
prose-reviewReview prose written for others (e.g., user-facing documentation, prompts for other LLMs, reports, plans, inline comments, docstrings) for local jargon leakage, orphaned references, missing…
Prose Review is an agent skill from w-winter/dot314. Review prose written for others (e.g., user-facing documentation, prompts for other LLMs, reports, plans, inline comments, docstrings) for local jargon leakage, orphaned references, missing grounding, and audience or genre mismatch. Always run on prose you produce or materially edit, except for routine conversational messages (e.g., progress updates, confirmations, concise replies) and unchanged quoted text.
Its SKILL.md is about 3.6k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Development, covering Technical documentation. The licence is MIT.
7 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 0c6bbc7. It shows what the files ask for, not the result of running them.
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.
Shell commands in SKILL.md call:
gitFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use git, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Prose Review loads about 3.6k tokens when it runs. Until then it costs about 106 tokens; SKILL.md has 2,085 words of instructions outside code blocks.
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.
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.
The full file from w-winter/dot314 at commit 0c6bbc7, republished under its MIT licence (© w-winter). 2,085 words, ~3,584 tokens.
.claude/skills/prose-review/SKILL.md (or your agent's skills folder).Review prose written to be read by someone else for language that doesn't belong in text its intended reader will encounter, and for missing grounding that a cold reader would need. Fix problems directly.
The main in-scope forms are:
User-facing documentation: READMEs, guides, reference docs, help text
Prompts for other LLMs: skills, system prompts, agent instructions, handoffs, task briefs
Inline comments: the // and # prose a maintainer reads next to the code
Docstrings: function, class, and module documentation, including generated API docs
Other-facing messages: issue or PR comments, status notes, release notes, messages, emails, and similar prose when the operator names them
The same failure modes run through all of them.
Before reviewing each file or standalone artifact, state in one line who reads it, what they are trying to do, what they can and cannot see, and what genre it is (user README, contributor or architecture doc, operator runbook, agent prompt, handoff, task brief, inline comment, docstring, message, email, issue comment). Every judgment below is relative to that reader and purpose, not to a generic "new reader." Implementation detail is correct in a contributor-facing architecture doc or an inline comment and wrong in a user README; "what changed" is correct in a changelog and wrong in reference docs. Do not strip detail that this file's actual reader needs.
The intended reader must be able to use each artifact correctly with only its text and explicitly named, reachable dependencies, without access to the session, private plans, or other local material that informed the recent edits.
For prompts, handoffs, and task briefs: could a cold-start agent act correctly from this text and any explicitly named, reachable files, without access to the context window you currently have and without having to guess? For comments and docstrings: could a maintainer who can read the surrounding code, but who wasn't present when it was written, understand what this text is telling them?
Call this operational closure: every dependency needed to understand or act is either contained in the artifact or identified through a path or access method the recipient can actually use.
Then ask the second question, which decoding alone never answers: is this language situationally appropriate for that reader, with the right register, level of detail, and content for this point in the document? A sentence can be fully comprehensible to a README-reading human and still be badly designed for them.
Implementation-plan language: internal field names, spec edge-case notes, architecture references, phrases like "reserve the timestamp column" or "compact display buckets" that reflect how something was built rather than what a user or other agent sees
Changelog/diff language: "does not change X", "deliberately preserves Y", "without affecting Z", "is intentionally out of scope." These compare against a prior version the reader has no baseline for. In comments and docstrings this shows up as narrating the edit ("now also handles X", "moved from Y", "renamed for clarity") instead of describing the code as it currently stands. Genre exception: when the file under review is a changelog, release note, migration guide, task retrospective, planning doc, PR description, or a handoff or task brief whose purpose is to transmit current state and remaining work, this language may be the point of the document. Preserve necessary temporal deltas, and don't "fix" them into timeless prose. The test is never whether the text refers to a prior state; it is whether this reader opened this file expecting it to
Internal jargon: type names, config key internals, data-flow descriptions that only matter to contributors
Agent/session artifacts: review constraints, schema-version strategy, compatibility decisions leaked from planning conversations
Orphaned deixis: "this", "that", "the above", "as discussed", "the same approach", "the earlier plan", "continue from here." These references depend on a referent in the authoring session or a private plan rather than the document; restate the referent or delete the reference. In comments this also covers pointers the reader cannot open: ticket numbers, plan filenames, review threads, "per the discussion"
Terms used as if defined: project-specific terms, acronyms, and metric names that the reader needs but that are defined nowhere they can see; the fix is a local definition or glossary entry, not deletion
Unreachable dependencies: instructions that require files, systems, credentials, or steps the reader has no path to discover or perform from where they stand
Under-grounded prompts, handoffs, and task briefs: missing task goal, inputs or paths, definitions, decision-relevant constraints or rationale, expected output, success criteria, or stop conditions; required dependencies that are neither included nor named in a reachable way. Anything that forces a cold-start recipient to guess or confabulate
Under-grounded comments and docstrings: a comment that restates what the code plainly does while omitting the non-obvious constraint, invariant, or reason the code is shaped that way; a docstring that assumes caller context the caller cannot see (units, ownership, error behavior, what the caller must guarantee)
Omission failures are as common as leakage and harder to see, because the text reads fine to anyone who already has the context. Hunt for them by simulating the named reader, not by scanning for bad phrases. The appropriate fix for omission is often addition rather than removal.
Register mismatch: engineering-internal voice in text a non-engineer reads; clipped note-taking style where a user needs a sentence; ceremony and hedging where a maintainer wants one line
Granularity mismatch: exhaustive precision where the reader needs the shape of the thing, or a vague gesture where they need the exact flag, path, or value
Relevance mismatch: accurate, defined, and decodable, but not what this reader needs at this point: rationale nobody asked for, caveats that matter to three people, edge cases placed ahead of the common path
Order mismatch: material arranged in the author's discovery order rather than the reader's need or dependency order, so the reader must carry unexplained terms until they pay off later
Answer-display mismatch: text demonstrates that the author possesses all the relevant concepts but does not construct a usable path from the recipient's starting point. The expected terms are present, but hierarchy, prerequisites, emphasis, or a clear through-line are missing
Misfit is the failure mode that survives a careful leakage-and-omission pass, because every individual sentence is true, defined, and readable. Catch it by asking what the reader came to this file to do, and whether this paragraph helps them do it right now.
Also catch any other pragmatic perspective-taking error that produces poor recipient design. One common pattern resembles the "curse of knowledge" described by Colin Camerer, George Loewenstein, and Martin Weber: language models behave as though human or AI recipients share the current context window or ephemeral planning artifacts, then leak local jargon or omit grounding. Treat this as a serious recurring failure across user-facing and agent-facing prose.
Curse of knowledge is one lens within the broader job. Recipient design (Sacks, Schegloff, and Jefferson; closely related to Bell's "audience design") covers the whole task of shaping an utterance for its actual recipient: what they know, what they came for, how much detail serves them, what register fits the situation, what they need first, and what they must be able to do afterward. Text can pass every shared-knowledge check and still answer a question the reader never asked, in a voice written for somebody else. Hold both lenses at once: "can this reader decode this?" and "is this the right thing to say to this reader, here?"
In durable current-state documentation, describe the software as it stands rather than narrating the edit that produced it. In handoffs, changelogs, migration guides, task briefs, and similar transition artifacts, preserve temporal deltas when the recipient needs them to continue safely.
Each sentence should help the named reader use or understand the software today. Authoring-process trivia belongs in PRs, changelogs, issues, plans, or retrospectives. Decision-relevant rationale, constraints, and invariants belong wherever the recipient needs them to use, operate, or modify the system safely, including agent prompts, handoffs, contributor docs, comments, and docstrings.
Good prompts and handoffs are operationally closed: they restate the task, name the inputs and expected outputs, define any term the recipient cannot know, include decision-relevant constraints, give success and stop conditions, and identify every required external dependency through a readable path or usable access method. Present this material in the recipient's reading and execution order, not the authoring session's chronological order.
Good comments and docstrings explain what the code means to someone who can read the code but wasn't there when it was written: intent, invariants, and non-obvious why. They describe the code as it stands rather than the edit that produced it, and they gloss their own terms instead of pointing at tickets, plans, or conversations the reader cannot open.
Good explanations build an intelligible path from the reader's starting point to the model they need. Conceptual coverage is not a substitute for sequencing, emphasis, and omission.
As a secondary lens, consider whether the documentation mixes Diátaxis categories inappropriately, such as reference-style field descriptions embedded in a tutorial flow or explanation ("why") mixed into a how-to. Light touch here; don't restructure, just note when the mixing hurts clarity.
$ARGUMENTS
Default to the narrowest scope the operator named. If they pointed at a change (specific diff hunks, a staged diff, a named patch, "the comments I just added"), review only the prose inside that change: the doc lines it touches, and the comments and docstrings inside its hunks. Do not drift into untouched prose elsewhere in the same file.
Review whole files only when the operator asks for files rather than a change ("review README.md", "review this whole skill", "audit every prompt in this directory").
If the operator supplies standalone prose directly, such as a message, email, handoff, or subagent prompt, treat the supplied text as the whole artifact unless they explicitly narrow the scope.
Read beyond the scope only for context. You usually need the surrounding file to tell whether a term is defined elsewhere, whether a reference has a local referent, or who the reader actually is. When you find a real problem outside the named scope, flag it in the summary with its location and leave it alone.
If the operator named paths but no change, review those files whole. If they named nothing at all, fall back to the current staged diff:
git diff --staged --name-onlyReview the doc files in that list, plus the comments and docstrings inside the staged hunks of the source files. If nothing is staged, say so and stop.
Note the staged-diff fallback only sees the current repo. Prompts and skills often live elsewhere (e.g. ~/.agents/skills/*/SKILL.md, ~/.pi/agent/prompts/*.md) or are gitignored; those must be named explicitly by the operator to enter scope.
Resolve scope: a change (hunks only), whole files, or a supplied standalone artifact. State which in one line before you start.
For each artifact in scope, state its reader, their purpose, what they can and cannot see, and its genre. One line per file is enough for a hunk-scoped review; don't repeat it per hunk.
Review from two positions:
Source-aware pass: use the available session and project context to identify local jargon, private-plan residue, authoring-process artifacts, and other information that leaked across the audience boundary.
Recipient-positioned pass: use only the artifact and dependencies explicitly reachable by the named reader. Do not let source-only knowledge rescue an unclear referent, missing definition, absent constraint, or unreachable dependency. Explicitly identify assumptions the recipient would have to invent. If the harness can start a fresh-context reviewer, use it for this pass and give it only what the intended recipient will receive.
Identify lines that fail the criteria above, including leakage, omission, and misfit relative to that reader.
Apply edits directly when the failure is unambiguous: rewrite leaked language into clean other-facing language; add missing definitions, dependencies, rationale, or grounding where content is absent; reorder material when the current order reflects the author's discovery process rather than the recipient's needs.
When a detail might be legitimate for this file's actual reader (e.g. implementation detail in a contributor doc, decision rationale in a handoff, or an invariant in an inline comment), flag it in your summary with a one-line rationale instead of silently stripping it.
After editing, briefly list what you changed and why (one line per fix), separating edits from flags. Include unresolved recipient assumptions and any out-of-scope findings among the flags.
© w-winter, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in skills/prose-review of w-winter/dot314.
Open the folder on GitHubat commit 0c6bbc7
Prose Review 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.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Prose Review this skillw-winter/dot314 | 139 | — | ~3.6k | Automated safety check: Pass | MIT | |
| Diagram Designcathrynlavery/diagram-design | 48k | 1 repos | ~7.6k | Automated safety check: Pass | MIT | |
| Simple Englishmoeru-ai/airi | 50k | 2 repos | ~4.6k | Automated safety check: Pass | MIT | |
| Doc SyncJetBrains/ideavim | 10k | 2 repos | ~2.6k | Automated safety check: Pass | MIT | |
| Mailspring App ScreenshotsFoundry376/Mailspring | 18k | — | ~1.5k | Automated safety check: Pass | GPL-3.0 | |
| Draw.io Diagram StudioAgents365-ai/drawio-skill | 10k | — | ~2.4k | Automated safety check: Notes | MIT |
cathrynlavery/diagram-design
Creates branded diagrams, from architecture, flowchart and sequence to charts and maps, as self-contained HTML with inline SVG, with import from draw.io, Mermaid and Excalidraw.
moeru-ai/airi
Write or rewrite technical text with the rules of ASD-STE100 Simplified Technical English so it is clear, unambiguous, and free of AI slop.
JetBrains/ideavim
Keeps IdeaVim documentation in sync with code changes. An agent skill from JetBrains/ideavim.
Foundry376/Mailspring
Captures screenshots of the running Mailspring dev app for docs, PRs or visual checks by launching it with a debugging port, driving the UI and clipping to an element.
Agents365-ai/drawio-skill
Creates and edits editable draw.io diagrams from descriptions, code, infrastructure files, SQL and API schemas, with sync, review, test and export tools.
Cocoon-AI/architecture-diagram-generator
Creates dark-themed system, cloud, security and network architecture diagrams as self-contained HTML files with inline SVG and CSS.
w-winter/dot314
Refresh RepoPrompt tool guidance when the CLI/MCP surface changes.
w-winter/dot314
Deep, exhaustive research on a topic across X (Twitter) by driving Grok (x.com/i/grok) through surf.
w-winter/dot314
Search indexed text corpora with qmd. An agent skill from w-winter/dot314.
w-winter/dot314
Always read this skill when the user mentions "rp" or "repoprompt", or before accessing a repository outside the current RepoPrompt workspace.
w-winter/dot314
Control Chrome browser via CLI for testing, automation, and debugging.
w-winter/dot314
Build/test Xcode projects via the XcodeBuildMCP MCP server using a local CLI wrapper for pi (no MCP support).
Categories
Review prose written for others (e.g., user-facing documentation, prompts for other LLMs, reports, plans, inline comments, docstrings) for local jargon leakage, orphaned references, missing…. Prose Review is an agent skill from w-winter/dot314., user-facing documentation, prompts for other LLMs, reports, plans, inline comments, docstrings) for local jargon leakage, orphaned references, missing grounding, and audience or genre mismatch.
Prose Review fits situations like: tasks that involve Technical documentation.
Run `npx skills add w-winter/dot314 --skill prose-review -a claude-code`. Or copy the skill folder (skills/prose-review in w-winter/dot314) into .claude/skills/prose-review in your project. Claude Code loads it when a task matches its description.
Run `npx skills add w-winter/dot314 --skill prose-review -a codex`. Or copy the skill folder (skills/prose-review in w-winter/dot314) into .agents/skills/prose-review in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add w-winter/dot314 --skill prose-review -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/prose-review, .gemini/skills/prose-review, .github/skills/prose-review and .opencode/skills/prose-review in your project.
Going by SKILL.md and its folder, Prose Review needs the command-line tools its instructions call (git).
SKILL.md contains no URLs. Its commands use git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
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.
Prose Review is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.6k tokens (SKILL.md is roughly 14k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Prose Review: Diagram Design (cathrynlavery/diagram-design, 48k stars), Simple English (moeru-ai/airi, 50k stars), Doc Sync (JetBrains/ideavim, 10k stars) and Mailspring App Screenshots (Foundry376/Mailspring, 18k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
w-winter (a GitHub user) maintains it in w-winter/dot314, which has 139 GitHub stars. The repository holds 7 skills in this directory. The repository was last updated on October 7, 2026.
Source: w-winter/dot314 on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.