tools

AI Agent Permission Matrix: Who May Read, Propose and Execute

This AI agent permission matrix is an open CSV showing what 33 reference agents on a customer data platform (CDP) may read, propose and execute, who approves, who owns each one and what it must never do. Use it as a starting draft for your own access matrix. It is a vendor-neutral method, not a list of product features.

By Art Kukharenko · Published · Updated

All tools

Who this is for: security engineers, data protection officers and marketing-operations leads. Download agent-permission-matrix.csv. The matrix summarises the AI agent rails method; each row has a fuller card in the rail card template set. More assets: tools hub.

What does the permission matrix show?

The permission matrix shows that execute rights are rare in this reference design, and that most agents need no customer records at all. The counts below come from the CSV. They describe our design, not what the market does.

MeasureRows of 33
Hold no execute tool24
May execute, bounded by approval, a written rule, routing only or non-production use9
Read aggregates or metadata only21
Read masked, pseudonymised, by-reference or narrowly scoped data10
Read identifiable records within a tight scope2

The two rows with identifiable records are the DSAR Assembler, limited to one verified subject, and the CRM Hygiene Fixer, limited to scoped CRM fields.

How was the matrix built?

The matrix is a reference design written from one source file, the agent roster, so it is not a survey of deployed systems. We built it in four steps.

  1. Define the jobs. We listed 30 function jobs across eight functions, plus three cross-cutting agents.
  2. Apply the design rules. Rules enforce and models explain. Enforcement sits outside the prompt. The approver is never the requester. Each session passes the Agents Rule of Two, under which it should hold at most two of untrusted input, sensitive data and the ability to change state or communicate externally 1.
  3. Assign a level to each job, using the rail levels. Levels belong to a job, not to an agent or a company.
  4. Generate the CSV from the roster. The reads_customer_records column is our plain-language summary of each agent's data scope. The roster and the JSON dataset hold the full wording.

Limits appear in words, because each team sets its own values. We review the matrix twice a year and whenever the roster changes.

Column definitions

The CSV has 12 columns and one row per agent, and every value is plain text.

ColumnMeaning
agentThe job name of the agent, used across the AI agent rails section
functionThe team that owns the job, or "Cross-cutting" for the three agents that span teams
typical_levelThe rail level for the job, from L0 Off to L4 Act within bounds
riskOur judgement of harm from an error on this job: low, medium or high
reads_customer_recordsWhether the session sees customer records, and in what form
may_readWhat the agent may read, in words
may_proposeWhat it may draft; nothing changes until a person acts
may_executeThe action it may run, if any
approver_or_gateWho decides, or the written rule that stands in for a decision
ownerThe accountable role
neverWhat the rail excludes, even if someone asks
profile_urlThe relative URL of the agent's profile page

How do you read the matrix?

Read each row of the matrix as one sentence: this agent, at this level, may read this, propose this and execute this, past this gate, under this owner. A few values need explaining.

  • None. under may_execute means the rail holds no execute tool. "None; a separate service delivers the report." means delivery runs in another service, not as a tool the model holds.
  • "L2 to L3" is a range across parts of one job: triage at L2, a format-only fix at L3.
  • "L1, L4 pause" means the agent reads and explains at L1, and takes one bounded action at L4.
  • "L4 on routing only" applies to the Orchestrator, which starts runs and broadcasts a pause but never reads a customer record.
  • The Trainer is the one row at L2 alone with an execute value, because it runs tests in non-production only.

Three rows rule out ranking or reporting on named staff: the Lead Routing Proposer, the Trainer and the VP Marketing agent. EU AI Act Annex III point 4(b) lists monitoring workers' performance and allocating tasks by individual behaviour as high-risk uses 2. Take advice before adapting those rows.

How does the matrix map to a RACI chart?

The permission matrix maps to a RACI chart with one firm rule: an agent can be responsible for a task, but only a person can be accountable for it.

