Bernstein - Multi-agent orchestration
Orquesta cualquier agente de codificación de IA. Cualquier modelo. Un solo comando.
Documentación · Primeros pasos · Glosario · Limitaciones
Muro de la fama
"lol, buena suerte, sigue haciendo vibecoding de mierda sobre lo que no tienes ni idea xD" — PeaceFirePL, Reddit
Bernstein toma un objetivo, lo divide en tareas, las asigna a agentes de codificación de IA que se ejecutan en paralelo, verifica el resultado y fusiona los cambios. Tú regresas a un código funcional, pruebas superadas y un historial de git limpio.
No hay framework que aprender. Sin dependencia de proveedores. Los agentes son trabajadores intercambiables: cambia cualquier agente, cualquier modelo, cualquier proveedor. El orquestador en sí es código Python determinista. Cero tokens de LLM en la programación.
pip install bernstein
bernstein -g "Add JWT auth with refresh tokens, tests, and API docs"También disponible a través de pipx, uv tool install, brew, dnf copr y npx bernstein-orchestrator. Consulta las opciones de instalación.
Agentes compatibles
Bernstein descubre automáticamente los agentes CLI instalados. Mézclalos en la misma ejecución: modelos locales económicos para código repetitivo (boilerplate), modelos potentes en la nube para la arquitectura.
Agente | Modelos | Instalación |
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 | ||
Cualquier compatible con OpenAI/Anthropic |
| |
Ollama + Aider | Modelos locales (sin conexión) |
|
Amp, Cody, Continue.dev, Goose, Kilo, Kiro, OpenCode, Qwen, Roo Code, Tabby | Varios | Ver documentación |
Genérico | Cualquier CLI con | Integrado |
Ejecutabernstein --headless para pipelines de CI: sin TUI, salida JSON estructurada, código de salida distinto de cero en caso de error.
Inicio rápido
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 drainPara proyectos de varias etapas, define un plan YAML:
bernstein run plan.yaml # skips LLM planning, goes straight to execution
bernstein run --dry-run plan.yaml # preview tasks and estimated costCómo funciona
Descomponer — el gestor divide tu objetivo en tareas con roles, archivos propietarios y señales de finalización.
Generar — los agentes comienzan en árboles de trabajo (worktrees) de git aislados, uno por tarea. La rama principal permanece limpia.
Verificar — el conserje (janitor) comprueba señales concretas: las pruebas pasan, los archivos existen, el lint es correcto, los tipos son correctos.
Fusionar — el trabajo verificado llega a la rama principal. Las tareas fallidas se reintentan o se redirigen a un modelo diferente.
El orquestador es un programador de tareas en Python, no un LLM. Las decisiones de programación son deterministas, auditables y reproducibles.
Capacidades
Orquestación central — ejecución en paralelo, aislamiento mediante git worktrees, verificación por conserje, puertas de calidad (lint + tipos + escaneo de PII), revisión de código entre modelos, disyuntor para agentes que funcionan mal, monitoreo de crecimiento de tokens con intervención automática.
Inteligencia — el enrutador de bandido contextual aprende pares óptimos de modelo/esfuerzo con el tiempo. Grafo de conocimiento para el análisis de impacto en el código base. El almacenamiento en caché semántico ahorra tokens en patrones repetidos. Detección de anomalías de costos con marcado de puntuación Z.
Empresarial — registros de auditoría a prueba de manipulaciones encadenados con HMAC. Límites de política con valores predeterminados de fallo abierto y aislamiento multi-inquilino. Puerta de salida de PII. OAuth 2.0 PKCE. Autenticación SSO/SAML/OIDC. Recuperación de fallos WAL: sin pérdida de datos silenciosa.
Observabilidad — Prometheus /metrics, preajustes de exportador OTel, paneles de Grafana. Seguimiento de costos por modelo (bernstein cost). TUI de terminal y panel web. Visibilidad del proceso del agente en ps.
Ecosistema — modo servidor MCP, soporte de protocolo A2A, integración con GitHub App, sistema de plugins basado en pluggy, espacios de trabajo multi-repo, modo clúster para ejecución distribuida, auto-evolución mediante --evolve.
Matriz completa de características: FEATURE_MATRIX.md
Comparativa
Bernstein | CrewAI | AutoGen | LangGraph | |
Orquestador | Código determinista | Impulsado por LLM | Impulsado por LLM | Grafo + LLM |
Funciona con | Cualquier agente CLI (18+) | Clases SDK de Python | Agentes Python | Nodos LangChain |
Aislamiento Git | Worktrees por agente | No | No | No |
Verificación | Conserje + puertas de calidad | No | No | Bordes condicionales |
Seguimiento de costos | Integrado | No | No | No |
Modelo de estado | Basado en archivos (.sdd/) | En memoria | En memoria | Checkpointer |
Auto-evolución | Integrado | No | No | No |
Páginas de comparación completas con matrices de características detalladas.
Monitoreo
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 setupInstalación
Método | Comando |
pip |
|
pipx |
|
uv |
|
Homebrew |
|
Fedora / RHEL |
|
npm (wrapper) |
|
Extensiones de editor: VS Marketplace · Open VSX
Contribución
Las PR son bienvenidas. Consulta CONTRIBUTING.md para la configuración y el estilo de código.
Soporte
Si Bernstein te ahorra tiempo: GitHub Sponsors · Open Collective
Licencia
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