하네스 엔지니어링: Agent = Model + Harness, 6계층 프로덕션 플레이북
읽기 판단
훑기(skim) · confidence medium
6계층 분해와 7일 빌드 경로, 17개 체크리스트형 표는 실무 착수 자료로 바로 쓸 만하다. 다만 본문 인용이 참고문헌과 두 곳에서 어긋나고, 핵심 수치가 문서 내부에서 충돌하거나(15 vs 16개 모델) 무출처다(초록의 95%). 프레임이 필요한 엔지니어는 훑을 것. 수치를 인용할 사람은 원출처를 직접 대조할 것.
1분 요약
“엔터프라이즈 AI 에이전트 95%가 프로덕션에 못 간다”는 문제 제기에서 출발해, 격차의 원인을 모델이 아닌 하네스 부재로 지목한다. 근거는 자체 실험이 아니라 외부 5개 소스(Hashimoto·OpenAI Codex·Fowler·LangChain·Can.ac)의 벤치마크 delta를 재조직한 것이다. 문서 스스로 “공개 자료의 독립적 실용 종합”이라 밝힌 비심사 그레이 리터러처다.
핵심 아이디어
중심 명제는 Agent = Model + Harness. 모델은 추론만 담당하고 실패 방지·감지·실행 통제·상태 지속·안전 강제·가시성은 전부 하네스 몫이다. feedforward와 feedback이 맞물린 “조향 루프”로 그린다(Fig. 1).
- Guides — AGENTS.md/CLAUDE.md, 실행 전 규칙
- Sensors — 린터·테스트·LLM-as-judge, 실행 후 검증
- Agentic Loop — plan→execute→verify→fix, 재시도 상한·에스컬레이션
- Memory & State — 파일시스템 기반 세션 간 지속성(plan.md, decisions.json)
- Permissions & Budgets — scope·rate·reversibility·visibility 4차원 예산
- Observability — 트립와이어, 헬스 스코어카드
관통 원리는 래칫(ratchet): 매 실패를 가장 강한 계층에 영구 인코딩해 구조적 재발을 막는다.
무엇을 했나
- 공개 자료 다섯 갈래를 6계층으로 재조직하고, Table II에서 벤치마크 delta 4건을 “모델 고정·하네스만 변경” 논거로 묶었다.
- 17개 표(센서 유형, 루프 바운드, 예산 템플릿, 트립와이어, 흔한 실수, 용어집 등)로 서술을 체크리스트화했다.
- Day 1 가이드 → Day 7 관측성의 “7일 빌드 경로”와 확장 조건(Scale Gate)을 처방했다.
- §XIV·§XVI에서 과잉 엔지니어링과 하네스 불필요 조건을 스스로 다루고, §XVII에서 멀티에이전트(typed handoff, 공유 상태 모델, 독립 검증자)로 확장.
핵심 근거
| claim | 위치 | 관측 | 조건·유보 | claim_origin |
|---|---|---|---|---|
| GAIA에서 동일 Claude Sonnet 4.5, 하네스만 강화해 30.91%→74.55% | Table II / §XV.C | 모델 불변, +43.64pt | 원출처[6] 실재. “모델 업그레이드보다 큰 개선” 프레이밍은 저자 서술 | author-stated |
| LangChain 에이전트가 Terminal Bench 2.0에서 30위→5위, 모델 불변 | Table II / §XV.B | 순위 25단계 상승 | 실제 점수 이동(52.8→66.5%)이 문서에 없음. Table II의 Before/After 열은 점수처럼 보이나 순위임. 본문 “2026년 3월” vs [7] “Feb. 17, 2026” | author-stated |
| 하네스만 바꿔 15~16개 LLM의 코딩 점수 개선 | Table II, §XV.D | 다수 모델 상승 | Table II·본문 “16개” vs 절 제목·원출처[9] “15개” 충돌. 실제 기법은 Hashline, +5~14pt | author-stated |
| Codex 팀 3명·5개월, 수동 코드 0줄로 ~100만 라인·~1,500 PR | §XV.A / Table II | 수동 코드 0줄 | 원출처[2]와 일치 | author-stated |
| ”엔터프라이즈 AI 에이전트의 95%가 프로덕션에 도달하지 못한다” | Abstract | 서두 헤드라인 | 문서 전체에 인용 없음. 근접한 실제 수치는 MIT NANDA “GenAI Divide”(2025)의 95%이나 대상이 생성형 AI 파일럿 실패율로 다름 | unknown |
어디까지 믿을까
저자 명시 한계
- §XIV: 규칙 500개·추론 센서 12개·40단계 승인은 “안전이 아니라 병목으로 위장된 것”. §XIV.E: 수용 기준이 틀리면 센서는 틀린 결과를 검증할 뿐 — “하네스는 나쁜 목표를 못 고친다”.
- §XVI: 단발 질문·브레인스토밍·일회성 작업엔 하네스 이득 없음.
- p.9 각주: 본 문서는 인용 자료의 “독립적 실용 종합”이며 권고·템플릿은 인용된 조직의 공식 사양이 아님.
분석자 판단 — 원출처 대조에서 드러난 결함
- 인용 정합성: 본문 인용 2건이 참고문헌과 다른 문서를 가리키고([11][12]), 1건은 없는 제목이다([15]). 상세는 아래 표.
- 미확인 수치: §VI.B “라우팅 정확도 73%→85%“[14]는 원출처 확인 불가.
- 중복·구조: §VI.A가 §VI 도입부를 거의 그대로 반복. 섹션이 I–XIII → XVI–XVIII → XIV–XV로 뒤섞이고 표 번호도 XIV와 XIV-B가 중복.
- 출처 정체 불명: 표지는 Google 비제휴를 명시하나 전 페이지에 Google 워드마크. Google 계열 도구로 생성·export된 것으로 보이나 문서는 이를 해소하지 않는다.
원문 읽기 지도
| 목적 | 볼 위치 |
|---|---|
| 6계층 구조 파악 | Fig. 1 (p.1) + §III–§VIII 도입부 |
| 착수 로드맵 | Table XI 7일 빌드 경로 + Table XIII (p.6) |
| 수치 신뢰도 재확인 | Table II (p.2) ↔ §XV.B–D (p.8) ↔ 참고문헌 (p.9) |
| 하네스 불필요 판단 | §XVI + Table XVI 결정 필터 (p.6–7) |
읽기 전 용어
- 래칫(Ratchet) — 매 실패를 하네스에 영구 수정으로 인코딩해 구조적 재발을 막는 원칙 (§II.B)
- 트립와이어(Trip wire) — 행동 드리프트 자동 경보(비용 평균 2배, 동일 오류 3회 등) (Table VII)
- 캐퍼빌리티 예산 — scope·rate·reversibility·visibility 4차원 상한 (§VII.B)
출처 역조사
참고문헌 15건 역대조. ✅ 실재 13 · ⚠️ 표기 문제 6 · ❌ 제목 오류 1.
| # | 원문 표기 | 역조사 결과 |
|---|---|---|
| 1 | Hashimoto, My AI Adoption Journey, 2026-02-05 | ✅ https://mitchellh.com/writing/my-ai-adoption-journey |
| 2 | Lopopolo, Harness engineering: leveraging Codex…, OpenAI, 2026-02-11 | ✅ 3명·5개월·~1,500 PR·~1M 라인. https://openai.com/index/harness-engineering/ |
| 3 | Böckeler, Harness engineering for coding agent users, 2026-04 | ✅ guides-and-sensors 분류. https://martinfowler.com/fragments/2026-04-29.html |
| 4 | Mollick, A Guide to Which AI to Use in the Agentic Era, 2026 | ✅ Models/Apps/Harnesses 3층 |
| 5 | Trivedy, The Anatomy of an Agent Harness, LangChain, 2026-03-10 | ⚠️ 게시일 3월 16일 전후. https://blog.langchain.com/the-anatomy-of-an-agent-harness/ |
| 6 | Masood, Agentic Harness Engineering, 2026-06 | ✅ GAIA 30.91→74.55 실재. https://medium.com/@adnanmasood/agentic-harness-engineering-the-operating-system-for-machine-intelligence-ce4fa48e9520 |
| 7 | LangChain, Improving Deep Agents…, 2026-02-17 | ⚠️ 실제는 52.8→66.5%(+13.7pt), gpt-5.2-codex 고정 — 문서는 순위만 인용. https://blog.langchain.com/improving-deep-agents-with-harness-engineering/ |
| 8 | Faros AI, AI Engineering Report 2026, 2026-08 | ✅ 개발자 22,000·팀 4,000+. https://www.faros.ai/blog/ai-acceleration-whiplash-takeaways |
| 9 | Can.ac, I Improved 15 LLMs at Coding in One Afternoon, 2026 | ⚠️ 실재(Can Bölük). 15개 모델 — 본문은 16개로 오기. https://blog.can.ac/ |
| 10 | Tan, How Cursor Turned AI Agents Into Better Engineers, 2026-08-12 | ⚠️ 글이 아니라 60분 Maven 워크숍. https://maven.com/p/e23d9c/how-cursor-turned-ai-agents-into-better-engineers |
| 11 | Google Cloud, Harness Eng. for Multi-Agent Systems Using ADK 2.0, 2026-07 | ⚠️ §XVII.A가 인용한 “SpaceXAI Playbook”과 다른 문서. https://medium.com/google-cloud/harness-engineering-for-multi-agent-systems-using-google-adk-2-0-e248b885cb95 |
| 12 | Anthropic, Building Effective AI Agents, 2024-12 | ⚠️ §XVII.B가 인용한 “Knowledge Graph Cookbook”과 다른 문서. https://www.anthropic.com/engineering/building-effective-agents |
| 13 | Osmani, Agent Harness Engineering, 2026-04 | ✅ 실제 게시 2026-05-15, O’Reilly Radar. https://www.oreilly.com/radar/agent-harness-engineering/ |
| 14 | OpenAI, Codex Agent Best Practices, 2026 | ⚠️ 문서군 실재. §VI.B의 73%→85%는 미확인. https://developers.openai.com/codex/learn/best-practices |
| 15 | Schmid, Trajectory-Capture as Competitive Advantage, 2026 | ❌ 그 제목의 글 없음. 실제는 The importance of Agent Harness in 2026. https://www.philschmid.de/agent-harness-2026 |
Wiki 연결
- Code as Agent Harness - Toward Executable, Verifiable, and Stateful Agent Systems — 6계층이 “실행 가능·검증 가능·상태 유지” 설계 원칙에 어떻게 대응되는지 비교할 것.
- Cross-Model LLM Code Review - Should you use Claude to review Codex or vice versa — §XVII.C의 producer bias(검증자는 생성자와 독립이어야 함) 논거와 직결.
- A Comprehensive Survey of Self-Evolving AI Agents - A New Paradigm Bridging Foundation Models and Lifelong Agentic Systems — 래칫과 self-evolving 루프가 유사. 이쪽이 처방이면 서베이는 분류 틀.
BibTeX
@misc{harness_engineering_2026,
title = {Harness Engineering --- Agent = Model + Harness: The 6-Layer Production Playbook},
howpublished = {Independently compiled technical note (grey literature)},
note = {Running head: Production Agent Engineering Practice 2026. No named author; no public URL},
year = {2026}
}