How to do it
- Separation of duties Agents draft; only owner keys approve; no agent can approve its own draft.
- Restricted content Guardrails block banned topics, such as performance claims or unapproved product names, before review.
- Required reviewers On Pro, require compliance as a second reviewer for posts in sensitive categories.
- Tamper-evident record The audit log is append-only and hash-chained; GET /v1/audit/verify confirms integrity, and citations link posts to their sources.
- Emergency stop The kill switch pauses every agent and holds all queued posts.
Scenario: a draft from the content agent says a product "guarantees" savings. "Guarantee" is a banned term, so the guardrail blocks it. The agent redrafts with "can reduce," marketing approves, compliance approves as second reviewer, and the audit log records both approvals with timestamps.
Controls first, content second
Compliance teams do not need another content tool. They need controls around the content tools marketing is already using. SocialHandoff sits between every agent and every social account, so the controls apply no matter which AI system drafted the post. This page describes controls, not legal advice; your obligations depend on your industry and jurisdiction.
Controls that map to common requirements
| Requirement | Control |
|---|---|
| Pre-approval | Draft-only agents; owner approval; multi-reviewer on Pro |
| Restricted content | Banned topics and guardrails in brand memory and guardrails |
| Least privilege | One key per agent, scoped by network and permission |
| Records | Hash-chained audit log with verification |
| Incident response | Kill switch |
Setup
- Review security: tokens are encrypted with AES-256-GCM at rest, API keys stored as SHA-256 hashes, private-network URLs refused.
- Self-host if data must stay in your environment.
- Define banned topics with legal and keep the trust policy in .socialhandoff/policy.json, reviewed through your normal change process.
Permissions
Keep every agent draft-only on the trust ladder for regulated content. If you do allow auto-publish for low-risk formats, note that any guardrail failure demotes the agent immediately, and the demotion is logged.
Evidence and review
Run verification on the audit log on a schedule and keep the results. Pull posts through the REST API for periodic review, alongside the audit entries. Outbound webhooks such as post.published can feed your archiving system.
Pitfalls
- Approvals outside the system. Only in-tool approvals are recorded.
- Stale banned lists. Review them quarterly with legal.
- Assuming the tool is the program. It provides controls and records; your policies decide how they are used. See audit log and hash chain.