RACI roleMatrix columnNote
Responsibleagent, within may_propose and may_executeThe agent does the work inside its scope
AccountableownerAlways a named role, never a team or an agent
Consultedapprover_or_gateThis is a decision right, so treat it as stronger than consultation
InformedNot in the CSVAdd a column for who receives alerts and readouts

Preview of the data

This preview shows 10 of the 33 rows and six of the 12 columns, with values exactly as they appear in the CSV.

agenttypical_levelriskreads_customer_recordsmay_executeapprover_or_gate
Segment DrafterL2mediumPseudonymised IDs onlyNone.Marketing-operations reviewer, never the requester; approval binds to the definition hash.
Reporting SummariserL1lowNo, aggregates or metadata onlyNone; a separate service delivers the report.The owner reviews each report at first, then samples.
Anomaly WatcherL1, L4 pausemediumNo, aggregates or metadata onlyPause one send under a written rule.The pause rule is approved in advance; only a person resumes a send.
Audience Sync StewardL3highNo, aggregates or metadata onlyStart one approved sync through the execution service.Named approver for every sync; a second approver above a size threshold.
Consent Conflict ReviewerL2, L4 for hold onlyhighPseudonymised samples where a case needs themRaise a hold on a launch.A compliance reviewer clears holds and accepts fixes.
Data Quality TriagerL2 to L3mediumMasked samplesApply an approved format-only fix.Data steward approves each fix batch.
DSAR AssemblerL2highYes, one verified subject in scopeNone.A privacy analyst signs off every pack and decides exemptions.
Sync MedicL3 to L4mediumNo, aggregates or metadata onlyRetry the same approved sync version with idempotency and a fresh consent check.No new approval for a bounded retry of the same approved hash; the platform on-call approves any other change.
OrchestratorL4 on routing onlymediumNo, aggregates or metadata onlyStart a run; notify; expire a request; broadcast a pause.None on routing; changes to the routing table go through change control.
VP Marketing agentL1 to L2mediumNo, aggregates or metadata onlyNone; a separate service delivers the readout.The VP reads it; nothing leaves without a person.

How to cite the matrix

Citing the permission matrix takes one line, and reuse follows the site's dataset reuse terms.

How to adapt the matrix

Adapting the matrix means replacing our words with the names of your own systems and people, one row at a time.

  1. Delete the jobs you do not run. Add a row only after writing its rail card.
  2. Replace the verbs with real tools. Rewrite may_read, may_propose and may_execute as tool names from your own allow-list. Our words are not API calls.
  3. Use your own roles. Put your titles in owner and approver_or_gate, then check that no approver can also be the requester.
  4. Add the columns you need. Useful ones are data class, masking level, consent filter, limit values and the session's Rule of Two properties.
  5. Recheck each level. Start below typical_level if the evidence is missing. The JSON dataset lists a max_level for each agent.
  6. Name the enforcing system. For each cell, say which data view, allow-list, approval service or execution service holds the limit. A row that no system enforces is a wish.
  7. Version it, and compare it with the ledger. The matrix states what should happen, and the ledger shows what did.

The 7 things AI agents should never do make a good test for your never column, and the boundary architecture patterns help with placement.

Browse use casesFunction playbooksAgent roster

Complete agent permission matrix

Select a column heading to sort the 33 reference agents. Download the CSV.

