Agent skill

Ponylang Prose Review

by ponylang in ponylang/ponylang-website

Ensemble review of ponylang blog and Last Week in Pony prose.

BSD-2-ClauseAuto-check passedAgent Workflows

Install Ponylang Prose Review

skills CLI
$ npx skills add ponylang/ponylang-website --skill ponylang-prose-review -a claude-code

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

GitHub CLI
$ gh skill install ponylang/ponylang-website ponylang-prose-review --agent claude-code

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

Manual copy
$ git clone --depth 1 https://github.com/ponylang/ponylang-website.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/ponylang-prose-review .claude/skills/ponylang-prose-review && rm -rf skills-src

Use ~/.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/

Facts

Skill name
ponylang-prose-review
GitHub stars
160
Token cost
~2.9k tokens
SKILL.md length
1,508 words
Files
9 (incl. references)
Skills in repo
3
Repo updated
First seen
Licence
BSD-2-Clause

At a glance

Ensemble review of ponylang blog and Last Week in Pony prose.

  • Works in 7 steps: Identify the artifact and assemble the… → Run the mechanical pre-check. Capture… → Make an evidence dir:… → …
  • Tasks that involve Plain language and style rules
  • SKILL.md covers When to run, Two rulebooks this skill reads, Mode selection by size and Source bundle, plus 7 more sections
  • Calls gh

What it does

Ponylang Prose Review is an agent skill from ponylang/ponylang-website. Ensemble review of ponylang blog and Last Week in Pony prose. Runs lens personas in parallel — house voice, agency, narrative, reader-orientation, tightness, content-honesty, plus a conditional accuracy lens — checks the draft against the AGENTS.md editorial guidelines and the craft rules, and returns Fix/Park findings. Self-contained: no dependency on any other skill. Load after a draft exists, before the post PR.

Its SKILL.md is about 2.9k tokens, which your agent loads only when the skill is triggered. The skill folder holds 10 other files, including reference files (for example `personas/accuracy.md`, `personas/agency.md` and `personas/content-honesty.md`).

It sits in Agent Workflows, covering Plain language and style rules and Agent instruction files. The repository describes itself as: The ponylang.io website. The licence is BSD-2-Clause.

When your agent uses it

  • Tasks that involve Plain language and style rules
  • Tasks that involve Agent instruction files

Example prompts

  • “/ponylang-prose-review”

Workflow steps

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

  1. Identify the artifact and assemble the source bundle (tables above).
  2. Run the mechanical pre-check. Capture results.
  3. Make an evidence dir: ~/tmp/prose-review-/. Each persona writes its
  4. Spawn the lens personas in parallel, each a fresh-context subagent on your most capable
  5. Triage persona outputs — confirm each addressed the actual draft and stayed on its
  6. Synthesize (inlined below).
  7. Triage into Fix / Park and act (below).

What it can do on your machine

Read from SKILL.md and the folder at commit 9429bcf. 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

    Shell commands in SKILL.md call:

    • gh

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

  • Network

    No URLs in SKILL.md. Its commands use gh, which can reach the network depending on how they are called.

    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

Ponylang Prose Review loads about 2.9k tokens when it runs, and up to ~5.3k if it reads all its reference files. Until then it costs about 110 tokens; SKILL.md has 1,508 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~110
When it runs · the whole SKILL.md, loaded when a task matches
~2.9k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~5.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 ponylang/ponylang-website at commit 9429bcf, republished under its BSD-2-Clause licence (© ponylang). 1,508 words, ~2,948 tokens.

