sipyourdrink-ltd/bernstein

Аудит-уровень оркестрации мультиагентных систем для CLI-кодинга (Claude Code, Codex, Gemini CLI, +40 других). HMAC-цепочка аудиторского лога, подписанные карточки агентов, прослеживаемость артефактов, air-gap деплой. Оркестратор, который одобрит ваша команда комплаенса. https://bernstein.run

Агенты⭐ 1 227Pythonпоследний релиз: v3.20.0
Открыть на GitHub ↗Сайт проекта ↗

Что это за инструмент

Bernstein — это детерминированный оркестратор для CLI-агентов (Claude Code, Codex, Gemini CLI и др.), обеспечивающий параллельное выполнение задач с независимыми git worktree и криптографически защищённым журналом аудита.

Зачем нужен

Инструмент решает проблему недетерминированности и конфликтов при одновременной работе нескольких AI-агентов над кодом, а также обеспечивает полную прослеживаемость действий для соответствия требованиям комплаенса. Он позволяет планировать, запускать и верифицировать действия агентов с гарантией того, что каждое решение задокументировано и не может быть изменено.

Что можно реализовать

  • Параллельная разработка с использованием 3+ CLI coding agents с изоляцией изменений через git worktree
  • Аудит действий AI-агентов в регулируемых средах с использованием HMAC-signed audit log
  • Воспроизведение предыдущих планов выполнения задач для анализа эффективности и стоимости
  • Безопасное развертывание в air-gap окружениях без передачи данных в сторонние SaaS

Ключевые возможности

  • 44 адаптера для CLI-агентов с поддержкой параллельного запуска
  • HMAC-SHA256 audit chain для каждого шага планирования
  • Signed agent cards с использованием Ed25519/EdDSA
  • Per-artefact lineage с отслеживанием каждого изменения файла
  • Детерминированный планировщик на чистом Python без LLM в цикле координации

👤 Кому подойдёт: Инженерные команды, работающие с несколькими AI-агентами одновременно; операторы compliance-sensitive рабочих процессов; platform-команды, требующие детального аудита решений AI; разработчики, тратящие более $1k/мес на A

Релизы

v3.20.0majorbreaking
🕐 22 ч назад · релиз на GitHub ↗

v3.20.0: проверяемые отчёты оркестратора, экспорт OSCAL для аудиторов, скоринг запусков и усиление безопасности.

  • Added: Появился экспорт NIST OSCAL v1.1.0 и верификация аудиторских логов через цепочку HMAC и подписей.
  • Added: Введён Scorecard — сводка запуска с шестью разделами, где каждое поле привязано к конкретным записям журнала.
  • Breaking: Адаптеры теперь обязаны декларировать вендора модели; запуски без явного вендора отклоняются экспортом.
  • Added: Запуски с несколькими воркерами теперь разбиваются на отдельные Trust Record для каждого шага.
  • Fixed: Исправлено поведение при отказе от задачи: теперь она помечается как abstained, а не считается ошибкой.
  • Fixed: Усилен контроль безопасности: закрытые ключи добавлены в gitignore, а недоверенные значения экранируются в логах.
v3.19.2majorbreaking
🕐 11 дн назад · релиз на GitHub ↗

Исправлена критическая уязвимость GHSA-594x-5h3g-wj34 в audit verify, усилены гарантии верификации, идентичности агентов и временных меток.

  • Fixed: Исправлена уязвимость GHSA-594x-5h3g-wj34: команда audit verify больше не скрывает критические находки под зелёным статусом.
  • Breaking: Изменена логика верификации: теперь наличие находки означает отказ, а результаты содержат структурированную информацию о доверии и покрытии.
  • Added: Унифицирована идентификация агентов: единый тип и пространство имён, обязательные чеки делегирования и проверка границ разрешений.
  • Added: Добавлены криптографические гарантии: привязка к внешним временным меткам RFC 3161 и подписанные аттестаты изоляции среды.
  • Added: Улучшена отладка конфигурации: команда config explain показывает происхождение каждого значения, а защита от утечек учитывает реальные форматы токенов.
