RevOps × AI · Governance playbook

AI Agent Governance: Why Your CRM Agents Need Decision Boundaries (And How to Set Them)

AI agent governance is the set of system controls that decide what an agent may do on its own, what a human must approve, and what it may never touch. Most GTM teams turned agents on before they wrote any of that down. This is the operator playbook for HubSpot and Salesforce: tiers, permissions, logs, kill switch.

By Joe LaGrutta, JayOh·Updated October 2026·14 min read
the moment nobody defined the boundaries AI agent governance meme: caption reads 'Me realizing my AI agents are making decisions I don't fully understand' above an animated cowboy figure resting a hand on a younger character's shoulder, subtitled 'hollup... let him cook'
The LinkedIn post that started this guide. Letting the agent cook is fine, once you have decided which kitchen it is allowed in.
01 · The original post

AI without governance is just faster chaos

Takeaway: the problem is not the agent. It is the missing layer that says which decisions it owns.

Read Joe's LinkedIn post

Most teams adopting AI are making the same mistake they made with every other tool: no governance layer.

They're plugging agents into workflows, automating sequences, letting AI score leads and route deals. And nobody has defined the decision boundaries.

Which decisions can the agent make autonomously? Which ones require human review? What's the escalation path when the model gets it wrong?

Without this, you don't have automation. You have unmanaged risk running at machine speed.

HubSpot just shipped Smart Deal Progression — AI that reads call transcripts and suggests CRM updates automatically. That's powerful. It's also the exact kind of feature that needs a human-in-the-loop protocol to validate before you turn it loose on your messy pipeline data.

The companies winning with AI right now aren't the ones deploying the most agents. They're the ones who built the control framework first. Decision boundaries documented. Override protocols defined. Audit trails in place.

AI without governance is just faster chaos.

Build the system around the agent, not the other way around.

02 · Why this breaks

Five reasons CRM agents make decisions nobody signed off on

Takeaway: agents rarely fail because the model is bad. They fail because they were given a human's keys, a prompt instead of a permission, and dirty data to reason over.

63%of organizations have no AI governance policy at all.IBM / Ponemon, Cost of a Data Breach 2025
97%of organizations with an AI-related breach lacked proper AI access controls.IBM, Cost of a Data Breach 2025
40%+of agentic AI projects will be canceled by end of 2027, citing cost, unclear value and weak risk controls.Gartner, June 2025
1
The big one

The agent inherited a human's keys

Someone connected the integration with their own Super Admin login, or a shared admin user. Now the agent can do anything that person can: edit every deal, export every contact, change every workflow. OWASP lists this as a top agentic risk (identity and privilege abuse). One bug or one poisoned email in a free-text field, and the blast radius is your whole CRM.

2

The boundaries live in the prompt, not the system

"Never change closed-won deals" written in agent instructions is a suggestion. Models skip instructions, and injected text can override them. Singapore's 2026 Model AI Governance Framework for Agentic AI is blunt about it: prefer controls the system enforces over instructions in prompts.

3

Nobody defined the decision tiers

This is the gap the post names. No one wrote down which actions are autonomous, which need review and which are off-limits. So the default is whatever the vendor shipped, and vendors ship features that update records.

4

Messy pipeline data, now at machine speed

An agent reading five versions of close date makes confident wrong updates five times faster than a rep. 84% of data and analytics leaders say AI output quality depends on input data quality (Salesforce). The agent amplifies whatever your definitions already are, which is why CRM data hygiene comes before autonomy.

5

No audit trail long enough to investigate

HubSpot's centralized audit log covers 30 days. Salesforce keeps Setup Audit Trail for 180 days. If an agent quietly rewrote lifecycle stages six weeks ago and nobody exported the logs, you cannot prove what changed or why.

03 · What good looks like

AI agent governance benchmarks: weak, acceptable, strong

Takeaway: "strong" is not more paperwork. It is one identity per agent, read-only by default, approvals enforced in the tool, and logs you own.