Download SKILL.mdSave it as .claude/skills/ponylang-prose-review/SKILL.md (or your agent's skills folder). This skill also uses 8 other files; get the full folder from GitHub.
name
ponylang-prose-review
description
Ensemble review of ponylang blog and Last Week in Pony prose. Runs lens personas in parallel — house voice, agency, narrative, reader-orientation, tightness, content-honesty, plus a conditional accuracy lens — checks the draft against the AGENTS.md editorial guidelines and the craft rules, and returns Fix/Park findings. Self-contained: no dependency on any other skill. Load after a draft exists, before the post PR.
disable-model-invocation
false

Review for ponylang prose

The review that applies the ponylang Last Week in Pony house style and the craft rules to a draft with fresh, decorrelated eyes. A single generic copy-editor pass collapses every concern into "looks fine" and misses the failures that matter — enumeration instead of narrative, prose reproduced from a linked source, an invented framing, an unearned promise, a fabricated characterization, a wrong technical claim. This decomposes the review so each gets its own lens.

This skill is self-contained — it loads no other skill. All the ensemble mechanics it needs are inlined below; nothing comes from pony-ensemble / pony-synthesize or any personal skill. A contributor with only this repo's .claude/ can run it.

When to run

After a draft of ponylang prose exists, before it ships:

  • Last Week in Pony posts (the main case).
  • Other ponylang blog posts.
  • The Pony Development Sync issue comment produced by dev-sync-summary, if you want more than its built-in self-review.

Two rulebooks this skill reads

  • The AGENTS.md "Last Week in Pony" section — the house voice (tone, em-dash frugality, backtick technical terms, Office Hours singular, owner/repo naming, conversational not clipped). The House-voice persona reads it.
  • references/craft-rules.md (alongside this skill) — narrative, reader-orientation, tightness, content-honesty/source-fidelity. The other craft personas read the relevant sections.

Mode selection by size

Count the draft's prose paragraphs: blank-line-separated blocks of running prose. Do not count fenced code blocks, YAML front matter, headings, or list items.

PARAGRAPH_THRESHOLD = 2
  • > 2 prose paragraphs → full review. The six-lens ensemble below — seven when the draft has code or technical claims, where the conditional Accuracy lens joins. A post is always full.
  • ≤ 2 prose paragraphs → cheap inline pass. No subagents. The orchestrator reads the draft once against the AGENTS.md house style and the content-honesty section of craft-rules.md (pulling the source bundle if a claim needs checking), plus the mechanical pre-check, and returns Fix/Park findings directly.

PARAGRAPH_THRESHOLD is one line on purpose — move it when the size heuristic misjudges an artifact.

Source bundle

The content-honesty and tightness personas can only catch fabricated claims, flattened source voice, and reproduced-source if they have the source. Assemble it per artifact and hand it to both of those personas (the house-voice, narrative, and orientation personas work from the draft and their rulebook):

ArtifactSource bundle
LWIP postthe rotated issue + all its comments; linked prior posts; release notes (gh release view); linked PRs/issues (gh)
other blog postlinked posts; release notes / gh release view; the originating discussion or issue
dev-sync commentthe raw summary; the linked PRs/issues/RFCs (gh)

A raw meeting summary and machine-generated recaps are leads to verify, not copy — pull facts from them, never trust their wording or their number-to-title mapping.

Mechanical pre-check (scripted, not an agent)

Run before spawning personas; feed results to synthesis. LWIP and blog posts live in this repo's buildable, cspell'd site, so all of these apply:

  • cspell over the file.
  • mkdocs build --strict (set up the venv per the project README/CLAUDE.md if needed).
  • em-dash count (flag heavy use).
  • link-target sanity — does each link's text match what it points at?

For a dev-sync issue comment (not a repo file): em-dash count + link sanity only.

Full process

  1. Identify the artifact and assemble the source bundle (tables above).
  2. Run the mechanical pre-check. Capture results.
  3. Make an evidence dir: ~/tmp/prose-review-<timestamp>/. Each persona writes its detailed evidence to a file there; pass the path in the prompt.
  4. Spawn the lens personas in parallel, each a fresh-context subagent on your most capable model. Six always run: House-voice, Agency, Narrative, Orientation, Tightness, Content-honesty. A seventh, Accuracy, joins only when the draft has code or makes technical/behavioral claims about a system (compiler internals, an API, a release); skip it otherwise. Each prompt includes:
    • The persona document, read from personas/<lens>.md.
    • Its rulebook slice: the House-voice persona gets the AGENTS.md "Last Week in Pony" section and 2–3 recent posts from docs/blog/posts/ for calibration; the Narrative, Orientation, Tightness, and Content-honesty personas get the relevant sections of references/craft-rules.md. The Agency persona needs no rulebook slice — its rule is self-contained in its persona doc, and it works from the draft alone. The Accuracy persona reads the actual source instead.
    • The draft in full.
    • For the Content-honesty and Tightness personas: the full source bundle.
    • For the Accuracy persona: the source the draft describes (the repo/files, release notes, the version it targets).
    • The shared persona output format (below).
    • "You are an ensemble agent — return findings to the orchestrator, take no external actions, edit nothing."
  5. Triage persona outputs — confirm each addressed the actual draft and stayed on its lens. Drop nothing silently. Hold the enumerative lenses to a higher bar: the Agency lens must return its subject–verb table for the whole draft, and the Narrative lens the numbered idea-sequence for each section. A holistic verdict from either — "no anthropomorphizing," "reads fine" — with no enumeration behind it is not a pass; it is a lens that skipped the work. Re-run it and demand the enumeration.
  6. Synthesize (inlined below).
  7. Triage into Fix / Park and act (below).
Show full SKILL.md (681 more words)Show less

Shared persona output format

Include in every persona prompt. Each persona produces two artifacts.

Evidence file (written to the provided path): every finding with the exact quoted text from the draft, what's wrong, the rule it violates, and the concrete rewrite.

Summary (returned to the orchestrator):

  • Findings, ordered by severity (Blocking > Should-fix > Minor). Each:
    • Quote: the exact span from the draft.
    • Lens: this persona.
    • Problem: what's wrong (concise — full reasoning is in the evidence file).
    • Fix or Park: is the right change obvious (Fix), or does it need the author's judgment (Park)? With the suggested rewrite (Fix) or the question (Park).
  • Passes: key things checked that read true. Brief.
  • Uncertainties: anything the persona couldn't judge without the author or more source.

Enumerative lenses must show their work. Agency and Narrative are enumeration lenses, not judgment lenses. Their summary carries the enumeration itself — Agency's subject–verb table for the whole draft, Narrative's numbered idea-sequence for each section — even when the verdict is clean. "None found" is credible only with the enumeration that proves every subject, and every section's order, was actually looked at. A summary without it goes back.

Synthesis (inlined)

The synthesizer is a fresh-context agent (or the orchestrator) given all persona summaries and the mechanical-check results, with these instructions:

Job: integrate the persona findings into one deduplicated list. You are not averaging opinions — you are assembling the strongest, non-redundant set of findings.

Focus:

  • Don't drop anything. Every persona finding appears in the output or is explicitly merged into another. A review that surfaces a real problem and then loses it has wasted the discovery.
  • Cross-persona corroboration is high-confidence. When two personas flag the same span from different angles, merge them into one finding marked high-confidence — never let each assume the other owns it and drop both.
  • Clusters signal structure. Several small findings in one section often mean the section's shape is wrong (an enumeration, a reproduced source, a missing on-ramp). Call out the structural problem, not just the symptoms.
  • Severity stands. If one persona says Blocking with evidence and another didn't mention it, it's Blocking. Don't soften by consensus.

Fix / Park triage

Categorize every finding. Nothing is silently dropped.

  • Fix — the right change is obvious: a misspelling, an unclear antecedent, a term used before it's introduced, an enumeration to reweave, prose reproduced from the linked source, an unbackticked technical term, an em-dash glut, a fabricated characterization to cut. Apply these directly.
  • Park — needs the author: a framing or thesis the draft asserts that no source supports, a thematic hook, a tone call, a metaphor to keep or cut. Never ship a parked call as final. Batch parked items and present them as questions.

When run inside the lwip pipeline: apply the Fix items, list the Park items for the author, and proceed. When run standalone: return both lists.

Output format

## Prose review — <artifact>  (<full | inline pass>, N findings)

### Applied (Fix)
- <quote> → <change>  [lens]
...

### Raise with the author (Park)
- <quote> — <the question>  [lens]
...

### Mechanical
- cspell: <clean | issues>   build: <pass | fail>   em-dashes: <count>   links: <ok | …>

### Passes
- <brief confidence notes>

The lenses

PersonaCatches
house-voice.mdponylang LWIP house style: tone (Hemingway, conversational not clipped), em-dash frugality, backtick technical terms, Office Hours singular, owner/repo naming, AI tells, clipped-imperative cadence. Reads the AGENTS.md guidelines; calibrates on recent posts.
agency.mdthe enumerative anthropomorphizing pass: every clause whose subject is not a person, tabled and judged person / literal-op / AGENCY. Catches a library, release, change, or version given an action it can't take, and a machine given cognition. Deliverable is the table, not a verdict.
narrative.mdenumeration vs story, at section and prop level (a snippet/line-count/parenthetical can be dead cargo inside a good section); and idea-order within each section — a conclusion before its setup, a paragraph doubling back, a stranded sentence. Deliverable includes each section's numbered idea-sequence.
orientation.mdconcept-before-use, unclear antecedents, missing on-ramps, offloaded context, compressed recaps that strip framing, missing prerequisites.
tightness.mdreproduced linked source, props that don't earn their place, filler, wrong altitude for the artifact. Gets the source bundle.
content-honesty.mdunsourced or fabricated claims, invented framing, invented quantitative characterizations, unearned promises, flattened source personality, lifted wording from unvetted sources, authorship/tense honesty. Gets the source bundle.
accuracy.mdconditional — runs only when the draft has code or technical/behavioral claims. Verifies code, API signatures, behavior and version claims, PR/issue numbers and titles against the actual source.

© ponylang, BSD-2-Clause. 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 8 other files (references) in .claude/skills/ponylang-prose-review of ponylang/ponylang-website.

  • SKILL.md
  • personas/accuracy.md
  • personas/agency.md
  • personas/content-honesty.md
  • personas/house-voice.md
  • personas/narrative.md
  • personas/orientation.md
  • personas/tightness.md
  • references/craft-rules.md

Open the folder on GitHubat commit 9429bcf

Compare with similar skills

Ponylang 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.

Ponylang Prose Review compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Ponylang Prose Review this skillponylang/ponylang-website160—~2.9kAutomated safety check: PassBSD-2-Clause
Audit Session Metricscentminmod/my-claude-code-setup2.7k—~2.1kAutomated safety check: PassMIT
Inherit Legacy Styleaffaan-m/ECC277k1 repos~2.1kAutomated safety check: NotesMIT
Talk Normalhexiecs/talk-normal1.9k—~784Automated safety check: PassMIT
Asd Ste100danyuchn/asd-ste100-skill4.3k—~4.1kAutomated safety check: PassMIT
Firstmate Coding Guidelineskunchenguid/firstmate7.8k—~3.1kAutomated safety check: PassMIT

Similar skills

  • Audit Session Metrics

    centminmod/my-claude-code-setup

    Audit a session-metrics JSON export for token-usage waste and produce a plain-English findings report.

    2.7k GitHub stars~2.1k tokensUpdated 3 days ago
    Agent WorkflowsAuto-check passed
  • Prevent AI style drift on legacy projects by scanning the codebase for implicit conventions, resolving conflicts with the operator one at a time, and writing an enforceable .ai-style-rules.md…

    277k GitHub starsUsed in 1 repo~2.1k tokens
    Agent WorkflowsAuto-check: notes
  • Talk Normal

    hexiecs/talk-normal

    Installs an always-on set of rules into your agent's workspace config that cuts filler, hedging and padded closings from its replies.

    1.9k GitHub stars~784 tokensUpdated 5 mo ago
    Agent WorkflowsAuto-check passed
  • Asd Ste100

    danyuchn/asd-ste100-skill

    A skill your agent uses when English text must be parsed without a human to resolve ambiguity — tool descriptions, error messages, inter-agent instructions, system prompts, status reports — and…

    4.3k GitHub stars~4.1k tokensUpdated 7 days ago
    Writing & ContentAuto-check passed
  • Firstmate Coding Guidelines

    kunchenguid/firstmate

    Agent-only reference for changing firstmate's shared, tracked material per AGENTS.md section 1.

    7.8k GitHub stars~3.1k tokensUpdated today
    Agent WorkflowsAuto-check passed
  • Rules To Guards

    RyanAlberts/best-of-Agent-Harnesses

    Rule enforcer that finds which written rules in AGENTS.md, CLAUDE.md, and GEMINI.md a coding agent keeps breaking, counts every violation in recent Claude Code, Codex, Gemini CLI, and OpenCode…

    1.1k GitHub stars~2.7k tokensUpdated 2 days ago
    Agent WorkflowsAuto-check: notes

More from ponylang/ponylang-website

  • Dev Sync Summary

    ponylang/ponylang-website

    Turn a Pony Development Sync meeting summary into a fact-checked comment on the open "Last Week in Pony" issue

    160 GitHub stars~2.6k tokensUpdated 7 days ago
    Auto-check passed
  • Lwip

    ponylang/ponylang-website

    Create a new "Last Week in Pony" blog post from the open GitHub issue

    160 GitHub stars~3.5k tokensUpdated 7 days ago
    Auto-check passed

Questions about Ponylang Prose Review

What does Ponylang Prose Review do?

Ensemble review of ponylang blog and Last Week in Pony prose. Ponylang Prose Review is an agent skill from ponylang/ponylang-website. Ensemble review of ponylang blog and Last Week in Pony prose.

When should I use Ponylang Prose Review?

Ponylang Prose Review fits situations like: tasks that involve Plain language and style rules; tasks that involve Agent instruction files.

How do I install Ponylang Prose Review in Claude Code?

Run `npx skills add ponylang/ponylang-website --skill ponylang-prose-review -a claude-code`. Or copy the skill folder (.claude/skills/ponylang-prose-review in ponylang/ponylang-website) into .claude/skills/ponylang-prose-review in your project. Claude Code loads it when a task matches its description.

How do I install Ponylang Prose Review in Codex?

Run `npx skills add ponylang/ponylang-website --skill ponylang-prose-review -a codex`. Or copy the skill folder (.claude/skills/ponylang-prose-review in ponylang/ponylang-website) into .agents/skills/ponylang-prose-review in your project. Codex loads it when a task matches its description.

Can I use Ponylang Prose Review 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 ponylang/ponylang-website --skill ponylang-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/ponylang-prose-review, .gemini/skills/ponylang-prose-review, .github/skills/ponylang-prose-review and .opencode/skills/ponylang-prose-review in your project.

What does Ponylang Prose Review need to run?

Going by SKILL.md and its folder, Ponylang Prose Review needs the command-line tools its instructions call (gh).

Does Ponylang Prose Review access the network?

SKILL.md contains no URLs. Its commands use gh, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Ponylang Prose Review 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 Ponylang Prose Review use?

Ponylang Prose Review is published under the BSD-2-Clause licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Ponylang Prose Review use?

About 2.9k tokens (SKILL.md is roughly 12k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 2.3k tokens, read only when the agent opens those files.

What are the alternatives to Ponylang Prose Review?

Skills that share tags, products or a category with Ponylang Prose Review: Audit Session Metrics (centminmod/my-claude-code-setup, 2.7k stars), Inherit Legacy Style (affaan-m/ECC, 277k stars), Talk Normal (hexiecs/talk-normal, 1.9k stars) and Asd Ste100 (danyuchn/asd-ste100-skill, 4.3k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Ponylang Prose Review?

ponylang (a GitHub organization) maintains it in ponylang/ponylang-website, which has 160 GitHub stars. The repository holds 3 skills in this directory. The repository was last updated on October 4, 2026.

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