CoreCMO

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
  1. Real-time Receive send-approval requests from every drafting + sending agent (Performance Marketing, Email/Lifecycle, LinkedIn/Social, Customer Marketing, Field Marketing, ABM).
  2. Real-time Check the recipient’s send-ledger entries across all channels in the last N days (varies by channel). Approve / hold / reject.
  3. Real-time When a send is held, suggest a delayed-send window that respects all channel caps. Return inline to the requesting agent.
  4. Real-time Log every send-decision (approval or hold) with channel, recipient, sender-agent, timestamp, reason.
  5. Daily Compile the daily Send Governance digest: sends approved by channel, sends held, top 5 recipients at-cap, channels approaching their ceiling.
  6. Daily Audit the unsubscribe + complaint stream. Flag recipients whose unsubscribe behavior suggests we’re still over-tapping despite the caps.
  7. Weekly Send-rate review with Director of Lifecycle. Are the caps still right? Are any channels over-restricted? Are any under-restricted?
  8. Weekly Cross-agent over-eager audit: which drafting agents are bumping into caps most? Surface to their owners for sequencing changes.
  9. Monthly Ceiling tuning: adjust per-channel weekly caps based on trailing 30-day engagement + complaint data.
  10. Quarterly Channel-mix audit: are the agents over-relying on a single channel? Recommend rebalancing.
  11. Event When an event window opens (Field Marketing Agent signals), tighten caps on overlapping channels to avoid over-saturating attendees.
  12. 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
TaskFrequencyDurationOutput goes to
Real-time send-decision approvalContinuous< 5 sec per requestRequesting drafting agent (decision returned inline)
Daily Send Governance digestDaily 17:00~10 minDirector Lifecycle + agent owners
Daily unsubscribe + complaint auditDaily 17:15~5 minDirector Lifecycle + Legal if compliance issue
Weekly send-rate reviewWeekly Wed 11:00~45 minDirector Lifecycle + agent owners
Weekly over-eager agent auditWeekly Wed 11:30~30 minAffected agent owners
Monthly ceiling tuningMonthly 1st~90 minDirector Lifecycle + VP Marketing
Quarterly channel-mix auditQuarterly Q-1 days~2 hoursVP Marketing + Director Lifecycle
Triggers

Scheduled (cron-style):

ScheduleWhat it runs
0 17 * * *Daily Send Governance digest + unsubscribe audit
0 11 * * 3Weekly send-rate review + over-eager audit
0 9 1 * *Monthly ceiling tuning

Event-driven:

EventWhat it runs
Any drafting agent submits a send-approval requestDecision within 5 sec
Recipient unsubscribes or complainsAppend to ledger; immediately drop them from all marketing send lists; alert Director Lifecycle if pattern persists
Field Marketing Agent opens an event windowTighten caps on email + LinkedIn + paid retargeting for attendees during T-7 to T+14
CS Agent escalates an accountLock outbound marketing sends to all contacts at that account until escalation closes
Channel ceiling reached for > 5% of recipientsPage Director Lifecycle; recommend channel-mix rebalance
Who it works with
Inputs
SourceTypeCadenceRequired?
Operator Brief (Sections 2, 3)MarkdownRead on cap-tuningRequired: ICP + personas inform channel preferences
Per-recipient send ledgerPostgresReal-time appendRequired: core state
Per-channel cap configYAMLVersioned, monthly tuningRequired: the rules
Email platform send stream (HubSpot / Marketo / Customer.io / Klaviyo)Webhook / APIReal-timeRequired if email in use
LinkedIn + LinkedIn Sales Navigator send activityAPI / manual logDailyRequired if LinkedIn outbound in use
SMS platform send stream (Twilio / Bandwidth)WebhookReal-timeRequired if SMS in use
Paid retargeting audience refresh logsAPI / CSVDailyRequired if retargeting in use
CS escalation stream (Gainsight / ChurnZero)WebhookReal-timeRequired: locks customer accounts during escalation
Unsubscribe + complaint streamWebhook / APIReal-timeRequired: compliance + cap tuning
Outputs
OutputFormatTarget pathAudience
Send decision (returned inline)JSON: { decision: approve/hold/reject, reason, suggested-window }Returned to requesting agentDrafting agent + recipient channel
Per-recipient send ledger entry (append)JSON rowPostgres send_ledger tableAudit + cap enforcement
Daily Send Governance digestMarkdown + Slack message/comms-governance/digest/YYYY-MM-DD.mdDirector Lifecycle + agent owners
Weekly over-eager agent reportMarkdown/comms-governance/agent-patterns/YYYY-WW.mdAffected agent owners
Monthly ceiling tuning recommendationMarkdown/comms-governance/cap-tuning/YYYY-MM.mdDirector Lifecycle + VP Marketing
Quarterly channel-mix auditMarkdown + chart bundle/comms-governance/audits/Q<n>.mdVP 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 conditionEscalate toWithin
Unsubscribe rate spike on a channel > 2× baseline sustained 7+ daysDirector Lifecycle + LegalSame business day
Spam complaint received from a major email providerDirector Lifecycle + Legal + ITImmediate (deliverability emergency)
Drafting agent submits 5+ over-cap sends in a weekThat agent’s owner + Director LifecycleSame business day
Channel ceiling reached for > 5% of recipientsDirector Lifecycle + VP MarketingSame business day
CS escalation lock breached (marketing send went out anyway)Director Lifecycle + CS Lead + VP MarketingImmediate (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 / toolUsed forRequired?
Postgres (send_ledger table)Per-recipient send history across all channelsRequired
Email platform API + webhook (HubSpot / Marketo / Customer.io / Klaviyo)Send activity + unsubscribe streamRequired if email in use
LinkedIn API + Sales Navigator activity logOutbound DM + InMail trackingRequired if LinkedIn outbound in use
Twilio / Bandwidth APISMS send activity + opt-outRequired if SMS in use
Paid retargeting audience APIs (LinkedIn, Google, Meta)Audience refresh + frequency cap dataRequired if retargeting in use
Gainsight / ChurnZero APICS escalation statusRequired if CS platform in use
Slack APIDaily digest + escalation alertsRequired
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:

  1. Cap enforcement precision. Weekly audit: of held sends, what % truly would have over-tapped? Target ≥ 95% precision.
  2. Unsubscribe-rate steady-state. Monthly: per-channel unsubscribe rate over a 30-day window. Target: below industry baseline.
  3. Decision latency p99. p99 send-approval latency. Target < 5 sec.
  4. 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:

  1. Stand up the send_ledger Postgres table. Confirm schema covers all declared channels.
  2. 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.
  3. Wire each channel’s send + engagement webhooks to the ledger. Verify each is appending in real-time.
  4. Wire every drafting agent’s send-approval API call to the Controller. Test with a known recipient at-cap to confirm the hold logic.
  5. 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