voice-reviewer
Voice Reviewer
Review content against the project's voice guidelines. This skill reads the project's voice guide and lint rules, then audits content files for violations.
How It Works
- Find the voice guide: Look for
docs/brand-voice-guidelines.md,.voice-lint.json, or similar files in the project root. - Read the rules: Extract sentence limits, forbidden words, tone requirements, bilingual policies, and structural patterns.
- Audit the content: Check each file against every rule.
- Report: List violations with line numbers, the rule violated, and a suggested fix.
What to Check
Sentence Structure
- Maximum sentence length (word count per the guide, typically 20-30 words)
- One observation per sentence
- Prefer contractions
- Short to medium sentences
Forbidden Patterns
- Superlatives (best, top, must-visit, amazing, incredible)
- Exclamation points
- Emojis
- Trend slang (hits different, no cap, lowkey, vibe check as a verb)
- Hashtag energy
- Adjective stacking (cozy, intimate, must-visit spot)
- Expert/authority claims (everyone knows, locals say, the best)
Tone
- Observational over promotional
- Specific over vague
- Curious before confident
- Human, not performative
- "It felt like..." not "The best..."
Bilingual Policy (if applicable)
- Check the EN:ES ratio target (e.g., 85:15 for loops, 95:5 for rituals)
- Spanish asides stay under the word limit (typically 6 words max)
- No full content repetition in Spanish
- No Spanish in H1/H2 headings
Structural Patterns
- Arrival -> Detail -> Shift -> Release arc
- Show instead of tell
- At least one concrete sensory detail per section
- Could this paragraph exist in another city unchanged? (if yes, it needs rewriting)
Output Format
## Voice Review: [filename]
### Violations
1. **Line 23**: "This amazing, must-visit hidden gem is perfect for date night!"
- **Rule**: No superlatives, no adjective stacking
- **Fix**: "The place looks quiet until you sit down."
2. **Line 45**: Sentence is 31 words (max: 24)
- **Rule**: Max sentence length
- **Fix**: Split into two sentences.
3. **Line 67**: Spanish aside "entonces vamos a intentar algo nuevo juntos" (7 words)
- **Rule**: Spanish asides max 6 words
- **Fix**: Trim to "vamos a intentar algo nuevo" (5 words)
### Summary
- 3 violations found
- 0 critical (forbidden terms)
- 2 structural (sentence length, adjective stacking)
- 1 bilingual (Spanish aside too long)
Usage as a Subagent
When dispatching as a subagent, provide:
- The file(s) to review
- The path to the voice guide
- The path to
.voice-lint.json(if it exists)
The reviewer should read the voice guide first, then audit each file independently.
More from baphomet480/claude-skills
kitchen-sink-design-system
Kitchen Sink design system workflow for Next.js and React projects, with secondary support for Astro, SvelteKit, Nuxt, and static HTML. Use when asked for a Kitchen Sink page, Design System, UI Audit, Style Guide, or Component Inventory, or when a project needs a component inventory plus component creation and a sink page implementation. Covers CVA variant architecture, Tailwind v3/v4 token systems, shadcn/ui integration, and TinaCMS content modeling.
40deep-research
Conduct comprehensive, multi-round research that produces rich visual reports. Use when asked for "deep research", "comprehensive analysis", "compare frameworks", "evaluate options", "research the state of X", or any task requiring investigation across 10+ sources. NOT for quick lookups — this is a 5-15 minute deep dive that produces a briefing-quality artifact with screenshots, diagrams, tables, and cited findings.
37design-lookup
Search and retrieve CSS components, SVG icons, design patterns, and visual inspiration from the web. Use when the user asks to find, look up, or search for CSS snippets, SVG icons, UI components, loading spinners, animations, design inspiration, or any visual/frontend design resource. Triggers on requests like "find me a CSS button", "look up an SVG spinner", "search for a card component", "find a wave divider SVG", or "get design inspiration for a dashboard".
34nextjs-tinacms
Build Next.js 16 + React 19 + TinaCMS sites with visual editing, blocks-based page builder, and complete SEO. Use this skill whenever the user mentions TinaCMS, Tina CMS, Next.js with a CMS, visual editing with Next.js, click-to-edit, content-managed Next.js site, blocks pattern page builder, or migrating to Next.js + TinaCMS. Also trigger for TinaCMS schema design, self-hosted TinaCMS, TinaCMS media configuration, or any TinaCMS troubleshooting. Covers Day 0-2 setup from scaffolding through production deployment on Vercel.
32cloudflare-pages
Deploy static sites to Cloudflare Pages with custom domains and CI/CD. Use when the user wants to deploy a site to Cloudflare Pages, add a custom domain to a Pages project, set up GitHub Actions CI/CD for Cloudflare Pages, roll back a deployment, or verify deployment status. Triggers on "deploy to Cloudflare", "Cloudflare Pages", "add custom domain", "pages deploy", or any Cloudflare Pages hosting workflow.
31local-ocr
Local OCR pipeline for AI agents featuring auto-rotation, deskew, and searchable PDF generation via ocrmypdf and Tesseract.
23