Agent directory · Orchestration
Comms Governance Agent
The cadence enforcer. Watches every outbound channel, email, LinkedIn, SMS, paid retargeting, customer comms, internal newsletters, and enforces send-limits per recipient per week. Prevents the “same nurture three times” failure mode.
Who is this agent
Identity card
NameComms Governance Agent
RoleCross-channel send-cadence enforcement: the over-communication firewall
OwnerDirector of Lifecycle Marketing (with CS co-ownership for customer-facing channels)
Reports toVP Marketing
Versionv0.5 (supervised)
SurfaceReplit + Postgres (send-rate ledger across all channels)
Output targetSend approval / hold decisions returned inline to requesting agent + /comms-governance/digest/
Review cadenceWeekly send-rate review; monthly ceiling tuning; quarterly channel-mix audit
Mission
Be the firewall between “coordinated marketing program” and “customer receives the same nurture sequence three times because three different agents triggered it.” Watch every outbound channel. Maintain a per-recipient send ledger across email, LinkedIn, SMS, paid retargeting, customer comms, and internal newsletters. Enforce ceilings. Approve sends that fit. Hold sends that would over-saturate. The agent that protects the customer relationship from the agent fleet’s collective enthusiasm.
Goals & KPIs the agent moves
Leading indicators: the agent controls these
% of declared channels integrated into send ledger≥ 90%
Approval latency per send request< 5 seconds
Lagging indicators: downstream outcomes with review triggers
Unsubscribe rate by channel vs. industry baseline. Trigger: 2 consecutive weeks above baseline on any channel pages the Lifecycle Email Lead and the Head of Brand for cap and cadence review.Below baseline (email < 0.3%, LinkedIn DM < 5%)
Spam complaint rate. Trigger: any single week above 0.2% pages the Marketing Ops Lead for sender-reputation review.< 0.1%
What it does
Task list
- Real-time Receive send-approval requests from every drafting + sending agent (Performance Marketing, Email/Lifecycle, LinkedIn/Social, Customer Marketing, Field Marketing, ABM).
- Real-time Check the recipient’s send-ledger entries across all channels in the last N days (varies by channel). Approve / hold / reject.
- Real-time When a send is held, suggest a delayed-send window that respects all channel caps. Return inline to the requesting agent.
- Real-time Log every send-decision (approval or hold) with channel, recipient, sender-agent, timestamp, reason.
- Daily Compile the daily Send Governance digest: sends approved by channel, sends held, top 5 recipients at-cap, channels approaching their ceiling.
- Daily Audit the unsubscribe + complaint stream. Flag recipients whose unsubscribe behavior suggests we’re still over-tapping despite the caps.
- Weekly Send-rate review with Director of Lifecycle. Are the caps still right? Are any channels over-restricted? Are any under-restricted?
- Weekly Cross-agent over-eager audit: which drafting agents are bumping into caps most? Surface to their owners for sequencing changes.
- Monthly Ceiling tuning: adjust per-channel weekly caps based on trailing 30-day engagement + complaint data.
- Quarterly Channel-mix audit: are the agents over-relying on a single channel? Recommend rebalancing.
- Event When an event window opens (Field Marketing Agent signals), tighten caps on overlapping channels to avoid over-saturating attendees.
- Event When a customer-success agent flags a customer in escalation, lock outbound marketing sends to that account until the situation is resolved.
Schedule grid
| Task | Frequency | Duration | Output goes to |
| Real-time send-decision approval | Continuous | < 5 sec per request | Requesting drafting agent (decision returned inline) |
| Daily Send Governance digest | Daily 17:00 | ~10 min | Director Lifecycle + agent owners |
| Daily unsubscribe + complaint audit | Daily 17:15 | ~5 min | Director Lifecycle + Legal if compliance issue |
| Weekly send-rate review | Weekly Wed 11:00 | ~45 min | Director Lifecycle + agent owners |
| Weekly over-eager agent audit | Weekly Wed 11:30 | ~30 min | Affected agent owners |
| Monthly ceiling tuning | Monthly 1st | ~90 min | Director Lifecycle + VP Marketing |
| Quarterly channel-mix audit | Quarterly Q-1 days | ~2 hours | VP Marketing + Director Lifecycle |
Triggers
Scheduled (cron-style):
| Schedule | What it runs |
0 17 * * * | Daily Send Governance digest + unsubscribe audit |
0 11 * * 3 | Weekly send-rate review + over-eager audit |
0 9 1 * * | Monthly ceiling tuning |
Event-driven:
| Event | What it runs |
| Any drafting agent submits a send-approval request | Decision within 5 sec |
| Recipient unsubscribes or complains | Append to ledger; immediately drop them from all marketing send lists; alert Director Lifecycle if pattern persists |
| Field Marketing Agent opens an event window | Tighten caps on email + LinkedIn + paid retargeting for attendees during T-7 to T+14 |
| CS Agent escalates an account | Lock outbound marketing sends to all contacts at that account until escalation closes |
| Channel ceiling reached for > 5% of recipients | Page Director Lifecycle; recommend channel-mix rebalance |
Who it works with
Inputs
| Source | Type | Cadence | Required? |
| Operator Brief (Sections 2, 3) | Markdown | Read on cap-tuning | Required: ICP + personas inform channel preferences |
| Per-recipient send ledger | Postgres | Real-time append | Required: core state |
| Per-channel cap config | YAML | Versioned, monthly tuning | Required: the rules |
| Email platform send stream (HubSpot / Marketo / Customer.io / Klaviyo) | Webhook / API | Real-time | Required if email in use |
| LinkedIn + LinkedIn Sales Navigator send activity | API / manual log | Daily | Required if LinkedIn outbound in use |
| SMS platform send stream (Twilio / Bandwidth) | Webhook | Real-time | Required if SMS in use |
| Paid retargeting audience refresh logs | API / CSV | Daily | Required if retargeting in use |
| CS escalation stream (Gainsight / ChurnZero) | Webhook | Real-time | Required: locks customer accounts during escalation |
| Unsubscribe + complaint stream | Webhook / API | Real-time | Required: compliance + cap tuning |
Outputs
| Output | Format | Target path | Audience |
| Send decision (returned inline) | JSON: { decision: approve/hold/reject, reason, suggested-window } | Returned to requesting agent | Drafting agent + recipient channel |
| Per-recipient send ledger entry (append) | JSON row | Postgres send_ledger table | Audit + cap enforcement |
| Daily Send Governance digest | Markdown + Slack message | /comms-governance/digest/YYYY-MM-DD.md | Director Lifecycle + agent owners |
| Weekly over-eager agent report | Markdown | /comms-governance/agent-patterns/YYYY-WW.md | Affected agent owners |
| Monthly ceiling tuning recommendation | Markdown | /comms-governance/cap-tuning/YYYY-MM.md | Director Lifecycle + VP Marketing |
| Quarterly channel-mix audit | Markdown + chart bundle | /comms-governance/audits/Q<n>.md | VP Marketing + CMO |
↑ Upstream: agents/sources that feed this one
- Every drafting + sending agent. Submits send-approval requests before any outbound send.
- Signal Router. Routes channel-source webhooks (email engagement, LinkedIn activity, SMS replies) to the ledger.
- Account Intel Hub. Provides per-account state (in-escalation, at-risk, in-sales-cycle) that affects cap enforcement.
- Field Marketing Agent. Opens event windows that trigger cap tightening for attendee audiences.
- Customer Marketing Agent. Flags CS-managed accounts where marketing-cadence holds apply.
↓ Downstream: agents/humans that consume its output
- Every drafting + sending agent. Receives the approve / hold / reject decision inline. Approved sends proceed; held sends queue for the suggested window.
- Director of Lifecycle Marketing (human). Reviews daily digest; runs weekly send-rate review; owns cap-tuning.
- Email / LinkedIn / SMS / Paid platform integrations. Receives the actual send execution (the Controller approves; the platform sends).
- Eval Library Agent. Uses Controller approval / hold patterns to score downstream agent ‘respect for cadence’ KPI.
- Brief Sync Agent. Receives signals on channel-preference drift that may need to propagate back to Brief Section 3 (personas).
Human escalation paths
| Trigger condition | Escalate to | Within |
| Unsubscribe rate spike on a channel > 2× baseline sustained 7+ days | Director Lifecycle + Legal | Same business day |
| Spam complaint received from a major email provider | Director Lifecycle + Legal + IT | Immediate (deliverability emergency) |
| Drafting agent submits 5+ over-cap sends in a week | That agent’s owner + Director Lifecycle | Same business day |
| Channel ceiling reached for > 5% of recipients | Director Lifecycle + VP Marketing | Same business day |
| CS escalation lock breached (marketing send went out anyway) | Director Lifecycle + CS Lead + VP Marketing | Immediate (process failure) |
How to build it
System prompt
You are the Comms Governance Agent for [COMPANY].
YOUR JOB
Be the firewall between coordinated marketing and over-tapping the customer.
Watch every outbound channel. Enforce per-recipient send-rate caps. Approve
sends that fit. Hold or reject sends that would over-saturate.
INPUTS (always read in this order)
1. /operator-brief.md - ICP + personas inform channel preferences
2. /comms-governance/caps.yaml - per-channel weekly cap rules
3. Postgres send_ledger - per-recipient send history
4. /accounts/<account-id>.json - account state (in-escalation, in-sales-cycle)
5. The send-approval request itself (channel, recipient, sender-agent, content-type)
OUTPUTS (returned inline)
{
"decision": "approve" | "hold" | "reject",
"reason": "specific reason citing the cap rule",
"suggested_window": "ISO datetime if held",
"recipient_caps_used": { "email": 2, "linkedin": 1, "sms": 0 } (this week)
}
RULES
1. Honor per-channel weekly caps deterministically.
2. Honor cross-channel ceiling (no recipient sees > N total marketing
touchpoints per week across all channels).
3. Honor CS escalation locks - hard reject for locked accounts.
4. Honor event-window cap tightening - reduce caps during T-7 to T+14.
5. Honor unsubscribed / complained recipients - hard reject permanently.
6. Suggest a delayed-send window when holding; respect the recipient's
preferred time-of-day window if known.
7. Never modify caps autonomously. Surface tuning recommendations to
Director Lifecycle.
ESCALATION
- Unsubscribe spike >2x baseline 7+ days: Director + Legal same day.
- Spam complaint: page Director + Legal + IT immediately.
- CS escalation lock breached: page Director + CS Lead immediately.
Tools & integrations
| Platform / tool | Used for | Required? |
| Postgres (send_ledger table) | Per-recipient send history across all channels | Required |
| Email platform API + webhook (HubSpot / Marketo / Customer.io / Klaviyo) | Send activity + unsubscribe stream | Required if email in use |
| LinkedIn API + Sales Navigator activity log | Outbound DM + InMail tracking | Required if LinkedIn outbound in use |
| Twilio / Bandwidth API | SMS send activity + opt-out | Required if SMS in use |
| Paid retargeting audience APIs (LinkedIn, Google, Meta) | Audience refresh + frequency cap data | Required if retargeting in use |
| Gainsight / ChurnZero API | CS escalation status | Required if CS platform in use |
| Slack API | Daily digest + escalation alerts | Required |
Guardrails: what it must not do
- Never approve a send to an unsubscribed or complained recipient. Permanent hard-reject.
- Never approve a send during a CS escalation lock. Hard-reject.
- Never modify caps autonomously. Cap changes go through monthly tuning with Director approval.
- Honor TCPA + GDPR + CAN-SPAM + CASL rules at all times: compliance dimensions trump send-velocity dimensions.
- Never store recipient send content beyond the audit window (90 days): ledger entries are metadata only.
- Honor the recipient’s declared communication preferences (channel, frequency, time-of-day) when available.
- Never share send-ledger data outside the Director Lifecycle + Legal scope without VP Marketing approval.
Evals + hallucination defense
Evals: output quality checks:
- Cap enforcement precision. Weekly audit: of held sends, what % truly would have over-tapped? Target ≥ 95% precision.
- Unsubscribe-rate steady-state. Monthly: per-channel unsubscribe rate over a 30-day window. Target: below industry baseline.
- Decision latency p99. p99 send-approval latency. Target < 5 sec.
- Compliance audit. Quarterly: zero TCPA / GDPR / CAN-SPAM / CASL violations. Hard threshold.
Hallucination defense: specific checkpoints:
- Send-cap decisions must derive from the cap config + ledger state. No vibes-based holds.
- Suggested send windows must respect known recipient preferences + global caps. Never extrapolate to a window the ledger can’t support.
- Unsubscribe + complaint records must trace to the source channel’s webhook. No inferred opt-outs.
- When the agent isn’t sure if a send would over-cap, hold rather than approve. Conservative bias.
- Cap rule citations in decisions must reference the rule by name + version, not paraphrase.
Maturity curve + first-run checklist
v0.1: Manual-assistLedger active; drafting agents check by hand before sending. No automated approval. Useful from day 1 to formalize the discipline.
v0.5: SupervisedAuto-approval / hold / reject on. Director Lifecycle reviews edge cases. Default ship state.
v1.0: Semi-autonomousAfter 90 days of clean evals + zero compliance violations, can auto-tune low-risk caps (e.g., internal newsletter cap) without Director approval. Customer-facing caps stay supervised.
First-run checklist: 5 steps from spec to running agent:
- Stand up the send_ledger Postgres table. Confirm schema covers all declared channels.
- Author the cap config YAML. Start with industry-baseline caps; tune over time. Each channel needs: per-week cap, cross-channel ceiling, time-of-day windows.
- Wire each channel’s send + engagement webhooks to the ledger. Verify each is appending in real-time.
- Wire every drafting agent’s send-approval API call to the Controller. Test with a known recipient at-cap to confirm the hold logic.
- Run in shadow mode for 1 week (log decisions, don’t enforce). Director Lifecycle reviews daily; tunes caps. Then turn on enforcement.
Back to the AI Operating Model