2026-03-28 · AI Engineering · 읽는 시간 4분
장시간 자율 코딩 에이전트를 위한 Harness 설계 — Anthropic 엔지니어링 요약
GAN 영감 Multi-Agent 아키텍처로 장시간 자율 코딩 에이전트의 품질 한계를 돌파한 Anthropic의 최신 접근법 정리
Anthropic이 2026년 3월 공개한 엔지니어링 블로그에서, 장시간 자율 코딩 에이전트의 품질을 구조적으로 끌어올리는 Harness Design 패턴을 소개했습니다. 핵심 내용을 정리합니다.
단순한 접근이 실패하는 이유
장시간 에이전트 코딩에서 반복적으로 관찰되는 두 가지 구조적 실패 모드가 있습니다.
Context Coherence 상실 — 컨텍스트 윈도우가 차면서 모델이 일관성을 잃고, "Context Anxiety"로 작업을 조기 종료하려는 경향이 발생합니다. Compaction(요약 후 계속)만으로는 해결이 안 되고, Context Reset(새 에이전트에 상태 핸드오프)이 필수적이었습니다.
Self-Evaluation 편향 — 자기 작업을 평가할 때 객관성이 부족합니다. 품질이 낮아도 "잘 됐다"고 자신있게 판단하며, 디자인처럼 주관적인 태스크에서 특히 심각합니다.
GAN에서 영감받은 Multi-Agent 구조
GAN(Generative Adversarial Network)의 Generator-Discriminator 구조에서 착안한 접근법입니다.
- Generator — 코드/디자인을 생성하고 개선된 출력을 반복
- Evaluator — Playwright로 실제 앱을 테스트하고 구체적 피드백 생성
핵심 인사이트: 자기 비판을 강화하는 것보다, 별도의 평가자를 **회의적(skeptical)**으로 튜닝하는 것이 훨씬 더 실현 가능합니다.
프론트엔드 디자인 4가지 평가 기준
"이 디자인이 아름다운가?"는 일관되게 답하기 어렵지만, "우리의 디자인 원칙을 따르는가?"는 구체적으로 평가할 수 있습니다.
- Design Quality — 색상, 타이포, 레이아웃이 하나의 정체성과 분위기를 이루는가?
- Originality — 의도적인 창작 결정이 보이는가? 템플릿 기본값이 아닌가?
- Craft — 타이포그래피 계층, 간격 일관성, 색상 조화 등 기술적 완성도
- Functionality — 유저가 인터페이스의 목적을 이해하고 기본 동작을 완료할 수 있는가?
"museum quality" 같은 표현만으로도 디자인 방향이 수렴 — 평가 기준의 언어 자체가 출력을 형성합니다.
Full-Stack 코딩을 위한 3-Agent 아키텍처
- Planner — 1~4문장 프롬프트를 상세 프로덕트 스펙으로 확장. 구현 세부사항은 지정하지 않음(cascade error 방지)
- Generator — 스프린트 단위로 기능 구현. 각 스프린트 시작 전 Evaluator와 "Sprint Contract"를 협상하여 완료 기준 합의
- Evaluator — Playwright MCP로 실제 앱을 클릭하며 테스트. 기준 미달 시 Fail 처리 + 상세 피드백 반환
Sprint Contract란 코드 작성 전에 Generator와 Evaluator가 "완료(Done)"의 정의를 협상하는 것으로, 높은 수준의 스펙과 테스트 가능한 구현 사이의 간극을 구조적으로 해결합니다.
Solo Agent vs. Full Harness 실험 결과
2D 레트로 게임 메이커 구현 프롬프트에 대한 비교:
Solo Agent ($9, 20분) — 기본 에디터만 존재, 레이아웃 공간 낭비, 워크플로우 안내 없음, 게임 실행 자체가 안 됨
Full Harness ($200, 6시간, 10 스프린트) — 풀 뷰포트 캔버스, 일관된 시각적 정체성, AI 통합 스프라이트/레벨 자동 생성, 실제로 플레이 가능한 게임 완성
V2: Opus 4.6 대응 하네스 진화
Opus 4.6의 능력 향상에 따라 하네스 구조도 진화했습니다.
- Sprint 구조 제거 — Opus 4.6가 장시간 일관된 작업이 가능해져 분할 불필요
- Context Reset 제거 — long-context 능력 향상 + 자동 Compaction으로 충분
- Evaluator 단순화 — 매 스프린트 QA 불필요, 빌드 후 단일 패스 QA로 충분
- AI Agent 기능 강화 — 생성된 앱 내부에 Claude Agent를 Tool-use 패턴으로 통합
V2로 브라우저 DAW(Digital Audio Workstation)를 구현한 결과, 총 비용 $124.70, 3시간 50분 소요. Generator가 Context Reset 없이 2시간 이상 일관되게 코딩을 수행했습니다.
핵심 교훈
- 모든 하네스 구성요소는 가정이다 — 새 모델이 나올 때마다 그 가정을 재검증하고, 불필요하면 제거, 새로운 가능성은 추가
- 외부 평가가 자기 평가를 이긴다 — 별도의 Evaluator를 회의적으로 튜닝하는 것이 Generator를 자기 비판적으로 만드는 것보다 효과적
- 단순함부터 시작하라 — 가장 단순한 솔루션부터, 필요할 때만 복잡성 추가
- 하네스 설계 공간은 이동한다 — 모델이 좋아져도 공간은 줄어들지 않고 이동(shift)할 뿐
- 평가 기준의 언어가 곧 품질 설계 — 평가 기준을 어떤 언어로 표현하느냐가 결과를 직접 형성
원문: Anthropic Engineering Blog — Harness Design for Long-Running Apps