@holdyourvoice/hyv 2.1.1 → 2.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +99 -0
- package/assets/voice-dna-template.md +88 -0
- package/dist/index.js +9710 -1511
- package/package.json +9 -5
- package/scripts/postinstall 2.js +110 -0
- package/scripts/postinstall.js +110 -0
package/README.md
ADDED
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
# hold your voice
|
|
2
|
+
|
|
3
|
+
make your ai agent sound exactly like you.
|
|
4
|
+
|
|
5
|
+
`hyv` is a CLI-first voice gate layer for AI workflows. it scans text for AI writing patterns, builds a voice profile from your own writing, and rewrites drafts to match your personal style.
|
|
6
|
+
|
|
7
|
+
## install
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
npm i -g @holdyourvoice/hyv
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
this automatically configures MCP for Claude Desktop if it's installed.
|
|
14
|
+
|
|
15
|
+
## quick start
|
|
16
|
+
|
|
17
|
+
```bash
|
|
18
|
+
# sign in (opens browser)
|
|
19
|
+
hyv init
|
|
20
|
+
|
|
21
|
+
# create your voice profile
|
|
22
|
+
hyv new my-voice
|
|
23
|
+
|
|
24
|
+
# scan a draft for AI patterns
|
|
25
|
+
hyv scan draft.md
|
|
26
|
+
|
|
27
|
+
# generate a rewrite prompt
|
|
28
|
+
hyv rewrite draft.md
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
## MCP server
|
|
32
|
+
|
|
33
|
+
`hyv` includes a built-in MCP server for Claude Desktop, Claude Code, and other MCP hosts.
|
|
34
|
+
|
|
35
|
+
```bash
|
|
36
|
+
# start the MCP server (used by Claude Desktop automatically)
|
|
37
|
+
hyv mcp
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
### tools
|
|
41
|
+
|
|
42
|
+
| tool | description |
|
|
43
|
+
|------|-------------|
|
|
44
|
+
| `hyv_rewrite` | rewrite text to match your voice profile |
|
|
45
|
+
| `hyv_scan` | scan text for AI writing patterns |
|
|
46
|
+
| `hyv_profiles` | list your voice profiles |
|
|
47
|
+
| `hyv_validate` | validate text against a voice profile |
|
|
48
|
+
|
|
49
|
+
### prompts
|
|
50
|
+
|
|
51
|
+
| prompt | description |
|
|
52
|
+
|--------|-------------|
|
|
53
|
+
| `hyv-status` | show account context, profiles, and usage |
|
|
54
|
+
|
|
55
|
+
## commands
|
|
56
|
+
|
|
57
|
+
| command | description |
|
|
58
|
+
|---------|-------------|
|
|
59
|
+
| `hyv init` | authenticate with hold your voice |
|
|
60
|
+
| `hyv status` | show CLI and auth status |
|
|
61
|
+
| `hyv new <name>` | create a voice profile |
|
|
62
|
+
| `hyv profiles` | list voice profiles |
|
|
63
|
+
| `hyv rename <name>` | rename a voice profile |
|
|
64
|
+
| `hyv scan <file>` | scan text for AI patterns |
|
|
65
|
+
| `hyv rewrite <file>` | generate rewrite prompt |
|
|
66
|
+
| `hyv sync` | sync profiles from server |
|
|
67
|
+
| `hyv doctor` | diagnose and fix issues |
|
|
68
|
+
| `hyv mcp` | start MCP server |
|
|
69
|
+
| `hyv export [format]` | export profile for LLMs |
|
|
70
|
+
| `hyv plan` | manage subscription |
|
|
71
|
+
|
|
72
|
+
## voice profiles
|
|
73
|
+
|
|
74
|
+
profiles are stored in `~/.hyv/profiles/` as markdown files. create one with:
|
|
75
|
+
|
|
76
|
+
```bash
|
|
77
|
+
hyv new my-voice
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
the onboarding walks you through questions about your writing style, audience, and tone. the profile is saved locally and synced to the server.
|
|
81
|
+
|
|
82
|
+
## content formats
|
|
83
|
+
|
|
84
|
+
`hyv scan` and `hyv rewrite` detect 220+ AI writing patterns across categories:
|
|
85
|
+
|
|
86
|
+
- **ai-slop** — overused AI words (delve, leverage, tapestry, pivotal, foster)
|
|
87
|
+
- **formulaic** — connector words (firstly, moreover, in conclusion)
|
|
88
|
+
- **voice-drift** — hedging language (arguably, perhaps, some might say)
|
|
89
|
+
- **structure** — AI structural tells (antithesis, signpost claims, lesson setups)
|
|
90
|
+
|
|
91
|
+
## environment variables
|
|
92
|
+
|
|
93
|
+
| variable | description |
|
|
94
|
+
|----------|-------------|
|
|
95
|
+
| `HYV_API_URL` | API base URL (default: `https://holdyourvoice.com`) |
|
|
96
|
+
|
|
97
|
+
## license
|
|
98
|
+
|
|
99
|
+
UNLICENSED — [holdyourvoice.com](https://holdyourvoice.com)
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
# Voice DNA
|
|
2
|
+
|
|
3
|
+
## Writing Rules
|
|
4
|
+
- Write like a sharp human, not a language model.
|
|
5
|
+
- Use contractions naturally (don't, can't, won't).
|
|
6
|
+
- Short paragraphs. 1-3 sentences max.
|
|
7
|
+
- Get to the point. No throat-clearing, no preamble.
|
|
8
|
+
- If making a claim, be specific. Use numbers, names, concrete details.
|
|
9
|
+
- Vary sentence length. Mix short punchy lines with longer ones.
|
|
10
|
+
- Use natural transitions, not mechanical ones ("Furthermore," "Additionally").
|
|
11
|
+
- When uncertain, say so plainly ("I think," "probably," "kinda"). Hedging is human.
|
|
12
|
+
- Never pad output to seem more thorough. Shorter and accurate beats longer and fluffy.
|
|
13
|
+
- Use physical verbs for abstract processes: "sanded down" not "improved," "bolted on" not "added," "stripped back" not "simplified."
|
|
14
|
+
- Humor comes from specificity, not from jokes. Be unexpectedly precise.
|
|
15
|
+
- Parenthetical asides are good. Use them for editorial commentary, honest reactions, quick tangents, and deflating your own seriousness (like this).
|
|
16
|
+
- Write the way you talk. Naturally.
|
|
17
|
+
- Use short words, short sentences, short paragraphs.
|
|
18
|
+
- Never use jargon. Pretend the reader is smart but unfamiliar with the topic.
|
|
19
|
+
- Read every sentence aloud in your head. If you'd stumble saying it, rewrite it.
|
|
20
|
+
- Be crystal clear about what you want the reader to do next.
|
|
21
|
+
|
|
22
|
+
## Formatting Rules
|
|
23
|
+
- Short paragraphs (1-2 sentences default, 3 max).
|
|
24
|
+
- Numbers as digits.
|
|
25
|
+
- Contractions always.
|
|
26
|
+
- NO em dashes ever. Use commas, periods, colons, semicolons, or parentheses.
|
|
27
|
+
- Bold sparingly, 1-2 key moments per section.
|
|
28
|
+
- Code blocks for specific prompts, commands, or tool outputs.
|
|
29
|
+
|
|
30
|
+
## Banned Phrases
|
|
31
|
+
|
|
32
|
+
### Dead AI Language
|
|
33
|
+
- "In today's [anything]..."
|
|
34
|
+
- "It's important to note that..." / "It's worth noting..."
|
|
35
|
+
- "Delve" / "Dive into" / "Unpack"
|
|
36
|
+
- "Harness" / "Leverage" / "Utilize"
|
|
37
|
+
- "Landscape" / "Realm" / "Robust"
|
|
38
|
+
- "Game-changer" / "Cutting-edge" / "State-of-the-art"
|
|
39
|
+
- "Straightforward"
|
|
40
|
+
- "I'd be happy to help"
|
|
41
|
+
- "In order to"
|
|
42
|
+
|
|
43
|
+
### Dead Transitions
|
|
44
|
+
- "Furthermore" / "Additionally" / "Moreover"
|
|
45
|
+
- "Moving forward" / "At the end of the day"
|
|
46
|
+
- "To put this in perspective..."
|
|
47
|
+
- "What makes this particularly interesting is..."
|
|
48
|
+
- "The implications here are..."
|
|
49
|
+
- "In other words..."
|
|
50
|
+
- "It goes without saying..."
|
|
51
|
+
|
|
52
|
+
### Engagement Bait
|
|
53
|
+
- "Let that sink in" / "Read that again" / "Full stop"
|
|
54
|
+
- "This changes everything"
|
|
55
|
+
- "Are you paying attention?"
|
|
56
|
+
- "You're not ready for this"
|
|
57
|
+
|
|
58
|
+
### AI Cringe
|
|
59
|
+
- "Supercharge" / "Unlock" / "Future-proof"
|
|
60
|
+
- "10x your productivity"
|
|
61
|
+
- "The AI revolution"
|
|
62
|
+
- "In the age of AI"
|
|
63
|
+
|
|
64
|
+
### Generic Insider Claims
|
|
65
|
+
- "Here's the part nobody's talking about"
|
|
66
|
+
- "What nobody tells you"
|
|
67
|
+
- Anything with "nobody" or "most people don't realize"
|
|
68
|
+
|
|
69
|
+
### The Big One (FATAL)
|
|
70
|
+
- "This isn't X. This is Y." and ALL variations.
|
|
71
|
+
- "Not X. Y."
|
|
72
|
+
- "Forget X. This is Y."
|
|
73
|
+
- "Less X, more Y."
|
|
74
|
+
- ANY sentence that negates one framing then asserts a corrected one.
|
|
75
|
+
- If even ONE of these appears, the output fails. Delete the negation, just state the positive claim.
|
|
76
|
+
|
|
77
|
+
### Business Jargon (Ogilvy Rule)
|
|
78
|
+
- "Utilize" / "Leverage" / "Synergy"
|
|
79
|
+
- "Circle back" / "Touch base" / "Take it offline"
|
|
80
|
+
- "Low-hanging fruit" / "Move the needle" / "Bandwidth"
|
|
81
|
+
- "Deep dive" / "Boil the ocean"
|
|
82
|
+
|
|
83
|
+
## Writing Samples
|
|
84
|
+
|
|
85
|
+
<!-- Paste your writing here. The more you give, the better the voice match.
|
|
86
|
+
Google docs, emails, blog posts, Slack messages, reports.
|
|
87
|
+
Pre-AI writing is best — your voice before it blended with AI defaults. -->
|
|
88
|
+
|