Skip to content
AI-Daily-Builder

Bernstein: 44개의 CLI 코딩 에이전트를 병렬 git worktree에서 실행하고 HMAC로 연결된 감사 로그를 갖춘 결정론적 Python 오케스트레이터

회 조회

Bernstein은 Apache-2.0 라이선스의 Python 스케줄러로, 목표를 분해하고, CLI 코딩 에이전트(Claude Code, Codex, Gemini CLI, 그 외 40여 개)를 격리된 git worktree에 생성하며, 각 diff를 테스트/lint/타입에 대해 검증하고, 통과한 것만 병합한다 -- 모든 것이 LLM이 아니라 순수 Python에 의해 조정되며, HMAC-SHA256 감사 추적을 동반한다.

pipx install bernstein

그것이 무엇인가

Bernstein은 오픈소스(Apache-2.0) Python 도구로, 스스로 하나가 되는 대신 다른 CLI 코딩 에이전트를 오케스트레이션한다. 당신이 목표를 주면, 한 번의 LLM 호출이 그 목표를 전용 파일과 완료 신호를 가진 작업으로 분해하고, 그 이후로 스케줄러는 순수한 결정론적 Python이다. 그것은 에이전트들 — Claude Code, OpenAI Codex, GitHub Copilot CLI, Google Gemini CLI, Cursor, Aider, Continue 및 기타(v2.7.0 기준 44개의 어댑터, 그리고 범용 --prompt 래퍼) — 을 각각 자신의 git worktree에 생성하고, 그것들을 병렬로 실행한 다음, 어떤 작업물이 main에 병합되기 전에 “janitor” 단계가 구체적인 신호(테스트 통과, lint 깨끗, 타입 정확)를 점검한다. 실패한 작업은 재시도되거나 다른 모델로 라우팅된다.

붐비는 에이전트 프레임워크 영역에서 그것을 구별짓는 홍보 포인트는 감사 등급의 결정론이다: 스케줄링 결정은 LLM 토큰을 0으로 소비하고, 모든 단계는 재현 가능하며, 각 결정은 .sdd/audit/YYYY-MM-DD.jsonl에 있는 HMAC-SHA256 감사 로그에 기록된다. README는 차별화 요소로서 규정 준수, 서명된 에이전트 카드, 산출물별 계보, 그리고 에어갭/온프레미스 배포를 강조한다.

설치 및 실행

pipx install bernstein            # also: pip install bernstein (Python >= 3.12)
cd your-project
bernstein init                    # creates the .sdd/ workspace
bernstein -g "Add rate limiting"  # agents spawn, work in parallel, verify, exit
bernstein live                    # optional TUI dashboard to watch progress

문서에 있는 대표적인 실행 요약:

[manager] decomposed into 4 tasks
[agent-1] claude-sonnet: src/auth/middleware.py  (done, 2m 14s)
[agent-2] codex:         tests/test_auth.py      (done, 1m 58s)
[verify]  all gates pass. merging to main.

언제 사용하는가

여러 파일에 걸친 병렬화 가능한 변경이 있고, 조합에 하나 이상의 모델/에이전트를 넣고 싶으며, 누가 무엇을 바꿨는지에 대한 검증 가능한 기록이 필요할 때(규제되는 코드베이스, 전방 배치/에어갭 엔지니어링, 또는 그저 LLM이 조정에 토큰을 태우는 것을 원하지 않는 비용 의식이 강한 팀) Bernstein을 택하라. 그것은 명시적으로 단일 페어 프로그래머와 대화하기 위한 올바른 도구가 아니며, 코딩이 아닌 LLM 워크플로를 위한 것도 아니다.

속성
최신 릴리스v2.7.0 (2026-05-24)
언어/라이선스Python, Apache-2.0
작성자Alex Chernysh (sipyourdrink-ltd)
설치pipx install bernstein
지원 에이전트44개의 CLI 어댑터 + 범용 —prompt 래퍼

유의사항

그것은 래퍼이지 자기완결적인 에이전트가 아니다: 기반이 되는 에이전트 CLI가 이미 기기에 설치되고 인증되어 있어야 하며, 격리는 git worktree 위에 구축되어 있어서 git이 아닌 프로젝트는 그냥 실행되지 않는다. 설계상 SaaS 옵션은 없다 — 그것은 온프레미스 전용이다.

실무자 노트: 레버리지가 가장 높은 손잡이는 에이전트 선택이 아니라 작업 분해다. Bernstein은 파일을 작업에 결정론적으로 할당하고 각각을 worktree에 격리하므로, 각 작업이 서로소인 파일을 소유하도록 표현된 목표는 깔끔하고 병렬로 병합된다; 두 에이전트가 같은 모듈을 편집하도록 강제하는 목표는 직렬화되거나, 어떤 감사 로그로도 매끄럽게 할 수 없는 병합 마찰을 생성한다.

충분히 고려되지 않은 측면: 대부분의 “멀티 에이전트” 마케팅은 LLM이 조정에 대해 추론하고 있음을 함의하는데, 이는 비용, 지연, 그리고 비재현성을 더한다. Bernstein의 조용한 베팅은 그 반대다 — 오케스트레이션은 지루하고 결정론적인 코드여야 하며, 모델의 유일한 판단적 호출은 그 한 번의 사전 분해라는 것. 그 틀은 “멀티 에이전트”를 신뢰성 부채에서 감사 가능한 빌드 단계로 바꾸며, 그것은 어떤 오케스트레이터든 평가하기 위한 유용한 렌즈다: 그 스케줄링 결정 중 몇 개가 모델 호출이고 몇 개가 코드인지 물어보라, 왜냐하면 루프 안의 모델 결정 하나하나가 당신의 실행이 두 번의 수행 사이에서 조용히 갈라질 수 있는 지점이기 때문이다.

커피