Agent Governance Toolkit Skill:给 AI Agent 加上确定性策略执行与审计层
AI Agent 数量爆发式增长,但 governance(治理)能力严重缺失——你没法回答”这个 Agent 有没有权限做这件事”、”是谁下的决策”、”出了问题能不能审计”。微软推出的 agent-governance-toolkit(AGT)正是冲着这三个核心问题来的:一个确定性策略执行框架,在应用层拦截每一次工具调用,而非依赖 prompt 的软约束。
功能与原则
AGT 解决的是自主 AI Agent 的三大治理难题:
- 策略执行:OAuth/IAM 管的是”能不能连接服务”,AGT 管的是”连接后能做什么操作”
- 身份溯源:多 Agent 共享同一个 API Key 时,AGT 为每次操作打上不可篡改的 agent_id
- 审计合规:为监管/审计提供每一次决策的完整决策链证据
核心设计原则:prompt 层面的安全是”请遵守规则”,AGT 的安全是”让违规行为在结构上不可能发生”。OWASP LLM01:2025 指出 prompt injection 目前没有完备防护,AGT 的思路是绕开这场注定赢不了的仗——在模型输出到达网络之前,在确定性代码层把所有操作拦截检查。
认可度
- GitHub star:截至 2026-07-29 约 5,402 star,fork 855
- 今日增长:+46 star,GitHub Trending 榜上有名
- 多框架支持:Python(PyPI)、TypeScript(npm)、.NET(NuGet)、Rust/Go,覆盖主流 Agent 开发栈
- 微软官方背书:微软官方出品,Apache 2.0 许可证,有完整 CI/CD 和 Scorecard 认证
链接
GitHub:https://github.com/microsoft/agent-governance-toolkit
原作者
Microsoft — 微软官方 AI Agent 安全与治理团队,专注于把企业级安全工程实践引入 AI Agent 领域。
介绍
随着 AI Agent 开始自主执行代码、发送邮件、查询数据库、调用第三方 API,企业面临一个根本性问题:传统安全边界(网络防火墙、OAuth 权限)只能管到”能不能调用这个 API”,管不到”Agent 拿着这个 API key 做了什么具体操作”。
AGT 的做法是在应用层建立一道 governance kernel(治理内核):所有工具调用、消息发送、Agent 间的 delegation(委托)都会被 AGT 在确定性代码中拦截,依据 YAML/JSON 策略文件做出 allow/deny/require_approval 三种判定。任何被 AGT 拒绝的操作在结构上就不可能执行出去——不是模型”听话”,是代码层面物理阻断。
安装只需一行:pip install agent-governance-toolkit[full]。对于 Claude Code 用户,还可以通过插件市场直接安装:/plugin marketplace add microsoft/agent-governance-toolkit。
特点
- 确定性执行:策略检查在模型输出到达网络之前完成,不依赖模型遵守规则的能力
- 多语言 SDK:Python、TypeScript、.NET、Rust、Go,主流 Agent 框架均可接入
- 开箱即用的策略模板:内置 OWASP Agentic Top 10 全 10 项防护架构参考
- 人类审批工作流:高风险操作(如发送邮件、删除数据)可配置 require_approval 规则,触发人工审批流程
- 不可篡改审计日志:每次 allow/deny 决策均被记录,包含当时激活的策略版本、请求内容、判定理由
使用方法
安装:
pip install agent-governance-toolkit[full]
快速接入(Python):
from agentmesh.governance import govern
safe_tool = govern(my_tool, policy="policy.yaml")
# 正常操作 → 通过
result = safe_tool(action="read", table="users")
# {'table': 'users', 'rows': 42}
# 危险操作 → 结构阻断,抛出 GovernanceDenied
safe_tool(action="drop", table="users")
# GovernanceDenied: Action denied by policy rule 'block-destructive'
policy.yaml 示例:
apiVersion: governance.toolkit/v1
name: production-policy
default_action: allow
rules:
- name: block-destructive
condition: "action.type in ['drop', 'delete', 'truncate']"
action: deny
description: "Destructive operations require human approval"
- name: require-approval-for-send
condition: "action.type == 'send_email'"
action: require_approval
approvers: ["security-team"]
Claude Code 插件安装:
/plugin marketplace add microsoft/agent-governance-toolkit
/plugin install agt-governance@agent-governance-toolkit
使用场景与人群
适用场景:
– 企业内部 AI Agent 部署,需要满足合规审计要求
– 多 Agent 协作系统,需要明确分工边界和责任归属
– 高风险工具调用(邮件发送、数据库删除、支付接口)需要人工审批流
– 需要在不修改 Agent 业务逻辑的前提下叠加安全治理层
目标用户:
– AI Agent 开发者 / 平台工程师
– 企业安全与合规团队
– AI 产品负责人(需要向监管机构证明 Agent 决策可审计)
输入与输出案例
案例一:读操作正常放行
输入:safe_tool(action="read", table="users")
输出:{'table': 'users', 'rows': 42}
案例二:危险删除操作被结构阻断
输入:safe_tool(action="drop", table="users")
输出:GovernanceDenied: Action denied by policy rule 'block-destructive':
Destructive operations require human approval
无论模型如何”说服”自己,被策略拦截的操作在代码层就无法执行——这是 AGT 与纯 prompt-based 安全机制的本质区别。
GitHub: https://github.com/microsoft/agent-governance-toolkit
评论区
登录后可评论。