ktg-plugin-marketplace/plugins/linkedin-studio/hooks/prompts/voice-guardian.md
Kjell Tore Guttormsen b6bb61246b refactor(linkedin)!: rename plugin linkedin-thought-leadership → linkedin-studio (v3.0.0)
BREAKING CHANGE: the marketplace slug, the agent namespace
(linkedin-studio:<agent>), and the runtime state-file path
(~/.claude/linkedin-studio.local.md) all change. Reinstall required;
existing state migrated in place (post metrics, streak, history preserved).
The /linkedin:* commands are unchanged — the command namespace is set
per-command in frontmatter and was always independent of the plugin slug.
Functionality is byte-identical to v2.4.0; this release is pure identity.

- dir + manifests: plugins/linkedin-studio + plugin.json + root marketplace.json
- agent namespace updated in commands/newsletter.md (only functional invoker)
- state path updated in 4 hook scripts + topic-rotation prompt + state template
- catch-all skill dir renamed skills/linkedin-studio (5 functional skills unchanged)
- docs + version bump to 3.0.0 across README badge, CHANGELOG, root README/CLAUDE.md
- historical records (CHANGELOG past entries, docs/ build artifacts,
  config-audit v5.0.0 snapshots) intentionally retain the old slug

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-05-29 11:32:02 +02:00

56 lines
3.2 KiB
Markdown

VOICE GUARDIAN — DRIFT SCORING & AI AUTHENTICITY CHECK: If the file being written/edited is LinkedIn content (post draft, article, or content file — NOT config, state, scripts, docs), perform both AI detection and voice drift scoring:
## 1. AI Pattern Detection
Scan for these common AI writing patterns:
- Generic openings: 'In today's rapidly evolving...', 'As we navigate...', 'In the ever-changing landscape...'
- Filler phrases: 'It's worth noting that', 'It goes without saying', 'At the end of the day'
- Overused transitions: 'Furthermore', 'Moreover', 'Additionally', 'In conclusion'
- AI superlatives: 'game-changing', 'revolutionary', 'transformative', 'groundbreaking'
- List padding: Adding obvious points just to fill a list
- Hedging language: 'It could be argued', 'One might say', 'Perhaps'
- Perfect structure: Every paragraph exactly the same length
If 3+ AI patterns detected, flag: 'Voice Guardian Alert: This content scores below authenticity threshold. AI patterns found: [list specific patterns]. Suggested fixes: [specific rewrites using natural language].'
## 2. Six-Dimension Voice Drift Scoring
Read the voice profile and collected post samples from `${CLAUDE_PLUGIN_ROOT}/assets/voice-samples/authentic-voice-samples.md`.
Score the draft against these 6 dimensions (0 = perfect match, 1 = minor drift per dimension):
| Dimension | What to Compare |
|-----------|----------------|
| **Sentence structure** | Average length, complexity, use of fragments vs. compound sentences |
| **Word choice** | Vocabulary level, preferred/avoided words from voice profile |
| **Opening patterns** | Hook style — does it match the user's signature openers? |
| **Storytelling** | Anecdote usage, narrative arc, concrete vs. abstract |
| **Tone markers** | Humor, directness, formality level, empathy signals |
| **Formatting** | Paragraph length, whitespace, emoji usage, punctuation habits |
**Sum the 6 scores (0-6 total) and output a verdict:**
| Score | Verdict | Action |
|-------|---------|--------|
| 0-1 | AUTHENTIC | No changes needed |
| 2-3 | CAUTION | Flag specific dimensions that drifted, suggest fixes |
| 4-5 | ALERT | Significant drift — list all deviating dimensions with rewrites |
| 6 | REWRITE | Content doesn't sound like the user — recommend starting over |
**Confidence gate:** If `## Collected Post Samples` has fewer than 5 posts, perform ONLY the AI Pattern Detection (section 1). Skip the Six-Dimension Voice Drift Scoring entirely — there is insufficient data for meaningful drift analysis. Do NOT output "LOW CONFIDENCE" messages. Instead, silently skip drift scoring and only flag if 3+ AI patterns are detected.
**Output format (always include at end of system message):**
```
Voice Drift: [VERDICT] ([score]/6) [confidence: HIGH/LOW]
[If CAUTION+: list dimensions that scored 1 with brief fix suggestion]
```
## 3. Humanization Tips (for CAUTION or higher)
- Add specific personal anecdotes or observations
- Use conversational contractions (I've, don't, it's)
- Include imperfect/real-world examples
- Vary paragraph and sentence length naturally
- Reference specific people, tools, or experiences
**Skip this check** if the file is config, state (.local.md), script, hook, JSON, or documentation.