plugins/scribe/skills/voice-review/SKILL.md
Runs parallel prose and craft review agents against a voice profile. Use when checking generated content for AI patterns and voice drift before publishing.
npx skillsauth add athola/claude-night-market voice-reviewInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Dispatch dual review agents and present unified findings.
Two agents run in parallel on the generated text:
Hard failures (banned phrases, em dashes) are auto-fixed. Everything else returns as advisory tables for user decision.
voice-review:text-loaded - Generated text readvoice-review:register-loaded - Voice register loadedvoice-review:agents-dispatched - Both reviewers launchedvoice-review:hard-fails-fixed - Auto-corrections appliedvoice-review:advisories-presented - Tables shown to userRead:
Launch both agents in parallel:
Agent(prose-reviewer):
- text: {generated_text}
- register: {register_content}
- banned_phrases: {banned_list}
Agent(craft-reviewer):
- text: {generated_text}
- register: {register_content}
Apply all auto-fixes from prose reviewer silently:
Report: "Fixed N hard failures (X banned phrases, Y em dashes, Z patterns)"
Present both tables to the user:
Prose Review Advisories:
| # | Line | Pattern | Current | Proposed fix | |---|------|---------|---------|--------------|
Craft Review:
| Dimension | Rating | Notes | Proposed improvement | |-----------|--------|-------|---------------------|
For each advisory row, user can:
Present as:
[1] Prose: Frictionless transition at "Furthermore, the..."
Proposed: Cut transition, start mid-thought
[a]ccept / [r]eject / re[w]rite?
If the user has learning mode enabled:
~/.claude/voice-profiles/{name}/learning/snapshots/When dispatched from voice-generate, the flow is:
Can also be run on any existing text:
/voice-review path/to/file.md --profile myvoice --register casual
After the review completes, validate these conditions:
The test suite (test_voice_review.py) validates:
tools
Detect friction signals; graduate patterns into rules. Use for session retrospectives.
testing
Use when you need a diff-derived test plan for an MR — reads the diff, groups changes by area, runs targeted verifications, and proves revert-tests are genuine guards, not dead assertions.
development
Curate the web-capture index. Use when the capture backlog grows, captures sit unprocessed at seedling/pending, or to surface stored research during work.
testing
Probe memory/summary clarity via dual anchor questions: task progress, info gaps. Use when verifying session state or summary before handoff or compression.