v3.19.1majorbreaking
🕐 18 дн назад · релиз на GitHub ↗

Bernstein v3.19.1: новая система управления ИИ-агентами с верифицируемыми журналами, безопасным хранением секретов и аудитом.

  • Breaking: Изменена логика одобрения: таймауты теперь считаются отклонениями (timed_out), а не утверждениями.
  • Added: Секреты больше не хранятся в Bernstein; система выдает краткосрочные учетные данные, записывая метаданные.
  • Added: Внедрена система управления идентичностью агентов через SCIM 2.0 с HMAC-цепочками жизненного цикла.
  • Added: Добавлен CLI `bernstein govern` для аудита, проверки соответствия и инвентаризации рабочих нагрузок.
  • Added: Обеспечена независимая верификация отчетов через ротацию ключей, подписанные цепочки событий и внешние временные метки.
v3.19.0majorbreaking
🕐 20 дн назад · релиз на GitHub ↗

Bernstein v3.19.0: новый слой управления ИИ, адаптер HolmesGPT, строгая валидация тестов и RFC 8785.

  • Added: Проект позиционируется как open-source слой управления (governance layer) для ИИ-агентов, а не только как оркестратор.
  • Added: Добавлен адаптер HolmesGPT, связывающий источники данных расследования с выводами.
  • Added: Доверительные записи достигли соответствия TRACE 0.2 с использованием канонической формы RFC 8785.
  • Added: Введены подписанные чеки выполнения (run-graph receipts) и детерминированный адаптер gitleaks.
  • Fixed: CI теперь падает, если модули тестов не содержат тестовых случаев, а сборка сбалансирована по времени.
  • Breaking: Доверительные записи с не-ASCII символами требуют переиздания или фиксации версии читателя.
v3.18.2minor
🕐 24 дн назад · релиз на GitHub ↗

Добавлены криптографические чеки TRACE 0.2, исправлены гонки в роении и стабильность планировщика, улучшена работа с PR.

  • Added: Появились подписанные TRACE 0.2 Trust Records с верификацией без сети и контент-адресными аудит-сегментами.
  • Fixed: Исправлены гонки в роении: чекпоинты миграций, повторное использование чанков и корректное завершение упавшего планирования.
  • Fixed: Команда `bernstein pr` теперь корректно сообщает об ошибках git и формирует описание относительно базовой ветки.
  • Added: Адаптер goose передает используемую модель, а плагин aider пишет логи аналитики для каждого спавна.
  • Fixed: Устранены сбои CI-гейтов (ruff, статусные проверки) и удалены мертвые модули с документацией.
v3.18.1minor
🕐 25 дн назад · релиз на GitHub ↗

Релиз v3.18.1: CLI-ревью с автофиксом, аудит SLA, защита от флейков и новые артефакты.

  • Added: Команда bernstein review --pipeline теперь запускает полный цикл: ожидание проверок, ревью диффа, автофикс до зелёного статуса и подпись чеков.
  • Added: Аттестация нарушений SLA теперь происходит один раз, а не при каждом тике монитора, что устраняет спам идентичными чеками.
  • Added: Добавлен тип артефакта blob для сырых байтов и поддержка SARIF-находок в схеме MCP.
  • Fixed: Исправлены проблемы с CI: отмена зависания PR из-за фильтрации путей, отказ от задач без сигналов завершения и защита от структурных нарушений в core/tokens.
  • Fixed: Возвращена работающая опция отключения аутентификации на уровне конфигурации и улучшена честность проверки артефактов при отсутствии ключа аудита.
v3.18.0majorbreaking
🕐 27 дн назад · релиз на GitHub ↗