Access Review AssistantCompliance, privacy and securityL2mediumNo, aggregates or metadata onlyIdentity records; scope grants; usage logs.Revocation and review list.None.The security owner decides every change.Security leadGrant or revoke access; approve its own scope.Access Review Assistant profile
Account Signal DigestSales and revenue operationsL1lowNo, aggregates or metadata onlyAccount aggregates; firmographics; open opportunities list.None.None.The account owner decides any action.Head of revenue operationsContact a prospect; score people on protected attributes; expose individual activity without a lawful purpose.Account Signal Digest profile
Anomaly WatcherMarketing operationsL1, L4 pausemediumNo, aggregates or metadata onlyMetrics; calendar; change log; data freshness.Alert explanation with hypotheses.Pause one send under a written rule.The pause rule is approved in advance; only a person resumes a send.Head of marketing operationsDetect anomalies by model judgement alone; cancel a send; resume a send; touch transactional mail.Anomaly Watcher profile
Audience Sync StewardMarketing operationsL3highNo, aggregates or metadata onlyApproval record; destination allow-list; sync status.Sync plan with destination and count.Start one approved sync through the execution service.Named approver for every sync; a second approver above a size threshold.Head of marketing operationsChange an audience; add a destination; sync without a fresh consent check.Audience Sync Steward profile
Case ClassifierCustomer supportL2mediumCase text onlyCase text; category definitions.Category, priority and queue with confidence.None.A service agent or team lead accepts or changes the proposal; low confidence goes to a person.Head of customer supportReply to a customer; close a case; read customer profiles.Case Classifier profile
Claims CheckerLifecycle and CRM marketingL2mediumNo, aggregates or metadata onlyDraft copy; claims register; disclosure rules.Annotated findings with suggested wording.None.Compliance reviewer signs off regulated claims; the copy owner resolves the rest.Head of lifecycle marketing, with complianceApprove a regulated claim; publish copy; invent a substantiation; personalise from raw personal data.Claims Checker profile
Connector Change ReviewerPlatform operationsL2mediumNo, aggregates or metadata onlyConfiguration diffs; connector docs; data classification.Review comments with risk rating.None.A platform engineer merges or rejects.Platform leadApply or merge a change; hold secrets; change security settings.Connector Change Reviewer profile
Consent Conflict ReviewerLifecycle and CRM marketingL2, L4 for hold onlyhighPseudonymised samples where a case needs themConflict reports; purpose and channel definitions; rule text.Plain explanation and proposed fix.Raise a hold on a launch.A compliance reviewer clears holds and accepts fixes.DPO or compliance leadDecide who may be contacted; change consent or suppression state; release a hold; override a rule-based deny.Consent Conflict Reviewer profile
Context BrieferCustomer supportL1mediumMasked summary, one customerMasked profile view; interaction summary; consent flags.None.None.The service agent decides what to do with it.Head of customer supportReply to a customer; reveal masked fields; make promises; use the data for marketing.Context Briefer profile
Cost WatcherPlatform operationsL1lowNo, aggregates or metadata onlyUsage meters; billing exports; rail budgets.None.None.The rail owner and finance partner decide any change.Platform lead, with financeChange a budget; scale infrastructure; pause a rail.Cost Watcher profile
CRM Hygiene FixerSales and revenue operationsL3mediumYes, scoped CRM fieldsCRM records in scope; duplicate candidates.Fix batch with before and after values.Apply one approved batch.A revenue-operations approver signs each batch.Head of revenue operationsEdit opportunity values; delete records; change consent fields; contact anyone.CRM Hygiene Fixer profile
Data Quality TriagerData and analyticsL2 to L3mediumMasked samplesTest results; schema; lineage; masked samples.Ranked triage list and proposed fixes.Apply an approved format-only fix.Data steward approves each fix batch.Head of data or data stewardChange meaning of a field; delete records; edit consent or identity fields.Data Quality Triager profile
Deliverability WatcherLifecycle and CRM marketingL1, L4 pausemediumNo, aggregates or metadata onlyProvider dashboards; bounce and complaint rates; authentication results.Diagnosis with likely causes.Pause one marketing stream under a written rule.The pause rule is approved in advance; the deliverability owner resumes.Deliverability or email operations leadResume a stream; change DNS or authentication records; suppress addresses; pause transactional mail.Deliverability Watcher profile
DSAR AssemblerCompliance, privacy and securityL2highYes, one verified subject in scopeSystem map; in-scope records; response templates.Response pack and draft reply.None.A privacy analyst signs off every pack and decides exemptions.DPOVerify identity; decide exemptions; close a request; delete data; send the reply.DSAR Assembler profile
Escalation SpotterCustomer supportL1mediumCase text onlyCase text; status; flag definitions.None; it raises a flag for a person.None.A team lead reviews each flag.Head of customer support, with the DPODecide an outcome; contact a customer; record a consent change itself.Escalation Spotter profile
Evidence PackerCompliance, privacy and securityL1 to L2mediumIdentifiers by reference onlyLedger views; rail cards; policy versions.Evidence pack with an index.None.The compliance lead reviews and releases every pack.Compliance leadAlter a ledger entry; release a pack; state a compliance conclusion.Evidence Packer profile
Experiment ReaderProduct and growthL1lowNo, aggregates or metadata onlyExperiment results; analysis plan; guardrail metrics.None.None.The experiment owner and an analyst decide.Head of product or growthEnd an experiment; change allocation; add metrics after the fact without saying so.Experiment Reader profile
Feature Adoption ExplainerProduct and growthL1lowNo, aggregates or metadata onlyAdoption aggregates; feature definitions.None.None.The product owner decides any action.Head of productTarget individuals; change a feature flag; state a cause as fact.Feature Adoption Explainer profile
Frequency AdvisorLifecycle and CRM marketingL2mediumNo, aggregates or metadata onlyCohort aggregates; calendar; current caps.Cap and spacing changes with expected trade-offs.None.Lifecycle lead accepts or rejects; caps change through normal configuration.Head of lifecycle marketingChange caps itself; target people by vulnerability; override a suppression.Frequency Advisor profile
Identity ReviewerData and analyticsL2highPseudonymised match featuresCandidate pairs; match features; merge history.Merge or split proposal with reason codes.None.An identity steward applies or rejects every proposal.Head of data or identity stewardMerge or split profiles itself; use sensitive attributes; combine consent scopes.Identity Reviewer profile
Journey QA ReviewerMarketing operationsL2mediumNo, aggregates or metadata onlyJourney configuration; rule-check results; audience counts; live journey list.Findings report.None.A person resolves every finding; unresolved high-severity findings stay blocked by the rule layer.Head of marketing operationsChange a journey; launch; report a journey as passed; override a failed rule.Journey QA Reviewer profile
Lead Routing ProposerSales and revenue operationsL2mediumLead business fields onlyLead fields; territory rules; capacity.Routing proposal with reason.None.The revenue-operations lead accepts exceptions; rule changes go through change control.Head of revenue operationsContact a lead; use protected attributes; rank named sales staff by behaviour or traits.Lead Routing Proposer profile
Metric ExplainerData and analyticsL1lowNo, aggregates or metadata onlyMetric catalogue; lineage; fixed aggregate queries.None.None.None for answers; the metric owner reviews a sample.Analytics leadChange a metric definition; state a cause as fact; read individual records.Metric Explainer profile
Onboarding Funnel WatcherProduct and growthL1lowNo, aggregates or metadata onlyFunnel aggregates; release notes; data freshness.None.None.The product owner decides any change.Head of product or growthChange a flow; target individuals; infer sensitive traits.Onboarding Funnel Watcher profile
OrchestratorCross-cuttingL4 on routing onlymediumNo, aggregates or metadata onlyRail catalogue; queue state.None.Start a run; notify; expire a request; broadcast a pause.None on routing; changes to the routing table go through change control.Head of marketing operations, with a platform engineerRead a customer record; approve anything; widen a scope.Orchestrator profile
Policy Drift CheckerCompliance, privacy and securityL1lowNo, aggregates or metadata onlyRail cards; ledger metadata; policy versions.None.None.None for reports; the rail owner decides any change.AI governance leadChange a rail; pause an agent; read customer payloads.Policy Drift Checker profile
Reporting SummariserMarketing operationsL1lowNo, aggregates or metadata onlyFixed metric queries; metric catalogue; calendar.None; the summary is read-only output for review.None; a separate service delivers the report.The owner reviews each report at first, then samples.Analytics or marketing-operations leadCalculate figures; state a cause as fact; deliver a report itself; read individual records.Reporting Summariser profile
Restore Drill ReporterPlatform operationsL1lowNo, aggregates or metadata onlyDrill logs; targets; calendar.None.None.The platform lead reviews each report.Platform leadTrigger a restore; change a backup policy; read restored data.Restore Drill Reporter profile
Schema Drift SentinelData and analyticsL1lowNo, aggregates or metadata onlySchema snapshots; data contracts; lineage.None.None.None for alerts; the pipeline owner decides any change.Data platform leadAlter a schema or pipeline; read row data.Schema Drift Sentinel profile
Segment DrafterMarketing operationsL2mediumPseudonymised IDs onlySchema; existing segments; count estimates.Versioned segment draft.None.Marketing-operations reviewer, never the requester; approval binds to the definition hash.Head of marketing operationsActivate a segment; use special-category data or close proxies; read free-text fields.Segment Drafter profile
Sync MedicPlatform operationsL3 to L4mediumNo, aggregates or metadata onlySync logs; error codes; approval record; destination status.Fix proposal for anything other than a retry.Retry the same approved sync version with idempotency and a fresh consent check.No new approval for a bounded retry of the same approved hash; the platform on-call approves any other change.Platform leadChange a mapping or destination; retry a changed audience; exceed the retry limit.Sync Medic profile
TrainerCross-cuttingL2mediumMasked samplesMasked samples; ledger views; rail cards.Test cases; rail changes; training assignments.Run tests in non-production only.The rail owner accepts each addition and change; the DPO for data scope.Head of marketing operations, with security for red-team drillsEdit a production rail; approve its own proposals; rank named staff.Trainer profile
VP Marketing agentCross-cuttingL1 to L2mediumNo, aggregates or metadata onlyAggregate views; ledger views; calendar; deadline tracker.Priorities; draft sections.None; a separate service delivers the readout.The VP reads it; nothing leaves without a person.VP of marketingSee an individual customer; change anything; report on named staff.VP Marketing agent profile