ControlWeakAcceptableStrongSource
Governance policyNone (63% of orgs)Written policy, not enforced in toolsPolicy plus a per-agent decision register enforced in permissionsIBM 2025
Agent identity and accessRuns on a person's admin tokenShared integration user with role-based accessOwn user or app per agent, least privilege, one named ownerIBM 2025; IMDA 2026
Write accessFull write on every objectWrite on the objects it needsRead-only by default; writes per field; high-impact writes require confirmationSalesforce admin guidance 2026; IMDA 2026
Audit evidenceNative retention only (HubSpot 30 days, SF Setup Audit Trail 180 days)Monthly exportWeekly export to your own warehouseHubSpot KB 2026; Gearset 2026
Field history on agent-written fieldsNot trackedTracked on key fields (SF: up to 20 fields per object, about 18 months)Tracked plus long-term archive (Field Audit Trail or warehouse snapshots)Gearset 2026
Testing before releaseTested in productionOne-off sandbox test at launchRegression tests on every prompt, model or permission changeAgentforce guidance 2026; IMDA 2026
Human oversight qualityApprovals exist, nobody measures themOverride rate reviewed monthlyOverride rate and review time tracked weekly to catch rubber-stampingIMDA 2026

Sources: IBM Cost of a Data Breach Report 2025 (Ponemon, 600 orgs); IMDA Model AI Governance Framework for Agentic AI (2026); HubSpot Knowledge Base, audit logs (2026); Gearset, Salesforce audit trail guide (2026); Salesforce admin guardrails guidance (2026). Weak / acceptable / strong thresholds are JayOh operating standards built on those sources.

The tier ruleIrreversible or customer-facing = human approves
The access ruleRead by default. Write per field. Never delete.
The promotion rule4 clean weeks under 2% error = drop one tier
04 · The playbook

How to set decision boundaries for CRM agents in 9 steps

Takeaway: inventory, identity, tiers, enforcement. Then inputs, testing, logs, kill switch and a weekly review that lets agents earn autonomy instead of starting with it.

T0Read and summarizeAutonomous
T1Draft or suggest; a human sendsAutonomous
T2Reversible low-risk writeAuto + logged + sampled
T3Stage, amount, owner, lifecycle, enrollment, sendsHuman approves each
T4Delete, merge, bulk export, pricing, permissionsNever
1

Inventory every agent and AI connection

WhatA single list of everything with AI that can read or write CRM data: native agents, connectors, Claude or MCP connections, Zapier and Make bots.
WhyYou cannot govern what you have not found. Shadow AI added about $670K to the average breach cost in IBM's 2025 data.
HubSpot
  • Agents › Agent Hub (every Breeze agent, including deal progression)
  • Settings › Integrations › Connected apps and Private apps
  • Settings › Account Management › AI › Access tab: note which data toggles are on (CRM data, customer conversation data, files)
Salesforce
  • Setup › Agents (Agentforce agents and their actions)
  • Setup › Connected Apps OAuth Usage and Installed Packages
  • Setup › Einstein Setup for org-wide generative AI settings
2

Give each agent its own identity and a named owner

WhatOne user or app per agent, with permissions no broader than the human who owns it. One business owner who answers for it.
WhyThis one change shrinks blast radius more than any prompt. It is also how you tell agent edits apart from rep edits in history.
HubSpot
  • One private app per integration, minimum scopes (for example crm.objects.deals.read without write when the job is summarizing)
  • Never connect agents with a Super Admin's personal login
  • Name the app after the agent so property history shows the source
Salesforce
  • A dedicated agent user per agent with the Agentforce User license
  • One permission set per agent, scoped to the objects and fields its topics need; bundle with permission set groups, not profiles
  • Check run mode: system-context Flows and Apex without sharing can bypass the agent user's field-level security
3

Write the decision register: every action, one tier

WhatList every action the agent can take and assign T0 to T4 using the tier strip above. Irreversible or customer-facing is never below T3.
WhyThis is the "decision boundaries documented" line from the post. It turns arguments about AI into a list you can approve.
Usually autonomous (T0 to T2)
  • Summarize a deal or account
  • Draft a follow-up email for a rep to send
  • Log a call note, create a task, fill a research field
