AI agents are becoming part of applications that handle real business tasks. An agent may call APIs, access databases, create documents, query internal systems, or trigger automated workflows.
As the number of agents and reusable agent skills grows, security becomes harder to manage.
The problem is not only whether an AI model is secure. Developers also need to know which skills an agent is allowed to use, who published those skills, what permissions they require, and whether an approved version is being executed.
A central agent registry can help solve this problem by providing a controlled place to discover, manage, and govern reusable agent skills.
Google Cloud's Agent Registry is designed around this type of agent ecosystem. Instead of treating every agent skill as an isolated piece of application code, teams can manage agent-related resources through a centralized registry and apply governance before those resources are used.
This article looks at how to approach agent-skill security using a registry-based architecture and what developers should check before allowing an AI agent to use a skill in production.
What Is an AI Agent Skill?
An agent skill is a reusable capability that an AI agent can invoke to complete a task.
For example, an enterprise agent might have these skills:
Customer Support Agent
|
+-- Search customer
+-- Check order status
+-- Create support ticket
+-- Issue refund
+-- Send emailEach capability may interact with a different backend system.
The security requirements are therefore different as well.
Searching an order may only require read access.
Issuing a refund may require a privileged API.
Sending an email may require access to a messaging service.
The agent should not automatically receive all of these permissions just because it can discover the skills.
Why Agent Skills Need Governance
Traditional application code usually has a relatively clear execution path.
For example:
User
|
v
Web API
|
v
Service
|
v
DatabaseAn AI agent introduces another decision-making layer:
User
|
v
AI Agent
|
+---- Skill A
|
+---- Skill B
|
+---- Skill C
|
v
External systemsThe agent may decide which skill to invoke based on the user's request and the available tool descriptions.
That makes skill discovery itself a security concern.
A malicious, outdated, incorrectly configured, or overly privileged skill can become part of the agent's execution path.
What a Registry Adds
A registry creates a controlled layer between developers and the skills available to agents.
Instead of:
Developer
|
+--> Random skill
+--> Internal skill
+--> Third-party skill
+--> Old skillthe architecture becomes:
Developer
|
v
Agent Registry
|
+--> Approved skill
+--> Approved version
+--> Metadata
+--> Security information
|
v
AI AgentThe registry becomes a source of information about what skills exist and which ones are approved for use.
This is especially useful when an organization has multiple teams building agents.
Separate Skill Discovery From Skill Execution
One of the most important design decisions is to separate discovery from execution.
A registry can answer:
What skills are available?
Which version is approved?
Who owns the skill?
What metadata describes it?The runtime still needs to enforce:
Can this agent execute the skill?
Can this user invoke it?
What credentials should it receive?
What resources can it access?Do not assume that registering a skill means granting unrestricted execution permissions.
A good architecture keeps these concerns separate.
A Basic Security Architecture
A production agent platform can look like this:
User
|
v
AI Application
|
v
AI Agent
|
Skill Discovery
|
v
Agent Registry
|
Approved Skills
|
v
Policy Validation
|
v
Skill Execution
|
+---------------+---------------+
| | |
Database API Cloud ServiceThe registry handles the management and discovery layer.
Identity, authorization, secrets, network controls, and application-level policies still need to be enforced at execution time.
Start With Skill Ownership
Every production skill should have an owner.
A registry entry should provide enough metadata to answer questions such as:
Skill name
Owner
Team
Purpose
Version
Environment
Required permissions
Supported agent types
Last review date
StatusFor example:
name: customer-order-search
owner: commerce-platform
version: 2.1.0
environment: production
access: read-only
review_status: approvedThe exact metadata model depends on the registry and platform you use.
The important principle is that an agent should not consume an anonymous capability.
Use Versioned Skills
Skill versioning is particularly important for AI agents.
Consider this sequence:
v1.0.0
|
+-- Agent A uses it
|
v
v1.1.0
|
+-- New permissions addedIf the agent automatically starts using the new version, behavior may change without an application deployment.
A safer approach is to make version selection explicit.
For example:
Agent A
|
+-- customer-search: 1.0while another application can use:
Agent B
|
+-- customer-search: 1.1This makes changes easier to review and roll back.
Versioning becomes even more important when a skill changes the APIs or permissions it requires.
Treat Skill Metadata as Security Metadata
Developers often think of metadata as documentation.
For agent systems, metadata can influence runtime behavior.
A skill description may tell an agent:
This skill searches customer orders.The agent can use that information to decide when the skill is appropriate.
If the metadata is manipulated, the model may be encouraged to invoke a skill in situations where it should not.
Therefore, skill metadata should be treated as controlled configuration.
Review:
Skill descriptions
Input schemas
Output schemas
Required permissions
Endpoint definitions
Version information
Ownership
Trust level
Do not allow arbitrary teams to publish production skills without review.
Apply Least Privilege
A skill should receive only the permissions it needs.
For example:
Order search skill
|
+-- Read orders
+-- Read customer ID
Join the conversation! Your thoughts help the community grow.