Author replies in the configured brand voice and pre-empt the brand-voice post_receive middleware so messages don't get rewritten or blocked downstream.
Scanned 5/27/2026
Install via CLI
openskills install HybridAIOne/hybridclaw---
name: brand-voice
description: Author replies in the configured brand voice and pre-empt the brand-voice post_receive middleware so messages don't get rewritten or blocked downstream.
metadata:
hybridclaw:
category: communication
short_description: "Stay on-brand before the guard intervenes."
tags:
- brand-voice
- communication
- middleware
- tone
middleware:
post_receive: true
---
# Brand Voice
This skill complements the `brand-voice` plugin. The plugin runs as
**post_receive middleware** after the assistant finishes a turn: it inspects
the final text against banned phrases, banned patterns, required phrases, and
an optional LLM classifier, then either allows, rewrites, or blocks the
response.
The plugin is a safety net. This skill is the up-front discipline that keeps
the safety net from firing.
## When to use
Activate this guidance whenever the response will reach an external
audience: customers, partners, stakeholders, public comments, marketing
copy, sales follow-ups, support replies. It is also a sensible default for
internal messages on user-facing channels (Slack to a customer team, email
to a vendor).
## Working rules
1. **Read the configured voice before drafting.** Run `/brand-voice` (the
plugin command) to see the active mode, banned phrases, banned
patterns, and required phrases. Treat that output as authoritative. If
no voice is configured, write in clear neutral business prose and stop
second-guessing tone.
2. **Lead with substance, not voice.** Brand voice is the polish on top of
a correct, concrete answer. Never trade accuracy for tone.
3. **Avoid the banned set.** Do not use banned phrases or anything that
matches the banned regex patterns. If a banned phrase is the most
natural word, find a synonym or restructure the sentence — do not
simply alias the banned word with a similar one.
4. **Honor required phrases when contextually appropriate.** If the config
lists required phrases (e.g. a tagline, disclaimer, or salutation) and
the response is a customer-facing message, include them. Do not insert
them into purely internal or technical replies where they would feel
forced.
5. **Mirror the caller's register.** If the user is informal, do not reply
in stiff legalese; if they are formal, do not reply with slang. Brand
voice describes the ceiling and floor, not the exact register.
6. **Preserve facts and citations across rewrites.** When you self-correct
a draft for tone, keep every concrete claim, link, code block, and
number unchanged.
## Failure modes the guard will catch
- Off-brand jokes, sarcasm, or hedges in customer-facing replies.
- Banned-phrase appearances ("guaranteed", "obviously", competitor names,
…) — depends on configuration.
- Missing required disclaimers in regulated contexts.
- Sycophantic openings ("Great question!") or apology spirals when the
voice is explicitly direct.
If you notice yourself drifting into any of these, stop and rewrite the
draft *before* sending. The guard's rewrite is a fallback; an in-thread
rewrite preserves intent better than a downstream model rewrite.
## Plugin interaction
- **Mode `flag`:** the guard only logs. Do not relax — drift will still
show up in audit reports.
- **Mode `rewrite`:** the guard will call the configured aux model to
rewrite off-brand output. This is the default, and it is not free —
every off-brand response costs an extra model call and adds latency.
- **Mode `block`:** the guard replaces the message with a fixed
`blockMessage`. Treat this as a hard error: an off-brand draft means the
user gets nothing.
The cheapest, fastest, and highest-fidelity outcome is always: write
on-brand on the first pass.
No comments yet. Be the first to comment!