Permit0 CLI
Движок политик для действий ИИ-агента: хук Claude Code оценивает опасность вызова до запуска и пускает, блокирует или ждет решения
- 192 ★ репозитория
- Последний коммит
- Apache-2.0
Расширенный доступ
Почему такой уровень
- Прописывает хук PreToolUse в настройки Claude Code: движок видит параметры каждого вызова инструмента, включая тексты писем
- Демон с панелью на порту 9090 и базой Postgres хранит историю решений и подписывающий ключ ed25519
- Режим unknown: allow или bypass пропускает вызовы без набора правил, поэтому защита зависит от настройки
Установка
- Работает в
Ручная установка
git clone https://github.com/permit0-ai/permit0.gitЗатем в папке проекта: docker compose up -d --build. Панель откроется на порту 9090. Сборка из исходников описана в docs/installation.md и требует Rust 1.85 или новее.
Доступ и проверки
Как мы проверяемРасширенный доступИнструмент запускает код или ходит в сеть, а внешние данные только читает.
- Прописывает хук PreToolUse в настройки Claude Code: движок видит параметры каждого вызова инструмента, включая тексты писем
- Демон с панелью на порту 9090 и базой Postgres хранит историю решений и подписывающий ключ ed25519
- Режим unknown: allow или bypass пропускает вызовы без набора правил, поэтому защита зависит от настройки
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
Permit0 стоит между решением модели и выполнением действия. Каждый вызов инструмента приводится к каноническому действию вроде email.send или payment.transfer, оценивается детерминированно по 9 признакам опасности и 7 усилителям, после чего движок пускает его, блокирует или отправляет человеку. Оценка работает внутри процесса за доли миллисекунды и без сетевых вызовов, одинаковый вход дает одинаковый ответ. К Claude Code движок подключается хуком PreToolUse: команда permit0 hook прописывается в ~/.claude/settings.json, а адрес демона и режим одобрения лежат в ~/.permit0/config.yaml. Вызовы, которые ждут решения, попадают на вкладку Approvals панели на порту 9090. Для OpenClaw есть обертка permit0Skill, она пропускает каждый запуск скилла через тот же демон. Режим --shadow только пишет решения в журнал и ничего не блокирует, удобно сначала понаблюдать. Действие, которое не удалось привести к известному виду, не запускается само: оно уходит в очередь на одобрение. Каждое решение попадает в журнал с подписью ed25519 и цепочкой хешей. В версии 0.1 готов один набор правил, для почты Gmail и Outlook; такие наборы описываются в YAML, и свой можно написать за вечер.
Для кого. Тем, кто дает Claude Code или OpenClaw доступ к почте, базам и платежам и хочет жесткие правила, которые срабатывают до действия, а не после.
Подходит, если
- Агент читает почту через Gmail или Outlook, и письма наружу должны проходить ваше одобрение
- Нужна воспроизводимая оценка опасности действий и подписанный журнал решений для аудита
- Вы пишете свой набор правил для Slack, Notion или Stripe и хотите общий словарь действий
- Перед включением блокировок стоит неделю понаблюдать за агентом в режиме --shadow
- Агента не пускают к настоящей работе: в Claude Code нет жесткого разрешения, которое гарантированно исполняется
Не подходит, если
- Опасность в самом тексте ответа, например в выдуманных советах: без вызова инструмента перехватывать нечего
- Инструмент агента не проходит через permit0 hook или шлюз: такие вызовы движок не видит
- Нужен готовый бинарник одной командой: сейчас движок собирается из исходников на Rust или поднимается через Docker
- Для вашего инструмента нет набора правил, а писать его некому: действия без набора копятся в очереди на одобрение
Пример запроса к агенту
Подключи Permit0 к Claude Code в режиме --shadow и покажи на панели, какие вызовы почты он счел бы опаснымиОграничения
- Готов один набор правил, для электронной почты (Gmail и Outlook). Наборы для Slack, Notion, Linear, Stripe, Postgres, Bash и GitHub числятся в планах. Вызовы без набора по умолчанию отправляются на ручное одобрение.
- Собранных бинарников нет: нужен Rust 1.85 или новее либо Docker. Хук-бинарник из образа копируется вручную.
- Движок видит только вызовы, которые идут через permit0 hook или шлюз. Подпроцессы со своими сетевыми запросами и инструменты вне фреймворка агента остаются невидимыми.
- Версия 0.1, последний коммит в репозитории датирован июнем 2026. Интеграции есть только для Claude Code и OpenClaw.
Как отключить. Уберите блок PreToolUse с командой permit0 hook из ~/.claude/settings.json и остановите контейнеры командой docker compose down в папке проекта. Файл ~/.permit0/config.yaml можно удалить.
Частые вопросы
Чем Permit0 отличается от OPA или Cedar?
OPA и Cedar описывают политики на своем языке. Permit0 поставляется готовым движком: он перехватывает вызов, приводит его к каноническому действию и оценивает опасность. В версии 0.1 в комплекте словарь из 22 областей и 159 глаголов действий.
Как подключить Permit0 к Claude Code?
Добавьте в ~/.claude/settings.json хук PreToolUse с командой permit0 hook, а в ~/.permit0/config.yaml укажите адрес демона. Решения по опасным вызовам тогда появятся на вкладке Approvals панели на порту 9090.
Что происходит с инструментом, для которого нет правил?
Он не запускается молча. Неизвестное действие уходит на ручное одобрение. Параметр unknown в config.yaml переключает поведение: bypass, ask, allow или deny.
Можно ли сначала только наблюдать, не блокируя ничего?
Да. Команда permit0 hook --shadow или переменная PERMIT0_SHADOW=1 пишут решения в журнал, но вызовы не останавливают.
Нужен ли интернет для работы движка?
Нет. По умолчанию хватает SQLite и памяти, детерминированная оценка не делает сетевых вызовов. Разбор спорных случаев языковой моделью необязателен, его можно отключить.
Обсуждение
Вопросов и отзывов пока нет.
Похожие
CLI-инструментыПлагин и сервер подтверждений для Claude Code и Codex: опасный вызов инструмента ждет вашего решения до запуска
Экран для действий агентов: решает ALLOW, DENY или ESCALATE и пишет подписанную квитанцию, которую можно проверить позже.
Защита ИИ-агента на пути выполнения: каждый вызов инструмента получает вердикт PASS, AUTH или BLOCK до запуска
Vigils стоит между ИИ-агентом и его инструментами: скрывает секреты, спрашивает разрешения и пишет неизменяемый журнал вызовов
Claude Hooks (Prompt Injection Defender)
Claude Hooks
Хук для Claude Code проверяет вывод файлов, веб-страниц и команд на скрытые инструкции и предупреждает агента
Движок авторизации для агентов: каждое действие получает ответ allow, deny, human_review или compute, решения пишутся в журнал
Сравнение с похожими
Карточки с тем же главным запросом: чем они отличаются.
| Инструмент | Официальный | Звезды репозитория | Главное отличие |
|---|---|---|---|
| Permit0 (эта карточка) | нет | 192 | |
| HOL Guard | да | 1 094 | проверяет команды и пакеты в нескольких агентах, у Permit0 свой словарь действий и оценка опасности по 9 признакам |
| CC Safety Net | нет | 2 014 | блокирует только разрушительные команды Git и файловой системы, без оценки опасности писем и платежей |
Коротко о README
README открывается обещанием жесткой границы между решением модели и действием, затем идет пятиминутная настройка Claude Code с почтой Gmail и Outlook. Дальше сравнение с Microsoft AGT, Lakera и Langfuse, объяснение словаря действий, схема из восьми шагов и раздел об ограничениях. В конце описано, как написать свой набор правил.