Usually approval or forbidden (T3 to T4)
  • Change deal stage, amount, close date or owner
  • Change lifecycle stage or lead status; enroll in a sequence
  • Delete, merge, bulk update, export, touch pricing or discounts
4

Enforce the tiers in the system, not the prompt

WhatTurn each T3 into a real checkpoint and each T4 into a missing permission.
WhyPrompts can be ignored or hijacked. A missing permission cannot.
HubSpot
  • Deal progression: reps review suggestions on the deal's Catch-up tab (HubSpot docs) and accept or dismiss each one; only turn on auto-updates in smart data capture for low-risk properties
  • Restrict who can edit stage, amount and owner properties with field-level permissions (Enterprise)
  • For custom agents, route T3 writes through a workflow that creates an approval task instead of writing directly
Salesforce
  • Agent actions: start on Run Safe Defaults (reads run, writes ask), set write and delete actions to Require Confirmation, keep Full Autonomy for low-risk internal utilities
  • Split email work: the agent drafts, a human-only action sends
  • Put approval steps inside the Flow for financial or entitlement fields
5

Fix the inputs the agent reasons over

WhatAgree definitions for every field the agent reads or writes: stage exit criteria, close date rules, lifecycle stages.
WhyThe agent will apply your definitions with total confidence. If they are fuzzy, it will be confidently wrong at scale.
HubSpot
  • Agents › Agent Hub › Context › Team and Process › Add Methodology (BANT, MEDDIC, SPICED and others) only after the linked properties are defined
  • Required properties on stage moves; property descriptions written as rules
Salesforce
  • Validation rules on stage, amount and close date
  • Path guidance and field help text that match the agent's instructions word for word
6

Test in a sandbox before anything touches production

WhatRun the agent against a copy of real data: repeated runs, edge cases, empty fields and hostile text in notes and emails.
WhyAgents are not deterministic. One clean demo run proves nothing about run 500.
HubSpot
  • Standard sandbox (Enterprise) seeded with real records
  • Test a deal with no activity, a deal with a contradictory transcript and a contact with injected instructions in a note
Salesforce
  • Partial or full sandbox plus Agentforce Testing Center; treat agent changes like any other CRM change management release
  • Save the test set and re-run it on every prompt, model or permission change
7

Log every action and export the logs you need

WhatMake every agent write traceable to the agent, the time, the old value and the new value. Export on a cadence shorter than native retention.
Why"Audit trails in place" only counts if the evidence still exists when you need it.
HubSpot
  • Settings › Account Management › Audit Logs (30-day centralized view; Super Admin)
  • Property history on each record shows the source of every change
  • Weekly export of agent-written properties to your warehouse
Salesforce
  • Field History Tracking on agent-written fields (20 per object)
  • Setup Audit Trail (180 days) for configuration changes
  • Einstein Trust Layer audit trail plus session tracing; export on a schedule
8

Build the kill switch and the escalation path

WhatA named person who can turn the agent off in one step, a written rollback, and deny-by-default when approvals are down.
WhyThe post's question, "what's the escalation path when the model gets it wrong?", needs an answer before the first incident, not during it.
HubSpot
  • Turn the agent off in Agent Hub, or switch off generative AI access in AI settings
  • Restore deleted records within 90 days; keep a property snapshot to roll back bulk edits
Salesforce
  • Deactivate the agent and freeze the agent user
  • Use field history or your export to restore prior values
9

Review weekly and let agents earn autonomy

WhatA 20-minute weekly review per agent: volume, error rate on a sample, human override rate, time spent per approval.
WhyApprovals that take two seconds are rubber stamps. Override rates near zero can mean a great agent or a team that stopped reading.
Promote
  • Drop an action one tier after 4 consecutive clean weeks with under 2% error on sampled review
  • Move from approve-every-action to approve-by-exception with a 10% sample
Demote
  • Any T3 or T4 incident moves the action back up immediately
  • Any prompt, model or permission change resets the clean-week count
05 · Best practices and common mistakes

What separates governed agents from faster chaos

Takeaway: narrow agents, real permissions and measured oversight. Most expensive mistakes are access mistakes, not model mistakes.

