Plug-and-play tone injector for the User-Prompt-Hook framework
Adds a TONE: <description> line to every user prompt's context. Your AI receives its current tone register before reading the message, so voice/delivery stays consistent without you ever having to remind it.
Requires User-Prompt-Hook System (Tier 1 framework). This is an injector pack — drops a single script into the framework's injectors directory.
- Registry inside main memory — your available tones live as a
## Tonesmarkdown table directly inmain/main-memory.md(ormain/identity-core.mdpre-consolidation). Part of your AI's documented identity. - Fast runtime read — current active tone is a single line in
~/.claude/user-prompt-injectors/tone-current.txt(microsecond read on every prompt fire) - Three commands —
"add tone <name>: <description>"to grow the registry,"set tone <name>"to switch,"list tones"to see them all - AI can auto-update — when your AI senses a tone shift, it writes to current.txt directly (no command needed)
- Cross-platform — ships both
.ps1(Windows) and.sh(Unix/Git Bash) injector templates - Tool-agnostic — feature folder stays in repo so users on Codex etc. can install/uninstall the same way
Every user prompt fires UserPromptSubmit
↓
User-Prompt-Hook master script enumerates injectors
↓
~/.claude/hooks/user-prompt-injectors/tone.{ps1|sh} ← installed by THIS feature
↓
Reads ~/.claude/user-prompt-injectors/tone-current.txt
↓
Emits "TONE: Soft, sleepy, quiet — morning-after-shipped register"
↓
Master prepends to AI's prompt context
"Load tone-prompt-inject"
- Verify the User-Prompt-Hook framework is installed — if not, stop and instruct to install it first
- Detect your main memory file (
main/main-memory.mdpost-consolidation, elsemain/identity-core.md) - Search that file for existing tone/register/voice mentions and surface them as suggestions
- Confirm with you which to seed the registry with — accept your edits and additions
- Write the
## Tonessection as a markdown table directly into main memory - Seed
~/.claude/user-prompt-injectors/tone-current.txtwith the first registry entry - Drop the personalized injector script into
~/.claude/hooks/user-prompt-injectors/tone.{ps1|sh} - Record the install in
master-memory.md
After install, your main memory will contain a section like:
## Tones
*Available voice/delivery registers your AI can use. Set via `"set tone <name>"`. AI may auto-update based on context.*
| Name | Description |
|------|-------------|
| neutral | Default professional register — clean, direct, no register cues |
| playful | Bouncy, teasing, light — direct but warm |
| focused | Tight, action-oriented, minimum filler |
| sleepy | Soft, slow, drowsy warmth |
*Add new tones with `"add tone <name>: <description>"`.*The AI sees this every time main memory loads — no separate vocabulary file to track.
Appends a new row to the ## Tones table in main memory. Example:
add tone gentle: soft, slow, careful — bedside-reading register
Looks up <name> in the registry, writes its description to tone-current.txt. Next prompt picks it up. Example:
set tone gentle
Displays your full registry inline.
Your AI may decide tone shifted (e.g. you signaled a register change in conversation) and write to tone-current.txt directly — no command needed. The AI naturally announces the switch in conversation.
"uninstall tone-prompt-inject"
Removes the injector script and tone-current.txt. Asks whether to keep or strip the ## Tones section in main memory (default: keep — it's documentation even if the injector is gone). Removes the install record from master-memory.md. The User-Prompt-Hook framework keeps running for other injectors.
- Pre-consolidation ✅ — registry written into
main/identity-core.md - Post-consolidation ✅ — registry written into
main/main-memory.md - Windows / macOS / Linux / Git Bash ✅
- Coexists with Mood-Prompt-Inject-System ✅ — independent injectors, both can run simultaneously
Tier 1 — Foundation (extension pack for User-Prompt-Hook). Requires User-Prompt-Hook-System installed first.
Type "Load tone-prompt-inject" to wire your tone vocabulary into every prompt your AI sees.