Перейти к основному содержанию
Панель управления failproofai — это локальное веб-приложение для мониторинга сеансов ваших AI-агентов и управления политиками. Смотрите, что делали ваши агенты в ваше отсутствие.

Запуск панели управления

failproofai
Открывается по адресу http://localhost:8020. Панель управления читает данные напрямую из файловой системы — из папок проектов Claude Code и конфигурационных файлов failproofai. Ничего не отправляется на удалённый сервис.

Страницы

Проекты

Отображает все проекты Claude Code, OpenAI Codex, GitHub Copilot CLI (бета), Cursor Agent (бета), OpenCode (бета), Pi (бета) и Gemini CLI (бета), найденные на вашей машине. Проекты Claude обнаруживаются из ~/.claude/projects/ (или пути, указанного в CLAUDE_PROJECTS_PATH); проекты Codex обнаруживаются путём сканирования всех транскриптов в ~/.codex/sessions/<YYYY>/<MM>/<DD>/*.jsonl и группировки по cwd из первой записи каждого сеанса; проекты Copilot CLI обнаруживаются путём сканирования каждого файла ~/.copilot/session-state/<sessionId>/workspace.yaml (настраивается через COPILOT_HOME) и группировки по полю cwd; проекты Cursor Agent обнаруживаются путём сканирования метаданных сеанса в ~/.cursor/agent-sessions/<sessionId>/ (настраивается через CURSOR_HOME, с предварительной проверкой conversations/ и sessions/) в поиске скалярного значения cwd в meta.json / session.json / workspace.yaml; проекты OpenCode обнаруживаются путём запроса к базе данных SQLite в ~/.local/share/opencode/opencode.db через opencode db --format json (читаются таблицы session и project и группировка по project_id); проекты Pi обнаруживаются путём сканирования транскриптов JSONL по сеансам в ~/.pi/agent/sessions/<encoded-cwd>/<timestamp>_<uuid>.jsonl (настраивается через PI_SESSIONS_DIR) и извлечением cwd из первой записи каждого сеанса; проекты Gemini CLI обнаруживаются путём сканирования ~/.gemini/tmp/<basename>/chats/session-<timestamp>-<uuid-prefix>.jsonl (настраивается через GEMINI_SESSIONS_DIR) и восстановления канонического пути cwd из соседнего текстового маркера .project_root. Проект, использовавшийся несколькими CLI, отображается в виде одной строки со всеми соответствующими значками. Используйте выпадающий список CLI над таблицей для фильтрации по конкретному агенту; URL сохраняет ваш выбор как ?cli=claude|codex|copilot|cursor|opencode|pi|gemini. Каждый проект показывает:
  • Имя проекта (по пути к папке)
  • Значок CLI — Claude Code (оранжевый), OpenAI Codex (фиолетовый), GitHub Copilot (синий), Cursor Agent (изумрудный), OpenCode (янтарный), Pi (розовый) и/или Gemini CLI (голубой)
  • Дату последней активности сеанса
Нажмите на проект, чтобы увидеть его сеансы.

Сеансы

Отображает все сеансы в проекте. Каждый сеанс показывает:
  • ID сеанса
  • Временные метки начала и окончания
  • Количество вызовов инструментов
  • Счётчик активности хуков (срабатывания политик)
Используйте фильтр по диапазону дат и поиск по ID сеанса для сужения списка. Сеансы разбиты на страницы. Нажмите на сеанс, чтобы открыть просмотрщик сеанса.

Просмотрщик сеанса

Просмотрщик сеанса отвечает на ключевой вопрос для автономных агентов: что делал агент и оставался ли он на курсе? Значок CLI рядом с заголовком указывает, является ли сеанс транскриптом Claude Code, OpenAI Codex, GitHub Copilot CLI, Cursor Agent, OpenCode, Pi или Gemini CLI. Отображает временную шкалу всего, что произошло в сеансе:
  • Сообщения — текстовые ответы Claude и подсказки пользователя
  • Вызовы инструментов — каждый инструмент, вызванный Claude, с его вводом и выводом
  • Активность политик — для каждого вызова инструмента показывает, какие политики сработали и какое решение они вернули
Панель статистики вверху показывает продолжительность сеанса, общее количество вызовов инструментов и сводку по решениям хуков (количество разрешений / отказов / инструкций). Нажмите кнопку Download Logs для экспорта сеанса. Для сеансов Claude Code, Codex, Copilot, Cursor, Pi и Gemini вы получаете исходный транскрипт JSONL с диска без изменений; для OpenCode (чьи сеансы хранятся в SQLite, а не на диске) вы получаете JSON-документ, отражающий базовые таблицы session / messages / parts.

Аудит

Персонализированный отчёт о том, как ваш агент на самом деле вёл себя на протяжении прошлых сеансов. Запускает то же сканирование, что и CLI failproofai audit, но отображает его как панель управления с шестью разделами:
  1. Идентичность — классифицирует ваш агент в один из 8 архетипов (the optimist, the cowboy, the explorer, the goldfish, the paranoid architect, the precision builder, the hammer, the ghost) на основе того, какие детекторы и политики сработали и как интенсивно. Отображает сигил размером 8×8 пикселей, девиз архетипа, фреймворк «common in» / «primary risk» и заключительную однострочную фразу.
  2. Покажите своего агента — фиксирует карту идентичности как PNG размером 1200×630, подходящее для публикации в X / LinkedIn (нажмите make poster).
  3. Сильные стороны — галочками отмечены правильные поведения вашего агента, полученные из живых данных аудита (чистая частота вызовов инструментов, средняя продолжительность сеанса, ноль утечек учётных данных, ноль бурь повторных попыток и т. д.).
  4. Оценка + таблица лидеров — оценка 0–100 с буквенной оценкой (S/A/B/C/D/F), гистограмма распределения, показывающая ваше положение в когорте, описание («B начинается с 71. Вы в 13 пунктах от…») и таблица лидеров с выделенной вашей строкой.
  5. Выводы — карточки выводов, отсортированные по влиянию. Каждая карточка показывает, что произошло, какова цена, пример доказательства с реальными захваченными командами и политику failproofai, которая поймает тот же паттерн ($ failproof policy add <slug>, нажмите для копирования).
  6. Рекомендуемые политики и цикл возврата — сетка всех неактивированных встроенных политик, которые закроют пробел, с выноской прогнозируемой оценки, плюс CTA «re-audit in 7 days».
Управляется средой выполнения failproofai audit — см. Audit CLI для основной системы сканирования, поддерживаемых флагов и инвариантов кэша для каждого транскрипта. Панель управления кэширует последний результат в ~/.failproofai/audit-dashboard.json (режим 0600, один слот, новые запуски перезаписывают) чтобы повторные посещения были мгновенными; нажатие [ Re-run ↻ ] отправляет POST в /api/audit/run и панель опрашивает /api/audit/status с частотой 1 Гц до завершения запуска. Пустое состояние (нет кэша) и состояние нулевых сеансов (кэш существует, но сканирование не нашло транскриптов) отображаются отдельно.

Политики

Двухвкладочная страница для управления политиками и просмотра активности.
  • Выберите несколько агентских CLI, которые failproofai защищает из одной панели — Claude Code, OpenAI Codex, GitHub Copilot, Cursor Agent, OpenCode, Pi и Gemini CLI имеют строку со статусом установки (Active / Detected / Inactive), путём настроек пользовательской области и цветным акцентом бренда. Установите или снимите флажки для CLI, которые вы хотите, и нажмите Apply changes для установки/удаления различий в один шаг. CLI, бинарный файл которых обнаружен в PATH, предварительно отмечены.
  • Включайте или отключайте отдельные политики одним щелчком (записи в ~/.failproofai/policies-config.json — общего для каждого установленного CLI)
  • Разверните политику для настройки её параметров (для политик, поддерживающих policyParams)
  • Установите пользовательский путь к файлу политик

Автоматическое обновление

Панель управления имеет переключатель автоматического обновления в верхней навигации. При включении текущая страница периодически обновляется для отображения новых сеансов и активности политик по мере их появления. Незаменимо для мониторинга долгоживущих сеансов автономных агентов.

Отключение страниц

Если вам нужны только некоторые части панели управления, установите FAILPROOFAI_DISABLE_PAGES в список имён страниц, разделённый запятыми:
FAILPROOFAI_DISABLE_PAGES=policies failproofai
Допустимые значения: policies, projects, audit.

Настройка пути к проектам

По умолчанию панель управления читает из стандартного каталога проектов Claude Code. Переопределите его для пользовательских конфигураций:
CLAUDE_PROJECTS_PATH=/custom/path/to/projects failproofai

Доступ с хоста, отличного от localhost

При запуске панели управления в режиме разработки (npm run dev) и доступе к ней с имени хоста, отличного от localhost — например, пользовательского домена, удалённого IP или туннелированного URL — вы можете увидеть предупреждение типа:
⚠ Blocked cross-origin request to Next.js dev resource /_next/webpack-hmr from "dashboard.example.com".
Это Next.js блокирует кросс-доменный доступ к своему вебсокету HMR (горячей перезагрузки модулей), который является функцией только для разработки. Чтобы разрешить ваш хост, используйте флаг --allowed-origins:
npm run dev -- --allowed-origins dashboard.example.com
Для нескольких хостов или IP-адресов передайте список, разделённый запятыми:
npm run dev -- --allowed-origins dashboard.example.com,192.168.1.5
Вы также можете вместо этого установить переменную окружения FAILPROOFAI_ALLOWED_DEV_ORIGINS:
FAILPROOFAI_ALLOWED_DEV_ORIGINS=dashboard.example.com npm run dev
Это применяется только в режиме разработки. При запуске failproofai (режим производства) нет вебсокета HMR и нет проблемы с кросс-доменным доступом к ресурсам разработки.