В Bernstein v3.18.0 усилены проверки безопасности: изоляция плагинов, верификация планов и запуск гейтов перед слиянием.

  • Breaking: Исправлена уязвимость в установке плагинов: теперь пути разрешаются строго внутри пакета, предотвращая выход за пределы изоляции.
  • Breaking: Внедрена привязка утверждения плана к его хэшу: при изменении рендеринга система возвращает ошибку 409, предотвращая рассинхрон.
  • Fixed: Исправлено слияние веток: теперь обязательные гейты качества запускаются перед коммитом слияния, а не пропускаются.
  • Added: Команда `bernstein runs report` теперь выводит сводку по завершённым запускам с указанием статуса и доказательств классификации.
  • Fixed: Переопределения конфигурации больше не записываются в отслеживаемый файл, а применяются через незарегистрированный оверлей.
v3.17.2patch
🕐 28 дн назад · релиз на GitHub ↗

Исправления в проверке целостности запусков, безопасности и обработке ошибок моделей.

  • Fixed: Чек-листы (receipts) теперь содержат вердикт, а контекст спавна хэшируется по частям для точной аудиторской проверки.
  • Fixed: Исправлены ложные статусы успешности, проблемы с блокировками git и некорректная обработка 429 ошибок от моделей.
  • Added: Введен лимит размера системного промпта с предупреждением при превышении доли контекстного окна модели.
  • Fixed: Запрещены запросы к внутренним хостам в каталогах навыков и MCP, а также улучшена проверка прав доступа при возобновлении.
  • Fixed: Запуски с persistent-агентами теперь помечаются как unverifiable, а имена адаптеров с пробелами корректно слагуются.
v3.17.1patchbreaking
🕐 29 дн назад · релиз на GitHub ↗

Исправлены критические ошибки в планировщике, PostgreSQL и жизненном цикле агентов; улучшена устойчивость к ошибкам.

  • Fixed: Агенты теперь корректно обрабатывают таймауты и не умирают из-за ошибок в логике heartbeat.
  • Fixed: Восстановлен корректный подсчет ошибок и перезапуск задач, устранены гонки при повторных попытках.
  • Fixed: Исправлена логика слияния кода: проверка качества (gate) теперь оценивает объединенный результат, а не временный чек-аут.
  • Fixed: Устранены ошибки в графе задач: исправлено определение зависимостей и обработка циклов, предотвращающая зависание планировщика.
  • Breaking: Задачи, созданные до этого релиза, не сохраняют информацию о мульти-тенанте и переходят в область по умолчанию; восстановить исходную область невозможно.
  • Fixed: Исправлено поведение MCP-моста и логики эскалации моделей при повторных попытках.
v3.17.0minorbreaking
🕐 1 мес назад · релиз на GitHub ↗

Исправлена логика графа задач, улучшена верификация и диагностика агентов, добавлена защита от сбоев при тестировании.

  • Breaking: PostgresTaskStore.list_tasks() теперь возвращает ограниченную страницу данных; для чтения всей таблицы требуется явная пагинация через offset.
  • Fixed: Исправлена ошибка в графе задач: отменённые или упавшие задачи больше не влияют на узлы вне своей поддерева.
  • Added: Команда audit verify стала строго read-only; добавлены отдельные вердикты для операций append, rewrite и identity.
  • Added: Улучшена диагностика агентов: теперь выявляются причины тихой смерти запущенных агентов, а кастомные URL Qwen корректно выбирают тип аутентификации.
  • Fixed: Тестовые файлы с высокой нагрузкой на память теперь запускаются последовательно, предотвращая ошибки OOM.
v3.16.0majorbreaking
🕐 1 мес назад · релиз на GitHub ↗

