jayminwest/warren

Run coding agents like infrastructure, not terminal sessions. Warren manages isolation, lifecycle, spend, recovery, and Git delivery on compute you control.

Warren – 코딩 에이전트를 관리되는 워크로드로 전환

정의 – Warren은 코딩 에이전트 프로세스(예: Claude Code, Pi)를 사용자가 제어하는 인프라에서 일급 객체로 관찰 가능한 워크로드로 실행할 수 있는 오픈소스 플랫폼입니다. 전체 수명 주기를 처리합니다: 새로운 격리된 작업 공간, 실행 모니터링, 지출 한도, 실시간 이벤트 스트리밍, 자동 복구, 마지막으로 에이전트의 변경 사항을 Git에 커밋합니다(선택적으로 풀 리퀘스트 열기).

중요성 – 대규모 언어 모델(LLM) 기반 코딩 어시스턴트는 코드 작성, 수정, 리팩토링에 점점 더 많이 사용됩니다. 지금까지는 일반적으로 개발자 터미널에서 실행되므로 다음이 어렵습니다:

  • 실행을 무인 또는 일정에 따라 계속 실행,
  • 리소스 또는 비용 상한을 강제,
  • 생성된 변경 사항이 버전 관리에 안전하게 저장되도록 보장,
  • 실패를 관찰하고 디버깅.

Warren은 팀이 에이전트 실행을 다른 프로덕션 작업처럼 취급할 수 있도록 누락된 "인프라 계층"을 제공합니다.


핵심 기능(README에 설명됨)

기능 제공 내용
작업 공간 격리 각 실행은 자체 Git 브랜치의 새 작업 트리 또는 클론에서 시작되며, bwrap(Linux) 또는 sandbox-exec(macOS)로 샌드박스 처리됩니다.
수명 주기 관리 실행을 자동으로 디스패치, 모니터링, 취소, 마무리, 정리합니다.
실시간 이벤트 스트림 실시간 JSON 이벤트가 HTTP API, CLI, UI를 통해 노출되어 진행 상황을 보거나 개입할 수 있습니다.
지출 및 동시성 제한 에이전트 실행 중에 강제되는 토큰 사용량 또는 비용 상한을 정의합니다.
복구 워치독이 손실된 프로세스/포드를 감지하고 정상적인 복구를 시도합니다. 파이널라이저는 종료 전에 작업을 구출합니다.
Git 전달 실행이 완료되면 Warren은 변경 사항을 커밋하고 브랜치를 푸시하며 GitHub App 또는 정적 토큰을 통해 PR을 열 수 있습니다.
기록 및 관찰 가능성 모든 실행 메타데이터(상태, 기간, 비용, 토큰 사용량, 결과)가 저장되고 통합 HTTP API, CLI, 웹 UI를 통해 쿼리 가능합니다.
확장 가능한 런타임 세 가지 내장 런타임 지원: local(bubblewrap/sandbox-exec), docker(형제 컨테이너), k8s(실행당 1포드). 어댑터를 통해 새 런타임을 추가할 수 있습니다.
확장 Warren의 HTTP 표면에 플러그인되는 선택적 외부 프로세스 패키지(감사 로그, 판정, 캠페인 컨트롤러, Jira/Azure DevOps 트래커).

작동 방식(높은 수준의 흐름)

  1. 하네스 정의 – 코딩 모델(예: Claude Code)과 통신하고 작업을 수행하는 작은 프로그램.
  2. Warren 배포 – macOS/Linux 호스트에서 curl … | sh && warren up을 실행하거나 제공된 Docker-Compose / Kubernetes 매니페스트를 사용합니다.
  3. 실행 생성 – UI, CLI 또는 API를 통해 저장소 + 작업 설명을 제출합니다.
  4. Warren이 격리된 작업 공간을 시작 – 선택한 런타임에서 하네스를 시작하고 이벤트를 스트리밍합니다.
  5. 실행 중 – 라이브 로그를 보고, 실행을 조종하거나 취소할 수 있습니다. 지출 한도가 강제됩니다.
  6. 성공 시 – 하네스의 변경 사항이 커밋되고, 브랜치가 푸시되며, (선택적으로) PR이 열립니다.
  7. 모든 메타데이터 – 추후 감사, 비용 분석 또는 재생을 위해 저장됩니다.

시작하기(README의 빠른 시작 단계)

# 1. CLI 설치(Bun 및 `warren` 바이너리 추가)
curl -fsSL https://warren.run/install | sh

# 2. 로컬 서버 부트스트랩(최적의 런타임 자동 감지)
warren up

명령은 브라우저를 열고 GitHub 연결, 저장소 선택을 안내하며 스타터 실행을 디스패치합니다.

보다 프로덕션에 적합한 배포를 위해 저장소를 클론하고 포함된 Docker-Compose 스택을 시작할 수 있습니다:

git clone https://github.com/jayminwest/warren
cd warren
cp .env.example .env   # 시크릿 편집
 docker compose up -d   # 서버, DB 등 시작

그런 다음 http://localhost:8080을 열고 발급된 운영자 토큰을 붙여넣고 저장소를 추가한 후 실행 디스패치를 시작합니다.


사용 대상

  • 코딩 에이전트를 이미 실험 중이고 터미널 세션을 넘어 실행을 유지하려는 개인 개발자 또는 소규모 신뢰 팀.
  • 모델 자격 증명, 컴퓨팅, 생성된 코드를 온프레미스로 유지해야 하는 조직(셀프 호스팅, SaaS 종속 없음).
  • 비용 상한을 강제하고, 실행 상태를 관찰하고, 에이전트 생성 변경 사항을 자동으로 병합하려는 운영 팀.

문서 및 리소스

  • 첫 실행 가이드docs/quickstart.md
  • 런타임 및 배포 가이드 – Docker(docs/self-host/docker.md), Kubernetes(docs/RUNBOOK-K8S.md)
  • API 및 SDK – OpenAPI 사양(docs/openapi.yaml), TypeScript SDK(docs/sdk.md)
  • 확장 설계docs/design/extensions.md
  • 로드맵ROADMAP.md
  • 라이브 데모https://app.warren.run(읽기 전용 실행 기록)
  • Discord 커뮤니티 – README의 링크 배지

현재 상태

  • 최신 안정 릴리스: 0.19.1
  • GKE에서 프로덕션 사용, 실행 수명 주기를 다루는 단위, 통합, 시나리오 테스트 포함.
  • 핵심 모델은 의도적으로 단일 공유 토큰 신뢰 모델로 제한됩니다(아직 사용자별 RBAC 없음).

라이선스

MIT – 개인, 학술, 상업용 무료.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트