Policy layers for customer-facing assistants
A practical split between model creativity and hard rails: what belongs in prompts, what belongs in code, and how to version both without shipping surprises.
Customer-facing assistants sit at the intersection of brand, law, and messy reality. The model will always be tempted to improvise; your job is to make improvisation safe. That means separating “how we sound” from “what we may promise.”
Three layers we recommend
- Organizational policy: non-negotiables (PII handling, refunds, medical or legal disclaimers).
- Product policy: what the assistant may claim about inventory, pricing, and timelines—usually backed by APIs, not prose.
- Voice layer: tone, empathy, and format—where the model has room to shine without changing facts.
Version everything that can change compliance posture
Prompts drift. So do discount rules. Tie policy versions to releases the same way you tie database migrations: with review, rollback, and an audit record of who signed off.
// Pseudocode: check before send
const decision = await policy.evaluate({
userId,
channel: "chat",
proposedReply,
context: { cart, region },
});
if (!decision.allow) return escalate(decision);When evaluation is cheap and explicit, you can iterate on voice weekly without fearing a silent regression in what customers are told.
Related articles
- Engineering8 min read
Building observable agent loops that teams actually trust
Why the difference between a demo and production is telemetry, budgets, and human-readable traces—and how we wire them from day one.
- Product6 min read
From pilot to production: a rollout playbook for agentic features
How we sequence shadow mode, limited release, and full automation so product, legal, and ops stay aligned—and metrics tell the story.
- Industry9 min read
Agentic commerce readiness: a checklist for operators
Before you let an assistant touch carts and coupons, these are the catalog, identity, and governance checks we run with every merchant team.