Our sales agent prepares a brief before each customer meeting and keeps our CRM up to date as conversations move forward. With two of us, access was simple. We both knew what the agent could touch, and we saw every change it made.
That stops being true when a whole team shares an agent. This is where AI agent governance starts: someone has to decide what it can read, what it can change, and who checks its work. Here is how we manage AI agent access in five steps, using one example: a sales team with an agent that prepares customer briefs from HubSpot and updates records after each call.
- Operation policies. The agent reads freely from the tools you connect. Its changes wait for a person's approval, and risky actions stay blocked.
- Approvals. A person checks each suggestion before the agent writes it to HubSpot.
- Owners. People own the agent's instructions and decide on its approvals.
- Data rules. Keep every request on models that never train on your data.
- Access reviews. A new task, account or audience is the moment to review access again.
What you need
- A d5s workspace where you are the owner or an admin. Only owners and admins can add connectors and manage the agent's permissions for each connected system.
- A HubSpot account for the agent, or the CRM your team already uses.
- An agent with a clear goal, such as "prepare a brief before each customer call and keep HubSpot up to date after every conversation". If you don't have one yet, create an AI agent in a few minutes.
Step 1: Set AI agent permissions for each tool
Set each connector operation to Allow, Ask first or Block. The agent then reads what it needs without making risky changes.
Start with what the job actually needs. A brief needs customer records, so the agent has to read them. It never needs to archive a contact, so there's no reason to allow it.
Open HubSpot on the Connectors page and go to Tool permissions. New connections start on Allow reading: the agent reads freely and asks before it changes anything. That's a sensible default, and you can adjust each operation from there:
- Allow runs without a prompt.
- Ask first pauses until a person approves it.
- Block never runs.
HubSpot toolssales@northwind.exampleHubSpot still applies the account's own user permissions. Telling the agent to "focus on this customer" helps it stay on task, but it isn't a hard limit. The real limits are the account's roles and these operation policies.
Before you go further, try a simple read. Ask for one brief, then look at which account the agent used, which records it read and the tool activity in the conversation. The connector docs list every setting.
Step 2: Add human-in-the-loop approvals before the agent changes records
With Ask first on contact updates, every change waits on a card where a person checks the record and the new value.
This is where most mistakes get caught. Say a salesperson asks the agent to update a contact after a call, and it picks someone with a similar name at another company. The agent will explain its choice confidently either way. The approval card is what shows you the wrong record.
Choose Ask for approval in the conversation bar. From then on, every operation set to Ask first pauses on a card with the account, the record and the exact change. You have three options:
- Allow once runs this change. Open the record in HubSpot to confirm the result.
- Decline stops it. Ask the agent to fix the target, then review the new card.
- Always allow skips future prompts for this operation. Only workspace admins can choose it.

An approval tells you a person agreed with the change. It doesn't tell you the change worked. In the first few weeks, open the record after each approved update and check it. You're testing the whole workflow, including the person who clicked Allow.
Once the team trusts the workflow, you can switch to Allow all, which skips the cards for Ask first operations. Blocked operations and the account's roles still apply, and some actions, like sending email, always wait for a person.
Step 3: Share the project and name owners for AI agent governance
Project sharing controls who can open the work. Named owners control how the agent behaves.
In d5s, the conversations and files behind the work live in a project. Share it with Everyone in workspace, or choose Restricted and add specific people and groups. Colleagues can then open the same conversation to check a brief or pick up where someone left off. Sharing doesn't hand over the connection's credentials, and it doesn't change any of its permissions.
Access alone isn't enough, though. Good AI agent governance means every decision has a person behind it. Before the team starts using the agent, agree who owns which decision:
- The sales lead owns the instructions and makes sure the briefs are useful.
- The CRM owner manages the HubSpot connection and its permissions.
- The reviewer checks the record and the new value on each card.
- The IT or AI lead reviews access whenever the job, the account or the audience changes.
The sharing docs explain project access and roles in more detail.
Step 4: Set AI data rules for training, retention and data residency
Keep your data on models that never train on it, and check retention and location before rollout.
Customer records don't stay in HubSpot. They also pass through an AI model, so that belongs in your review too.
Organization owners and admins can turn on Require no-training routes for everyone. Every request then runs only on models that never train on your data. On Team and Enterprise plans, the primary models d5s provides also run with zero data retention at the model provider. Your workspace still keeps its conversations and files, so the team can come back to them.
Then check where everything runs. d5s runs in our EU cloud, as a single-tenant deployment, in your own VPC or on your own Kubernetes. Whatever you pick, look at model processing and each connected service, not only where files are stored.
The security page and the security docs cover the details for each deployment.
Step 5: Review AI agent access when the job changes
A new task, a new account or a wider audience is the moment to review access again.
Agents rarely keep the job they started with. The more we work with ours, the more we hand over, and each new task usually brings a new tool. When that happens, go through each new operation again. Should it run on its own, wait for a person, or stay blocked? Try it on test records before it touches real data.
It also helps to know how to take access back:
- Stop one type of change. Set that operation to Block. The agent can still read.
- Stop all HubSpot use in a project. Remove the connection under the project's Context → Connectors. It stays removed even when the account is reconnected.
- Check what happened. Open the tool activity in the conversation, then check the record in HubSpot. Changes that already ran stay in HubSpot until you fix them there.
Organization owners and admins can also open the Audit log, which records security events such as a change of approval mode. The connection guide shows where each connection is available.
What to do next
Start small. Pick one workflow, one account and one reviewer, and get that right before you bring in the rest of the team. Write down which operations the agent may run and who reviews each change, and keep the results of your first read, approval and decline tests with it.
- Connect your tools. See the connectors that d5s supports.
- Start from a ready-made agent. Browse the agents and adapt one to your team.
- Plan a rollout with us. Book a demo and we'll set up the first workflow with your team.
Questions and answers
What is AI agent access control?
AI agent access control decides which systems an agent can use and what it can do in them. In d5s, you set each connector operation to Allow, Ask first or Block, and the connected account's own permissions still apply on top.
How do you govern AI agents in a company?
Give each agent only the tool access its job needs, require a person's approval before it changes records, and name an owner for its instructions, connections and reviews. Review access again whenever the agent gets a new task, account or audience.
Can an AI agent change my CRM without approval?
Not if the operation is set to Ask first and the chat is in Ask for approval mode. Every change then waits on a card until a person allows or declines it. An operation set to Block never runs at all.
What happens when I decline an agent's proposed change?
The change doesn't run. The operation stays on Ask first, so the agent's next proposal also comes back to a person. To stop an operation for good, set it to Block.
Who can change an agent's connections in d5s?
Workspace owners and admins connect accounts and manage their permissions. Members can use the connections an admin has added. Sharing a project never exposes a connection's credentials.
Does d5s train AI models on company data?
No. Organization owners and admins can require no-training routes for everyone, so no request reaches a model that trains on your data. Team and Enterprise plans also run the primary models d5s provides with zero data retention.
Can I run self-hosted AI agents with d5s?
Yes. For self-hosted AI agents, d5s runs in your own VPC or on your own Kubernetes with Helm charts. You can also choose our EU cloud or a single-tenant deployment. Every option runs the same product. See the security page.




