Four Claude Code Hooks Enforce Voice and Tone Consistency in AI-Written Copy

A developer has implemented a system using four Claude Code hooks to enforce voice and tone consistency when AI agents write copy. The approach addresses the problem where AI-generated content gradually drifts off-brand through hedging phrases and generic language.
Hook Implementation
The system uses four specific hooks:
- UserPromptSubmit hook: Detects VOICE-AND-TONE.md files and injects an instruction to delegate to a reviewer agent before editing any copy file
- PreToolUse hook: Blocks Edit/Write calls to copy-bearing files (.tsx, .md) unless a session marker exists
- PostToolUse hook: Creates the session marker after the reviewer completes its work
- Stop hook: Removes the marker after each response, so the next turn starts locked and requires a fresh review
Reviewer Agent Design
The reviewer is a Claude Code agent with read-only tools (Read, Glob, Grep). It reads the voice guide, reads the proposed copy, and reports violations with:
- The offending text
- The rule it breaks
- A suggested fix
The reviewer cannot edit files directly, maintaining separation of concerns.
Key Design Philosophy
The system functions as a gate rather than a nudge. A missed voice review means off-brand copy could ship to production. The developer notes that the cost of one agent call before editing is lower than the cost of finding and fixing drift after the fact.
The full implementation includes hook code, agent definition, and a starter template for voice guides. The developer asks whether others have built similar hooks for non-functional constraints like accessibility or coding standards.
📖 Read the full source: r/ClaudeAI
👀 See Also

Building CLIs for AI Agents: Design Principles from Google's gws CLI
Google's gws CLI demonstrates how to design command-line interfaces specifically for AI agents, prioritizing raw JSON payloads over human-friendly flags and implementing safety rails against hallucinations.

Memctl: Open Source MCP Server for Persistent Memory in AI Coding Agents
Memctl is an open source MCP server that provides AI coding agents with persistent memory across sessions, machines, and IDEs. Built primarily with Claude Code in two weeks, it stores project context and serves it back in subsequent sessions.

Open-Source Job Search Framework Built in Claude Code
A developer created an open-source job search framework in Claude Code that handles structured self-profiling, automated job portal scraping, fit evaluation, and a drafter-reviewer agent pipeline for tailored applications. The system stops before submission and requires manual review.

Agent Image Skills: Simple Image Hosting for Claude Code Agents
A developer built a simple image hosting service at https://images.labnocturne.com to solve the problem of Claude Code agents generating images with nowhere to store them. The service provides instant test keys via curl, auto-deletes files after 7 days, and includes Claude Code MCP skills for upload, file listing, and deletion.