Best practices

  • One agent, one job, one owner. Do not build a single agent that scores, routes and emails.
  • Read-only by default. Grant write access per field, never per object.
  • Separate draft from send for every customer-facing message.
  • Put a one-line risk summary in every approval request so reviewers decide, not click.
  • Track override rate and review time together to spot rubber-stamping.
  • Export audit evidence weekly; native retention is 30 to 180 days.
  • Re-run your saved test set after every prompt, model or permission change.
  • Turn on zero data retention and Trust Layer features where your platform offers them; review the AI model training toggle against your policy.
  • Write logging, retention and training terms into vendor contracts for third-party agents.
  • Treat the decision register as the source of truth and review it quarterly with sales leadership.

Common mistakes

  • Connecting agents with a Super Admin tokenCost: one bug or injected instruction can touch every record and setting.
  • Turning on auto-updates for stage and amount from call transcriptsCost: the forecast moves on a misheard sentence and nobody knows why.
  • "Approve all" cultureCost: errors ship with a human signature, so nobody investigates them.
  • Governance as a slide, not a settingCost: the policy exists, the tool is still wide open.
  • No log exportCost: after 30 days you cannot prove what changed, which matters in diligence and audits.
  • One agent doing scoring, routing and outreachCost: a single failure cascades across the funnel (OWASP lists cascading failures as a top agentic risk).
  • No named kill-switch ownerCost: the incident waits for whoever remembers how the integration was built.
06 · Interactive tool

Decision boundary calculator

Takeaway: score one agent action at a time. The calculator tells you its tier, how many errors it will ship per week, and whether human review pays for itself.

How many times this action runs, e.g. deal stage suggestions.
Share of sampled outputs a reviewer would accept unchanged.
1 = one-click undo · 2 = undo takes effort · 3 = irreversible or external
1 = minor field, one record · 2 = stage, owner, amount, lifecycle · 3 = bulk or customer-facing
1 = firmographic · 2 = pipeline and revenue · 3 = PII, contract or pricing
Rework, a bad forecast call, an annoyed buyer. Be honest.
Recommended tierT3Human approves each action
Risk score 46 / 100Impact 6 / 9Error rate 8.0%
32errors per week if nobody reviews
$8,000weekly cost of those errors
10.0 hweekly reviewer time to approve every action
$6,450net weekly value of full human review (assumes reviewers catch 90%)
Review paysText

Math: error rate = 100% minus accuracy. Errors per week = actions × error rate. Review hours = actions × minutes ÷ 60. Net review value = errors × cost × 90% minus review hours × hourly cost. Risk score = 60 × (impact − 3) ÷ 6 + 40 × min(error rate ÷ 20%, 1). Tiers follow the decision register rules in step 3: irreversible and customer-facing is T4; irreversible, a key field that is hard to undo, a risk score of 55 or more, or accuracy under 85% is T3.

07 · Template + Claude skill

The agent decision register (copy it)

Takeaway: one register per agent. If you cannot fill in every line, the agent is not ready for write access.

