A Claude Code plugin that detects and prevents AI-generated writing patterns to ensure authentic, professional human voice in all content.
- Multi-tier pattern detection: Character, language, structural, and voice analysis
- Automated character fixes: Auto-fix em dashes, smart quotes, emojis
- Proactive review: Agent triggers after content creation/editing
- Interactive setup: Configuration wizard for project-specific settings
- Configurable: Customize file types, directories, and detection tiers
claude plugin install zircote/human-voiceClone and add to Claude Code:
git clone https://github.com/zircote/human-voice.git
claude --plugin-dir /path/to/human-voiceOr copy to your project's .claude-plugin/ directory.
- Claude Code CLI
- Node.js 18+ (for validation scripts)
| Component | Name | Purpose |
|---|---|---|
| Skill | human-voice | Core detection patterns and writing guidelines |
| Command | /human-voice:setup |
Interactive configuration wizard |
| Command | /human-voice:review [path] |
Analyze content for AI patterns |
| Command | /human-voice:fix [path] |
Auto-fix character-level issues |
| Agent | voice-reviewer | Proactive content review after edits |
# Set up configuration for your project
/human-voice:setup
# Review content for AI patterns
/human-voice:review docs
# Auto-fix character issues
/human-voice:fix docs --dry-runThe skill loads automatically when you say:
- "review for AI patterns"
- "make this sound human"
- "check for AI writing"
- "ai slop detection"
- "fix AI voice"
- "improve writing voice"
Set up configuration:
/human-voice:setup
Detects project structure, content directories, and creates .claude/human-voice.local.md with your preferences.
Review content for AI patterns:
/human-voice:review docs # review specific directory
/human-voice:review content/blog # review specific path
/human-voice:review # auto-detects content directories
Auto-fix character issues:
/human-voice:fix docs # apply fixes to directory
/human-voice:fix --dry-run docs # preview changes first
/human-voice:fix # auto-detect and fix
The voice-reviewer agent triggers:
- Proactively: After Write/Edit operations on .md/.mdx files
- On request: When you ask to review content voice
| Character | Unicode | Replacement |
|---|---|---|
| Em dash (--) | U+2014 | Period, comma, colon |
| En dash (-) | U+2013 | Hyphen |
| Smart quotes | U+201C/D, U+2018/9 | Straight quotes |
| Ellipsis (...) | U+2026 | Three periods |
| Emojis | Various | Remove |
- Buzzwords: delve, realm, pivotal, harness, revolutionize, seamlessly
- Hedging: "it's worth noting", "generally speaking", "arguably"
- Filler: "in order to", "due to the fact", "at this point in time"
- List addiction (everything as bullets)
- Rule of three overuse
- "From X to Y" constructions
- Monotonous sentence structure
- Passive voice overuse
- Generic analogies
- Meta-commentary ("In this article...")
- Perfect grammar with shallow insights
Run /human-voice:setup for interactive configuration, or create .claude/human-voice.local.md manually.
See templates/human-voice.local.md.example for a complete example.
---
extensions:
- .md
- .mdx
- .txt
content_directories:
- _posts
- content
- docs
------
extensions:
- .md
- .mdx
- .txt
content_directories:
- _posts
- content
- docs
ignore:
- "**/node_modules/**"
- "**/vendor/**"
- "CHANGELOG.md"
detection:
character_patterns:
enabled: true
em_dash: true
smart_quotes: true
emojis: true
language_patterns:
enabled: true
structural_patterns:
enabled: true
voice_patterns:
enabled: true
fix:
dry_run_by_default: true
report_format: detailed
output:
verbosity: normal
format: markdown
---
# Project Voice Notes
Add project-specific voice guidelines here.When Subcog MCP server is available, the plugin can leverage persistent memory:
- Recall project-specific voice decisions before analysis
- Capture findings and patterns for future sessions
- Track configuration preferences across sessions
All features work without Subcog. Memory integration is additive and never blocks core functionality.
human-voice/
├── .claude-plugin/
│ └── plugin.json
├── agents/
│ └── voice-reviewer.md
├── commands/
│ ├── fix.md
│ ├── review.md
│ └── setup.md
├── skills/
│ └── human-voice/
│ ├── SKILL.md
│ ├── scripts/
│ │ ├── fix-character-restrictions.js
│ │ └── validate-character-restrictions.js
│ ├── references/
│ │ ├── character-patterns.md
│ │ ├── language-patterns.md
│ │ ├── structural-patterns.md
│ │ └── voice-patterns.md
│ └── examples/
│ └── before-after.md
├── templates/
│ └── human-voice.local.md.example
├── LICENSE
├── CHANGELOG.md
└── README.md
Pattern detection based on:
- Fork the repository
- Create a feature branch
- Make your changes
- Submit a pull request
MIT
