
Принудительное применение политик, идентификация с нулевым доверием, изоляция выполнения и аудиторское логирование для автономных AI-агентов. Покрывает все 10 пунктов OWASP Agentic Top 10 с детерминированным управлением с отказом по умолчанию (fail-closed).
🌍 Английский | 日本語 | 简体中文 | 한국어
🚀 Быстрый старт · 📋 Спецификации · 📦 PyPI · 📝 Журнал изменений
[!IMPORTANT] Публичная предварительная версия — релизы публичной предварительной версии производственного качества. Возможны критические изменения до GA.
Применение политик, идентификация, изоляция (sandboxing) и SRE для автономных AI-агентов. Один pip install, любой фреймворк.
Ваши AI-агенты вызывают инструменты, просматривают веб-страницы, выполняют запросы к базам данных и делегируют задачи другим агентам. После развертывания они принимают решения автономно. Вам нужны ответы на три вопроса:
1. Разрешено ли это действие? Агент с доступом к send_email и query_database не должен иметь возможность выполнить drop_table. Области OAuth и роли IAM контролируют, к каким сервисам агент может подключиться, но не то, что он делает после подключения.
2. Какой агент это сделал? В многолетной системе пять агентов могут использовать один общий API-ключ. Когда что-то идет не так, ответ «это сделал какой-то агент» не является инцидент-реагированием.
3. Можете ли вы доказать, что произошло? Аудиторы и регуляторы требуют защищенных от подделки записей каждого решения: какая политика была активна, что запросил агент и почему действие было разрешено или отклонено.
Безопасность на уровне подсказок («пожалуйста, следуй правилам») не является поверхностью контроля. Это вежливая просьба к стохастической системе. OWASP LLM01:2025 утверждает это явно: «неясно, существуют ли надежные методы предотвращения инъекций подсказок». Опубликованные цифры это подтверждают. Andriushchenko et al. (ICLR 2025) сообщают о 100% уровне успеха атак на GPT-4o, GPT-3.5, Claude 3 и Llama-3 при использовании адаптивных атак с доступом к logprob и оптимизацией суффиксов, оцененных по бенчмарку JailbreakBench (Chao et al., NeurIPS 2024). Собственный AI Red Teaming Agent от Microsoft формализует Attack Success Rate (ASR) — долю нарушений политик при adversarial-вводе — как каноническую метрику для этого класса сбоев. Lessons from Red Teaming 100 Generative AI Products подчеркивает: «меры защиты не устраняют риск полностью», и red teaming должен быть непрерывным процессом, поскольку защиты на уровне модели по своей природе вероятностны.
AGT не пытается выиграть эту битву внутри подсказки. Каждый вызов инструмента, отправка сообщения и делегирование перехватываются в детерминированном коде приложения до того, как намерение модели достигнет провода. Действия, которые отклоняет ядро AGT, не являются «маловероятными». Они структурно невозможны. В этом разница между просьбой к агенту вести себя правильно и невозможностью для него нарушить правила.
Предварительные требования: Python 3.10+```bash pip install agent-governance-toolkit[full]
Для Claude Code, добавьте AGT как маркетплейс плагинов и установите плагин управления:```text
/plugin marketplace add microsoft/agent-governance-toolkit
/plugin install agt-governance@agent-governance-toolkit
Управляйте любой функцией инструмента в две строки:```python from agentmesh.governance import govern
safe_tool = govern(my_tool, policy="policy.yaml") # every call checked, logged, enforced
Вот и всё. `safe_tool` оценивает вашу политику YAML при каждом вызове, записывает решение в журнал и вызывает исключение `GovernanceDenied`, если действие заблокировано.```yaml
# 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"]
ВХОД:```python
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
Или используйте полный API `PolicyEvaluator` для программного управления:
<details>
<summary><b>PolicyEvaluator пример</b></summary>```python
from agent_os.policies import (
PolicyEvaluator, PolicyDocument, PolicyRule,
PolicyCondition, PolicyAction, PolicyOperator, PolicyDefaults
)
evaluator = PolicyEvaluator(policies=[PolicyDocument(
name="my-policy", version="1.0",
defaults=PolicyDefaults(action=PolicyAction.ALLOW),
rules=[PolicyRule(
name="block-dangerous-tools",
condition=PolicyCondition(
field="tool_name",
operator=PolicyOperator.IN,
value=["execute_code", "delete_file"]
),
action=PolicyAction.DENY, priority=100,
)],
)])
result = evaluator.evaluate({"tool_name": "web_search"}) # Allowed
result = evaluator.evaluate({"tool_name": "delete_file"}) # Blocked
TypeScript```typescript import { PolicyEngine } from "@microsoft/agent-governance-sdk";
const engine = new PolicyEngine([ { action: "web_search", effect: "allow" }, { action: "shell_exec", effect: "deny" }, ]); engine.evaluate("web_search"); // "allow" engine.evaluate("shell_exec"); // "deny"
**.NET**```csharp
using AgentGovernance;
using AgentGovernance.Extensions.ModelContextProtocol;
using AgentGovernance.Policy;
var kernel = new GovernanceKernel(new GovernanceOptions
{
PolicyPaths = new() { "policies/default.yaml" },
});
var result = kernel.EvaluateToolCall("did:mesh:agent-1", "web_search",
new() { ["query"] = "latest AI news" });
// MCP server integration
builder.Services.AddMcpServer()
.WithGovernance(options => options.PolicyPaths.Add("policies/mcp.yaml"));
Rust```rust use agent_governance::{AgentMeshClient, ClientOptions};
let client = AgentMeshClient::new("my-agent").unwrap(); let result = client.execute_with_governance("data.read", None); assert!(result.allowed);
**Go**```go
import agentmesh "github.com/microsoft/agent-governance-toolkit/agent-governance-golang"
client, _ := agentmesh.NewClient("my-agent",
agentmesh.WithPolicyRules([]agentmesh.PolicyRule{
{Action: "data.read", Effect: agentmesh.Allow},
{Action: "*", Effect: agentmesh.Deny},
}),
)
result := client.ExecuteWithGovernance("data.read", nil)
Инструменты CLI:```bash agt doctor # check installation agt verify # OWASP compliance check agt verify --evidence ./agt-evidence.json --strict # fail CI on weak evidence agt red-team scan ./prompts/ --min-grade B # prompt injection audit agt lint-policy policies/ # validate policy files
Полное пошаговое руководство: [quickstart.md](https://github.com/microsoft/agent-governance-toolkit/blob/HEAD/docs/quickstart.md) — от нуля до управляемых агентов за 5 минут.
🌍 Также на: [日本語](https://github.com/microsoft/agent-governance-toolkit/blob/HEAD/docs/i18n/quickstart.ja.md) | [简体中文](https://github.com/microsoft/agent-governance-toolkit/blob/HEAD/docs/i18n/quickstart.zh-CN.md) | [한국어](https://github.com/microsoft/agent-governance-toolkit/blob/HEAD/docs/i18n/quickstart.ko.md)
---
## Как Это Работает```
Agent ──► Policy Engine ──► Identity ──► Audit Log
(YAML/OPA/Cedar) (SPIFFE/DID/mTLS) (Tamper-evident)
│ │
├── Allowed ──► Tool executes │
└── Denied ──► GovernanceDenied │
▼
Decision Record
Каждый слой необязателен. Начните с govern() и добавляйте слои по мере роста вашего профиля риска. Большинство команд используют принудительное применение политик + аудит логирование и никогда не нуждаются в полном стеке.
Все пять языковых SDK реализуют базовое управление (политики, идентификация, доверие, аудит). Python имеет полный стек. Copilot CLI и Claude Code — это собственные поверхности разработчика, построенные на TypeScript SDK. См. Матрицу языковых пакетов для подробного покрытия по каждому языку.
Начиная с v4.1.0, 45 пакетов были консолидированы в 5 дистрибутивов верхнего уровня:
AZURE_CLIENT_ID, AZURE_TENANT_ID, AZURE_CLIENT_SECRET для функций, интегрированных с AzureПолный список: Интеграции фреймворков · Примеры быстрого старта
Каждый крупный компонент имеет формальную спецификацию RFC 2119 с тестами на соответствие. Эти спецификации определяют поведенческий контракт: что реализации ДОЛЖНЫ, СЛЕДУЕТ и МОГУТ делать.
992 теста на соответствие гарантируют, что код соответствует спецификациям. 29 записей архитектурных решений документируют почему.
AGT обеспечивает управление на уровне ПО промежуточного слоя приложения, а не на уровне ядра ОС. Механизм политик и агенты находятся в одной границе процесса.
Рекомендация для продакшена: Запускайте каждого агента в отдельном контейнере для изоляции на уровне ОС. См. Архитектура: Границы безопасности.
| Инструмент | Охват |
|---|---|
| CodeQL | SAST для Python и TypeScript |
| Gitleaks | Сканирование секретов при PR/push/еженедельно |
См. Известные ограничения для честных границ проектирования и рекомендуемой многоуровневой защиты.
Руководство по участию · Сообщество · Discord · Политика безопасности · Журнал изменений
Используете AGT? Добавьте свою организацию в ADOPTERS.md.
Если вы используете Agent Governance Toolkit для создания приложений, работающих со сторонними фреймворками или сервисами агентов, вы делаете это на свой страх и риск. Мы рекомендуем проверять все данные, передаваемые сторонним сервисам, и учитывать их практики хранения и размещения данных.
Единственными официальными источниками Agent Governance Toolkit являются:
Команда проекта не поддерживает и не одобряет какие-либо сторонние веб-сайты, пакеты или сайты документации, которые утверждают, что являются официальными. Если вы столкнетесь с подозрительным сайтом или пакетом, использующим имя Agent Governance Toolkit, сообщите об этом через каналы, описанные в SECURITY.md.
Этот проект лицензирован по лицензии MIT.
Этот проект может содержать товарные знаки или логотипы проектов, продуктов или услуг. Авторизованное использование товарных знаков или логотипов Microsoft регулируется и должно следовать Руководству по товарным знакам и брендам Microsoft. Использование товарных знаков или логотипов Microsoft в модифицированных версиях этого проекта не должно вызывать путаницу или подразумевать спонсорство Microsoft. Любое использование товарных знаков или логотипов третьих сторон регулируется политиками этих третьих сторон.
| Пакет | Описание |
|---|
| Agent OS | Механизм политик, жизненный цикл агента, шлюз управления |
| Agent Control Specification (README) | Статичный, детерминированный runtime принятия решений с закрытием при ошибке (ядро на Rust), поддерживающий уровень политик AGT |
| Agent Mesh | Обнаружение агентов, маршрутизация и доверительная сетка |
| Agent Runtime | Песочница выполнения с четырьмя кольцами привилегий |
| Agent SRE | Аварийный выключатель, мониторинг SLO, хаос-тестирование |
| Agent Compliance | Верификация OWASP, линтинг политик, проверки целостности |
| Agent Marketplace | Управление плагинами и оценка доверия |
| Agent Lightning | Управление обучением с подкреплением с штрафами за нарушения |
| Agent Hypervisor | Аудит выполнения, механизм дельт, отслеживание обязательств в памяти, принудительное применение списка запрещённых команд |
| Возможность | Описание |
|---|
| MCP Security Gateway | Обнаружение отравления инструментов, мониторинг дрейфа, тайпсквоттинг, сканирование скрытых инструкций (Спецификация) |
| Shadow AI Discovery | Поиск незарегистрированных агентов среди процессов, конфигов и репозиториев (Обнаружение) |
| Governance Dashboard | Панель управления реального времени для видимости состояния, доверия и соответствия (Панель) |
| PromptDefense Evaluator | Аудит внедрения промптов по 12 векторам (Оценщик) |
| Contributor Reputation | Проверка авторов PR/issue на социальную инженерию. Переиспользуемый GitHub Action (Действие) |
| Язык | Пакет | Команда |
|---|
| Python | agent-governance-toolkit | pip install agent-governance-toolkit[full] |
| TypeScript | @microsoft/agent-governance-sdk | npm install @microsoft/agent-governance-sdk |
| Copilot CLI | @microsoft/agent-governance-copilot-cli | npx @microsoft/agent-governance-copilot-cli install |
| Claude Code | @microsoft/agent-governance-claude-code | claude --plugin-dir ./agent-governance-claude-code |
| OpenCode | @microsoft/agent-governance-opencode | npm install @microsoft/agent-governance-opencode |
| .NET | Microsoft.AgentGovernance | dotnet add package Microsoft.AgentGovernance |
| .NET MCP | Microsoft.AgentGovernance.Extensions.ModelContextProtocol | dotnet add package Microsoft.AgentGovernance.Extensions.ModelContextProtocol |
| Rust | agent-governance | cargo add agent-governance |
| Go | agent-governance-toolkit | go get github.com/microsoft/agent-governance-toolkit/agent-governance-golang |
| Дистрибутив | PyPI | Что включено |
|---|
agent-governance-toolkit-core | agent-governance-toolkit-core | Механизм политик, модель возможностей, аудит, шлюз MCP, идентификация с нулевым доверием, оценка доверия, мосты A2A/MCP/IATP |
agent-governance-toolkit-runtime | agent-governance-toolkit-runtime | Кольца привилегий, оркестрация саг, контроль завершения, проверка плана выполнения, принудительное применение списка запрещённых команд |
agent-governance-toolkit-sre | agent-governance-toolkit-sre | SLO, бюджеты ошибок, хаос-инженерия, автоматические выключатели |
agent-governance-toolkit-cli | agent-governance-toolkit-cli | CLI agt, верификация OWASP, проверки целостности, линтинг политик |
agent-governance-toolkit[full] | agent-governance-toolkit | Мета-пакет, устанавливающий всё вышеперечисленное |
Предыдущие имена пакетов (agent-os-kernel, agentmesh-platform, agentmesh-runtime, agent-sre, agent-discovery, agent-hypervisor, agentmesh-marketplace, agentmesh-lightning) остаются устанавливаемыми как пакеты-заглушки, которые перенаправляют на консолидированные дистрибутивы.
| Фреймворк | Интеграция |
|---|
| Microsoft Agent Framework | Встроенное ПО промежуточного слоя |
| Semantic Kernel | Встроенное (.NET + Python) |
| AutoGen | Адаптер |
| LangGraph / LangChain | Адаптер |
| CrewAI | Адаптер |
| OpenAI Agents SDK | ПО промежуточного слоя |
| Claude Code | Пакет плагина управления |
| Google ADK | Адаптер |
| LlamaIndex | ПО промежуточного слоя |
| Haystack | Конвейер |
| Mastra | Адаптер |
| Dify | Плагин |
| Azure AI Foundry | Руководство по развертыванию |
| GitHub Copilot CLI | Установщик управления |
| Пример | Фреймворк | Что демонстрирует |
|---|
| openai-agents-governed | OpenAI Agents SDK | Вызовы инструментов, контролируемые политикой, с уровнями доверия |
| crewai-governed | CrewAI | Управление несколькими агентами с политиками на основе ролей |
| smolagents-governed | HuggingFace smolagents | Легковесное управление агентами |
| maf-integration | MAF | Интеграция с Microsoft Agent Framework |
| mcp-trust-verified-server | MCP | Реализация сервера MCP с проверкой доверия |
| cedarling-governed | Cedar/Cedarling | Интеграция механизма политик Janssen Cedarling |
| governance-dashboard | Streamlit | Панель видимости флота в реальном времени |
| Спецификация | Область | Тесты |
|---|
| Agent OS Policy Engine | Оценка политик, слияние правил, семантика закрытия при ошибке | 68 |
| Agent Control Specification | Статичный runtime политик точки вмешательства, вердикты, преобразование, закрытие при ошибке | -- |
| AgentMesh Identity and Trust | Учетные данные, оценка доверия, цепочки делегирования | 135 |
| Agent Hypervisor Execution Control | Кольца привилегий, оркестрация саг, аварийный выключатель | 80 |
| AgentMesh Trust and Coordination | Одноранговое согласование доверия, политика всей сетки | 62 |
| Agent SRE Governance | SLO, бюджеты ошибок, хаос, автоматические выключатели | 111 |
| MCP Security Gateway | Отравление инструментов, обнаружение дрейфа, скрытые инструкции | 127 |
| Agent Lightning Fast-Path | Управление обучением с подкреплением, штрафы за нарушения | 100 |
| Framework Adapter Contract | 10 интеграций адаптеров, цепочка перехватчиков | 152 |
| Audit and Compliance | Аудит Меркла, отображение соответствия, Decision BOM | 157 |
| AgentMesh Wire Protocol | Формат сообщений, маршрутизация, сериализация | -- |
| Стандарт | Охват |
|---|
| OWASP Agentic AI Top 10 | Все категории рисков ASI сопоставлены с детерминированными средствами контроля |
| NIST AI RMF 1.0 | Полное соответствие GOVERN, MAP, MEASURE, MANAGE |
| EU AI Act | Отображение соответствия с автоматическими доказательствами |
| SOC 2 | Отображение средств контроля с экспортом аудиторского следа |
| AARM Extended | Все требования R1–R9 выполнены; проверено 14 июня 2026 г. |
| ATF | Все пять элементов сопоставлены: Agent Mesh (идентификация), Agent OS (политики), Agent Compliance (управление), Agent Runtime (песочница), Agent SRE (реагирование на инциденты) |
| ClusterFuzzLite | 7 целей фаззинга (политики, инъекции, MCP, песочница, доверие) |
| Dependabot | 13 экосистем |
| OpenSSF Scorecard | Еженедельная оценка + загрузка SARIF |
| Категория | Ссылки |
|---|
| Начало работы | Быстрый старт · Учебные пособия (60+) · Часто задаваемые вопросы |
| Архитектура | Проектирование системы · Модель угроз · ADRs (29) |
| Спецификации | Все спецификации (10 формальных спецификаций, 992 теста на соответствие) |
| Справочник API | Agent OS · AgentMesh · Agent SRE |
| Соответствие | OWASP · EU AI Act · NIST AI RMF · SOC 2 · AARM Extended · ATF |
| Развертывание | Azure · AWS · GCP · Docker Compose |
| Расширения | VS Code · Интеграции фреймворков |
| Документ | Назначение |
|---|
| GOVERNANCE.md | Принятие решений, роли, карьерная лестница участников |
| CHARTER.md | Технический устав (формат LF Projects) |
| MAINTAINERS.md | Мейнтейнеры и организации |
| SECURITY.md | Сообщение об уязвимостях и SLA реагирования |
| CODE_OF_CONDUCT.md | Кодекс поведения Microsoft Open Source |
| ANTITRUST.md | Рекомендации по конкурентному праву для участников |
| TRADEMARKS.md | Политика использования товарных знаков |
| Ресурс | Расположение |
|---|
| Исходный код | github.com/microsoft/agent-governance-toolkit |
| Документация | microsoft.github.io/agent-governance-toolkit |
| Пакеты Python | pypi.org/user/agentgovtoolkit |
| Пакеты npm | @microsoft/agent-governance-sdk на npmjs.com |
| Пакеты NuGet | Microsoft.AgentGovernance.* на nuget.org |
| Крейты Rust | agent-governance, agent-governance-mcp на crates.io |