Shipwright Harness: Claude Code를 위한 자율 배송 에이전트
요약
Shipwright Harness는 Claude Code를 위한 오픈 소스 자율 배송 에이전트입니다. 이 시스템은 계획(Plan)부터 빌드, 검토, 최종 배포(Ship)까지의 파이프라인을 통해 사용자의 코드베이스에서 자율적으로 코딩 작업을 수행합니다. 자체적인 성능 지표를 공개하여 신뢰성을 높인 것이 특징입니다.
핵심 포인트
- Claude Code 기반의 자율 코딩 에이전트 시스템
- Plan-Build-Review-Ship의 엔드투엔드 파이프라인 제공
- 자체 사이클 시간, CI 통과율 등 지표 공개로 신뢰성 확보
Shipwright Harness -- Claude Code용 자율 배송 에이전트
Claude Code를 위한 오픈 소스 자율 배송 에이전트. 배포 가능한 클라우드 에이전트와 이를 구동하는 자율 코딩 시스템으로, Shipwright 플러그인을 기반으로 사용자의 코드베이스에서 작동합니다.
<p align="center"> <img src="https://raw.githubusercontent.com/app-vitals/shipwright/HEAD/assets/demo.gif" alt="Shipwright Harness를 Claude Code 터미널에서: 설치, 계획 → 빌드 → 검토 → 작업 배송까지 엔드투엔드로." width="900" /> <br /> <em>계획(Plan) → 빌드(build) → 검토(review) → 배송(ship) — 파이프라인을 통해 하나의 작업을 처리합니다. (예시적.)</em></p>자체적으로 구축되며, 수치는 공개됩니다
Shipwright의 배송 파이프라인은 Shipwright 위에서 실행됩니다. 이 저장소에 대한 사이클 시간(Cycle time), CI 첫 통과율(first-pass rate), 검토 판정(review verdicts) 및 추정 정확도(estimation accuracy)는 공개되어 있습니다:
2026년 9월 25일 기준으로, 최근 30일 동안: 336개 작업 완료, 60개 PR 병합, CI 첫 통과율 85.7%, 중앙값 사이클 시간 약 4.4시간. 다른 자율 코딩 에이전트는 자체 배송 지표를 공개하지 않습니다. 따라서 설치하기 전에 저희의 작업을 확인할 수 있습니다.
Shipwright Harness란 무엇인가요?
두 가지 모습, 하나의 제품:
- 에이전트(The agent) — 클라우드(GitHub Actions 또는 셀프 호스팅)에 배포할 수 있습니다. 사용자의 코드베이스에서 자율 코딩을 수행하며, 인간의 코드와 동일한 검토 및 테스트 기준을 따릅니다.
- 시스템(The system) — Claude Code의
shipwright플러그인을 기반으로 구축된 자율 코딩 시스템: 계획(plan) · 빌드(build) · 검토(review) · 지표(metrics). Claude Code 내부에서 대화형으로 사용하거나, 에이전트가 자율적으로 실행하도록 할 수 있습니다.
사용자의 환경에서, 사용자의 코드베이스 위에서 작동합니다. 소유권은 사용자에게 있으며, MIT 라이선스이며 무료입니다.
기능
Shipwright는 일련의 Claude Code 명령을 통해 기능 아이디어를 배포(shipped)되고 검토된 코드로 변환하며, 각 단계는 다음 단계가 소비할 수 있는 지속 가능한 아티팩트를 생성합니다:
- 아이디어에 대한 PRD 작성: /plan-session에서 사용할 준비가 된 구조화된 제품 사양서.
- 사양을 잘 정의되고 의존성 순서가 지정된 작업 목록으로 계획(Plan): (어떤 에이전트나 기여자든 조회할 수 있는 공유 큐인 Shipwright task store에 추적됨).
- 다음 준비된 작업을 실행(Execute): 빌드, 테스트 및 PR 열기.
- 정책 제어 기반의 인라인 피드백으로 PR을 검토(Review).
- 병합된 변경 사항을 배포(Ship).
설치 (Install)
/plugin install shipwright@app-vitals/shipwright
Claude Code가 필요합니다. 자체 저장소에 연결하세요. Shipwright는 레포지토리와 무관(repo-agnostic)합니다.
⭐ 이 접근 방식이 합리적이라면, 이 저장소를 별표 표시해 주세요 — 이는 우리가 오픈 소스 트랙에 계속 투자할지 판단하는 기준입니다.
서비스를 Kubernetes에 배포하나요? shipwright Helm 차트는 각 차트 버전 업데이트 시 Helm 레포에 게시됩니다:
helm repo add shipwright https://app-vitals.github.io/shipwright
helm install my-release shipwright/shipwright --namespace shipwright --create-namespace
Kubernetes 배포 가이드는 docs/deploy-kubernetes.md를, 최종 사용자별 워크스루(Minikube / GKE / EKS / Traefik / cloud-native)는 docs/deploy-kubernetes-providers.md를, 게시된 레포 흐름 및 게시가 트리거되는 방법은 docs/helm-repo.md를 참조하세요.
Slack에서 Shipwright 사용하기 (Get Shipwright in your Slack)
Shipwright 에이전트는 Slack 앱으로 실행됩니다 — DM, @멘션, 그리고 크론 알림 모두 Socket Mode로 작동합니다. 접근하는 방법은 두 가지가 있습니다:
- 직접 호스팅하기. Helm 차트를 사용하여 관리자 서비스를 배포하고(위의
docs/deploy-kubernetes.md참조), 관리자 UI의/admin/provision마법사에서 Slack을 연결하세요. 전체 단계별 가이드: Slack 통합. - 저희가 대신 실행해 드릴까요? 발견 통화 예약하기 — 의무 사항은 없으며, 파이프라인에 대한 대화만 나눕니다.
빠른 시작 (Quickstart)
오늘 로컬에서 메트릭스 대시보드를 실행해 보세요 — 기본적으로 오프라인입니다: Fixtures 기반이며, 계정이나 데이터베이스가 필요 없습니다. 한 번의 복사-붙여넣기 프롬프트로 두 단계를 모두 처리하고 대시보드를 열 수 있습니다.
이것을 Claude Code 세션에 붙여넣으세요:
Set up Shipwright Harness locally and open the metrics dashboard.
1. In a terminal, run:
...
단계 1은 터미널에서 실행되고; 단계 2는 Claude Code 세션 내부에서 실행됩니다.
사전 요구 사항: Claude Code, git, Bun, 그리고 go-task. 전체 세부 정보, QUICKSTART_SKIP_SERVE CI 가드, 오프라인 기본값 설명은 docs/quickstart.md에 있습니다.
전체 개발 스택 (Full dev stack)
메트릭스 대시보드, 관리자 UI, 작업 저장소(task-store), 그리고 Docker 내의 Shipwright 에이전트를 포함하는 전체 로컬 스택은 tmux, Docker, 그리고 로컬 PostgreSQL 인스턴스(포트 5432)가 필요합니다. 이것을 Claude Code 세션에 붙여넣으세요:
Set up the full Shipwright Harness dev stack locally.
Prerequisites: tmux, Docker, PostgreSQL running on localhost:5432, Bun, go-task.
...
왜 Shipwright Harness인가 (Why Shipwright Harness)
- Free and open-source (MIT) — 폐쇄적이고 호스팅되는 코딩 에이전트의 대안인 자체 소유(own-it) 방식입니다. 임대하는 인프라가 없고, 종속성(lock-in)도 없습니다.
- 사용자 환경/클라우드에서 실행 — 사용자의 코드는 통제권을 벗어나지 않습니다.
- 인간 코드와 동일한 품질 기준 — 테스트는 코드와 함께 진행되며, 5단계의 테스트 준비도(test-readiness) 파이프라인에 의해 관리되므로 자율 에이전트를 신뢰할 수 있습니다.
- 자체 파이프라인에서 측정하는 지표 — 첫 시도 품질률(first-time-quality rate), 추정 정확도(estimation accuracy), 검토 판정 경향 등 사용자의 배포를 기준으로 측정됩니다.
- Claude Code 기반 구축 — 저희는 이를 매일 사용하며, Shipwright는 이를 대체하기보다는 확장합니다.
구성 요소 (Components)
| 구성 요소 | 역할 | 상태 |
|---|---|---|
| 플러그인 (시스템) | /plugin install로 설치하는 shipwright 툴체인 — 계획, 큐 기반 실행, 검토, 테스트 준비도 파이프라인, 배포 명령을 포함합니다. | ✅ 사용 가능 |
| ... |
워크플로우 (The workflow)
/shipwright:prd → 제품 사양(product spec)
/shipwright:plan-session → 의존성 순서가 지정된 작업 큐
/shipwright:dev-task → 빌드 + 테스트 + 다음 준비된 작업을 위한 PR 열기
...
작업은 Shipwright 작업 저장소(Shipwright task store)에서 추적됩니다 (docs/task-store.md 참조). 따라서 큐는 파이프라인을 처리하는 모든 에이전트가 공유합니다.
프로젝트 현황 (Project status)
실시간 확인하기 — Shipwright가 스스로 구축됩니다. 공개 지표 대시보드에서는 이 저장소의 실시간 파이프라인 데이터(첫 시도 품질, 주기 시간(cycle time), 추정 정확도, 작업 처리량(task throughput))를 보여주며, 이는 모두 현재 읽고 있는 동일한 에이전트와 플러그인에 의해 생성됩니다.
Shipwright Harness는 라이브 상태이며 — 플러그인, 지표 대시보드, Shipwright 에이전트가 함께 배포됩니다 (현재 버전은 위의 릴리스 배지 참조). 실시간 로드맵 및 향후 개선 사항은 이슈(issues)를 확인하세요.
지표 대시보드는 오늘 로컬에서 실행할 수 있습니다. Quickstart이 이를 한 번 복사-붙여넣기 프롬프트(./scripts/quickstart.sh)로 묶어줍니다. 기본 작업들은 다음과 같습니다:
task setup # bun install
task api # 오프라인 모드에서 지표 대시보드를 시작합니다 → http://localhost:3460/dashboard
task dev # 개발 감독관(dev supervisor): 지표를 시작하고 + Ctrl-C로 모든 자식 프로세스를 종료합니다
...
task stack은 6개의 패널을 가진 단일 tmux 세션(shipwright)을 가져옵니다: 지표(metrics) (SQLite, :3460), 관리자(admin) (CRUD API + UI, :3001), 작업 저장소(task-store) (:3002), 채팅 서비스(chat-svc) (채팅 서비스, :3003), 채팅 폴링 루프가 활성화된 Docker 내의 에이전트(agent), 그리고 임시 로그(logs) 셸입니다. 에이전트와 채팅하는 것은 REPL이나 에이전트 자체의 엔드포인트가 아니라 관리자 콘솔의 Chat 탭(/admin/chat)을 통해 브라우저에서 이루어집니다. 이 서비스는 먼저 Prisma migrate deploy 사전 점검(preflight)을 실행하여 관리자 서비스의 Postgres 스키마가 최신 상태인지 확인합니다. macOS에서는 사전 점검이 Postgres에 접근 가능한지 확인하고, 그렇지 않은 경우 필요한 brew/createdb 명령을 실행할 것인지 제안합니다. task stack은 tmux를 필요로 합니다. 설치되어 있지 않다면 task dev를 사용하세요 (지표 대시보드를 시작하는 no-tmux 대체 옵션입니다).
전체 온보딩 프롬프트와 오프라인 기본 동작에 대해서는 docs/quickstart.md를 참조하십시오.
Claude Code 기반
Shipwright Harness는 본질적으로 Claude Code 플러그인이며, 그것을 위해 구축되었고, 그것과 매일 사용됩니다. 이미 Claude Code를 실행하고 있다면, Shipwright는 /plugin install만 거리에 있습니다.
실제 사용 사례 보기
- 비교해 보기(Compare it) — Shipwright의 계획 → 큐(queue) → 루프 모델이 상용 에이전트 계층 및 다른 Claude Code 오케스트레이터와 어떻게 다른지 확인하세요. 비교 페이지를 참고하세요.
- 파이프라인에서 실행해 보기(Have us run it on your pipeline) — 디자인 파트너 프로그램을 통해 Shipwright 개발자들이 귀하의 코드베이스에 직접 적용하는 경험을 해보세요.
- 전체 이야기 읽기(Read the full story) — shipwrightharness.com에서 확인하세요.
테스트 시스템 (Test system)
Shipwright는 세 가지 구성 요소 전반에 걸쳐 네 계층의 테스트 아키텍처(단위/통합/스모크/E2E)를 적용합니다. 계층 경계, 구성 요소별 실행 명령어, 속도 예산, 그리고 테스트 격리 계약은 docs/test-readiness/test-system.md에 정의되어 있습니다.
설정 (Configuration)
플러그인 환경 변수(plugin env vars), 에이전트 환경 변수(agent env vars), 그리고 정책 필드(policy fields)를 포함한 모든 설정 옵션은 docs/configuration.md에 문서화되어 있습니다.
관측 가능성 (Observability)
선택적 Sentry 오류/로그 보고 기능으로, 기본적으로 비활성화되며 자체 호스팅(self-host) 환경에 적합합니다. 정확히 무엇이 수집되는지는 docs/observability.md를 참고하세요.
기여 (Contributing)
문의와 토론을 환영합니다. 관례 및 워크플로우는 CONTRIBUTING.md를, 그리고 우리의 CODE_OF_CONDUCT.md를 참고하세요. 이 저장소는 MIT 라이선스가 적용된 공개 프로젝트이므로, 기여하는 모든 자료는 독점적이거나 기밀성이 있는 자료가 아니어야 합니다.
라이선스 (License)
MIT © 2026 App Vitals
명명 규칙 (Naming)
브랜드와 패키지: 프로젝트는 Shipwright Harness이며, 설치하는 플러그인/패키지는 **
shipwright**입니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 GitHub Claude Ecosystem의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기