voice-profilelisted
Install: claude install-skill mickzijdel/dev-hooks
# Voice profile
Match a person's writing voice instead of defaulting to generic AI prose. A *voice profile* is
a markdown file of that person's rules — a Do list, a Don't list, a Banned-words list, and
before/after pairs — built from their own writing. This skill applies an existing profile,
builds a new one, or falls back to baseline expository rules when no profile exists.
This skill is the personal-voice layer. The `humanizer` skill removes generic AI tells (em-dash
overuse, rule of three, AI vocabulary, sycophancy); run it first or alongside. `voice-profile`
adds one person's specific habits and expository concision on top.
## Which mode
```dot
digraph { rankdir=LR;
"asked to write/revise prose" -> "profile exists?";
"profile exists?" -> "APPLY" [label="yes"];
"profile exists?" -> "DEFAULT" [label="no, just write"];
"asked to capture a voice" -> "BUILD";
}
```
## Find the profile
Look in this order; the first hit wins:
1. `$WRITING_VOICE_PROFILE` (a file path)
2. `.claude/voice_profile.md` in the repo
3. `~/.claude/voice_profile.md`
## Apply a profile
1. Read the profile in full. Do not work from a one-line summary — load the actual rules.
2. Draft or revise the prose, following its Do / Don't lists and avoiding its banned words.
3. Audit the draft before returning it:
`voice_audit.py --profile <profile> <file>` (in `scripts/`) flags banned words with line
numbers. Read each hit — some banned words have valid uses in context — and fix the real ones.