교육 영상 · 셀프 재생Learning video · self-running

RULE No.14

멀티에이전트 & 하네스 · 혼자 쓰지 말고 팀을 만들어라 · 시작을 누르면 음성과 함께 슬라이드가 자동 재생됩니다. Multi-agents & Harness · don't work solo, build a team · Press start and slides advance with narration.

1·2 언어 전환 · ← → 수동 이동 · Space 재생/정지1·2 language · ← → navigate · Space play/pause
멀티에이전트 & 하네스 · No.14
01 / 14 목차Index
  이동 · F 전체화면 · RULE №14 · BUILD A TEAM   navigate · F fullscreen · RULE №14 · BUILD A TEAM [email protected]
일시정지Paused
0 / 0
Home
교육 세션 · 혼자 말고 팀으로Learning session · a team beats a solo

RULE No.14

혼자 쓰지 말고
팀을 만들어라.
Don't work solo —
build a team.

지난 시간엔 일꾼 하나를 잘 설계했습니다. 그런데 일이 크고 복잡해지면 — 한 명으로는 안 됩니다. 오늘은 잘 만든 일꾼 여럿을 하나의 팀으로 조율합니다. Last time we designed one worker well. But when the job gets big and complex — one isn't enough. Today we coordinate many good workers into a single team.

이 강을 마치면, 큰 업무를 여러 역할로 나눠 동시에 진행시키고 결과를 한데 모을 수 있습니다. By the end of this lesson, you'll be able to split a big job into multiple roles, run them at the same time, and bring the results together.

As of 2026-06 · 오케스트레이션·하네스의 옵션 이름·도구는 버전마다 바뀝니다 — ‘혼자 말고 팀으로’라는 원리가 진실. [추론]As of 2026-06 · orchestration & harness option names and tools change by version — the principle ‘don't work solo, build a team’ is the truth. [inference]

팀 · TEAMTEAM
1막 — 더 시킨다고 빨라지지 않는다Act 1 — More tasks ≠ faster, better

한 명한테 다 시켰더니 — 느려지고, 흐려졌다.Pile it all on one — and it slows down, and gets foggy.

> 경쟁사 가격 조사하고, 상품 설명 쓰고, 마진 검증하고, 품의서까지 다 해줘

… 앞에서 정한 가격 근거가 흐려짐
… 설명 쓴 일꾼이 자기 마진 계산도 검증함
… 독립 작업도 한 줄로 줄 서서 느림

한 명한테 다 떠안기면, 책상(컨텍스트)이 흐려진다
> check competitor prices, write the product description, verify the margin, and draft the proposal too

… the pricing evidence set earlier gets foggy
… the worker that wrote the description also verifies its own margin calc
… even independent tasks queue in a single line, slow

Pile it all on one, and the desk (the context) fogs over

더 똑똑한 한 명이 아니라 — 역할을 나눈 ‘팀’이 답이다.Not a smarter single worker — a ‘team’ with split roles is the answer.

[추론] 한 세션에 모든 일을 몰면 (a) 컨텍스트가 차며 흐려지고 (b) 만든 자가 자기 결과를 검증하는 자기채점이 되고 (c) 독립 작업도 직렬로 처리돼 느리다. 예: 신상품 입점 검토에서 가격 조사·설명 초안·마진 검증·품의 취합을 한 세션에 다 시키면 세 가지 모두 발생. 더 큰 모델이 아니라 ‘나뉜 팀’이 푸는 문제. → 오늘의 질문: 언제·어떻게 팀으로 나누나.[inference] Pile every task into one session and (a) context fills and fogs over (b) the maker self-grades its own result (c) independent tasks run serially and slow. Example: asking one session to do competitor price research, product description drafting, margin verification, and proposal writing triggers all three. Not a bigger model but a ‘split team’ solves this. → Today’s question: when and how do you split into a team?

2막 — 팀은 어떻게 생겼나Act 2 — What a team looks like

팀 = 조율하는 ‘오케스트레이터’ + 일하는 ‘서브에이전트’들.A team = one orchestrator that coordinates + sub-agents that do the work.

오케스트레이터일을 쪼개 배분Orchestratorsplit & assign
가격 조사Price research경쟁사 가격 리서치competitor price research
설명 초안Description draft상품 설명 작성product description writing
마진 검증Margin check마진·재고 리스크 점검margin & inventory risk check
품의 취합입점 품의서로 종합Proposal compilecombine into entry proposal

오케스트레이터는 직접 다 하지 않는다 — 나눠 맡기고, 합친다.The orchestrator doesn't do it all — it delegates and combines.

[출처: docs.anthropic.com/en/docs/claude-code/sub-agents] 서브에이전트는 자신만의 컨텍스트에서 위임받은 작업을 수행하고 결과를 반환하는 별도 에이전트다 — 오케스트레이터(메인)는 일을 쪼개 배분하고 결과를 취합한다. 옵션·호출 방식은 2026-06 기준, 공식 문서로 현행 확인(대표 예).[source: docs.anthropic.com/en/docs/claude-code/sub-agents] A sub-agent is a separate agent that works in its own context and returns the result of a delegated task — the orchestrator (main) splits, assigns, and gathers results. Options & call syntax are as of 2026-06; confirm live via the official docs (representative example).

2막 — 따로 일하고, 결과만 돌려준다Act 2 — Work apart, return only the result

서브에이전트는 ‘과정’이 아니라 ‘결과’만 가져온다.A sub-agent brings back the result — not the whole process.

한 세션에 다 쌓으면Pile it in one session
모든 중간 과정·도구 출력이
그대로 쌓여 금방 흐려진다
every step & tool output
stacks up, fogs fast
서브에이전트로 격리하면Isolate in a sub-agent
자기 컨텍스트에서 길게 일해도
위로는 압축된 결과만 올라온다
works long in its own context
only the compressed result rises

[출처: docs.anthropic.com/en/docs/claude-code/sub-agents] 서브에이전트는 별도 컨텍스트 윈도우에서 작업하므로, 그 중간 과정은 메인 컨텍스트를 차지하지 않고 결과만 반환된다 — 이것이 ‘컨텍스트 격리’의 핵심. → 길고 지저분한 작업일수록 격리해서 결과만 받는다.[source: docs.anthropic.com/en/docs/claude-code/sub-agents] A sub-agent works in a separate context window, so its intermediate process doesn't occupy the main context — only the result returns. That's the core of ‘context isolation’. → The longer & messier the task, the more it pays to isolate and take only the result.

2막 — 격리가 사주는 것Act 2 — What isolation buys you

책상이 깨끗할수록, 일이 또렷해진다.The cleaner the desk, the sharper the work.

격리 안 함No isolation

책상이 차서 흐려지는 것 — 2강에서 본 그 흐려짐이 팀에서도 일어납니다. 주의가 분산되고, 오래된 내용이 현재 작업을 방해해요.The desk fills and fogs over — that same fogging from lesson 2 happens in a team too. Attention scatters, and old material interferes with the current task.

격리함With isolation

각자 작은 책상에서 또렷하게, 오케스트레이터는 결과만 모아 책상이 천천히 찬다.Each works sharply on a small desk; the orchestrator gathers only results, so its desk fills slowly.

토큰을 아끼는 게 아니라 — 컨텍스트를 보호하는 것. 2강의 룰 넘버 투가 여기서도 이어집니다.Not saving tokens — protecting context. Rule Number Two from lesson 2 carries right through here.

