
nah v1.4.0
защитный механизм, блокирующий катастрофические действия агента
дорогие ошибки заканчиваются здесь
защита, блокирующая катастрофические действия агента
nahguard.ai • что он блокирует • с чем сравнивается • как он решает • установка • расширение • модель угроз
claude code · codex · cursor · pi · + ещё 11
nah — это защита, которая находится в пути хуков вашего кодирующего агента и читает вызовы инструментов до их выполнения. Она блокирует вызовы, которые может доказать как катастрофические, и никогда ничего не одобряет: всё остальное передаётся обычным разрешениям вашей среды выполнения.
nah — это всего лишь один бинарный файл на Rust: вердикт детерминирован и не требует LLM. Расширения — это просто программы. Укажите вашему агенту на документацию nah и попросите его создать пользовательскую защиту nah.
Он узнаёт катастрофу, когда видит её.
48 защит, 30 включены по умолчанию, охватывающих восемь классов катастроф: перехваты выполнения, кража секретов, уничтожение файловой системы, git-катастрофы, разрушение инфраструктуры, хранилищ и резервных копий, сетевой доступ к похожим хостам, операции с реестрами пакетов и действия по отключению питания и остановке служб хоста.
| Защита | Блокирует |
|---|---|
exec-remote | Выполнение полезной нагрузки, явно полученной из сети. |
exec-decoded | Выполнение, достигнутое из видимой стадии декодирования. |
exec-obfuscated | Закодированное, выбранное по шаблону или неразрешённое выполнение, а также скрытые символы в командах. |
exec-network-shell | Оболочки, привязанные к сетевому соединению, включая netcat, socat и перенаправление оболочки. |
secrets-env | Чтение файлов .env и чувствительных базовых имён, включая содержимое из истории Git, а также прямой вывод каталогизированных переменных окружения с учётными данными. |
secrets-credentials | Чтение или запись путей к приватным ключам и хранилищам учётных данных, включая чтение содержимого из истории Git; удаление или перемещение приватных ключей; чтение метаданных или значений связки ключей macOS. |
secrets-exfil | Видимый поток от чувствительного источника к сетевой стадии. |
secrets-store-delete | Оставшееся проверенное удаление хранилища секретов с восстановимой или зависящей от контекста семантикой. По умолчанию выключено. |
secrets-store-destroy | Доказанное необратимое уничтожение хранилища секретов: удаление версии/метаданных/движка Vault, принудительное удаление AWS и SSM, удаление всего секрета Google, очистка Azure, удаление проекта/конфигурации Doppler и удаление хранилища 1Password. |
secrets-store-read | Проверенное чтение значений через распространённые CLI менеджеров секретов. |
fs-system-tree | Удаление, доказанное перемещение корневой записи, рекурсивное изменение разрешений или перезапись каждого файла с выбором корня файловой системы или системного дерева. |
fs-home | Удаление, рекурсивное изменение разрешений или перезапись каждого файла с выбором корня домашнего каталога. |
fs-outside-workspace-delete | Рекурсивное удаление за пределами активного проекта, кроме проверенных временных корней. По умолчанию выключено. |
fs-permission-weaken | Режимы chmod, которые доказуемо предоставляют разрешение на запись всем или разрешение setuid/setgid. По умолчанию выключено. |
fs-project-root | Конкретное рекурсивное удаление в области проекта, известные рекурсивные изменения разрешений или перезапись каждого файла с выбором точного корня проекта или его точных корневых шаблонов *, .* или {*,.*}. find -delete без явного начального пути не имеет смоделированной цели. |
fs-raw-device | Видимые записи в необработанные устройства хранения и уничтожение всего устройства, а также триггер sysrq. |
fs-volume-destroy | Определённое уничтожение логического тома, пула хранения и активного набора данных ZFS. |
fs-forkbomb | Структурно распознанные шаблоны форк-бомб в оболочке. |
fs-auth-identity | Изменение или удаление проверенных файлов аутентификации, идентичности и политики привилегий хоста, включая рекурсивное удаление их родительских каталогов. |
fs-shell-profile | Изменения проверенных путей профиля оболочки пользователя. По умолчанию выключено. |
fs-startup-management | Проверенные команды постоянного управления systemctl, launchctl и crontab. По умолчанию выключено. |
fs-startup-persistence | Изменения проверенных путей запуска служб, расписаний, входа в систему, автозапуска и загрузчика. |
git-clean-force | Эффективная принудительная очистка Git с выбором корня проекта. |
git-force-push | Принудительные push-и Git без защиты арендой и push-и с арендой, явно нацеленные на main или master. |
git-hard-reset | Жёсткие сбросы Git. |
git-history-rewrite | Выбранные непринудительные перезаписи истории Git, включая rebase, фильтрацию, истечение срока восстановления, агрессивную или очищающую сборку мусора и push-и с арендой, включая явные статические refspec, нацеленные на main или master. По умолчанию выключено. |
git-rewrite-force | Перезапись истории, которая явно обходит проверки безопасности или резервного копирования. |
git-metadata | Деструктивные записи или удаление с выбором долговечных метаданных истории Git. |
git-path-discard | Определённая перезапись при checkout, restore и git show по одному и тому же пути. По умолчанию выключено. |
git-protected-push | Push-и, чей явный статический refspec нацелен на main или master. Пустые push-и остаются вне этой защиты. По умолчанию выключено. |
git-recovery-destroy | Очистка всей коллекции stash или немедленное уничтожение истории восстановления Git в масштабе всего репозитория. |
git-ref-delete | Проверенное удаление локальных и удалённых ref, записей stash, рабочих деревьев и рабочих деревьев подмодулей. По умолчанию выключено. |
git-remote-repo-delete | Точное удаление всего репозитория GitHub и GitLab через их CLI и REST-маршруты. |
git-remote-resource-delete | Статически нацеленное удаление размещённых ресурсов GitHub и GitLab через проверенные команды CLI и REST-маршруты. По умолчанию выключено. |
git-worktree-discard | Общепроектный checkout или restore, доказанные принудительные изменения веток и принудительное удаление рабочего дерева или деинициализация подмодуля. |
db-destroy | Удаление, усечение, очистка, сброс или перезапись данных живой базы данных, а также удаление управляемых баз данных. По умолчанию выключено. |
infra-container-reset | Команды Podman, которые сбрасывают полное локальное или выбранное состояние среды выполнения. |
infra-container-volume-delete | Широкая очистка неиспользуемых томов через проверенные команды prune Docker и Podman, а также удаление томов Compose down -v/rm -v. По умолчанию выключено. |
infra-iac-destroy | Полностью видимое уничтожение всего стека Terraform, OpenTofu и Pulumi, а также проверенное удаление подготовленных облачных и размещённых платформенных ресурсов через CLI aws, gcloud, az, Railway, Modal, Kamal, Wrangler, Fastly, Supabase и управляемых баз данных. По умолчанию выключено. |
infra-k8s-delete | Статическое удаление пространства имён, проверенных ресурсов кластера и массовое удаление проверенных ресурсов с пространствами имён через kubectl. По умолчанию выключено. |