Overview
The Communication pack provides guardrails for AI agents that send emails, messages, or notifications. It prevents mass messaging, blocks messages containing credentials, and automatically redacts PII from message outputs. Use this pack for:- Email automation agents
- Customer support chatbots
- Marketing automation tools
- Notification systems
- Messaging integrations (Slack, Teams, SMS)
Complete Policy
communication.yaml
Rules Explained
Input Validation Rules
1. Block Mass Email Sends
Rule ID:comm-block-mass-recipients
What it does: Requires human approval when sending emails/messages to more than 5 recipients.
Why it’s important:
- Spam prevention - Stops AI agents from unintentionally spamming users
- Reputation protection - Mass emails can get your domain blacklisted
- GDPR compliance - Mass communications require consent and privacy notices
- Cost control - Prevents expensive bulk sends (especially SMS)
2. Block Sensitive Content
Rule ID:comm-block-sensitive-content
What it does: Blocks emails/messages that contain credentials, API keys, passwords, or secrets.
Detection patterns:
In message body:
password: <value>Password = <value>secret: <value>API_KEY: <value>api-key: <value>token: <value>
- Contains
password - Contains
credentials - Contains
secret
- Security risk - Credentials should never be sent via email (unencrypted)
- Compliance - Violates PCI DSS, SOC 2, HIPAA
- Data breach - Email can be intercepted, forwarded, or hacked
- Social engineering - AI could be tricked into leaking credentials
Output Redaction Rules
3. Redact PII from Messaging Outputs
Rule ID:comm-redact-pii-in-output
What it does: Automatically redacts phone numbers from tool outputs (sent messages, read emails, fetched messages).
Pattern matched: \b\d{3}[-.]?\d{3}[-.]?\d{4}\b
Matches:
123-456-7890123.456.78901234567890
- Prevents AI from seeing/storing customer phone numbers
- Reduces PII exposure in logs
- Helps with GDPR/CCPA compliance
Usage Example
Basic Setup
veto.config.yaml
With TypeScript SDK
With Slack Integration
Customization
Different Limits by Message Type
Allow more recipients for notifications vs. emails:Block Specific Domains
Prevent sending to competitor domains:Require Approval for External Emails
Only allow internal emails automatically:Add Attachment Protection
Block potentially dangerous attachments:Add Unsubscribe Link Requirement
Ensure marketing emails include unsubscribe links:Real-World Scenarios
Customer Support Agent
Marketing Automation
marketing-automation.yaml
Internal Notification System
internal-notifications.yaml
Testing
Email Security Best Practices
Use SPF, DKIM, and DMARC
Use SPF, DKIM, and DMARC
Configure email authentication to prevent spoofing:
Rate limit sends per agent session
Rate limit sends per agent session
Implement additional rate limiting beyond recipient count:
Log all sent messages for auditing
Log all sent messages for auditing
Keep records for compliance and debugging:
Use templates for consistent formatting
Use templates for consistent formatting
Prevent malformed or unprofessional messages:
Related Resources
Policy Pack Overview
Learn about all available policy packs
Data Access Pack
Additional PII redaction for customer data
Output Patterns Reference
Built-in regex patterns for PII detection
Human-in-the-Loop Guide
Set up approval workflows for mass sends