[출처: trychroma.com/research/context-rot] [출처: anthropic.com/engineering/effective-context-engineering-for-ai-agents] 정식 용어: 컨텍스트를 많이 쓸수록 어텐션이 분산되고 오래된 무관한 내용이 현재 작업을 방해해 성능이 약간 저하되는 현상 = 컨텍스트 로트(context rot). 격리하면 각 컨텍스트가 작게 유지돼 이를 늦춘다. (‘격리가 늦춘다’ 연결은 추론.)[source: trychroma.com/research/context-rot] [source: anthropic.com/engineering/effective-context-engineering-for-ai-agents] Technical term: the degradation caused by using more context — attention scatters and old irrelevant material interferes, reducing performance a little — is called context rot. Isolation keeps each context small and delays this. (The ‘isolation delays it’ link is inference.)

2막 — 동시에 하면 빠르다Act 2 — Run them at once

서로 무관한 일은 줄 세우지 말고, 동시에 시킨다.Independent tasks shouldn't queue — run them in parallel.

직렬Serial
A → B → C
시간이 전부 합산된다
A → B → C
the times all add up
병렬 (팬 아웃)Parallel (fan-out)
A · B · C 동시
가장 오래 걸리는 하나에 가까워진다
A · B · C at once
close to the single longest one
조건 — 서로 의존하면 직렬이 맞다Condition — if they depend on each other, serial is correct

[추론] 서로 의존하지 않는 작업을 여러 서브에이전트에 동시에 맡기면(병렬 fan-out) 전체 시간이 ‘합산’이 아니라 ‘가장 오래 걸리는 것’에 가까워진다 — 단, 서로의 결과에 의존하면 직렬이 맞다. 실제 단축 폭은 작업·환경마다 다름(구체 배수 단정 금지).[inference] Hand independent tasks to several sub-agents at once (parallel fan-out) and total time approaches ‘the longest one’, not ‘the sum’ — but if they depend on each other, serial is correct. Actual speedup varies by task & environment (no specific multiple claimed).

3막 — 격리의 메커니즘Act 3 — How isolation actually works

각자 다른 책상 — 그래서 서로의 잡동사니가 안 섞인다.Separate desks — so nobody's clutter bleeds into the others.

오케스트레이터 컨텍스트지시 + 취합된 결과만Orchestrator contextinstructions + gathered results only
결과만 올라온다only the result rises과정은 격리process isolated
도구 출력·시행착오tool output·trial & error안 올라옴stays below
서브에이전트 컨텍스트긴 과정은 안에 머문다Sub-agent contextthe long process stays inside

오케스트레이터는 ‘무엇을’만 알고 — ‘어떻게’의 잡음은 서브 안에 머문다.The orchestrator knows only the ‘what’; the ‘how’ noise stays inside the sub-agent.

[추론] 컨텍스트 격리의 메커니즘: 각 서브에이전트는 자신의 컨텍스트 윈도우에서 도구 출력·시행착오 같은 ‘과정’을 처리하고, 오케스트레이터에게는 압축된 ‘결과’만 올린다 — 과정의 토큰이 메인에 누적되지 않으므로 메인은 또렷하게 유지된다. → 잡음은 가두고, 결과만 흐르게.[inference] The isolation mechanism: each sub-agent handles the ‘process’ — tool output, trial and error — in its own context window, and sends the orchestrator only the compressed ‘result’. Process tokens never stack up in the main, so the main stays sharp. → Cage the noise, let only the result flow.

3막 — 만든 자가 채점하지 않는다Act 3 — The maker doesn't grade itself

만드는 에이전트와 검증하는 에이전트를 ‘나눈다’.Split the agent that makes from the agent that checks.

생산자초안·결과 생성Producergenerates draft·result
검증자별도 에이전트가 비판적으로 점검Verifiera separate agent checks critically
수정 / 통과문제 있으면 되돌림Revise / Passsend back if flawed

같은 에이전트가 자기 걸 검증하면 자기채점 — 별도 검증자가 봐야 약점이 보인다.If the same agent checks its own work, that's self-grading — a separate verifier sees the weak spots.

[추론] 생산자-검증자(producer–verifier) 패턴: 결과를 만든 에이전트가 자기 결과를 채점하면 자기채점 편향이 생기므로, 별도 검증 에이전트가 비판적으로 점검하게 한다 — s11 ‘do–verify(결과를 다시 읽기)’를 ‘만든 자/보는 자 분리’로 확장한 것. 검증 체계·품질 게이트의 세부 설계는 다음 강(s15) 소관.[inference] The producer–verifier pattern: if the agent that made the result grades it, self-grading bias appears, so a separate verification agent checks it critically — extending s11's ‘do–verify (re-read the result)’ into ‘separate maker from checker’. The verification system & quality-gate details belong to the next lesson (s15).

3막 — 하네스란 무엇인가Act 3 — What a harness is

하네스 = ‘누가·언제·무엇을’ 적어 둔 팀 운영 대본.A harness = a script that says who does what, when — a workflow.

① 가격 조사 호출 → 경쟁사 가격 수집
② 가격 데이터를 설명 초안에 전달
③ 마진 검증자 호출 → 통과 여부 확인
④ 통과하면 품의 취합 호출
① call price research → collect competitor prices
② pass price data to description drafter
③ call margin verifier → check pass/fail
④ on pass, call proposal compiler

매번 입으로 '이거 먼저, 그다음 저거' 지시하던 걸 — 체크리스트 문서 한 장에 적어 둔 것. 그게 하네스입니다.Instead of saying 'do this first, then that' every time — write it all down in one checklist document. That's a harness.

[출처: docs.anthropic.com/en/docs/claude-code/sdk] 하네스(workflow 스크립트)는 에이전트 호출 순서·전달·분기를 정해 둔 대본이다. 팀을 반복 가능하게 굴리는 방법. 프로그램적 호출 방식·플래그 등 기술 세부는 공식 문서로 현행 확인 (2026-06 기준). [추론] 체크리스트 비유는 비개발 실무자 이해를 위한 추상화.[source: docs.anthropic.com/en/docs/claude-code/sdk] A harness (workflow script) is a script that fixes agent call order, hand-offs, and branching to run the team repeatably. Programmatic call syntax & flags: confirm via official docs (as of 2026-06). [inference] The checklist metaphor is an abstraction for non-developer practitioners.

3막 — 좋은 하네스의 원칙Act 3 — Principles of a good harness

좋은 하네스는 4가지를 정해 둔다.A good harness pins down four things.

원칙Principle 무엇을 정하나What it pins down
역할 분리Role split 누가 무엇을 맡나who takes what
인터페이스Interface 입력·반환의 결과 계약the input·return result contract
검증 게이트Verification gate 검증자를 끼울 지점where the verifier slots in
중단·실패 처리Stop·failure handling 멈추고 사람에게 넘길 곳where to halt and hand to a human

