Bernstein - Multi-agent orchestration
Оркестрируйте любого ИИ-агента для кодинга. Любую модель. Одной командой.
Документация · Начало работы · Глоссарий · Ограничения
Стена славы
"lol, good luck, keep vibecoding shit that you have no idea about xD" — PeaceFirePL, Reddit
Bernstein принимает цель, разбивает её на задачи, назначает их ИИ-агентам, работающим параллельно, проверяет результат и объединяет изменения. Вы получаете рабочий код, проходящие тесты и чистую историю git.
Не нужно изучать фреймворки. Никакой привязки к поставщику. Агенты — это взаимозаменяемые работники: меняйте любого агента, любую модель, любого провайдера. Сам оркестратор — это детерминированный код на Python. Ноль токенов LLM на планирование.
pip install bernstein
bernstein -g "Add JWT auth with refresh tokens, tests, and API docs"Также доступно через pipx, uv tool install, brew, dnf copr и npx bernstein-orchestrator. См. варианты установки.
Поддерживаемые агенты
Bernstein автоматически обнаруживает установленные CLI-агенты. Комбинируйте их в одном запуске: дешевые локальные модели для шаблонного кода, мощные облачные модели для архитектуры.
Агент | Модели | Установка |
opus 4.6, sonnet 4.6, haiku 4.5 |
| |
gpt-5.4, o3, o4-mini |
| |
gemini-3-pro, 3-flash |
| |
sonnet 4.6, opus 4.6, gpt-5.4 | ||
Любая совместимая с OpenAI/Anthropic |
| |
Ollama + Aider | Локальные модели (офлайн) |
|
Amp, Cody, Continue.dev, Goose, Kilo, Kiro, OpenCode, Qwen, Roo Code, Tabby | Различные | См. документацию |
Generic | Любой CLI с | Встроено |
Запускайтеbernstein --headless для CI-пайплайнов: без TUI, структурированный вывод JSON, ненулевой код выхода при ошибке.
Быстрый старт
cd your-project
bernstein init # creates .sdd/ workspace + bernstein.yaml
bernstein -g "Add rate limiting" # agents spawn, work in parallel, verify, exit
bernstein live # watch progress in the TUI dashboard
bernstein stop # graceful shutdown with drainДля многоэтапных проектов определите план в формате YAML:
bernstein run plan.yaml # skips LLM planning, goes straight to execution
bernstein run --dry-run plan.yaml # preview tasks and estimated costКак это работает
Декомпозиция — менеджер разбивает вашу цель на задачи с ролями, закрепленными файлами и сигналами завершения.
Запуск — агенты начинают работу в изолированных git-worktrees, по одному на задачу. Основная ветка остается чистой.
Проверка — «уборщик» (janitor) проверяет конкретные сигналы: проходят ли тесты, существуют ли файлы, чист ли линтинг, верны ли типы.
Слияние — проверенная работа попадает в основную ветку. Неудачные задачи перезапускаются или перенаправляются другой модели.
Оркестратор — это планировщик на Python, а не LLM. Решения о планировании детерминированы, проверяемы и воспроизводимы.
Возможности
Базовая оркестрация — параллельное выполнение, изоляция через git worktree, проверка «уборщиком», шлюзы качества (линтинг + типы + сканирование PII), кросс-модельное ревью кода, автоматическое отключение некорректно работающих агентов, мониторинг расхода токенов с автоматическим вмешательством.
Интеллект — маршрутизатор на основе контекстного бандита, который со временем изучает оптимальные пары «модель/усилия». Граф знаний для анализа влияния на кодовую базу. Семантическое кэширование экономит токены на повторяющихся паттернах. Обнаружение аномалий затрат с маркировкой Z-оценкой.
Enterprise — журналы аудита с защитой от несанкционированного доступа (HMAC-цепочки). Политики ограничений с настройками по умолчанию и изоляцией мультиарендности. Фильтрация вывода PII. OAuth 2.0 PKCE. Аутентификация SSO/SAML/OIDC. Восстановление после сбоев (WAL) — никакой потери данных.
Наблюдаемость — Prometheus /metrics, пресеты экспортеров OTel, дашборды Grafana. Отслеживание затрат по моделям (bernstein cost). Терминальный TUI и веб-дашборд. Видимость процессов агентов в ps.
Экосистема — режим сервера MCP, поддержка протокола A2A, интеграция с GitHub App, система плагинов на базе pluggy, мультирепозиторные рабочие пространства, кластерный режим для распределенного выполнения, самоэволюция через --evolve.
Полная матрица функций: FEATURE_MATRIX.md
Сравнение
Bernstein | CrewAI | AutoGen | LangGraph | |
Оркестратор | Детерминированный код | Управляется LLM | Управляется LLM | Граф + LLM |
Работает с | Любой CLI-агент (18+) | Классы Python SDK | Агенты Python | Узлы LangChain |
Git-изоляция | Worktrees для каждого агента | Нет | Нет | Нет |
Проверка | Уборщик + шлюзы качества | Нет | Нет | Условные ребра |
Отслеживание затрат | Встроено | Нет | Нет | Нет |
Модель состояния | Файловая (.sdd/) | В памяти | В памяти | Checkpointer |
Самоэволюция | Встроено | Нет | Нет | Нет |
Полные страницы сравнения с подробными матрицами функций.
Мониторинг
bernstein live # TUI dashboard
bernstein dashboard # web dashboard
bernstein status # task summary
bernstein ps # running agents
bernstein cost # spend by model/task
bernstein doctor # pre-flight checks
bernstein recap # post-run summary
bernstein trace <ID> # agent decision trace
bernstein explain <cmd> # detailed help with examples
bernstein dry-run # preview tasks without executing
bernstein aliases # show command shortcuts
bernstein config-path # show config file locations
bernstein init-wizard # interactive project setupУстановка
Метод | Команда |
pip |
|
pipx |
|
uv |
|
Homebrew |
|
Fedora / RHEL |
|
npm (обертка) |
|
Расширения для редакторов: VS Marketplace · Open VSX
Вклад в проект
PR приветствуются. См. CONTRIBUTING.md для настройки и стиля кода.
Поддержка
Если Bernstein экономит ваше время: GitHub Sponsors · Open Collective
Лицензия
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/chernistry/bernstein'
If you have feedback or need assistance with the MCP directory API, please join our Discord server