Anthropic의 200 실험 — 차이는 “하네스”였습니다
장기 실행 애플리케이션 개발을 위한 하네스 디자인 연구
Experiment Overview
앤트로픽은 장기 실행 애플리케이션 개발을 위한 “하네스(harness)” 설계에 대한 실험을 진행했습니다.
Solo Harness vs Full Harness
| 하네스 유형 | 실행 시간 | 비용 | 결과 |
|---|---|---|---|
| Solo | 20분 | $9 | 작동하지 않음 |
| Full Harness | 6시간 | $200 | 작동하는 앱 |
Test Case: 2D Retro Game Maker
Prompt:
Create a 2D retro game maker with features including a level editor, sprite editor, entity behaviors, and a playable test mode.
Solo Harness ($9):
- 레이아웃이 공간 낭비
- 워크플로우가 경직됨
- 게임이 작동하지 않음 - 엔티티 입력에 응답하지 않음
- 코드에서 엔티티 정의와 게임 런타임 연결이 끊어져 있음
Full Harness ($200):
- 전체 뷰포트를 사용하는 캔버스
- 일관된 비주얼 아이덴티티
- 풍부한 스프라이트 에디터
- 작동하는 플레이 모드 - 실제로 캐릭터를 움직이고 게임을 플레이 가능
- AI 통합 (Claude)으로 스프라이트, 레벨, 행동 생성
Architecture
Three-Agent System
-
Planner
- 간단한 1-4문장 프롬프트를 완전한 제품 사양으로 확장
- 모델이 직접 기술적 세부사항을 계획하도록 함
- AI 기능을 제품 사양에 통합
-
Generator
- 스프린트 방식으로 기능별 작업
- React, Vite, FastAPI, SQLite/PostgreSQL 스택
- 각 스프린트 후 자기 평가
- Git으로 버전 관리
-
Evaluator (QA)
- Playwright MCP로 실제 사용자처럼 테스트
- UI 기능, API 엔드포인트, DB 상태 확인
- 4가지 기준으로 평가:
- Product Depth
- Functionality
- Visual Design
- Code Quality
Sprint Contract
각 스프린트 전에 Generator와 Evaluator가 “완료”의 정의를 협상:
- Generator: 무엇을 빌드할 것인가, 성공을 어떻게 검증할 것인가 제안
- Evaluator: 제안을 검토하여 올바른 것을 빌드하는지 확인
Iteration & Simplification
Opus 4.6 업그레이드 후
Opus 4.6이 개선되면서:
- 더 긴 컨텍스트 지원
- 더 나은 계획 수립
- 더 나은 코드 리뷰 및 디버깅
- 더 큰 코드베이스에서의 안정적인 작업
Sprint 구조 제거
- 제거 전: Sprint별 QA
- 제거 후: 런 종료 시 단일 패스 QA
결과: 간소화된 하네스가 비용 절감 없이 유사한 성능 유지
Updated Harness Test: DAW (Digital Audio Workstation)
Prompt:
Build a fully featured DAW in the browser using the Web Audio API.
Results
| 단계 | 시간 | 비용 |
|---|---|---|
| Planner | 4.7분 | $0.46 |
| Build (Round 1) | 2시간 7분 | $71.08 |
| QA (Round 1) | 8.8분 | $3.24 |
| Build (Round 2) | 1시간 2분 | $36.89 |
| QA (Round 2) | 6.8분 | $3.09 |
| Build (Round 3) | 10.9분 | $5.88 |
| QA (Round 3) | 9.6분 | $4.06 |
| 총계 | 3시간 50분 | $124.70 |
DAW 결과
- 작동하는 음악 제작 프로그램: 브라우저에서 작동하는 arrangement view, mixer, transport
- AI 에이전트 통합: 템포와 키 설정, 멜로디 작성, 드럼 트랙 구축, 믹서 레벨 조정, 리버브 추가
- QA 발견:
- 오디오 녹음이 스텁 전용 (버튼만 토글)
- 클립 리사이즈/분할 미구현
- 이펙트 시각화가 슬라이더만 있고 그래픽(EQ 커브) 없음
Key Lessons
1. Self-Evaluation Problem
에이전트가 자신의 작업을 평가할 때 항상 관대함:
- 명백히 평범한 결과물에 대해 자신감 있게 칭찬
- 설계 같은 주관적 작업에서 특히 두드러짐
해결: Generator와 Evaluator 분리
2. Context Anxiety
긴 작업에서 컨텍스트 윈도우가 채워지면 일관성을 잃음:
- 컨텍스트 리셋 (완전히 지우고 새 에이전트 시작)
- 구조화된 핸드오프로 이전 에이전트의 상태와 다음 단계 전달
3. Model-Driven Harness Evolution
모델이 개선되면서:
- 스캐폴드 중요도 감소
- 새로운 하네스 조합으로 더 복잡한 작업 가능
핵심 원칙: 가능한 가장 간단한 솔루션을 찾고, 필요할 때만 복잡성을 늘리기
4. Frontend Design Grading Criteria
주관적 품질을 등급 가능하게 만드는 기준:
- Design Quality: 색상, 타이포그래피, 레이아웃이 조화롭게 결합
- Originality: 템플릿이나 AI 패턴이 아닌 맞춤형 결정
- Craft: 타이포그래피 계층, 간격 일관성, 색상 조화, 대비율
- Functionality: 사용자가 인터페이스를 이해하고 작업 완료 가능성
What Comes Next
모델이 계속 개선됨에 따라:
- 더 긴 시간 동안, 더 복잡한 작업 수행 가능
- 스캐폴드가 시간이 지남에 따라 덜 중요해질 수 있음
- 하지만 새로운 하네스 조합으로 더 복잡한 작업 달성 가능
핵심 통찰: 흥미로운 하네스 조합의 공간은 모델이 개선되더라도 축소되지 않는다. 대신 이동하고, AI 엔지니어의 흥미로운 작업은 다음 새로운 조합을 계속 찾는 것이다.