Исправление восстановления журнала, офлайн-верификация DSSE, изоляция волонтеров и фиксы CI.

  • Fixed: Восстановление журнала после сбоев и корректный подсчет событий через запечатанный префикс.
  • Added: Офлайн-верификация бандлов результатов через DSSE без обращения к сети или реестру.
  • Added: Программа волонтерских воркеров с контент-адресным манифестом и производным профилем песочницы.
  • Fixed: Исправление CI: устранение ложных успешных сборок и синхронизация имен воркфлоу с их поведением.
  • Breaking: Изменение типа JournalVerifyResult: теперь возвращает три вердикта вместо одного бита ok.
v3.15.1majorbreaking
🕐 1 мес назад · релиз на GitHub ↗

Критическое обновление безопасности: устранены утечки данных между арендаторами и избыточные права доступа.

  • Fixed: Устранены уязвимости, позволяющие арендаторам получать доступ к задачам и данным других арендаторов.
  • Fixed: Исправлена проблема, при которой токены агентов и кластерные секреты предоставляли несанкционированный доступ к логам и сессиям.
  • Fixed: Корректировка прогнозов затрат и метрик предсказаний для корректного разделения по арендаторам.
  • Breaking: Параметр auth_type="oauth" больше не поддерживается при создании; требуется использовать "bearer" или "none".
  • Fixed: В многопользовательских установках операторские интерфейсы теперь показывают данные только для одного арендатора.
v3.14.159majorbreaking
🕐 1 мес назад · релиз на GitHub ↗

В Bernstein v3.14.159 удалены старые команды, ужесточена валидация планов и исправлена логика эволюции.

  • Breaking: Удалены пять команд без периода устаревания: postmortem, incident, commit-stats, consensus и issue-to-pr.
  • Breaking: Загрузка планов теперь строго валидирует типы: некорректные данные вызывают PlanLoadError, а не молча используют значения по умолчанию.
  • Fixed: Параметр evolution_enabled: false теперь корректно отключает цикл эволюции, как и ожидалось.
  • Added: Добавлены новые адаптеры: Muse Code, Kimchi CLI, generic adapter для Python и драйвер Playwright.
  • Added: Появилась возможность полной офлайн-верификации подписанных чеков запуска и улучшена диагностика ошибок.
v3.13.0majorbreaking
🕐 1 мес назад · релиз на GitHub ↗

Релиз v3.13.0: исправление критических ошибок CI/CD, изменение логики верификации делегаций и устранение дефектов CLI.

  • Breaking: Цепочки делегаций без записанного scope теперь помечаются как unproven, а не valid; код выхода 3 вместо 0 при верификации.
  • Fixed: Исправлены системные ошибки CI: npm-обёртка, Homebrew, SBOM и контейнеры теперь корректно запускаются, а RPM-канал подключен.
  • Fixed: Устранены дефекты CLI: исправлены ошибки doctor, agents match, stop --force, обработка длинных промптов на Windows и проблемы с heartbeat.
  • Fixed: reconcile-release теперь завершается ошибкой при невозможности чтения канала, а не возвращает ложное подтверждение.
  • Added: Внедрено детерминированное голосование за публикацию и улучшена обработка отменённых задач в merge gate.
v3.1.0minor
🕐 2 мес назад · релиз на GitHub ↗

Релиз v3.1.0 добавляет верифицируемые доказательства выполнения задач (evidence bundles) и устраняет нестабильность тестов.

  • Added: Введены пакеты доказательств выполнения задач: теперь «готово» сопровождается криптографически защищённым отчётом с хэшированием контента.
  • Added: Появились новые команды: `bernstein evidence show` для просмотра доказательств и расширенная проверка целостности через `bernstein audit verify`.
  • Added: Автоматические описания pull-requests теперь содержат сводку по доказательствам, если они были сгенерированы.
  • Fixed: Устранена нестабильность в юнит-тестах, связанная с порядком выполнения и утечкой маркеров между тестами.
  • Обновлены инструменты сборки и зависимости, устранены предупреждения linter в модулях взаимодействия и безопасности.
v3.0.0majorbreaking
🕐 2 мес назад · релиз на GitHub ↗

