Read the README (or any front-door doc) through the eyes of several distinct audience personas and report what each would think, miss, or bounce on
Scanned 9/3/2026
Install to Claude Code
npx -y skills add zernie/vigiles --skill audience-check --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Audience Check?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/zernie-audience-check)More formats (shields.io, HTML) on the badges page.
---
name: audience-check
description: Read the README (or any front-door doc) through the eyes of several distinct audience personas and report what each would think, miss, or bounce on
disable-model-invocation: true
---
Re-read the README — or whichever front-door doc the user names — as **several
different readers in turn**, not as the author. The author knows what every line
means; a first-time reader does not. The job is to surface where a specific
audience gets confused, under-served, or bounces, and to propose concrete fixes.
This is an INTERNAL dev skill (not shipped to consumers). It complements the
`readme-brevity` and `docs-quality` rules: those govern length/polish; this checks
whether the content actually lands for who it's for.
## How to run it
1. **Read the target doc in full** (default: `README.md`; honor a path the user
gives). Also skim the docs it links to, so "the README promises depth the doc
doesn't deliver" is checkable.
2. **For each persona below, do a cold read** — adopt that reader's goals,
vocabulary, and patience. Ask their questions, not yours.
3. **Produce the report** in the format at the end. Be specific: quote the exact
line, name the exact fix. Vague notes ("could be clearer") are useless.
## The personas
Run all of these unless the user scopes to a subset.
### 1. Claude Code user (the primary audience)
Already lives in Claude Code; skimming on a laptop between tasks. Wants the WOW in
the first screen and a copy-paste install in seconds.
- Does the first screen land what vigiles does and why they'd care?
- Is the install path (`npx vigiles init`, the agent prompt) above the fold and
obviously runnable?
- Does it speak their language (hooks, skills, CLAUDE.md, subagents) without
over-explaining?
### 2. Codex user (the second-harness audience)
Uses OpenAI Codex / `AGENTS.md`, not Claude Code. Skeptical that this is "a Claude
thing."
- Is Codex support visible early, or buried/footnoted so they assume it's
CC-only?
- Are the examples CC-only (CLAUDE.md, `claude` CLI) in a way that makes a Codex
user feel like a second-class citizen?
- Would they know `vigiles/codex` exists and what works vs. what's a documented
follow-on?
### 3. Senior / staff engineer (the skeptic)
Scans for substance and differentiation in ~20 seconds; allergic to marketing
fluff. Will mentally compare to tools they know (promptfoo, ESLint, ast-grep).
- Is the differentiation concrete and credible, or hand-wavy? Does every
load-bearing claim link to proof?
- Does the "deterministic, no API key / runs on your sub" cost angle come through
as a real architectural fact, not a slogan?
- Anything that reads as overclaiming will cost trust — flag it.
### 4. Junior engineer (the newcomer)
New to agentic tooling; needs clarity, not jargon. Bounces on undefined terms.
- Which terms are used before they're defined (harness, eval, trigger-rate,
subagent, dialect)?
- Is there a clear "what do I do first" path, or does it assume context they lack?
### 5. Engineering manager / decision-maker (adoption + ROI)
Won't run a command; deciding whether the team should adopt. Cares about cost,
risk, and effort.
- Is the cost story (free deterministic tiers, evals on the existing Claude sub
vs. metered per-token competitors) legible to a non-runner?
- Is adoption framed as incremental/low-risk (start permissive, tighten later)?
- What's the "why now / why us" — is it answerable from the README alone?
### 6. QA / test engineer (the Test pillar)
Owns test infra; evaluates the testing story specifically.
- Does the **Test** pillar speak to them — `runHook`, `runHarnessTest`,
`measureTriggerRate`, significance/regression gating — or is it all about
linting?
- Is the deterministic-vs-real-model split clear (what runs in CI free vs. what
needs a model)?
- Would they trust it next to promptfoo/DeepEval, and is the comparison honest?
## Output format
```
# README audience check — <file>
## <Persona> — verdict: ✅ lands / ⚠ rough / ✗ bounces
- **Reaction (cold read):** one or two sentences in this reader's voice.
- **Friction:** the specific line(s)/section(s) that confuse or under-serve them.
- **Fix:** the concrete change (move X above the fold, define Y on first use,
link proof for claim Z, add a Codex example here).
… one block per persona …
## Cross-cutting patterns
The 2–4 issues that hurt MULTIPLE personas (these are the highest-leverage fixes).
## Ranked fixes
A short, ordered list — highest reader-impact first — each a one-line action.
```
Keep the report scannable and ACTIONABLE: every finding names a line and a fix.
Do not rewrite the README in place unless the user asks — this skill REPORTS;
applying the fixes is a separate, explicit step.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!