Перейти к основному содержанию

title: Панель управления description: “Мониторинг сеансов агентов, просмотр вызовов инструментов и управление политиками” icon: chart-line

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

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

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

Страницы

Проекты

Выводит список всех проектов Claude Code, OpenAI Codex, GitHub Copilot CLI (beta), Cursor Agent (beta), OpenCode (beta), Pi (beta) и Gemini CLI (beta), найденных на вашем компьютере. Проекты 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 выше таблицы для фильтрации по определённому агенту 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, с его входными и выходными данными
  • Действие политик — для каждого вызова инструмента показано, какие политики сработали и какое решение они вернули
Панель статистики в верхней части показывает длительность сеанса, общее количество вызовов инструментов и сводку решений по хукам (количество allow / deny / instruct). Нажмите кнопку Download Logs для экспорта сеанса. Для сеансов Claude Code, Codex, Copilot, Cursor, Pi и Gemini вы получите оригинальную расшифровку JSONL с диска в байт-в-байт; для OpenCode (сеансы которого хранятся в SQLite, а не на диске) вы получите JSON-документ, зеркалирующий таблицы session / messages / parts.

Политики

Двухвкладочная страница для управления политиками и просмотра активности.
  • Мультиселект для выбора, какие 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.

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

По умолчанию панель управления читает из стандартного каталога проектов 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 и нет проблемы с кросс-доменным доступом к ресурсам разработки.