Релиз v3.0.0: полная переработка аудита через криптографические цепочки, верифицируемые логи и подписанные доказательства.

  • Added: Линейка артефактов заменена на единую Ed25519-подписанную цепочку, а журнал шагов стал Merkle-деревом для детерминированного воспроизведения.
  • Added: Введены верифицируемые решения по управлению доступом (RBAC) и расходами, записываемые как неизменяемые записи в журнале аудита.
  • Added: Интероперабельность: добавлен без状态ный MCP, подписанные вебхуки и HTTP-запросы агентов, а также делегирование субагентов с криптографической фиксацией.
  • Added: Наблюдаемость расширена: OpenTelemetry-спаны и C2PA-креденшиалы теперь являются детерминированными проекциями аудиторной цепочки.
  • Added: Федерация A2A и единая модель активности: все входящие/исходящие сообщения подписаны, а любые модальности агентов работают под единым детерминированным планировщиком.
v2.16.1patch
🕐 2 мес назад · релиз на GitHub ↗

Исправлена работа адаптеров на Windows: бинарные файлы теперь корректно запускаются через shims.

  • Fixed: На Windows исправлен запуск адаптеров (например, Codex через nvm-windows), установленных как .cmd/.bat shims.
  • Fixed: Теперь воркер разрешает путь к бинарному файлу адаптера до абсолютного и передаёт его через интерпретатор команд.
  • Fixed: Переменная окружения PATHEXT теперь корректно передаётся в среду воркера.
v2.16.0minor
🕐 2 мес назад · релиз на GitHub ↗

Релиз v2.16.0: профили ответов, аудит затрат, A/B-тестирование, компактизация контекста и исправления надежности.

  • Added: Детерминированные профили ответов, привязка затрат к профилю и трехстороннее A/B-тестирование с верифицируемыми метриками.
  • Added: Проактивная компактизация контекста с HMAC-подписями и защита от утечки чувствительных данных до обращения к API.
  • Fixed: Завершение задач со статусом failed при превышении лимита ходов и исправление путей быстрого отказа при ошибках.
  • Added: Валидация схем для результатов работы воркеров и управление манифестами команд с проверкой целостности.
  • Fixed: Устранение утечки памяти в роутере API, миграция на StrEnum и улучшение надежности парсера JSONL.
v2.15.0minor
🕐 2 мес назад · релиз на GitHub ↗

Релиз v2.15.0: API удержаний, лимиты ходов, инструментация, редизайн совета агентов и исправления.

  • Added: Появилось API удержаний (/orchestrator/holds) для управления жизненным циклом спавнера через heartbeat-лизы.
  • Added: Добавлен параметр max_turns для TaskCreate, позволяющий задавать бюджет ходов на задачу в диапазоне от 1 до 10000.
  • Added: Внедрена инструментация на уровне агентов: запись JSONL-логов для всех вызовов LLM и инструментов в реальном времени.
  • Added: Редизайн совета агентов: учёт стоимости для каждого участника, синтез решений и поддержка Qwen через Alibaba Cloud.
  • Fixed: Исправлен выбор моделей: теперь используется только конфигурация, а отсутствие настроек вызывает ошибку ModelNotConfiguredError.
v2.14.1patch
🕐 2 мес назад · релиз на GitHub ↗

Патч безопасности: защита от инъекций в логи и утечек чувствительных данных, исправление адаптера Qwen.

  • Fixed: Устранена уязвимость лог-инъекций: пользовательские значения теперь санитизируются, а причины ошибок очищаются от управляющих символов.
  • Fixed: Адаптер openai_agents и раннер больше не логируют заголовки, тела запросов и значения API-ключей, фиксируя только имена переменных окружения.
  • Fixed: Исправлено расхождение контракта адаптера Qwen: добавлен флаг --approval-mode yolo для автоподтверждения.
  • Восстановлена работа интеграционных тестов и устранены замечания линтера refurb в ключевых модулях.