calibrate-my-voice
Build or refresh the local voice-layer profile used by write-in-my-voice from user-approved evidence. Use only when the user explicitly asks to calibrate,…
Draft or rewrite user-facing text using the voice-layer model: calibrated personal voice, channel shape, audience adaptation, requested vibe, documentation style, and AI-tell cleanup. Use for Slack, chat, email, PR descriptions, review comments, issues, Confluence, Google Docs,
$ npx -y skills add ymeiri/voice-layer --skill write-in-my-voice --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/write-in-my-voiceContext preview
The summary Claude sees to decide when to auto-load this skill.
Draft or rewrite user-facing text using the voice-layer model: calibrated personal voice, channel shape, audience adaptation, requested vibe, documentation style, and AI-tell cleanup. Use for Slack, chat, email, PR descriptions, review comments, issues, Confluence, Google Docs,
name: write-in-my-voice description: "Draft or rewrite user-facing text using the voice-layer model: calibrated personal voice, channel shape, audience adaptation, requested vibe, documentation style, and AI-tell cleanup. Use for Slack, chat, email, PR descriptions, review comments, issues, Confluence, Google Docs, design docs, RFCs, ADRs, release notes, and docs when the user says write in my voice, make this sound like me, rewrite this, polish this, draft a reply, make it corporate-friendly, use a specific vibe, adapt for an audience, de-AI this, or similar. Do not use for code, command output, structured data, verbatim quotes, or voice calibration; use calibrate-my-voice for setup."
Rewrite or draft text so it sounds like the user wrote it. Preserve meaning, facts, and technical identifiers. If a calibrated profile exists, use it. If not, default to direct, plain, low-ceremony writing.
Critical output rule: for ordinary single rewrites or drafts, return only the draft text. Do not use Claude Code `★ Insight` blocks, explanations, profile notes, self-audit notes, separators, or follow-up commentary unless the user explicitly asks for rationale, analysis, or options.
Look for a voice profile in this order:
1. A path the user provides in the prompt. 2. `$VOICE_LAYER_PROFILE`, if the environment is visible. 3. `~/.config/voice-layer/voice-profile.md`.
Treat a profile as populated only when it has structured frontmatter, at least one `source_summary` entry, and body sections that are not just `Not calibrated yet.` placeholders. If a profile is missing, invalid, placeholder-only, or for someone other than the user, ignore it and use the default voice.
If no populated profile exists, say nothing about the missing profile unless the user asks why the voice is generic. Do not run calibration from this skill.
Apply these layers in order:
1. Facts, safety, and consent. 2. Channel or document shape. 3. The user's calibrated voice. 4. Audience adaptation. 5. Requested vibe. 6. Localization or spelling preferences.
Do not let a vibe, audience, or locale request erase the user's voice. Culture is not a costume. Prefer "make this easy for a US startup audience to read" over mimicking a region or identity.
1. Identify the task: draft or rewrite. 2. Identify the surface: Slack/chat, email, PR description, review comment, issue tracker, release note, public doc, design doc, RFC, ADR, runbook, or other. 3. Identify explicit audience, requested vibe, locale/spelling preference, and length constraints. 4. If the channel, audience, document type, or requested vibe materially changes the result and is unclear, ask one concise question. 5. Load the profile if available and populated. Treat typed profile fields as stronger than prose notes. 6. Apply the channel or document structure before applying voice. 7. Draft or rewrite the text. Keep the user's intent and factual content intact. 8. Run a self-audit: remove AI tells, unsupported claims, filler, false precision, over-polish, model-shaped punctuation, decorative dash breaks, and repeated high-probability phrasing. 9. Return only the usable draft unless the user asked for analysis.
When no profile exists:
Use the channel's normal shape before applying voice:
For a single
A local-first personal voice layer for AI agents. Bring your voice to any agent. Adapt to any audience without losing yourself. Humanize AI-generated drafts by rewriting them in your own calibrated voice: PR comments, Slack replies, docs, RFCs, and emails.
Repo: ymeiri/voice-layer
Build or refresh the local voice-layer profile used by write-in-my-voice from user-approved evidence. Use only when the user explicitly asks to calibrate,…