[추론] 하네스 설계 4원칙 — (1) 역할 분리(s13 단일 에이전트 설계를 구성원으로), (2) 인터페이스/결과 계약(입력·반환을 명확히 해야 결과를 안전히 합칠 수 있음), (3) 검증 게이트(생산자-검증자를 어디 끼울지), (4) 중단·실패 처리(s13 중단 조건의 팀 버전). → 4가지를 적어 두면 팀이 매번 같게 굴러간다.[inference] The four harness principles — (1) role split (the single agent from s13 becomes a member), (2) interface / result contract (clear input·return so results combine safely), (3) verification gate (where to slot the producer–verifier), (4) stop·failure handling (the team version of s13's stop conditions). → Write the four down and the team runs the same way every time.

4막 — 팀을 꾸리기 전에Act 4 — Before you assemble the team

이 5가지로, 혼자 떠안지 말고 ‘팀’으로 나눈다.Split into a team with these five — don't carry it solo.

  1. 1
    정말 나눌 일인가?Is it really worth splitting? → 작고 단순하면 혼자가 빠르다→ if it's small and simple, solo is faster
  2. 2
    독립 작업이 있나?Are there independent tasks? → 있으면 병렬, 의존하면 직렬→ if so, parallel; if dependent, serial
  3. 3
    결과 계약을 정했나?Did you set the result contract? → 입력·반환을 명확히→ make input·return explicit
  4. 4
    검증자를 따로 뒀나?Did you place a separate verifier? → 만든 자 말고 다른 자→ someone other than the maker
  5. 5
    막히면 어디서 멈추나?Where does it stop when stuck? → 중단·실패를 대본에→ put stops·failures in the script

[추론] 5항목은 각각 슬라이드 03·06·10·08·10의 내용과 대응 — 나눌지·병렬·결과계약·검증자·중단. 팀은 ‘많이 부르면 좋은 것’이 아니라 ‘나눌 가치가 있을 때 설계하는 것’.[inference] The five map onto slides 03·06·10·08·10 — split-or-not·parallel·result contract·verifier·stops. A team isn't ‘good because you call more’ — it's ‘designed when it's worth splitting’.

4막 — 한 줄로 굳히기Act 4 — Lock it into one line

그래서 — 나눌 가치가 있으면, 격리·병렬·검증자·중단을 대본에 적는다.So — if it's worth splitting, script the isolation, parallelism, verifier & stops.

좋은 팀 = [나눌 가치] + [컨텍스트 격리] + [독립 작업은 병렬] + [별도 검증자] + [중단 처리]
  → 하네스(대본)에 적어 반복
A good team = [worth splitting] + [context isolation] + [independent → parallel] + [separate verifier] + [stop handling]
  → script it into a harness to repeat

[추론] Rule No.2(컨텍스트를 지켜라 — 격리)·No.10(작은 일들로 — 분할)·No.13(환경을 설계하라 — 단일 에이전트)·No.14(팀을 만들어라 — 조율)가 만나는 지점. → 팀을 설계할 줄 알면, 무엇을 나누고 무엇을 합칠지 자동으로 보인다.[inference] Where Rule No.2 (protect context — isolation) · No.10 (small tasks — splitting) · No.13 (design the environment — single agent) · No.14 (build a team — coordination) all meet. → Once you can design a team, what to split and what to combine becomes obvious.

4막 — 같은 일, 다른 결과Act 4 — Same job, different outcome

‘혼자 다 한다’와 ‘팀으로 나눈다’는 다르다.‘Doing it all solo’ and ‘splitting into a team’ are different.

혼자 다 떠안음Carry it all solo
컨텍스트 흐려지고, 자기채점하고, 직렬이라 느리다.Context fogs, it self-grades, and serial makes it slow.
팀으로 나눔Split into a team
격리로 또렷하고, 검증이 분리되고, 독립 작업은 병렬로 빠르다.Isolation keeps it sharp, verification is separated, independent tasks run parallel and fast.

[추론] 결과는 ‘더 똑똑한 한 명’이 아니라 ‘잘 나뉜 팀’에서 온다 — 혼자는 흐려지고·자기채점하고·느리지만, 팀은 격리로 또렷하고·검증이 분리되고·병렬로 빠르다. 단, 작은 일까지 팀으로 만들면 조율 비용만 늘어난다. → 나눌 가치가 있을 때 팀.[inference] The result comes not from ‘a smarter single worker’ but from ‘a well-split team’ — solo fogs·self-grades·slows, while a team is sharp via isolation·separated verification·parallel speed. But forcing even small jobs into a team only adds coordination cost. → A team when it's worth splitting.

닫으며 · 이 강도 팀이 만들었다Closing · this lesson was built by a team

혼자 쓰지 말고, 팀을 만들어라 —
이 강도, 그렇게 만들었다.
Don't work solo — build a team.
This lesson? Built by one.

한 단어로: 나눔 → 격리 → 검증 → 대본.In a word: split → isolate → verify → script.

이 강도 오케스트레이터 + 7개 팀으로 만들어졌다. 다음 강 예고 — 팀을 굴렸으니, 이제 품질과 신뢰를 설계할 차례 (Rule No.15).This lesson was built by an orchestrator + 7 teams. Next up — you ran the team, now design quality and trust (Rule No.15).

RULE No.14

[추론] 이 코스는 오케스트레이터 + 7개 서브에이전트(구조 감독·집필·슬라이드·팩트체크·발음검수·음성·다국어)로, 심화 리서치는 멀티에이전트 리서치 하네스(fan-out → 검증 → 종합)로 제작됐다. As of 2026-06.[inference] This course was built by an orchestrator + 7 sub-agents (structure·writing·slides·fact-check·pronunciation·audio·i18n), and the deep research ran on a multi-agent research harness (fan-out → verify → synthesize). As of 2026-06.

강의 노트Lecture notes

14강 · 멀티에이전트 & 하네스Lesson 14 · Multi-agents & Harness

Rule No.14 — 혼자 쓰지 말고 팀을 만들어라Rule No.14 — Don't work solo, build a team

강의 요약Summary

신상품 입점 검토를 한 사람한테 통째로 맡겨 봤습니다. 경쟁사 가격을 조사하고, 상품 설명 초안을 쓰고, 마진을 검증하고, 입점 품의서까지 혼자 다 시켰죠. 처음에는 잘 굴러가는 것 같습니다. 그런데 작업이 길어질수록 세 가지가 무너집니다. 앞에서 정해 둔 근거가 흐려지고, 초안을 쓴 사람이 자기 마진 계산도 검증하고, 서로 상관없는 일까지 한 줄로 늘어서 느려집니다. 이건 일꾼을 못 만들어서가 아닙니다. "한 명을 잘 만드는 것"과 "여럿을 팀으로 나누는 것"은 전혀 다른 문제이기 때문입니다.We tried handing the entire new-product onboarding review to one worker — research competitor prices, draft the product description, verify the margin, compile the entry proposal, all alone. At first it seems to run fine. But the longer the work goes, three things collapse: the pricing evidence set earlier goes foggy, the same worker that wrote the draft ends up verifying its own margin calculation, and even unrelated tasks queue up in one line and slow everything down. This isn't because the worker was poorly built. It's because "making one worker great" and "splitting many into a team" are entirely different problems.

이 강의의 핵심은 언제, 그리고 어떻게 팀으로 나누는가입니다. 팀의 기본 구조는 두 층입니다. 가운데에서 일을 쪼개고 결과를 모으는 오케스트레이터 하나, 그리고 각자의 좁은 컨텍스트에서 위임된 일을 처리하고 결과만 돌려주는 서브에이전트들. 핵심은 서브에이전트가 과정을 전부 올려보내지 않는다는 점입니다. 길고 지저분한 작업을 안에서 처리하고 압축된 결과만 위로 흘려보내기 때문에, 오케스트레이터의 책상이 깨끗하게 유지됩니다. 이것이 컨텍스트 격리입니다. 더 빠른 것도 있습니다 — 서로 의존하지 않는 일은 동시에 돌릴 수 있어서, 전체 시간이 가장 오래 걸리는 하나에 가까워집니다.The heart of this lecture is: when, and how, do you split into a team? The basic structure has two layers. In the center, one orchestrator that splits the job and gathers results; and sub-agents, each working in their own narrow context, handling a delegated task and returning only the result. The key is that sub-agents don't send all of their process upward. They handle the long, messy work inside and let only the compressed result flow up — so the orchestrator's desk stays clean. This is context isolation. Speed is also a gain — tasks that don't depend on each other can run at the same time, bringing total time close to the single longest one.

팀의 또 다른 원리는 생산자-검증자 분리입니다. 초안을 만든 일꾼이 자기 초안을 검증하면 약점을 보지 못합니다. 그래서 만드는 에이전트와 비판적으로 점검하는 에이전트를 따로 둡니다. 이 조율을 매번 말로 하면 반복도 안 되고 실수도 생기므로, 누가 언제 무엇을 받아서 무엇을 돌려주는지를 대본에 적어 두는 것이 하네스입니다. 좋은 하네스는 네 가지를 고정합니다 — 역할 분리, 결과 계약(무엇을 입력받고 무엇을 반환하나), 검증 게이트, 그리고 막히면 어디서 멈출지. 팀은 많이 부른다고 좋은 게 아닙니다. 나눌 가치가 있을 때 — 크고, 독립 작업이 있고, 검증이 필요한 일일 때 — 그때 팀을 만듭니다.Another principle is the producer–verifier split. A worker that made the draft cannot see its own weak spots when asked to verify it. So you keep a separate agent that produces and one that checks critically. Coordinating this by voice every time can't be repeated and invites mistakes — so writing down who, when, receives what, and returns what is what a harness does. A good harness locks in four things: the role split, the result contract (what goes in, what comes back), the verification gate, and where to stop when stuck. A team isn't better just because you call more agents. You build a team when it's worth splitting — when the job is big, has independent tasks, and needs verification.

핵심 개념 5가지Five key concepts

  1. 01

    더 똑똑한 한 명이 아니라, 잘 나뉜 팀Not a smarter single worker — a well-split team

    일이 커질 때 많은 분들이 더 강력한 모델을 찾습니다. 그런데 문제는 용량이 아니라 구조입니다. 한 명에게 다 몰면 컨텍스트가 흐려지고, 자기가 만든 걸 자기가 채점하며, 일이 직렬로 줄을 서서 느려집니다. 반면 잘 나뉜 팀은 각자 좁은 컨텍스트에서 또렷하게 일하고, 검증이 분리되고, 독립 작업은 병렬로 돌아갑니다. 좋은 결과는 더 똑똑한 한 명이 아니라 잘 나뉜 팀에서 나옵니다 — 단, 나눌 가치가 있을 때에만입니다.When a job grows, many people look for a more powerful model. But the problem isn't capacity — it's structure. Piling it on one worker fogs the context, makes it grade its own work, and queues tasks serially. A well-split team, by contrast, lets each work sharply in a narrow context, separates verification, and runs independent tasks in parallel. Good results come not from a smarter single worker but from a well-split team — but only when it's worth splitting.

  2. 02

    역할 분담과 결과 계약Role split and result contract

    오케스트레이터는 일을 쪼개고 배분하고 결과를 합칩니다. 서브에이전트는 자기만의 컨텍스트에서 위임된 일을 처리하고 결과만 돌려줍니다. 여기서 결과 계약이 중요합니다 — 각 서브에이전트가 무엇을 입력받고 무엇을 반환하는지가 명확해야 오케스트레이터가 결과를 안전하게 합칠 수 있습니다. 신상품 입점 예시라면, 가격 조사 담당은 경쟁사 가격 목록을 받아서 정리된 가격 표를 돌려주고, 설명 초안 담당은 그 표를 받아서 상품 설명을 돌려주는 식입니다. 계약이 모호하면 조합이 무너집니다.The orchestrator splits, assigns, and combines results. Sub-agents work in their own context, handle a delegated task, and return only the result. The result contract matters here — what each sub-agent takes in and what it returns must be clear so the orchestrator can safely combine what comes back. In the new-product onboarding example: the price-research role receives a product brief and returns an organized price table; the description-draft role receives that table and returns a product description. A vague contract breaks the combination.

  3. 03

    컨텍스트 격리 — 책상이 차면 흐려진다Context isolation — a full desk fogs

    서브에이전트의 핵심 가치는 컨텍스트 격리입니다. 아무리 길고 지저분하게 일해도, 그 과정의 토큰은 서브에이전트 자신의 책상에만 쌓입니다. 오케스트레이터한테 올라오는 건 압축된 결과뿐입니다. 그래서 오케스트레이터의 책상이 천천히 찹니다. 2강에서 배운 "컨텍스트를 보호하라"가 팀 수준에서 작동하는 방식이 바로 이것입니다. 격리는 속도를 위한 게 아니라 품질을 위한 설계 — 각 책상이 작게 유지될수록 일이 또렷해집니다.The core value of sub-agents is context isolation. No matter how long and messy their work is, those process tokens pile up only on their own desk. What rises to the orchestrator is only the compressed result. So the orchestrator's desk fills slowly. This is Rule No.2's "protect context" working at team scale. Isolation is a design for quality, not speed — the smaller each desk stays, the sharper the work.

  4. 04

    독립적인 것만 동시에Only the independent ones run at once

    팀의 속도 이점은 병렬 실행에서 옵니다. 서로 의존하지 않는 작업은 동시에 돌릴 수 있어서, 전체 시간이 셋을 합한 게 아니라 가장 오래 걸리는 하나에 가까워집니다. 단, 한 가지 조건이 있습니다 — 독립적인 작업에만 적용됩니다. B가 A의 결과를 받아야 시작할 수 있다면, 순서대로 직렬이 맞습니다. 일을 맡기기 전에 의존성을 먼저 따지고, 독립적인 것만 동시에 돌립니다. 정확히 얼마나 빨라지는지는 일과 환경마다 다르므로 숫자로 단정하지 않습니다.The team's speed benefit comes from parallel execution. Tasks that don't depend on each other can run at once, bringing total time close to the single longest one rather than the sum of all. One condition applies — only for independent tasks. If B can't start until it has A's result, sequential is correct. Before assigning work, check dependencies first and run only the independent ones at once. Exactly how much faster depends on the job and environment, so no specific multiple is claimed.

  5. 05

    하네스 = 팀을 굴리는 체크리스트 한 장The harness = one checklist that runs the team

    팀 조율을 매번 말로 하면 반복이 안 되고 실수가 생깁니다. 여러분이 매번 "이거 먼저, 그다음 저거"를 입으로 지시하던 걸 체크리스트 문서 한 장으로 적어 둔 것 — 그게 하네스입니다. 좋은 하네스는 네 가지를 고정합니다. ① 역할 분리: 누가 무엇을 맡는지. ② 인터페이스(결과 계약): 각 서브에이전트가 무엇을 받고 무엇을 반환하는지. ③ 검증 게이트: 생산자-검증자를 어느 지점에 넣는지. ④ 중단과 실패 처리: 막히면 어디서 멈추고 사람에게 넘길지. 대본에 적어 두면, 다음 신상품 입점 때도, 그다음에도 똑같이 돌릴 수 있습니다.Coordinating a team by voice every time can't be repeated and invites mistakes. Writing down in one checklist document what you'd otherwise say out loud — "do this first, then that" — is the harness. A good harness locks in four things: (1) role split — who takes what; (2) interface (result contract) — what each sub-agent receives and returns; (3) verification gate — where to slot in the producer–verifier; (4) stop and failure handling — where to halt and hand off to a human when stuck. Write it in the script, and you can run the same process for the next new-product onboarding, and the one after that.

실습 예제Exercise

하나의 요청을 세 역할로 쪼개 보는 연습입니다. 코드도, 설정 파일도 필요 없습니다 — 아래 지시문을 Claude 대화창에 그대로 붙여 넣어, "신상품 입점 검토"라는 업무를 조사 담당·작성 담당·검증 담당 세 역할로 나누고 각 역할의 입력·출력·완료 기준을 표로 정리시킵니다. 표가 나오면 그게 결과 계약입니다 — 그 순간 팀 설계의 첫 단계가 끝난 겁니다. 소재는 리테일 실무자가 실제로 마주치는 "신상품 입점 검토"이고, 어떤 업무든 같은 방식으로 역할을 쪼갤 수 있습니다.Practice splitting one request into three roles. No code, no config files — paste the instruction below straight into a Claude chat, and have it split the "new product onboarding review" job into three roles (research, writing, verification), then organize each role's input, output, and completion criteria into a table. When the table comes back, that's the result contract — at that moment, the first step of team design is done. The subject is "new product onboarding review," a task retail practitioners actually face, and any job can be split into roles the same way.

복사해서 Claude 대화창에 붙여넣기Copy & paste into a Claude chat

다음 업무를 세 가지 역할(조사 담당·작성 담당·검증 담당)로 나눠줘. 각 역할이 무엇을 입력받고, 무엇을 산출하고, 무엇이 되면 완료인지 표로 정리해줘: [신상품 입점 검토]Split the following job into three roles (research, writing, verification). Organize each role's input, output, and completion criteria into a table: [new product onboarding review]

## 표 형식## Table format

역할 / 입력 / 산출 / 완료 기준 — 이 네 열로 정리해줘.Role / Input / Output / Completion criteria — organize in these four columns.

## 주의사항## Notes

  • 역할 간에 정보가 어떻게 넘어가는지(입력→산출 연결)가 보이도록 정리해줘.Make it clear how information passes between roles (the input→output connection).
  • 완료 기준은 막연하게 "잘 완성"이 아니라, 다음 역할이 받아도 되는지 판단할 수 있는 구체적인 조건으로 써줘.Completion criteria should not be vague like "done well" — write them as concrete conditions the next role can use to decide whether to proceed.
  • 역할을 추가로 더 나눌 필요가 있으면 제안해도 되지만, 먼저 세 역할로 시작해줘.You may suggest further splits, but start with the three roles first.

성공 기준: 각 역할의 입력·출력·완료 기준이 표로 나오면 성공 — 그게 결과 계약입니다. 완료 기준 칸이 구체적이고 다음 역할이 판단할 수 있는 내용이면 설계가 잘 된 것입니다. 거꾸로 "잘 완성", "충분히 좋음" 같은 막연한 말이 완료 기준에 들어오면, 그 부분을 더 구체화해 달라고 요청해 보세요.Success criteria: if each role's input, output, and completion criteria appear in a table, you succeeded — that's the result contract. If the completion-criteria column is specific and actionable enough for the next role to decide, the design is good. Conversely, if vague phrases like "done well" or "good enough" appear in the completion criteria, try asking for more specific language.

  1. 표 받기: Claude 대화창에 위 지시문을 붙여 넣고 표를 받는다. 각 역할의 입력·산출·완료 기준이 채워졌는지, 역할 간 정보 흐름이 연결됐는지 확인한다.Get the table: Paste the instruction into a Claude chat and receive the table. Check that each role has its input, output, and completion criteria filled in, and that the information flow between roles is connected.
  2. 완료 기준 점검: 완료 기준 칸이 "다음 담당자가 판단할 수 있는 조건"인지 읽어본다. "경쟁사 가격 5개 이상, 동일 카테고리 기준" 같은 구체성이면 좋은 계약이다. "충분히 조사됨" 같은 막연한 표현이면 더 구체화를 요청한다.Check completion criteria: Read whether the completion-criteria column states "conditions the next person can use to decide." Something like "5 or more competitor prices, same category" is a good contract. Vague phrasing like "sufficiently researched" is a signal to ask for more specificity.
  3. 업무를 바꿔 보기: "[신상품 입점 검토]" 자리에 내 실제 업무를 넣어 다시 돌려본다 — 예를 들어 "주간 매출 보고서 작성"이나 "신규 공급업체 심사". 역할 이름과 입출력이 바뀌더라도 같은 표 구조가 나오면, 어떤 업무든 이 방식으로 팀 설계를 시작할 수 있다는 뜻이다.Swap the job: Replace "[new product onboarding review]" with a real task of your own — like "weekly sales report" or "new supplier screening." If the same table structure comes out with just different role names and inputs/outputs, it means you can start team design for any job this way.

전체 대본Full transcript

1 · RULE No.14 — 오프닝1 · Rule No.14 — Opening

지난 시간에 우리는 일꾼 하나를 잘 설계하는 법을 배웠죠. 역할은 좁게, 도구는 최소로, 멈춤과 실패는 미리, 그리고 테스트. 그런데 일이 점점 커지고 복잡해지면, 아무리 잘 만든 일꾼이라도 혼자서는 벅찹니다. 그렇다고 한 명한테 다 떠안기면 책상이, 그러니까 컨텍스트가 흐려져요. 그래서 오늘은 잘 만든 일꾼 여럿을 하나의 팀으로 조율하는 법, 룰 넘버 포틴, "혼자 쓰지 말고 팀을 만들어라"를 다뤄 보겠습니다. 멀티에이전트와 하네스예요. 이 강을 마치면, 큰 업무를 여러 역할로 나눠 동시에 진행시키고 결과를 한데 모을 수 있습니다.Last time we learned how to design one worker well: a narrow role, minimal tools, stops and failures planned in advance, and testing. But as the job grows bigger and more complex, even the best-built worker struggles alone. And if you pile everything onto one of them, the desk — the context — gets foggy. So today, under Rule Number Fourteen, "don't work solo — build a team," we'll cover how to coordinate many good workers into one team: multi-agents and the harness. By the end of this lesson, you'll be able to split a big job into multiple roles, run them at the same time, and bring the results together.

2 · 한 명한테 다 시켰더니2 · What happened when we piled it on one

한 가지 장면을 볼게요. 신상품 입점 검토를 한 세션에, 그러니까 일꾼 하나한테 다 시켰습니다. 경쟁사 가격 조사하고, 상품 설명 초안 쓰고, 마진 검증하고, 입점 품의서까지 전부요. 처음엔 잘 굴러가는 것 같아요. 그런데 작업이 길어질수록 세 가지가 무너집니다. 첫째, 앞에서 정해 둔 가격 근거나 결정이 흐려져요. 둘째, 설명을 쓴 바로 그 일꾼이 자기 마진 계산도 검증하게 됩니다. 셋째, 서로 상관없는 일까지 한 줄로 줄을 서서 느려져요.Let's look at one scene. A new product onboarding review — in a single session, one worker — I asked it to do everything: check competitor prices, draft the product description, verify the margin, and put together the entry proposal. At first it seems to run fine. But the longer the work goes, three things break down. One: the pricing evidence and decisions set earlier get foggy. Two: the very worker that wrote the description ends up verifying its own margin calculation. Three: even unrelated tasks line up in a single queue and slow everything down.

지난 시간에 일꾼을 아주 잘 설계했는데도 이런 일이 생깁니다. 왜냐하면 "한 명을 잘 만드는 것"과 "여럿을 팀으로 나누는 것"은 전혀 다른 문제거든요. 일이 커지면, 더 똑똑한 한 명을 찾을 게 아니라 역할을 나눈 팀이 답입니다. 그래서 오늘의 질문은 이거예요. 언제, 그리고 어떻게 팀으로 나누는가.This happens even when you designed the worker really well last time. Because "making one worker great" and "splitting many into a team" are completely different problems. When the job grows, the answer isn't to find a smarter single worker — it's a team with split roles. So today's question is this: when, and how, do you split into a team?

3 · 오케스트레이터 + 서브에이전트3 · Orchestrator + sub-agents

그럼 팀이 어떻게 생겼는지 보겠습니다. 가운데 조율하는 한 명이 있어요. 이걸 오케스트레이터라고 부릅니다. 오케스트레이터는 직접 모든 일을 하지 않아요. 대신 일을 잘게 쪼개서, 전문 일꾼들에게 나눠 맡깁니다. 이 전문 일꾼들이 바로 서브에이전트예요. 신상품 입점 예시라면, 한 명은 가격 조사, 한 명은 설명 초안, 한 명은 마진 검증. 그리고 오케스트레이터가 이 결과들을 모아 입점 품의서로 취합합니다.So let's see what a team looks like. In the center there's one coordinator. We call it the orchestrator. The orchestrator doesn't do all the work itself. Instead, it splits the job into small pieces and hands them out to specialist workers. Those specialists are the sub-agents. In the new product onboarding example: one does competitor price research, one drafts the product description, one checks the margin. Then the orchestrator gathers those results and compiles them into the entry proposal.

공식 문서를 보면 서브에이전트는 자신만의 컨텍스트에서 위임받은 작업을 하고, 그 결과를 돌려주는 별도의 에이전트라고 정의돼 있어요. 그러니까 오케스트레이터는 일을 쪼개서 배분하고, 돌아온 결과를 합치는 역할입니다. 호출 방식이나 옵션 이름은 2026년 6월 기준이고 버전마다 바뀌니까, 자세한 건 공식 문서로 확인하세요. 핵심만 기억하면 됩니다. 한 명에게 다 몰지 말고, 조율자 한 명과 전문가 여럿으로 나눈다.The official docs define a sub-agent as a separate agent that works in its own context and returns the result of a delegated task. So the orchestrator splits and assigns the work, then combines the results that come back. The exact call syntax and option names are as of June twenty twenty-six and change by version, so check the official docs for specifics. Just remember the core: don't pile it on one — split it into one coordinator and several specialists.

4 · 서브에이전트는 결과만 돌려준다4 · Sub-agents return only the result

여기서 진짜 중요한 포인트가 나옵니다. 서브에이전트는 일을 다 한 다음에, 과정 전부가 아니라 결과만 돌려줘요. 지난 강의 책상 비유를 다시 가져와 볼게요. 만약 한 세션에 다 쌓으면, 검색하면서 나온 출력, 시행착오, 중간 메모가 전부 오케스트레이터의 책상에 그대로 쌓입니다. 책상이 금방 꽉 차고 흐려지죠.Here comes the truly important point. After a sub-agent finishes its work, it returns only the result — not the entire process. Let me bring back the desk metaphor from last time. If you pile everything into one session, every search output, every trial and error, every interim note stacks right up on the orchestrator's desk. The desk fills and fogs over fast.

그런데 서브에이전트로 격리하면 달라요. 서브에이전트는 자기 책상에서 아무리 길고 지저분하게 일해도, 오케스트레이터한테는 깔끔하게 압축된 결과만 올려보냅니다. 그래서 오케스트레이터의 책상은 깨끗하게 유지돼요. 이게 바로 컨텍스트 격리입니다. 길고 지저분한 작업일수록, 따로 격리해서 결과만 받는 게 유리합니다.But isolating it in a sub-agent changes things. No matter how long and messy the sub-agent's work is on its own desk, it sends up only a clean, compressed result to the orchestrator. So the orchestrator's desk stays clean. This is exactly context isolation. The longer and messier the task, the more it pays to isolate it and take back only the result.

5 · 왜 격리가 이득인가5 · Why isolation pays

그럼 왜 책상이 깨끗한 게 그렇게 중요할까요. 두 번째 강에서 본 그 흐려짐, 기억하시죠. 책상이 차서 흐려지는 것. 주의가 분산되고, 오래된 내용이 지금 하는 일을 방해합니다. 성능이 조금씩 떨어져요. 그게 한 사람한테 다 시킬 때 생기는 문제였는데, 사실 팀에서도 똑같이 일어납니다. 오케스트레이터가 서브에이전트들의 과정을 전부 받으면, 그 책상도 금방 차거든요.So why does a clean desk matter so much? Remember that fogging we saw in lesson two — the desk filling up and getting foggy. Attention scatters, and old material interferes with what you're doing now. Performance degrades a little. That was the problem when you ask one worker to do everything — but the same thing happens in a team too. If the orchestrator receives all the process from every sub-agent, its desk fills up fast as well.

격리는 바로 이 문제를 늦춥니다. 작업을 서브에이전트들로 나누면, 각자의 책상이 작게 유지돼요. 작은 책상에서는 일이 또렷하죠. 그리고 오케스트레이터는 지저분한 과정은 안 받고 결과만 모으니까, 책상이 천천히 찹니다. 그래서 격리는 속도를 위한 게 아니라 품질을 위한 설계예요. 두 번째 강에서 배운 룰 넘버 투, 기억나시죠. 토큰을 아끼지 말고, 컨텍스트를 보호하라. 격리가 바로 그겁니다.Isolation is exactly what delays this problem. When you split work across sub-agents, each desk stays small. On a small desk, the work stays sharp. And since the orchestrator takes in only results, not the messy process, its desk fills slowly. So isolation isn't a design for speed — it's a design for quality. Remember Rule Number Two from early on? Don't save tokens — protect context. Isolation is precisely that.

6 · 병렬 실행 = 속도6 · Parallel execution = speed

팀의 또 다른 이점은 속도입니다. 서로 상관없는 일을 한 줄로 줄 세우면, A 끝나고 B 하고 그다음 C 하느라 시간이 전부 합산돼요. 이게 직렬입니다. 그런데 A, B, C가 서로 상관없는 일이라면, 세 명한테 동시에 맡길 수 있어요. 이걸 병렬, 또는 팬 아웃이라고 부릅니다. 그러면 전체 시간이 셋을 합한 게 아니라, 가장 오래 걸리는 하나에 가까워져요.Another benefit of a team is speed. If you line up unrelated tasks in a single queue — finish A, then B, then C — the times all add up. That's serial. But if A, B, and C are unrelated, you can hand them to three workers at once. We call this parallel, or fan-out. Then the total time isn't the sum of the three — it gets close to the single longest one.

여기서 딱 한 가지 조건이 있어요. 병렬은 서로 의존하지 않는 작업에만 됩니다. 만약 B가 A의 결과를 받아야 시작할 수 있다면, 그건 동시에 할 수가 없죠. 그럴 땐 직렬이 맞습니다. 그리고 정확히 몇 배 빨라진다고 단정하진 마세요. 줄어드는 폭은 일과 환경마다 다르거든요. 핵심은, 일을 맡기기 전에 의존성부터 따져서, 독립적인 것만 동시에 돌린다는 겁니다.There's exactly one condition. Parallel only works for tasks that don't depend on each other. If B can't start until it gets A's result, you can't run them at the same time — then serial is correct. And don't claim a specific speedup multiple. How much it shrinks depends on the task and the environment. The point is: before you assign work, check the dependencies first, and run only the independent ones at once.

7 · 컨텍스트 격리는 어떻게 작동하나7 · How context isolation works

그럼 격리가 정확히 어떻게 작동하는지 들여다볼게요. 각 서브에이전트는 자기만의 책상, 그러니까 자기만의 컨텍스트 윈도우를 가지고 있어요. 검색하다 나온 긴 출력, 이것저것 해본 시행착오, 중간 과정. 이 모든 잡동사니는 그 서브에이전트의 책상 위에서만 처리됩니다. 오케스트레이터의 책상으로는 넘어오지 않아요.So let's look at exactly how isolation works. Each sub-agent has its own desk — its own context window. Long search outputs, all the trial and error, the intermediate steps: all of this clutter is handled only on that sub-agent's desk. None of it crosses over to the orchestrator's desk.

오케스트레이터한테 올라오는 건 압축된 결과뿐이에요. 그러니까 오케스트레이터는 "무엇을" 했는지만 알고, "어떻게"의 시끄러운 잡음은 서브에이전트 안에 갇혀 있는 거죠. 이게 핵심입니다. 과정의 토큰이 메인 책상에 쌓이지 않으니까, 메인은 계속 또렷하게 유지됩니다. 잡음은 안에 가두고, 결과만 위로 흐르게. 이렇게 설계하는 거예요.What rises up to the orchestrator is only the compressed result. So the orchestrator knows just "what" was done, while the noisy "how" stays locked inside the sub-agent. This is the key. Because the process tokens never stack up on the main desk, the main stays sharp. Cage the noise inside, let only the result flow up. That's how you design it.

8 · 생산자-검증자 패턴8 · The producer–verifier pattern

자, 오늘 원리의 심장입니다. 처음 콜드 오픈에서 봤던 문제 중에, 만든 자가 자기 걸 검증한다는 게 있었죠. 글을 쓴 바로 그 일꾼한테 "잘 썼는지 검토해 줘"라고 하면, 사람도 그렇듯이 자기 글의 약점은 잘 안 보입니다. 이걸 자기채점이라고 해요. 편향이 생깁니다.Alright, the heart of today's principle. Among the problems we saw in the cold open, one was the maker verifying its own work. If you ask the very worker that wrote the draft to "review whether it's good," then — just like with people — it can't see the weak spots in its own writing. We call this self-grading, and it creates bias.

그래서 만드는 에이전트와 검증하는 에이전트를 나눕니다. 생산자가 초안을 만들면, 별도의 검증자가 비판적인 눈으로 점검하고, 문제가 있으면 다시 고치게 해요. 이걸 생산자-검증자 패턴이라고 부릅니다. 열한 번째 강에서 배운 "결과를 다시 읽기", 그 검증 루프를 한 단계 더 밀어붙인 거예요. 만든 자 말고, 다른 자에게 검증을 맡긴다. 다만 검증을 얼마나 촘촘한 체계로 설계하느냐, 품질을 어떻게 보장하느냐는 다음 시간에 따로 다룹니다. 오늘은 "검증자를 따로 둔다"까지예요.So we split the agent that makes from the agent that checks. The producer creates the draft, a separate verifier checks it with a critical eye, and if there's a problem, it sends it back to be fixed. We call this the producer–verifier pattern. It's pushing the "re-read the result" verification loop from lesson eleven one step further. Hand verification not to the maker, but to someone else. How elaborately you design that verification system, and how you guarantee quality — that's a separate topic for next time. Today we go only as far as "place a separate verifier."

9 · 하네스 = 팀을 굴리는 대본9 · The harness = the script that runs the team

그런데 이런 팀을 매번 말로 조율하면 너무 번거롭겠죠. "이제 가격 조사해, 됐어? 그럼 설명 초안 작성자한테 줘, 이제 마진 검증해…" 매번 이러면 반복도 안 되고 실수도 생겨요. 여러분이 매번 입으로 '이거 먼저, 그다음 저거' 지시하던 걸, 체크리스트 문서 한 장으로 적어 둔 것 — 그게 하네스입니다. 이 대본을 하네스, 또는 워크플로우 스크립트라고 불러요.But coordinating a team like this by talking every single time would be exhausting. "Now do the price research — done? Then give this to the description drafter — now verify the margin…" Doing this each time can't be repeated and invites mistakes. Instead of saying 'do this first, then that' every time by mouth — you write it all down in one checklist document. That's a harness, or a workflow script.

화면의 장면을 보세요. 가격 조사를 호출해서 경쟁사 가격을 수집하고, 그 데이터를 설명 초안 작성자에게 넘기고, 마진 검증자를 불러서 통과했는지 확인하고, 통과하면 품의 취합을 호출한다. 이렇게 누가, 언제, 무엇을 하는지를 절차로 굳혀 둔 거예요. 핵심은, 조율을 머릿속이나 대화가 아니라 대본에 적는다는 겁니다. 그러면 다음 신상품 입점 때도, 그다음에도 똑같이 돌릴 수 있어요. 지난 강의 "일꾼을 바꾸지 말고 일터를 설계하라"가 여기서도 이어집니다.Look at the scene on screen. Call the price research and collect competitor prices, hand that data to the description drafter, call the margin verifier to check whether it passed, and if it passes, call the proposal compiler. We've frozen who does what and when into a procedure. The point is: you write the coordination into a script, not into your head or a chat. That way, you can run exactly the same process for the next new product onboarding, and the one after that. Last time's "don't swap the worker, design the workplace" carries straight through here.

10 · 하네스 설계 4원칙10 · Four principles of harness design

그럼 좋은 하네스는 무엇을 정해 둘까요. 네 가지입니다. 첫째, 역할 분리. 누가 무엇을 맡는지 정합니다. 지난 시간에 잘 설계한 단일 에이전트가 여기서 팀 구성원으로 들어와요. 둘째, 인터페이스. 각 서브에이전트가 무엇을 입력받고 무엇을 반환하는지, 결과 계약을 명확히 해야 합니다. 이게 명확해야 돌아온 결과를 안전하게 합칠 수 있어요.So what does a good harness pin down? Four things. One: role split — decide who takes what. The single agent you designed well last time enters here as a team member. Two: interface — be clear about what each sub-agent takes as input and what it returns, the result contract. Only when this is clear can you safely combine the results that come back.

셋째, 검증 게이트. 아까 본 생산자-검증자를 어느 지점에 끼울지 정합니다. 넷째, 중단과 실패 처리. 막히면 어디서 멈추고 사람에게 넘길지를 미리 정해 둬요. 이건 지난 시간에 배운 중단 조건의 팀 버전입니다. 이 네 가지, 역할 분리, 인터페이스, 검증 게이트, 중단과 실패 처리. 이걸 대본에 적어 두면, 팀이 매번 같은 방식으로 안정적으로 굴러갑니다.Three: the verification gate — decide where to slot in that producer–verifier we just saw. Four: stop and failure handling — decide in advance where to halt and hand off to a human when it gets stuck. This is the team version of the stop conditions you learned last time. These four — role split, interface, verification gate, and stop-and-failure handling — once you write them into the script, the team runs the same stable way every time.

11 · 팀을 짜기 전 5점검11 · Five checks before you build a team

자, 오늘의 핵심입니다. 팀을 짜기 전에 다섯 가지만 점검하세요. 첫째, 이거 정말 나눌 일인가? 팀에는 조율 비용이 들어요. 작고 단순한 일이면 그냥 혼자 하는 게 빠릅니다. 둘째, 독립적인 작업이 있나? 서로 상관없으면 병렬로 동시에, 의존하면 직렬로. 셋째, 결과 계약을 정했나? 각 서브에이전트가 뭘 받고 뭘 돌려줄지를 명확히 해 두세요.Alright, here's the core insight. Before you assemble a team, check just five things. One: is this really worth splitting? A team has coordination cost. If the job is small and simple, doing it solo is faster. Two: are there independent tasks? If they're unrelated, run them in parallel; if they depend on each other, serial. Three: did you set the result contract? Be clear about what each sub-agent takes in and what it returns.

넷째, 검증자를 따로 뒀나? 만든 자가 자기 걸 채점하지 않도록, 별도의 검증자를 둡니다. 다섯째, 막히면 어디서 멈출지를 대본에 적었나? 중단과 실패 처리를 미리 정해 두세요. 여기서 정말 중요한 건, 팀은 많이 부른다고 좋은 게 아니라는 점이에요. 나눌 가치가 있을 때 설계하는 겁니다. 작은 일은 혼자, 크고 독립적이고 검증이 필요한 일은 팀으로. 이게 룰 넘버 포틴의 진짜 핵심입니다.Four: did you place a separate verifier? So the maker doesn't grade its own work, put a separate verifier in. Five: did you write into the script where it stops when stuck? Decide your stop-and-failure handling in advance. Here's what really matters: a team isn't better just because you call more agents. You design it when it's worth splitting. Small jobs solo; big, independent, verification-needing jobs as a team. That's the real heart of Rule Number Fourteen.

12 · 팀 설계를 한 줄 행동으로12 · Team design in one line

다섯 가지를 한 줄로 굳혀 볼게요. 나눌 가치가 있으면, 격리하고, 독립 작업은 병렬로 돌리고, 검증자를 따로 두고, 막힐 때 멈출 지점을 정해서, 이걸 전부 대본에 적어 반복한다. 오늘 배운 게 사실 앞에서 쌓아온 규칙들이 만나는 지점이에요. 컨텍스트를 지켜라가 격리로, 작은 일들로 쪼개라가 분할로, 환경을 설계하라가 단일 에이전트로, 그리고 오늘의 팀을 만들어라가 조율로. 팀을 설계할 줄 알면, 무엇을 나누고 무엇을 합칠지가 자동으로 보입니다.Let me lock the five into one line. If it's worth splitting, isolate it, run independent tasks in parallel, place a separate verifier, decide where it stops when stuck — and write all of it into a script to repeat. What you learned today is actually where the rules we've been stacking up all meet. Protect context becomes isolation, break it into small tasks becomes splitting, design the environment becomes the single agent, and today's build a team becomes coordination. Once you know how to design a team, what to split and what to combine becomes obvious on its own.

13 · 혼자 떠안기 vs 팀으로 나누기13 · Solo vs team — the comparison

맨 처음 콜드 오픈에서 봤던 그 장면, 한 명한테 다 시켰던 거 기억나시죠. 이제 결론으로 돌려받아 볼게요. 혼자 다 떠안으면 컨텍스트가 흐려지고, 자기가 만든 걸 자기가 채점하고, 일이 직렬로 줄을 서서 느립니다. 반대로 팀으로 나누면 어떻게 될까요. 격리 덕분에 각자 또렷하게 일하고, 검증이 분리돼서 약점이 보이고, 독립적인 일은 병렬로 돌아서 빠릅니다.That scene from the very first cold open, where we piled it all on one — remember? Now let's take it back as our conclusion. Carry it all solo, and context fogs over, it grades its own work, and tasks queue up serially and run slow. Split into a team, and what happens? Thanks to isolation, each works sharply; verification is separated, so the weak spots show; and independent tasks run in parallel and fast.

그러니까 좋은 결과는 더 똑똑한 한 명에서 나오는 게 아니라, 잘 나뉜 팀에서 나옵니다. 다만 한 가지만 잊지 마세요. 작은 일까지 굳이 팀으로 만들면 조율 비용만 늘어요. 나눌 가치가 있을 때, 그때 팀을 만드는 겁니다.So good results don't come from a smarter single worker — they come from a well-split team. Just don't forget one thing: forcing even small jobs into a team only adds coordination cost. When it's worth splitting — that's when you build the team.

14 · 마무리 — Rule No.1414 · Closing — Rule No.14

오늘 한 단어, 아니 네 단어만 가져가신다면 이겁니다. 나눔, 격리, 검증, 그리고 대본. 나눌 가치가 있으면 나누고, 컨텍스트는 격리하고, 검증은 만든 자 말고 다른 자에게 맡기고, 이 조율을 대본에 적는다. 그런데 사실 한 가지 고백할 게 있어요. 여러분이 방금 본 이 강의 자체가, 바로 멀티에이전트와 하네스의 결과물입니다.If you take one word — no, four words — from today, it's these: split, isolate, verify, and script. Split when it's worth splitting, isolate the context, hand verification to someone other than the maker, and write that coordination into a script. But there's actually something to confess. This very lesson you just watched is itself the product of multi-agents and a harness.

이 코스는 조율하는 오케스트레이터 한 명과, 일곱 개의 전문 팀으로 만들어졌어요. 구조를 감독하는 팀, 집필하는 팀, 슬라이드를 만드는 팀, 팩트를 체크하는 팀, 발음을 검수하는 팀, 음성을 다루는 팀, 그리고 다국어를 맞추는 팀. 게다가 심화 리서치는 멀티에이전트 리서치 하네스로 했습니다. 검색을 팬 아웃으로 펼쳐서 출처를 모으고, 적대적으로 검증하고, 인용을 종합하는 방식이죠. 우리가 오늘 가르친 그대로 만든 거예요. 자, 팀을 굴리는 법을 배웠으니, 다음 시간엔 그 결과물의 품질과 신뢰를 어떻게 설계하는지를 다룹니다. 룰 넘버 피프틴, 신뢰는 설계하는 것이다.This course was built by one coordinating orchestrator and seven specialist teams: a team that supervises structure, a team that writes, a team that builds slides, a team that fact-checks, a team that reviews pronunciation, a team that handles audio, and a team that aligns the languages. On top of that, the deep research was done with a multi-agent research harness — fanning searches out, gathering sources, verifying adversarially, and synthesizing the citations. We built it exactly the way we taught today. Now that you've learned how to run a team, next time we'll cover how to design the quality and trust of what it produces. Rule Number Fifteen: trust is something you design.