Skip to content

Latest commit

 

History

History
180 lines (136 loc) · 10.3 KB

File metadata and controls

180 lines (136 loc) · 10.3 KB

⚠️ This is an auto-generated translation. For the latest version, see the English README. Community corrections welcome!

🇺🇸 English | 🇨🇳 简体中文 | 🇯🇵 日本語 | 🇰🇷 한국어 | 🇪🇸 Español | 🇧🇷 Português | 🇩🇪 Deutsch | 🇫🇷 Français | 🇷🇺 Русский | 🇮🇳 हिन्दी | 🇹🇷 Türkçe | 🇻🇳 Tiếng Việt | 🇮🇹 Italiano | 🇸🇦 العربية | 🇮🇱 עברית


failproof ai

npm CI Supply Chain Slack Docs License

Переводы: 简体中文 · 日本語 · 한국어 · Español · Português · Deutsch · Français · Русский · हिन्दी · Türkçe · Tiếng Việt · Italiano · العربية · עברית

Разрешение ошибок выполнения для кодирующих агентов. Интегрируется в Claude Code и Codex. Отловливает зависания, опасные действия и утечки секретов до того, как они станут инцидентами. Нулевая задержка. Работает локально.

Failproof AI in action


Поддерживаемые CLI агентов

Claude Code        OpenAI Codex        GitHub Copilot        Cursor Agent

OpenCode        Pi        Gemini CLI

Установите хуки для одного или любой комбинации: failproofai policies --install --cli opencode pi gemini (или --cli claude codex copilot cursor opencode pi gemini). Пропустите --cli для автоопределения установленных CLI и запроса.


Установка

npm install -g failproofai
failproofai policies --install   # или просто запустите `failproofai` и подтвердите первый запуск
failproofai

30 встроенных политик активируются немедленно. Панель управления на localhost:8020. Отключите подсказку при первом запуске с FAILPROOFAI_NO_FIRST_RUN=1.


Что это блокирует

Политика Что блокируется
block-push-master Прямые отправки в main / master
block-force-push git push --force
block-work-on-main Коммиты, слияния, переводы базы на main / master
block-rm-rf Рекурсивное удаление файлов
sanitize-api-keys Утечки ключей API в контекст агента

Все 30 встроенных политик


Ваши собственные политики

Поместите файл в .failproofai/policies/ — он загружается автоматически, никаких флагов не требуется. Закоммитьте его, и вся команда получит его при следующем пуле.

import { customPolicies, deny, allow } from "failproofai";

customPolicies.add({
  name: "no-production-writes",
  match: { events: ["PreToolUse"] },
  fn: async (ctx) => {
    if (ctx.toolInput?.file_path?.includes("production"))
      return deny("Writes to production paths are blocked.");
    return allow();
  },
});

Три решения доступны каждой политике:

Решение Эффект
allow() Разрешить операцию
deny(message) Заблокировать её — сообщение передается обратно агенту
instruct(message) Пропустить, но добавить контекст в следующий запрос агента

Руководство по пользовательским политикам


Видимость сессии

Каждый вызов инструмента, который делает ваш агент, логируется локально. Панель управления показывает, что работало, что было заблокировано и что политика сообщила агенту — так что вы не гадаете, когда что-то идет не так. → Руководство по панели управления


Документация

Начало работы Установка и первые шаги
Встроенные политики Все 30 политик с параметрами
Пользовательские политики Напишите свои
Конфигурация Области конфигурации и правила слияния
Панель управления Монитор сессии и активность политик
Архитектура Как работает система хуков

Лицензия

MIT с Commons Clause — бесплатно для внутреннего и личного использования; коммерческая перепродажа самого failproofai требует отдельного соглашения. Полный текст см. в LICENSE.


Участие в разработке

См. CONTRIBUTING.md. Приветствуются новые политики, граничные случаи и переводы.

Соберите перед началом. Сначала запустите bun install && bun run build. Этот репозиторий запускает собственные хуки failproofai на себе, и они разрешают импорт failproofai против скомпилированного бандла dist/ — без сборки вы получите ошибки хука Cannot find package 'failproofai'. Пересоберите после изменения src/. См. Build before the in-repo dev hooks will work.


Создано Nivedit Jain и Nikita Agarwal. befailproof.ai