Agent decision register · v1
AGENT DECISION REGISTER
Agent name:
One-line job (one job only):
System: HubSpot / Salesforce / other
Business owner (answers for outcomes):
Technical owner (on call, can disable):
Runs as (agent user / private app, never a person's admin login):
Permission set or app scopes:

READS (objects and fields):
WRITES (fields only, never whole objects):

ACTIONS AND TIERS
T0 Read / summarize (autonomous):
T1 Draft / suggest, human sends (autonomous):
T2 Reversible low-risk write (autonomous, logged, 10% weekly sample):
T3 High-impact write or send (human approves each):
T4 Forbidden (no permission granted):

ENFORCEMENT (how each T3 and T4 is blocked in the system):
Approval step location:
Field-level permissions applied:

TESTING
Sandbox test set location:
Last full test run (date, pass rate):
Re-test trigger: any prompt, model or permission change

LOGGING
Where every write is recorded:
Export cadence and destination:
Native retention checked (HubSpot 30 days, SF Setup Audit Trail 180 days):

KILL SWITCH
How to disable in one step:
Rollback method:
Default when approvals are down: DENY

WEEKLY REVIEW
Actions this week:
Sampled error rate:
Human override rate:
Median review time per approval:
Clean weeks at current tier (promote after 4 under 2% error):
Incidents (any T3 or T4 incident = demote):
Free Claude skill

ai-agent-governance-review

Hand Claude an agent spec, a Breeze or Agentforce setup, or just a list of what your agent can touch. It applies this exact framework and hands back a decision register.

  • Sorts every agent action into T0 to T4 and quotes your input as the reason.
  • Scores identity, least privilege, enforcement, testing, logging, kill switch and review loop as Pass, Partial or Fail.
  • Returns the top 3 fixes before go-live and a verdict: ready, run with approvals, or not yet.
  1. Claude web or desktop: Settings › Capabilities. Make sure code execution and file creation is on. Under Skills, click Upload skill, choose the .zip and toggle it on.
  2. Claude Code: save the file as ~/.claude/skills/ai-agent-governance-review/SKILL.md, or in .claude/skills/ inside your repo.

Skills are available on Claude Pro, Max, Team and Enterprise plans. New to skills? Read how to use skills in Claude.

Preview SKILL.md
---
name: ai-agent-governance-review
description: Reviews an AI agent or CRM automation before it goes live (or one already running) and produces a decision register - what the agent may do on its own, what needs human approval, what is forbidden - plus the identity, logging, testing and kill-switch gaps to close. Use when someone shares an agent spec, a Breeze, Agentforce, Claude, MCP or Zapier setup, a list of CRM actions an agent will take, or asks "is this agent safe to turn on", "what should need approval", or "audit our AI agents".
---

# AI Agent Governance Review

You are a RevOps governance reviewer. Apply the JayOh decision-boundary framework from https://jayoh.io/ai-agent-governance/ to the agent the user describes. Work only from what the user gives you.

## Inputs to ask for (only if missing)
1. What the agent does, in one sentence, and which system it runs in (HubSpot, Salesforce, other).
2. Every action it can take: what it reads, what fields or objects it writes, what it sends, what it creates or deletes.
3. How it is connected: whose credentials, which permission set, private app scopes or integration user.
4. Volume per week and any accuracy or test results you have.
5. Who owns it and who gets paged when it misbehaves.

If an input is missing, keep going and list it under Missing evidence. Never guess it.

## Step 1 - Classify every action into a tier
- T0 Read: reads or summarizes records. Autonomous.
- T1 Draft: proposes a value or drafts a message; a human sends or saves it. Autonomous.
- T2 Reversible write: low-risk field on one record, undoable in one click (a note, a task, a tag, a research field). Autonomous with logging and weekly sampling.
- T3 High-impact write: deal stage, amount, close date, owner, lifecycle stage, lead status, sequence or workflow enrollment, any customer-facing send. Human approves each action until the agent earns a lower tier.
- T4 Forbidden: deletes, merges, bulk updates or exports, pricing or discount changes, permission changes, anything irreversible and external. The agent never does these.

Tie-breakers: if an action is irreversible, it is at least T3. If it touches PII, contract or pricing data, raise it one tier. If it is irreversible and customer-facing, it is T4.

## Step 2 - Check the controls (score each Pass, Partial or Fail)
1. Identity: the agent runs as its own user or app, not a person's admin token. One permission set or app per agent.
2. Least privilege: read-only by default; write access granted per field, not per object.
3. Enforcement: T3 and T4 boundaries are enforced in the system (permissions, Require Confirmation, approval step, field-level permissions), not only written in the prompt.
4. Inputs: the fields the agent reads have agreed definitions, required values and validation rules.
5. Testing: tested in a sandbox before launch and re-tested after every prompt, model or permission change.
6. Logging: every write is traceable (property or field history, audit log) and exported on a cadence shorter than native retention (HubSpot central audit log 30 days, Salesforce Setup Audit Trail 180 days).
7. Kill switch: a named owner can disable the agent in one step, and the default is deny if approvals are down.
8. Review loop: volume, error rate, human override rate and review time are tracked weekly.

## Step 3 - Promotion and demotion rule
An action moves down one tier only after 4 consecutive clean weeks at its current tier with an error rate under 2 percent on sampled review. Any T3 or T4 incident moves it back up immediately.

## Output format (always use this)
**Agent:** name, one-line purpose, system, owner (or "no owner - Fail").

**Decision register**
| Action | Reads or writes | Tier | Why (quote the user's input) | Enforced how |

**Controls scorecard**
| Control | Pass, Partial or Fail | Evidence quoted from the input | Fix |

**Top 3 fixes before go-live** - ordered by risk, each with the exact HubSpot or Salesforce setting to change when the system is known.

**Missing evidence** - every input you could not verify.

**Verdict** - one of: Ready to run, Run with approvals, or Do not turn on yet - with one sentence of reasoning.

## Guardrails
- Quote the user's words as evidence for every tier and every score.
- Never invent volumes, accuracy rates, settings or owners. If it is not in the input, it goes in Missing evidence.
- When unsure between two tiers, pick the stricter one and say why.
- Do not recommend Full Autonomy for any T3 action.
- Keep it short enough to paste into a ticket.

Built by JayOh (jayoh.io) - full framework and calculator: https://jayoh.io/ai-agent-governance/
08 · FAQ

AI agent governance: questions operators ask

Takeaway: short answers you can paste into your AI policy doc.

What is AI agent governance?

AI agent governance is the set of rules and system controls that decide what an AI agent can read, write and do, which actions a human must approve, and how every action is logged and reversed. In a CRM it means one identity per agent, a decision register of allowed actions, approvals enforced in the platform and audit logs you can export.

Which decisions should an AI agent make without human approval?

Reads, summaries, drafts and reversible low-risk field updates can run autonomously with logging. Changes to deal stage, amount, close date, owner, lifecycle stage, lead status, sequence enrollment and any customer-facing message should need human approval. Deletes, merges, bulk exports, pricing and permission changes should not be allowed at all.

What does human-in-the-loop mean for a CRM agent?

Human-in-the-loop means the agent proposes a change and a person approves it before it is written, and the checkpoint is enforced by the system rather than requested in a prompt. Examples are reviewing HubSpot deal progression suggestions on the deal record and setting Salesforce Agentforce write actions to require confirmation.

How do you govern HubSpot Breeze agents and deal progression?

A Super Admin controls generative AI access and which data AI can use under Settings, Account Management, AI. Connect integrations with scoped private apps, keep deal progression on review rather than auto-update for high-impact properties, restrict who can edit stage, amount and owner, and export audit logs because the centralized log covers 30 days.

What guardrails does Salesforce Agentforce provide?

Agentforce agents run as a dedicated agent user governed by permission sets, field-level security and sharing. Each action can ask every time, run safe defaults where reads run and writes need approval, or run with full autonomy. Testing Center supports pre-release tests, and the Einstein Trust Layer adds secure data retrieval, toxicity detection, an audit trail and zero data retention with model partners.

How do you audit what an AI agent changed in your CRM?

Give each agent its own user or app so its edits are labeled, track history on every field it writes, and export audit logs weekly. In HubSpot use property history and Audit Logs; in Salesforce use Field History Tracking, Setup Audit Trail and the Trust Layer audit trail. Native retention runs 30 to 180 days, so exports are what make audits possible.

Who should own AI agent governance?

RevOps should own the decision register and the system controls, each agent should have one named business owner who answers for its outcomes, and security should approve agent identities and data access. Sales and marketing leaders sign off on which decisions stay with humans.

The JayOh take

Autonomy is earned, not installed

We build agents for clients constantly, and the pattern holds every time: the teams that get value spend most of their effort before the first prompt. Clean definitions, scoped identities, a written register and a log someone owns. Then the agent gets to cook, one tier at a time.

If your agents are already running and nobody can tell you which decisions they own, start with the inventory and the register. If they are not running yet, check what good agentic readiness looks like first. If you want a pod that has already done this across hundreds of HubSpot and Salesforce instances, we can help.

500+HubSpot and Salesforce instances built or fixed
90%data-error reduction delivered for clients
28%forecast-accuracy lift after fixing pipeline definitions