FAQ

What is an AI agent permission matrix?

An AI agent permission matrix is a table listing, for each agent, what it may read, propose and execute, who approves, and who owns it. It gives security and privacy teams one view of agent access. This one covers 33 reference jobs on customer data, and you should adapt it to your own systems before relying on it.

Can I load this matrix into a gateway as an access-control list?

No. The values are words, not tool names or policy rules, so no gateway can enforce them as written. Treat the matrix as the agreed intent. Then write the real allow-lists, data views and approval rules for your systems, and test that those systems refuse anything the matrix does not allow.

Why do so few agents hold execute permissions?

Execute rights carry the most risk, and most useful work needs only reading or drafting. An agent that explains or proposes can be wrong without changing anything, and a person catches the error. Separate services can deliver reports or run approved actions. So we add an execute tool only where a job truly needs one.

Does PrivyCDP include these 33 agents?

No. The matrix is a vendor-neutral method, and PrivyCDP does not ship these agents. The product uses AI to help review groups, workflows, unusual events and reports, with limits on data access and review of results. See the customer data platform page for what it does.

Can I reuse this dataset in my own work?

Yes. The site's dataset reuse terms allow copying, sharing and adapting the compilation, including commercial reuse, as long as you credit iAge / PrivyCDP, link to the dataset page and the terms, and identify your changes. Do not imply endorsement, or present a modified version as an official source 3.

Sources

  1. Meta, Agents Rule of Two (31 October 2025)
  2. EU AI Act, Annex III
  3. PrivyCDP dataset reuse terms

To turn one row into a working spec, download the rail card template. The AI agent rails hub explains how the rows fit together.

This article is general information, not legal advice.

Further reading

Published: · Updated:

Editorial dates describe content changes. Confirm current sources before making legal, security or purchasing decisions.