Superlite - 명세를 넘기면 테스트까지 끝내는 Claude Code 자율 개발 플러그인
목차
개요
Superlite는 Iheatu Chris Wogu가 만든 Claude Code용 자율 개발 플러그인입니다. 명세를 넘기면 계획 수립, 병렬 작업 분할, 모델별 에이전트 배정, 경계면 점검, 리뷰까지 스스로 진행합니다. 목표는 사람이 단계마다 개입하지 않아도 테스트를 통과한 결과물을 받아보는 것입니다. 저자는 “4분마다 나를 필요로 하는 협업자를 원하지 않았다”고 설명합니다.
배경
저자가 기존에 쓰던 워크플로는 superpowers 플러그인이었습니다. superpowers는 사람이 각 단계를 가까이에서 조종하는 용도에 맞춰져 있습니다. 저자가 측정한 기존 워크플로의 시간 소모 지점은 다음과 같습니다.
| 시간 소모 지점 | 설명 |
|---|---|
| 사람 승인 게이트 | 기능 하나당 8~12개의 승인 단계 |
| 순차 실행 | 작업을 엄격하게 하나씩 실행하고 작업마다 리뷰 수행 |
| 리뷰 루프 | 작업별 리뷰와 재리뷰가 첫 벤치마크 34분 중 약 12분 차지 |
| 중복 테스트 | 여러 스킬이 전체 테스트 스위트를 반복 실행 |
| 느린 모델 | 크리티컬 패스에 Opus 서브에이전트 배치, 코딩 속도가 Sonnet의 약 절반 |
Superlite는 superpowers의 플러그인 구조, 세션 시작 훅, 라이프사이클 스킬을 차용했습니다. 다만 단계별 조종이 아닌 자율 작업을 목적으로 재설계되었습니다.
핵심 내용
작업 규모별 승인 방식
Superlite는 작업 크기에 따라 설계 절차를 다르게 적용합니다.
| 작업 규모 | 처리 방식 |
|---|---|
| 사소한 수정 | 설계 문서 없이 바로 진행 |
| 기존 흐름 변경 | 채팅 안에서 짧은 설계 작성 |
| 새 프로젝트 | 최대 4개 질문을 한 번에 묻고 설계와 계획 문서 1개 작성 |
한 번 승인을 받으면 이후에는 멈추지 않고 진행합니다. 예외는 파괴적인 작업, 외부로 노출되는 작업, 보안에 민감한 작업뿐입니다. 또한 사용자 없이 push나 merge는 절대 하지 않습니다. 저자는 이를 “자율적이지만 무모하지 않다(Autonomous, not reckless)”고 표현합니다.
두 가지 실행 모드
| 모드 | 동작 |
|---|---|
| Human orchestrator | 예상 일정이 포함된 전체 계획을 사용자가 확인하고 승인한 뒤 실행 |
| AI orchestrator | 사람 개입 없이 진행, 원래 승인이 필요한 결정은 ruling으로 기록 |
AI orchestrator 모드의 ruling에는 무엇을 결정했는지, 왜 그렇게 결정했는지, 틀렸을 때의 비용이 함께 남습니다.
병렬 작업 그래프
계획은 작업 그래프 형태로 만들어집니다. 각 작업에는 다음 정보가 명시됩니다.
- 해당 작업이 소유하는 파일
- 소비하고 생성하는 인터페이스
- 통과해야 하는 테스트
파일을 공유하지 않고 의존성도 없는 작업은 동시에 실행됩니다. 그래프의 폭이 곧 빌드의 병렬도를 결정하며, 최신 벤치마크에서는 최대 18개 에이전트가 동시에 작업했습니다.
모델별 역할 분리
| 역할 | 모델 | 책임 |
|---|---|---|
| Coordinator | Opus | 계획과 배정 담당, 코드 수정 불가 |
| Builder | Sonnet | 대부분의 작업 구현 |
| Mechanical builder | Haiku | 작고 명세가 완전하며 크리티컬 패스 밖의 기계적 작업 |
| Package reviewer | Sonnet | 패키지 단위 리뷰 |
| Final reviewer | 새 Opus 인스턴스 | 실행 로그로 만든 리뷰 패킷을 읽고 발견 사항만 반환, 수정은 하지 않음 |
| Fix agents | 3개 티어 | 원인 파악 정도에 따라 배정되어 수정만 수행 |
훅으로 규칙 강제
저자는 프롬프트 수준의 규칙이 실제로는 지켜지지 않는 경우를 겪었습니다. 그래서 핵심 규칙을 훅 코드로 강제합니다.
| 훅 동작 | 내용 |
|---|---|
| 차단 | Coordinator의 프로젝트 코드 수정 차단 |
| 가로채기 | Coordinator가 직접 실행한 pytest, npm test를 백그라운드 실행으로 전환 |
| 거부 | 프로세스 이름 기반 종료 거부 |
| 사전 검증 | 작업 시작 전 계획이 lint –stable 검사를 통과해야 함, 통과한 안정 작업은 즉시 배정 |
| 기록 | 에이전트별 토큰, 비용, 시간 기록 |
| 경고 | 예산 상한의 70% 도달 시 경고(소프트 예산) |
Coordinator의 코드 수정 금지 규칙과 게이팅 훅은 실제 실패 사례에서 나온 것이라고 저자는 설명합니다.
실행 기록 파일
진행 상황은 .superlite/ 디렉토리에서 확인할 수 있습니다.
| 파일 | 내용 |
|---|---|
| progress.md | ruling(결정 로그)과 실행 로그 |
| test-summary.json | 최신 테스트 결과 |
| metrics.jsonl | 에이전트별 시간과 비용 |
설치와 사용
필요 환경은 다음과 같습니다.
- Claude Code
- git
- Python 3.10 이상 (Superlite 자체 도구용이며, 빌드 대상 프로젝트의 언어는 무관)
- bash (Windows에서는 Git Bash)
마켓플레이스에서 설치하는 방법입니다.
1
2
/plugin marketplace add iha2/superlite
/plugin install superlite@superlite-dev
로컬 체크아웃에서 단일 세션으로만 사용하려면 다음과 같이 실행합니다.
1
claude --plugin-dir <path-to-superlite>
설치 확인은 새 세션에서 Let's make a react todo list를 보내 보는 것으로 할 수 있습니다. 정상 설치라면 코드를 작성하기 전에 브레인스토밍부터 시작합니다.
사용 절차는 세 단계입니다.
- 목표를 설명합니다. 한 문단이나 명세 파일이면 충분합니다.
- Orchestrator를 선택합니다. 사람이 계획을 승인하거나 AI가 전부 진행합니다.
- 실행을 맡기고
.superlite/를 모니터링합니다.
| 상황 | 예시 프롬프트 |
|---|---|
| 새 프로젝트 | Build me a static site generator from this spec |
| 기존 코드에 기능 추가 | Add CSV export with column widths to the existing app |
| 디버깅 | This test fails on leap days: find the root cause and fix it |
| 작은 변경 | Rename build to render everywhere |
| 완전 위임 | Build X. I’m away, decide yourself |
| 마무리 | We’re done: finish the branch |
벤치마크
측정은 headless 하네스에서 동일한 명세와 Opus로 진행되었습니다. 채점은 에이전트가 볼 수 없는 숨겨진 테스트로 이루어졌습니다.
전체 프로젝트 결과
과제는 스프레드시트 엔진과 정적 사이트 생성기로 구성되며 숨겨진 테스트는 177개입니다.
| 실행 | 소요 시간 | 숨겨진 테스트 | 비고 |
|---|---|---|---|
| superlite 최신 | 16.1분 | 177/177 | 총 21개 에이전트, 최대 18개 동시 실행, 사람 개입 0회 |
| superpowers 기본 (3회 평균) | 33.6분 | 177/177 | 각 실행 21.2 / 31.9 / 47.6분 |
| superpowers orchestrated (3회 평균) | 23.5분 | - | 변형 방식 상세 설명 없음 |
| superlite 이전 빌드 (3회 평균) | 25.1분 | 177/177 | 각 실행 21.4 / 23.2 / 30.5분 |
| superlite 직전 빌드 (평균) | 26.9분 | - | 최신 빌드가 40% 빠름 |
최신 superlite는 기본 superpowers보다 52%, orchestrated superpowers보다 31% 빨랐습니다. 최신 실행에서는 시작 약 3분 만에 첫 에이전트들이 빌드를 시작했고, 최종 리뷰는 30초가 걸렸습니다. superlite 이전 빌드의 실행 간 편차는 9.1분으로, superpowers의 26.4분보다 작았습니다.
sitegen 결과
9개 모듈과 숨겨진 테스트 89개로 구성된 더 작은 sitegen 과제의 초기 측정 결과입니다.
| 도구 | 소요 시간 | 숨겨진 테스트 | 배정 방식 |
|---|---|---|---|
| superpowers | 34.4분 | 89/89 | 21회 배정, 엄격한 순차 실행 |
| superlite | 8.8분 | 89/89 | 10회 배정, 최대 5개 동시, 3단계 |
속도 향상의 원인
sitegen 결과에서 속도 향상의 대부분은 순차 대기열을 없앤 데서 나왔습니다. superlite 이전 빌드에서는 빌드가 약 13분에 끝났지만, 이후 리뷰, 수정, 포그라운드 테스트 실행에 10~18분이 더 소요되었습니다. 16.1분 빌드에서는 다음 변경으로 이 병목을 해소했습니다.
- Coordinator의 코드 수정 권한 제거
- 테스트 실행을 백그라운드로 이동
- 수정 작업을 티어별 fix 전용 에이전트에 위임
- 다른 수정이 진행 중이어도 안정된 작업은 바로 빌드 시작
한계와 주의사항
- 구성별 단일 실행이며 한 대의 머신에서 측정했습니다. 저자는 이를 “동료 검토를 거친 과학이 아니라 강한 힌트”라고 표현합니다.
- 보고된 테스트 프로젝트는 하나(와 그 하위 sitegen)뿐이라 다른 프로젝트나 환경에 그대로 적용된다고 보기는 어렵습니다.
- 페이지에서 훅이 토큰과 비용을 기록한다고 밝혔지만 구체적인 토큰·비용 수치는 공개하지 않았습니다.
- Superlite와 superpowers는 스킬 이름을 공유하고 둘 다 세션 시작 시 컨텍스트를 주입하므로 같은 세션에서 함께 활성화하면 안 됩니다.
- 단계별로 직접 조종하고 싶은 사용자에게는 superpowers가 더 적합하다고 저자는 안내합니다.
결론
Superlite는 사람 승인 게이트와 순차 실행이라는 기존 워크플로의 병목을 병렬 작업 그래프, 모델별 역할 분리, 훅 기반 규칙 강제로 줄이려는 시도입니다. 단일 머신의 단일 실행 결과이긴 하지만, 같은 과제에서 177개 숨겨진 테스트를 모두 통과하면서 소요 시간을 33.6분에서 16.1분으로 줄였습니다. 특히 프롬프트 규칙 대신 훅 코드로 Coordinator의 코드 수정을 막고 테스트를 백그라운드로 돌린 설계가 속도 개선에 직접 기여했다는 점이 눈에 띕니다. 저자는 설계 결정, 게이트, 에이전트 티어, 측정 후 폐기한 아이디어를 다루는 후속 글을 예고했습니다.