voice-matchinglisted
Install: claude install-skill coleoguy/tealc
# Voice Matching
## When to Use
Use this skill for any prose output longer than approximately 150 words that
will be presented as the researcher's own writing. Canonical triggers:
- Grant sections (Specific Aims, Significance, Innovation, Approach,
Broader Impacts, Data Management Plan narratives)
- Cover letters for manuscript submissions or job-search packets
- Response-to-reviewer letters
- NIH progress reports and administrative supplements
- Lab-website text (research descriptions, people pages, news items)
- Manuscript Discussion or Introduction sections drafted for review
**Do not use for:**
- Chat replies and tool-output summaries (these should be efficient, not
voice-matched — they go to the researcher, not an external reader)
- Internal notes, database comments, or annotation fields
- Bullet-point action items or todo lists
- Short confirmations ("done", "here is the list you asked for")
The test: will this text be read by someone external to the lab as the
researcher's own words? If yes, use this skill.
---
## The Voice Index
`agent/voice_index.py` maintains a TF-IDF retrieval index of the researcher's
published prose. The primary source is `data/voice_passages.json`, which
contains curated paragraph-level passages from Discussion sections, grant
narrative paragraphs, and lab-website prose. When the curated file has fewer
than 40 passages, the index is supplemented from OpenAlex abstracts for the
researcher's publications (fetched via the OpenAlex API u