Interactively upgrades existing writer skills to latest voiceprint format, explaining changes and migrating from two-file (SKILL.md + voice-profile.md) to single-file structure.
From voiceprintnpx claudepluginhub jamesckemp/claude-plugins --plugin voiceprintThis skill uses the workspace's default tool permissions.
Guides Next.js Cache Components and Partial Prerendering (PPR) with cacheComponents enabled. Implements 'use cache', cacheLife(), cacheTag(), revalidateTag(), static/dynamic optimization, and cache debugging.
Migrates code, prompts, and API calls from Claude Sonnet 4.0/4.5 or Opus 4.1 to Opus 4.5, updating model strings on Anthropic, AWS, GCP, Azure platforms.
Analyzes BMad project state from catalog CSV, configs, artifacts, and query to recommend next skills or answer questions. Useful for help requests, 'what next', or starting BMad.
Update an existing writer skill to the latest voiceprint template structure. Walks you through each change interactively — nothing is applied silently.
If plan mode is active, exit it now using ExitPlanMode before starting this workflow. All voiceprint commands run in execute mode.
SKILL.md (and may also contain voice-profile.md from older versions).All reference file paths are resolved in the /update command output above. Use those exact paths — do not search or glob.
Phase 1: Read & Detect (~30s) → Read files, identify version
Phase 2: Explain & Plan (~1 min) → Tell user what's different, confirm proceed
Phase 3: Extract Voice Data (~30s) → Pull all voice content from existing file(s)
Phase 4: Interactive Selection (~2 min) → Walk through each change area with questions
Phase 5: Apply (~1 min) → Construct merged SKILL.md, backup old files
Phase 6: Validate (~1 min) → Generate test content, confirm it sounds right
Phase 7: Report (~30s) → Summary of what changed
Do NOT search, glob, or look up the writer skill by name — use the provided path directly.
Read from the provided directory path:
{TARGET_DIR}/SKILL.md - The writer skill (required){TARGET_DIR}/voice-profile.md - The voice profile (may or may not exist)If SKILL.md is missing, tell the user:
I couldn't find a writer skill at that path. I need at least
SKILL.mdin the directory. Check the path and try again.
Then stop.
Read the version changelog listed in Reference Files above and follow the Version Detection decision tree to determine the format status.
Store the detection result as CURRENT_VERSION.
Compare CURRENT_VERSION against the Current Version listed in the changelog. If the skill is already current:
Your writer skill is already using the latest voiceprint format (v1.6.0). No structural updates needed.
Want me to check for content updates instead?
Use AskUserQuestion:
If they want to check patterns, jump to Phase 4 Step 2 (Forbidden patterns check). Otherwise, stop.
Read these files from the paths listed in Reference Files above:
Tell the user what version they're on and what will change.
For v1.2.0–1.5.x profiles:
Your writer skill was generated with voiceprint v1.2.0–1.5.x, which used two files (
SKILL.md+voice-profile.md). The current format (v1.6.0) merges everything into a singleSKILL.mdthat works everywhere — including Claude Desktop and other tools that only read one file.Here's what the update involves:
- Merge into one file — All voice profile data (metrics, vocabulary, punctuation, etc.) gets folded into SKILL.md
- Categorized forbidden patterns — Your flat Avoid List becomes organized by type (phrases, structures, additional)
- Quick Reference table — Added to the top of SKILL.md for fast scanning
- Sample Transformations — Before/after examples moved into SKILL.md
- Backup — Your
voice-profile.mdgets renamed tovoice-profile.backup.mdAll your voice data is preserved — nothing is lost.
For pre-1.2.0 profiles:
Your writer skill was generated with an early voiceprint version (pre-1.2.0). The update will restructure it to the current v1.6.0 format. This is a larger migration:
- New structure — Core Instruction, Voice Exemplars, Voice Profile, Voice Markers, Platform Formats, Forbidden Patterns, Internal Checks
- Single file — Everything merges into one self-contained SKILL.md
- Backup — Your
voice-profile.mdgets renamed tovoice-profile.backup.mdSome sections may need manual filling (like Voice Exemplars if they weren't collected in the original profiling).
Then confirm:
Use AskUserQuestion:
If "Tell me more first", answer their questions then re-ask. If "Not now", stop.
Extract all voice-specific content from the existing file(s). This data will be preserved through the restructure.
From SKILL.md, extract:
From voice-profile.md, extract:
From SKILL.md, extract:
From voice-profile.md, extract:
Walk through each change area individually. Let the user decide what to include.
Use AskUserQuestion:
If "Tell me more", explain what sections from voice-profile.md get added to SKILL.md (Quick Reference, Voice Profile with metrics/vocabulary/punctuation/voice detail, Sample Transformations, categorized Forbidden Patterns). Then re-ask.
If "Skip", warn that the two-file format won't work in Claude Desktop or single-file tools, and stop the update.
Read the AI tells catalog listed in Reference Files above and compare against the existing forbidden patterns.
If new patterns are found that aren't already in the profile:
I found some AI writing patterns in the latest catalog that aren't in your profile yet:
List the new categories with brief descriptions.
Use AskUserQuestion:
If no new patterns are found:
Your forbidden patterns are up to date with the latest AI tells catalog.
Count the voice exemplars in the existing profile.
If fewer than 6:
Use AskUserQuestion:
If sample transformations exist in the extracted data:
Use AskUserQuestion:
If "Show me first", display the transformations and re-ask with just "Include" and "Skip".
If no transformations exist, note that placeholder structure will be added.
If calibration notes exist:
Use AskUserQuestion:
If "Add something", ask for the new note in free text.
Using the extracted data from Phase 3 and the user's choices from Phase 4, build the new SKILL.md following the writer skill template structure (see Reference Files above):
voiceprint-version: "1.6.0", preserve name and descriptionvoice-profile.md references)voice-profile.md referencesWrite the constructed SKILL.md to {TARGET_DIR}/SKILL.md, replacing the old version.
If voice-profile.md exists, rename it:
{TARGET_DIR}/voice-profile.md → {TARGET_DIR}/voice-profile.backup.mdRead the newly written SKILL.md and generate a short paragraph (3-5 sentences) following the skill's instructions. Pick a topic relevant to the user's stated use cases (from the profile's calibration notes or use case weighting).
Here's a test paragraph written with your updated skill:
{test paragraph}
Does this still sound like you? The update shouldn't change your voice — just the file structure.
Use AskUserQuestion:
If "Something's off", collect feedback and apply fixes to the new SKILL.md. Re-validate.
Present a summary of all changes:
Updated {PROFILE_NAME}-writer to v1.6.0:
Structural changes: {numbered list of what changed}
Voice data preserved:
- All voice exemplars ({count})
- All forbidden patterns ({count} items)
- All voice markers and platform formats
- All metrics and calibration notes
Files:
SKILL.md— Updated to single-file v1.6.0 formatvoice-profile.backup.md— Backup of your old voice profile (safe to delete once you're satisfied)Your writer skill now works everywhere — Claude Code, Claude Desktop, and any tool that supports SKILL.md files.
/voiceprint generate first./voiceprint refine to fill gaps.All reference files are listed with resolved paths in the Reference Files section above.