agent-governance
agent-governance — практический скилл для проектирования ограничений и проверок в системах с AI-агентами, которые вызывают внешние инструменты. Его центральная идея — не ждать, пока опасный результат появится после выполнения, а поставить управляемую цепочку перед действием: классификация намерения, проверка политики, вызов инструмента и запись аудита. Такой подход полезен для агентов, работающих с API, базами данных, файловыми системами и другими операциями, где важно заранее определить допустимый предел. В исходном материале политика представлена как декларативный сериализуемый объект. В ней можно описать разрешённые инструменты, запрещённые инструменты, шаблоны содержимого, ограничение числа вызовов за запрос и операции, требующие одобрения человека. Проверка инструмента сначала учитывает явный blocklist, затем необходимость ручного review, а затем allowlist, если он задан. Это даёт понятный порядок решений: запрещённое действие не становится разрешённым только потому, что оно присутствует в более общем списке. Политики можно накладывать слоями — например, организационное правило, правило команды и ограничение конкретного агента — с принципом most-restrictive-wins. Отдельный раздел посвящён классификации опасного намерения до передачи запроса агенту. Сигналы группируются по категориям, среди которых встречаются эксфильтрация данных, повышение привилегий, разрушительные изменения и prompt injection. Для каждого сигнала хранятся категория, уверенность и наблюдаемое свидетельство; итоговая проверка может отклонять содержание, если уверенность достигает заданного порога. Это не замена полноценной модели угроз, но воспроизводимый pre-flight слой, который помогает обнаружить запросы вроде передачи всей выборки наружу, запуска действий от root или удаления базы. Скилл также показывает tool-level governance через декоратор вокруг функции инструмента. Обёртка получает имя вызываемой функции, проверяет allowlist и blocklist, возвращает отказ для действия без разрешения или требующего одобрения, а затем контролирует лимит вызовов. В проекте отдельно подчёркнута роль audit trail: для каждой операции важно сохранять не только финальный ответ, но и принятое решение, сработавшее правило и контекст вызова. Это облегчает разбор инцидента и позволяет отличить запрещённое действие от временной ошибки внешнего сервиса. Практически материал подходит для построения базовой governance-модели вокруг любого из перечисленных в источнике агентных фреймворков, но сам по себе не выбирает конкретную архитектуру хранения политик или журналов. При внедрении нужно определить владельца правил, порядок обновления allowlist, срок хранения аудита, способ ручного review и поведение при недоступном классификаторе. Нельзя считать один regex или один порог доказательством безопасности: их следует проверять на реальных сценариях, дополнять контролями доступа и отдельно тестировать операции с побочными эффектами.
Для чего подходит
- Формирование governance-политики агента
- Определение trust scoring и tool restrictions
- Проектирование audit trail для agent workflows
Установка
Сначала прочитайте SKILL.md и scripts в исходном репозитории. Затем выполните команду в каталоге проекта:
npx skills add https://github.com/github/awesome-copilot/tree/main/skills/agent-governance