voicelisted
Install: claude install-skill Raz-Gits/claude-code-skills
# voice
Style matching usually fails the same way. It copies the surface (sentence
length, punctuation habits, a favourite word) and misses the thing that actually
makes writing sound like a person, which is **what they never say**.
A useful voice profile is mostly negative space. Not "uses short sentences" but
"never opens with a compliment", "never says 'excited to'", "will not claim a
tool they have only opened once". Those rules come from corrections, not from
reading samples, which is why this skill is built to grow rather than to be
written once.
## The mechanism, stated plainly
A skill cannot remember anything on its own. This one persists by reading and
writing a file:
```
~/.claude/voice/<person>.md # default, applies everywhere
.claude/voice/<person>.md # project-local, wins if both exist
```
Everything below is operations on that file. There is no magic; if the file is
not updated, nothing was learned.
## Mode 1, build the profile
Triggered by "learn how I write", or automatically when asked to write in a
voice with no profile on disk.
**Only use samples the person actually wrote themselves.** This is the rule that
decides whether the profile is any good. Text they approved, edited, or accepted
from an assistant is contaminated with the assistant's voice, and a profile built
from it will drift further from them every cycle. Ask for raw samples: sent
emails, Slack messages, commit messages, notes to themselves. Messy is better
than polis