Voice Print / Anchors

The Anchors layer captures the author-level rules that make your prose yours. Pendraic feeds the voice profile into every AI generation and post-checks the result against it, so a rewrite of a paragraph stays inside your envelope instead of drifting toward the model's default register.

What it captures

  • Register, formal, conversational, colloquial, lyrical, technical, or custom.
  • POV / tense defaults, first / third limited / omniscient / multi-POV; past / present / mixed.
  • Diction sliders, formality (low to high), lexical density (sparse to dense), contractions (avoided to natural), latinate vs. anglo-saxon balance.
  • Rhythm, average sentence length, sentence-length variance, fragment usage, paragraph length, comma style, em-dash usage, semicolon usage.
  • Tone, primary tone (wry, dread, lyrical, etc.), warmth bias, humor level.
  • Taboos, words and patterns the AI must never produce. Personal blacklist.
  • Reference authors, voices you're adjacent to, used as anchors in the model's prompt.

How it shapes generations

Every AI action, inline palette, custom prompts, Penny chat , receives the voice profile as part of the system context. The model is told what register, POV, tense, and rhythm to maintain; what taboos to avoid; what reference authors to treat as voice anchors.

Voice conformance scan

After every AI generation, Pendraic runs a deterministic scan over the output. The scan flags:

  • AI-isms, em dashes used as commas, triplet parallelism, empty intensifiers, predictable rhythms.
  • Taboo hits, words you blacklisted that the model used anyway.

The diff modal renders a conformance score (0-100) plus flag chips for every violation. You see drift before you accept the rewrite.

Where to set it

The right rail's Voice mode (panel rail → Voice icon) opens the voice profile editor. All fields are optional; partial profiles are fine. The default, empty profile, just turns conformance scoring off.

Em-dash policy

Pendraic's default voice prompt forbids em dashes (U+2014) across every customer-facing surface. The model is instructed to use commas, semicolons, or new sentences instead. This is a project-wide baseline, not a writer-configurable knob; em dashes are the most common AI-tell pattern.