트리 골격은 같다 — Parent 한 줄 + 중간 2 + 리프 4~5 + Parent 합 검사.
4-1. 작업 트리 분해15 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-1-2 · CLOSE
리프 완결 + Parent 합 — 두 검사를 통과하면 다음 실습으로 넘어간다
한 리프가 완결됐고, 리프들의 합이 Parent를 설명한다. 이 두 검사가 통과한 트리 한 장이 다음 실습의 입력이다.
4-1. 작업 트리 분해16 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-1-3 · CLIP 3
CLIP 2004-1-320분 · 실습
실습 ① — 1-shot SKILL을 AC tree로 분해
3장에서 만든 1-shot SKILL 한 건(또는 본인의 1-shot SKILL)을 그대로 가져와, 그 안의 AC들을 ask / build / review 3분할 AC tree로 재정렬한 한 장을 만든다. 새 업무를 자르는 일이 아니라, 이미 있는 SKILL을 분업 후보로 다시 본다.
4-1. 작업 트리 분해17 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-1-3 · OVERVIEW
실습 한눈에
INPUT
1-shot SKILL 한 건
3장 프로젝트 1의 SKILL.md (권장) 또는 본인이 운영 중인 1-shot SKILL.
PROCESS
AC tree 분해
SKILL.md 5자리에서 AC raw 추출 → ask / build / review 3묶음 → 리프 네 칸.
OUTPUT
AC tree + 분업 가치 판정
한 장 분량 md. 다음 4-2 handoff 양식의 입력이 된다.
4-1. 작업 트리 분해18 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-1-3 · INPUT SPEC
입력 — SKILL.md 5자리에서 AC raw 뽑기
조건 1
1-shot SKILL이 있다
3장 프로젝트 1 산출물 (권장) 또는 본인이 운영 중인 1-shot SKILL.md 한 건.
조건 2
frontmatter description이 한 줄
그 SKILL이 "무엇이 끝났다고 하나"가 description에 이미 적혀 있다. Parent 한 줄로 그대로 옮긴다.
조건 3
검수자가 있다
최종 산출물을 누가 받는지 정해져 있다. 검수자가 없으면 완료조건을 적을 수 없다.
SKILL.md에서 AC raw 뽑는 5자리
역할 / 책임 범위책임 AC — "이 SKILL이 무엇을 책임지고 무엇을 안 한다"의 한 줄
입력 명세 · "비어 있으면 질문할 항목"ask 후보 AC — 의사결정자 질문 표
도메인 제약build 가드 AC + review 가드 AC — "외부 사실 추가 금지" 등
처리 순서 N단계build 행동 AC — 각 단계가 한 리프 후보
출력 형식 + 보존 표현 검사review AC — 형식 검사 + 인용 검사
4-1. 작업 트리 분해19 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-1-3 · PROCESS
작성 절차
STEP 1
AC raw 추출
SKILL.md 5자리(역할·입력 명세·도메인 제약·처리 순서·출력 형식)에서 AC 후보를 한 줄씩 옮긴다. 출처 섹션명 기록.
STEP 2
3분할
raw AC를 ask / build / review 세 묶음으로 분류한다.
STEP 3
리프 쪼개기
각 묶음 안에서 한 보조 세션이 받을 수 있는 리프 단위로 쪼갠다. 6~9개 권장.
STEP 4
네 칸 채우기
각 리프에 목적·입력·범위·완료조건 한 줄씩.
STEP 5
세 검사 + 분업 가치
Parent 합 / 겹침 / Orphan. 그리고 리프마다 "1-shot으로 충분 vs 분업 가치 있음" 판정.
4-1. 작업 트리 분해20 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-1-3 · WORKED EXAMPLE
데모 — chapter 3 SKILL을 AC tree로 (meeting-to-1page)
BEFORE · chapter 3
1-shot SKILL.md
--- meeting-to-1page ---
[1] 역할
회의록 → 1page
[2] 입력 명세
비어 있으면 질문할 항목
(결정권자·일정·수치·환불)
[3] 도메인 제약
외부 사실 금지
보존 표현 3줄 인용
[4] 처리 순서 1~6
맵핑 / 확인 필요 / 검사
[5] 출력 형식
출력 스키마
AFTER · chapter 4
AC tree
# AC tree
meeting-to-1page
├─ ask
│ ├─ 결정 질문 [2]
│ └─ 보존 추출 [3]
├─ build
│ ├─ 본문 채우기 [4-3]
│ └─ 확인 필요 [4-4]
└─ review
├─ 인용 검사 [4-5]
└─ 제약 검사 [3]
분업 가치
- 있음: review 2 · ask 1 (회차 누적·독립 판정)
- 낮음: build 2 · ask 1 (1-shot으로 충분)
4-2로 → 본문 채우기(build, handoff 연습용)
SKILL.md 본문 5자리가 AC tree 6리프로 정렬된다. 같은 골격이 다른 도메인(데이터·HR·콘텐츠)에서도 같이 적용된다.
4-1. 작업 트리 분해21 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-1-3 · DELIVERABLE
산출물 기준 — 한 장 AC tree 다이어그램
Parent 한 줄(SKILL description) + ask/build/review 3분할 + 리프 6~9개 + 리프 표 + 세 검사 + 분업 가치 판정 — 한 장 분량.그중 build 묶음 리프 1개(예: 본문 채우기)를 골라 다음 4-2 handoff 양식의 입력으로 가져간다 — handoff는 build→검수 흐름으로 익히는 게 가장 또렷하다.
4-1. 작업 트리 분해23 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTEPART 4-2
MODULE · 4-2 · C₂ Context
4-2. 세션 분리 설계
메인 세션은 상태판, 보조 세션은 소모품. 세션은 버려도 handoff는 남는다. 4세션 역할과 한 가지 handoff 양식을 정한다. 메인 컨텍스트가 무거워지지 않게 막는다.
SECTION BREAK24 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-2-1 · CLIP 1
CLIP 2004-2-120분 · 강의
질문·생성·검수를 왜 다른 세션으로 나누나
세 책임이 한 세션 안에 같이 있으면 메인 세션의 컨텍스트가 시행착오로 채워진다. 세션을 나누면 메인 세션이 다시 상태판으로 돌아간다.
4-2. 세션 분리 설계25 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-2-1 · WHY
한 세션 안에 다 있을 때 — 세 가지 실패
질문이 밀리면 보조 세션이 실행 중에 추측하고, 만드는 범위가 리프를 넘어서면 전체 기획을 다시 쓰며, 검수가 약해지면 같은 대화의 관성 때문에 자기 결과를 자기가 통과시킨다.
4-2. 세션 분리 설계26 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-2-1 · CONCEPT
4세션 — 맡는 일, 버릴 기억, 남길 handoff
Session
맡는 일
버릴 기억
handoff에 남길 것
메인
전체 목표·현재 상태·다음 결정만 보존
보조 세션의 대화 전문
상태판 한 줄, 결정, 대기 항목
ask
모호한 입력을 줄여 확인 질문 표 만들기
초안 생성과 임의 해석
결정된 요구, 남은 질문
build
리프 태스크 하나를 받아 산출물 만들기
범위 밖 아이디어, 시행착오
결과 요약, 완료조건 충족 여부
review
산출물이 목적·범위·완료조건을 만족하는지 독립 판정
자기 결과를 두둔하는 관성
pass / rework / ask-back / exit 판정
4-2. 세션 분리 설계27 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-2-1 · FIGURE
4세션 분업 — 상태판과 소모품
메인 세션은 상태판, 보조 세션은 소모품 — 돌려받는 것은 handoff 한 장뿐.
4-2. 세션 분리 설계28 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-2-1 · DEMO
데모 — "본문 채우기" 리프가 세션을 지나가는 길
단계
세션
메인 세션이 보는 것
1
메인 → ask
"회의록 결정 항목이 모호 — 결정권자에게 4종 질문" 한 줄
2
ask → 메인
확정 요구 표 + 남은 질문 표 (handoff만)
3
메인 → build
"본문 채우기" 리프 + 회의록 확정 묶음 + 확정 요구 표
4
build → 메인
본문 초안 + "완료조건 충족" 한 줄 (handoff만)
5
메인 → review
본문 초안 + 본문 채우기 완료조건
6
review → 메인
pass / rework / ask-back / exit 한 줄 + 사유
4-2. 세션 분리 설계29 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-2-1 · CLOSE
세션이 나뉘면 회수 양식이 필요하다
메인 세션이 보조 세션의 대화 전문을 들고 있지 않으려면, 보조 세션이 돌려주는 한 장의 형식이 미리 정해져 있어야 한다 — handoff 양식.
4-2. 세션 분리 설계30 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-2-2 · CLIP 2
CLIP 2004-2-220분 · 강의
handoff 포맷 — 세션은 끝나도 양식은 남는다
handoff는 보조 세션이 메인 세션에 돌려주는 한 장이다. 양식이 같으면 메인 세션은 어떤 보조 세션의 결과든 같은 위치에서 읽는다.
4-2. 세션 분리 설계31 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-2-2 · WHY
나쁜 handoff vs 좋은 handoff
구분
나쁜 handoff
좋은 handoff
길이
대화 전문 전체
한 장 — 표 + 한 줄 판정
다음 행동
읽고 사람이 다시 정해야 함
handoff 첫 줄만 보고 다음 세션이 시작
남은 질문
본문 어디엔가 흩어져 있음
"남은 질문" 칸에 따로 모아 있음
판정
"잘 됐다 / 안 됐다" 같은 톤
pass / rework / ask-back / exit 중 하나
4-2. 세션 분리 설계32 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-2-2 · CONCEPT
handoff 양식 — 모든 세션이 같이 쓴다
A · 받은 것
목적 / 입력 / 범위 / 금지 / 완료조건
4-1 리프에서 그대로. 입력엔 출처 파일(회의록 원문 등)까지 적는다.
B · 한 일 + 근거
결과 / 근거(출처)
보조 세션이 만든 결과 + 각 주장이 온 파일·줄. 자기보고만 있으면 안 된다.
C · 다음
판정 / 남은 질문 / 다음 첫 행동
pass·rework·ask-back·exit + 메인이 다음에 줄 한 줄.
4-2. 세션 분리 설계33 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-2-2 · TEMPLATE
handoff 양식 — 한 장 골격
# Handoff — <리프 ID> · <세션 종류> → 메인
## From task (4-1 리프)
- 목적:
- 입력:
- 범위 (하지 않을 일 포함):
- 금지:
- 완료조건:
## Result (이 세션이 채운 부분)
- 결과 요약: ← 본문 산출물의 한 줄 또는 표 한 장
- 근거(출처): ← 결과의 각 주장이 온 파일·줄 (자기보고 금지)
- 판정: ← pass / rework / ask-back / exit 중 하나
- 남은 질문: ← 미해결 의문 모음
- 다음 첫 행동: ← 메인 세션이 다음 보조 세션에 줄 한 줄
4-2. 세션 분리 설계34 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-2-2 · WORKED EXAMPLE
데모 — build 세션이 "본문 채우기"를 끝내고 돌려준 handoff
# Handoff — 본문 채우기 · build 세션 → 메인
## From task
- 목적: 회의록 확정 내용으로 1page 본문을 채움
- 입력: 회의록 원문(sample-meeting.md) + ask 세션 결정 답 + 보존 인용 3줄
- 범위: "확인 필요 항목"을 뺀 본문 전체. 회의록에 없는 사실 추가 금지
- 금지: 미확인 수치·일정·담당자를 결론처럼 쓰기
- 완료조건: 제목·배경·문제·사용자·해결 방향·성공 기준이 한 줄 이상씩
## Result
- 결과 요약:
| 칸 | 채운 내용 |
|---|---|
| 제목 | 사내 교육 신청 페이지 개편 v1 |
| 문제 | 일정·환불 안내가 안 읽혀 신청 후 CS 문의 |
| 성공 기준 | "신청 직후 환불·일정 문의를 줄인다" |
- 근거(출처):
- 성공 기준 ← sample-meeting.md:10
- 문제 ← sample-meeting.md:16
- 범위 밖(전체 리뉴얼 제외) ← sample-meeting.md:15
- 판정: 통과 ← 자체 검수 (review 세션 판정은 별도)
- 남은 질문: 성공 기준의 측정 단위·기간은 미확정
- 다음 첫 행동: review 세션에 본문 초안 + 근거(출처)를 함께 보낸다
4-2. 세션 분리 설계35 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-2-2 · CLOSE
같은 양식 한 장이면 메인 세션이 가볍다
양식이 채워진 한 장. 양식이 같으면 다음 결정이 빠르고, 같은 위치에서 pass·rework·ask-back·exit가 한 줄로 보인다.
4-2. 세션 분리 설계36 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-2-3 · CLIP 3
CLIP 2004-2-320분 · 실습
실습 ② — 본인 업무용 handoff 양식 v1
양식 골격에 본인 도메인 예시를 입혀 handoff 양식 v1을 만든다. 4-1에서 만든 리프 1개의 카드 + 가상의 생성 결과를 한 번 채워 본다.
4-2. 세션 분리 설계37 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-2-3 · OVERVIEW
실습 한눈에
INPUT
4-1 리프 1개
본인이 만든 작업 트리에서 리프 1개를 고른다. 가급적 build 세션 후보.
PROCESS
양식 + 채우기
양식 골격을 한 번 적고, 같은 리프의 가상 생성 결과를 채워 본다.
OUTPUT
handoff 양식 v1
한 장 분량. 양식 + 예시 1장이 같이 있다.
4-2. 세션 분리 설계38 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-2-3 · INPUT SPEC
입력 — 어떤 리프가 적합한가
조건 1
리프가 완결됐다
4-1 자기 검수 네 검사를 통과한 리프.
조건 2
가상 결과를 상상할 수 있다
이 리프를 끝냈다고 가정했을 때 결과 표 한 장이 떠오르는가.
조건 3
다음 세션이 정해진다
handoff를 받을 다음 세션(보통 review 세션)이 정해져 있다.
4-2. 세션 분리 설계39 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-2-3 · PROCESS
작성 절차
STEP 1
골격 옮기기
양식 골격을 본인 md 파일에 적는다. 칸 이름은 그대로.
STEP 2
리프 입력
4-1 리프의 목적·입력·범위·금지·완료조건을 위 5칸에 옮긴다.
STEP 3
가상 결과
이 리프가 끝났다면 어떤 표/한 줄이 나올지 상상해서 결과 요약 칸에 적는다.
STEP 4
판정·질문·행동
판정·남은 질문·다음 첫 행동 세 칸을 채운다.
STEP 5
읽기 시험
다음 세션 입장에서 handoff만 읽고 첫 행동을 정할 수 있는지 본다.
4-2. 세션 분리 설계40 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-2-3 · WORKED EXAMPLE
데모 — review 세션이 "본문 채우기" 결과를 받고 돌려준 handoff
# Handoff — 본문 채우기 · review 세션 → 메인
## From task
- 목적: build 세션이 만든 본문 초안이 본문 채우기 완료조건을 만족하는지 독립 판정
- 입력: build 세션 handoff (본문 초안) + 본문 채우기 완료조건
- 범위: 통과/재작업/ask-back/exit 한 줄과 사유까지. 본문 직접 수정 금지
- 금지: build 세션 대화 전문 참조, 임의로 칸 내용 추가/삭제
- 완료조건: 판정 한 줄 + 사유 한 줄 + 메인 세션의 다음 결정 한 줄
## Result
- 결과 요약:
- 형식: 9칸 + 근거(출처) 칸 다 채움 OK
- 증거: 성공 기준·문제는 줄 10·16에 있음 OK / "CS 문의 60%"는 줄 16에 60% 없음
- FN 보정: 60%는 수치라 표현차로 못 봐줌 — 누락 확정
- 판정: 재작업
- 남은 질문: 60% 출처가 회의록 어느 줄이었는지 확인 필요
- 다음 첫 행동: build 세션에 "60% 근거 줄을 달거나 본문에서 빼기"만 요청
4-2. 세션 분리 설계41 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-2-3 · DELIVERABLE
산출물 기준 — handoff 양식 v1
양식 골격 한 장 + 본인 리프 1개로 채운 예시 1장 — 한 페이지 분량.특히 근거(출처) 칸이 다음 4-3에서 증거 검사의 입력이 된다 — 검수가 자기보고 대신 이 줄들을 직접 대조한다.
4-2. 세션 분리 설계43 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTEPART 4-3
MODULE · 4-3 · C₃ Control + C₄ Confidence
4-3. 3단 검수 루프
검수는 결과를 세 단계로 본다 — 형식, 증거, false-negative 보정.안 한 작업은 통과시키지 않고, 한 작업은 잘못 반려하지 않는다.마지막에는 pass / rework / ask-back / exit 중 하나로 route를 정한다.
SECTION BREAK44 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-3-1 · CLIP 1
CLIP 2004-3-120분 · 강의
그럴듯한 결과와 실제로 쓸 만한 결과 구분하기
보기엔 다 채워졌는데 근거가 없는 결과 — 안 한 작업을 한 척하는 자기보고가 섞여 있다. 검수가 먼저 보는 것은 이 주장이 실제 근거에서 왔는지다.
4-3. 3단 검수 루프45 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-3-1 · WHY
보기엔 완성됐지만 근거를 대보라 하면 막힌다
표가 다 채워져 있고 문장이 다듬어져 있어도, 각 주장이 어느 파일·줄에서 왔는지 못 대면 그건 그럴듯한 결과다. 검수가 막아야 하는 곳은 바로 여기다.
4-3. 3단 검수 루프46 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-3-1 · CONCEPT
3단 — 형식 · 증거 · false-negative 보정
단계 1
형식
필수 칸이 다 있고 양식이 맞는가. 못 채우면 재작업 한 줄.
단계 2
증거 (실작업)
각 주장이 근거(출처) 칸의 파일·줄에 실제로 있는가. 근거 없는 주장은 안 한 작업 — 반려.
단계 3
false-negative 보정
2단이 반려한 것 중 표현만 다른 멀쩡한 작업은 되살린다. 수치·날짜·ID 같은 값만 끝까지 대조.
4-3. 3단 검수 루프47 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-3-1 · FIGURE
3단 검수 — 어디서 막히는가
단계별 실패는 단계별 Exit가 정해져 있다. Exit가 정해져 있어야 검수가 다음 행동을 정한다.
4-3. 3단 검수 루프48 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-3-1 · DEMO
데모 — build handoff를 3단으로 본다
단계
판정 질문
판정
다음 행동
형식
9칸 + 근거(출처) 칸이 다 있나
통과
2단으로
증거
각 주장이 근거 줄에 실제로 있나
1건 실패
"CS 문의 60%"가 줄 16에 없음 → 3단 확인
FN 보정
그 1건이 표현차인가 진짜 누락인가
재작업
수치라 누락 확정 — build에 "60% 근거 줄 달거나 본문에서 빼기"
4-3. 3단 검수 루프49 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-3-1 · CLOSE
검수가 돌려주는 것은 점수가 아니라 다음 행동
3단으로 본 결과는 pass·rework·ask-back·exit 중 하나로 정해진다. 정해져야 다음 세션이 그 한 줄만 보고 시작한다.
4-3. 3단 검수 루프50 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-3-2 · CLIP 2
CLIP 2004-3-220분 · 강의
[Case Study] oh-my-claudecode / OMC: 검증 gate가 왜 필요한지 읽기
OMC에 우리가 만들 deterministic gate가 그대로 들어 있다는 뜻은 아니다. OMC의 팀 에이전트 실행·검토·수정 흐름을 보면서, 왜 별도의 검증 gate가 필요한지 살펴본다.
4-3. 3단 검수 루프51 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-3-2 · WHY
OMC식 팀 흐름은 실행과 검토를 같은 책임으로 섞지 않는다
planner, executor, verifier, fix 흐름을 분리해 살펴보면 생성 결과가 곧 통과가 아니라는 점이 보인다. 여기서 우리는 검증 흐름의 필요성을 파악하고, 뒤에서 handoff 단위의 deterministic gate로 재구성한다.
4-3. 3단 검수 루프52 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-3-2 · TEMPLATE
우리가 만들 deterministic review gate — 한 장 골격
# Deterministic Review Gate — <리프 ID>
## Inputs
- handoff: <파일 또는 표> ← 근거(출처) 칸 포함
- 완료조건: <리프의 완료조건>
## Stage 1 — 형식
- 질문: 9칸 + 근거(출처) 칸이 다 있고 양식이 맞는가
- 결과: [통과 / 실패]
- 다음 행동: 통과면 Stage 2, 실패면 재작업
## Stage 2 — 증거 (실작업)
- 질문: 각 주장이 근거 줄(파일:줄)에 실제로 있는가 (자기보고 금지)
- 결과: [통과 / 실패한 주장 목록]
- 다음 행동: 근거 없는 주장 = 안 한 작업 → Stage 3에서 확정
## Stage 3 — false-negative 보정
- 질문: Stage 2가 건 주장이 표현차(산문)인가 진짜 누락(값)인가
- 규칙: 수치·날짜·ID 값이 근거에 없으면 누락 확정 / 산문 차이는 통과
- 다음 행동: 누락 확정이면 재작업, 표현차면 되살려 통과
## Verdict
- 한 줄 판정: pass / rework / ask-back / exit
- 다음 세션의 첫 행동:
4-3. 3단 검수 루프53 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-3-2 · WORKED EXAMPLE
데모 — 본문 초안 검수 한 장
# Review Loop — 본문 채우기
## Inputs
- handoff: build 세션 handoff (본문 초안 + 근거(출처))
- 완료조건: 본문이 각각 한 줄 이상
## Stage 1 — 형식
- 결과: 통과
- 사유: 9칸 + 근거(출처) 칸 다 채움
- 다음: Stage 2
## Stage 2 — 증거 (실작업)
- 결과: 1건 실패
- 사유: 성공 기준·문제는 줄 10·16에 있음 OK / "CS 문의 60%"는 줄 16에 60% 없음
- 다음: Stage 3에서 확정
## Stage 3 — false-negative 보정
- 결과: 누락 확정
- 사유: "60%"는 수치(구조화된 값) — 표현차로 못 봐줌
- 다음: 재작업
## Verdict
- 한 줄 판정: 재작업
- 다음 세션의 첫 행동: build 세션에 "60% 근거 줄을 달거나 본문에서 빼기"만 요청
4-3. 3단 검수 루프54 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-3-2 · ROUTING
verdict → route
판정
의미
다음 세션 + 첫 행동
통과
3단 모두 통과
다음 리프로 이동 / 통합 단계로
재작업
형식 또는 증거 실패(누락 확정)
같은 build 세션에 좁힌 한 줄 의뢰
ask-back
입력 자체가 모호해서 판정 불가
ask 세션에 확인 질문 의뢰
exit
입력 부족 / 외부 결정 대기
현재 결과 보존 + 메인 세션이 사람에게 보고
4-3. 3단 검수 루프55 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-3-2 · CLOSE
3단 + 4판정 — 검수가 한 장으로 마무리된다
형식·증거·false-negative 보정 세 단계와 pass·rework·ask-back·exit 네 판정이 한 양식 안에 들어 있다. 한 장만 보고 다음이 결정된다.
4-3. 3단 검수 루프56 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-3-3 · CLIP 3
CLIP 2004-3-320분 · 실습
실습 ③ — review gate와 exit rule 만들기
4-3-2 OMC에서 검증 흐름의 필요성을 봤다면, 이제 본인 리프 하나를 review -> rework -> ask-back -> exit로 route하는 review gate를 직접 만든다. 직접 돌려보면 드러난다 — format·값 대조 너머는 결국 sub agent가 sub agent를 검수하는 일이라, 이 gate는 결정론이 아니다.
4-3. 3단 검수 루프57 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-3-3 · OVERVIEW
실습 한눈에
INPUT
4-2 handoff 양식
본인 리프의 handoff 양식 v1 + 가상 결과 한 장.
PROCESS
review loop
format·evidence·FN 보정 뒤 pass/rework/ask-back/exit로 route.
OUTPUT
review loop protocol
한 장 분량. 4-4 작업분해 하네스의 guard가 된다.
4-3. 3단 검수 루프58 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-3-3 · INPUT SPEC
입력 — review할 한 장과 verdict rule
조건 1
handoff 양식이 있다
4-2에서 만든 본인 handoff 양식 v1 한 장.
조건 2
가상 결과가 있다
그 양식에 채운 가상 결과(본문 초안) 한 장 — 검수할 대상.
조건 3
완료조건이 있다
그 리프의 완료조건. 검수가 통과/실패를 가르는 판정 기준이 된다.
4-3. 3단 검수 루프59 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-3-3 · PROCESS
작성 절차
STEP 1
3단 골격
형식·증거·false-negative 보정 세 칸을 적는다.
STEP 2
판정 질문
본인 리프에 맞게 단계별 판정 질문을 한 줄씩 적는다.
STEP 3
한 번 돌리기
4-2 가상 결과를 입력으로 review loop를 실행해 본다.
STEP 4
같은 입력 두 번
같은 가상 결과를 새 세션에 다시 넣어 판정 단어가 같은지 확인 — Verifier 자체의 재현성 시험.
STEP 5
exit·ask-back 신호
"더 좋아지지 않는다"(exit)와 "입력이 모호해 판정이 안 된다"(ask-back) 신호를 한 줄씩 적는다.
4-3. 3단 검수 루프60 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-3-3 · WORKED EXAMPLE
데모 — "본문 채우기"의 exit/ask-back 기준
# Review Loop Protocol — 본문 채우기
## Inputs
- handoff: build 세션 handoff (본문 초안)
- 완료조건: 본문이 각각 한 줄 이상
## Stage 1 — 형식 [통과] 9칸 + 근거 칸 다 채움 → Stage 2
## Stage 2 — 증거 [실패] "CS 문의 60%" 줄 16에 60% 없음 → Stage 3
## Stage 3 — FN 보정 [누락] 60%는 수치 — 표현차로 못 봐줌
## Verdict
- 판정: 재작업
- 다음 첫 행동: build 세션에 "60% 근거 줄을 달거나 본문에서 빼기"만 요청
## exit 신호 (사람에게 보고)
- 재작업 3회 같은 Exit / 외부 답 대기 / 입력 자체 문제
## ask-back 신호 (ask 세션으로)
- 회의록 결정 항목이 2개 이상 해석 / 완료조건 단어가 2 해석
- 검수자가 같은 표현으로 두 번 판정 불가
4-3. 3단 검수 루프61 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-3-3 · CLOSE
이 검수는 결정론이 아니다 — OMC · OMX · Ouroboros로 넘어간다
산출물은 review loop protocol 한 장(format·evidence·FN + route + dry-run verdict)이다. 단 이 검수는 한 sub agent가 다른 sub agent의 결과를 판단하는 일이라 결정론이 아니다. 진짜 결정론은 행위자가 아니라 런타임이 근거를 소유할 때 생긴다.
OMC
세션 replay 로그
oh-my-claudecode. system이 skill·agent·mode 이벤트를 jsonl로 남겨 세션을 사후 재생한다. 관찰용이고 검수 gate는 아니다.
OmX를 read-only case study로 읽고(4-4-1), 4-1~4-3에서 만든 리프·handoff·review gate를 하나의 Agent Execution Graph로 잇는다(4-4-2). 그다음 메인 세션이 리프마다 sub agent를 띄워 그래프대로 실제로 돌리는 작업분해 하네스 v1을 만든다(4-4-3). OMX의 runtime surface는 예시로 보고, 분해 → handoff → 검수 → route 흐름을 본체로 남긴다.
SECTION BREAK64 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-4-1 · CLIP 1
CLIP 2004-4-120분 · 사례 학습
Case Study — oh-my-codex / OmX 구조 분석
실제 Codex 기반 하네스 레포 oh-my-codex / OmX를 skills·hooks·agent teams·status 관점으로 살펴본다. 도구 복제가 아니라 실행 graph에서 무엇을 workflow로 남기고 무엇을 runtime surface로 분리할지 보는 것이 목표.
4-4. 프로젝트 2 — 작업분해 하네스 v165 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-4-1 · CASE
사례 — oh-my-codex / OmX 구조 한눈에
메인 세션이 큰 일을 받으면 agents/의 역할 sub-agent를 띄워 한 리프를 위임하고, src/team/이 작업 배정·대기·취합을 맡고, bridge/가 실행 연결을 메인 상태판 밖으로 분리한다.우리는 이 표면에서 4C에 대응되는 capability만 추출한다.
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-4-1 · STRENGTH
강점 — 이 구조가 막는 실패
강점 1
메인 컨텍스트 보호
sub agent의 대화 전문이 메인 세션 컨텍스트로 들어오지 않는다.
강점 2
한 책임 분리
한 SKILL.md = 한 책임. 톤이 섞이지 않는다.
강점 3
Exit 한 장
판정 한 줄 + 다음 행동 한 줄로 다음 결정이 빠르다.
4-4. 프로젝트 2 — 작업분해 하네스 v168 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-4-1 · LIMIT
한계 — 이 구조가 닿지 못하는 곳
한계 1
장기 상태
여러 세션에 걸쳐 누적되는 결정과 실패 사유는 단순 status만으로 부족할 때가 있다.
한계 2
외부 시스템 호출
외부 API · 권한 관리 · 인증은 분업형 안에서 해결되지 않는다.
한계 3
복귀 지점
실패했을 때 어디로 돌아갈지 남기려면 checkpoint와 rewind 개념이 필요해진다.
4-4. 프로젝트 2 — 작업분해 하네스 v169 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-4-1 · APPLY
적용 — 다음 두 실습으로 옮길 항목
4-4-2
Agent Execution Graph
4-1 리프·4-2 handoff·4-3 review gate를 하나의 실행 그래프로 잇는다.
4-4-3
Task Decomposition Harness
메인 세션이 리프마다 sub agent를 띄워 그래프대로 실제로 돌린다.
4-4. 프로젝트 2 — 작업분해 하네스 v170 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-4-2 · CLIP 2
CLIP 2004-4-220분 · 실습
실습 ④ — 내 AC tree·handoff·review gate를 하나의 실행 그래프로 잇기
4-1 리프, 4-2 handoff, 4-3 review gate가 따로 있다. 이걸 하나의 Agent Execution Graph로 잇는다 — 어떤 리프를 어떤 sub agent가 받아, 어떤 review로 통과하고, 실패하면 어디로 가는지.
4-4. 프로젝트 2 — 작업분해 하네스 v171 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-4-2 · OVERVIEW
실습 한눈에
INPUT
앞 세 실습 산출물
4-1 AC tree(분업 가치 있는 리프) + 4-2 handoff 양식 + 4-3 review gate를 모은다.
PROCESS
리프를 node로 배선
분업 가치 리프가 node가 되고, handoff가 입출력, review gate가 guard, AC tree 순서가 edge가 된다.
OUTPUT
Agent Execution Graph
내 리프들이 누가·무슨 순서·무슨 handoff·무슨 review로 도는지 한 장. 다음 실습의 실행 입력.
4-4. 프로젝트 2 — 작업분해 하네스 v172 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-4-2 · INPUT MAP
입력 — 앞 세 실습이 graph의 어디로 들어가는가
출처
graph에서의 위치
4-1 분업 가치 있는 리프
node (이름은 리프 그대로)
4-2 handoff 양식
node의 input·output 계약
4-3 review gate
node의 guard와 verdict
AC tree 순서·의존 (Parent 합)
edge — ask → build → review, 독립이면 병렬
review gate의 pass/rework/ask-back/exit
route edge
4-4. 프로젝트 2 — 작업분해 하네스 v173 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-4-2 · WORKED EXAMPLE
데모 — Agent Execution Graph 한 장
# Agent Execution Graph — meeting-to-1page 분업
## Graph Goal
- 시작 입력: 회의록 원문
- 최종 산출물: 검수까지 통과한 1page 본문
- 성공 조건: 리프마다 handoff 한 장으로 돌고, review gate가 verdict를 남긴다
## Nodes (4-1에서 분업 가치 있다고 본 리프만)
| node = 리프 | sub agent | input (handoff) | output (handoff) | guard (review gate) |
|---|---|---|---|---|
| 회의록 결정 항목 질문 | ask 세션 | 회의록 원문 | 의사결정자 질문 표 | format: 질문·대상 칸 |
| 본문 채우기 | build 세션 | 회의록 확정 + 질문 답 | 1page 본문 + 근거(출처) | evidence: 근거 줄 대조 |
| 보존 표현 인용 검사 | review 세션 | 본문 + 원문 인용 3줄 | 통과 / 위반 줄 | FN 보정: 값 일치 |
## Edges
결정 항목 질문 -> 본문 채우기 -> 보존 표현 인용 검사
보존 표현 인용 검사 -> 본문 채우기 [rework: 근거 누락]
결정 항목 질문 -> ask 세션 [ask-back: 회의록 모호]
보존 표현 인용 검사 -> 메인 보고 [pass / exit]
4-4. 프로젝트 2 — 작업분해 하네스 v174 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-4-2 · CLOSE
그래프가 채워지면 sub agent를 실제로 돌린다
어떤 리프를 어떤 sub agent가, 어떤 handoff로, 어떤 review로 통과하는지 한 장에 잡혔다. 다음 실습에서 이 그래프대로 sub agent를 띄워 실제로 돌린다.
4-4. 프로젝트 2 — 작업분해 하네스 v175 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-4-2 · DELIVERABLE
산출물 기준 — Agent Execution Graph 한 장
Graph Goal + Nodes(분업 가치 리프 = sub agent) + Edges + Guards(review gate) + Routes — 한 페이지.node 이름은 일반명이 아니라 내 실제 리프다. 다음 실습에서 이 그래프대로 sub agent를 돌린다.
4-4. 프로젝트 2 — 작업분해 하네스 v177 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-4-3 · CLIP 3
CLIP 2004-4-320분 · 실습
[프로젝트 2] 내 그래프대로 sub agent를 실제로 돌리는 하네스 v1
4-4-2 Agent Execution Graph를, 메인 세션이 리프마다 sub agent를 띄워 실제로 돌리는 protocol로 만든다. 메인은 상태판, sub agent는 소모품 — handoff로 보내고, review gate로 받고, route로 다음을 정한다.
4-4. 프로젝트 2 — 작업분해 하네스 v178 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-4-3 · INPUT
입력 — graph가 하네스의 어디로 들어가는가
출처
하네스에서의 위치
4-4-2 Agent Execution Graph
하네스의 node·edge·guard·route 골격
4-2 handoff 양식
sub agent에 보내는 brief + 받는 한 장
4-3 review gate
각 node의 통과 판정과 첫 행동
내 실제 업무 입력 (회의록 등)
dry-run 시작 입력
sub agent 띄우는 방법 (Task · 새 대화창)
runtime surface — 바뀌어도 workflow는 그대로
4-4. 프로젝트 2 — 작업분해 하네스 v179 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-4-3 · STRUCTURE
Task Decomposition Harness v1 — 실행 contract
핵심은 메인 세션이 리프마다 sub agent를 띄워 handoff → review → route를 도는 루프다. sub agent를 띄우는 방법(runtime surface)은 예시일 뿐, 이 루프가 v1의 본체다.
# Task Decomposition Harness v1 — <내 업무 이름>
## Harness Contract
- input: 내 실제 업무 입력 (예: 회의록 원문)
- output: 검수까지 통과한 산출물 + 리프마다 verdict
- pass condition: 리프마다 handoff·근거·verdict·다음 행동이 있음
- exit condition: 같은 rework 반복 / 외부 결정 대기 / 입력 부족
## 메인 세션이 도는 루프 (리프마다)
1. handoff 양식으로 sub agent에 brief를 보낸다
2. sub agent가 handoff 한 장으로 결과를 돌려준다
3. review gate(format·evidence·FN 보정)로 통과시킨다
4. route: pass=다음 리프 / rework=같은 sub agent에 좁힌 재의뢰 / ask-back=ask 세션 / exit=사람 보고
## Runtime Surface (예시 — 바뀌어도 위 루프는 그대로)
| 항목 | 지금 내 도구에서 | 런타임 독립 workflow |
|---|---|---|
| sub agent 띄우기 | Claude Code Task · Codex sub-agent · 새 대화창 | node 실행 단위 |
| guard | review gate 프롬프트 | format·evidence·FN |
| handoff | markdown 한 장 | node 입출력 계약 |
| state log | 리프별 verdict 메모 한 줄 | route + 상태 기록 |
4-4. 프로젝트 2 — 작업분해 하네스 v180 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-4-3 · PROCESS
작성 절차
STEP 1
contract 고정
내 업무 input, 검수까지 통과한 산출물 output, pass/exit condition을 한 줄씩.
내 실제 리프 하나에 진짜 sub agent를 한 번 띄워 handoff → review → route를 돌려본다.
STEP 6
v2 backlog
상태 저장·checkpoint·재현 가능한 결정론 gate·MCP 후보 — 5장으로.
4-4. 프로젝트 2 — 작업분해 하네스 v181 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-4-3 · WORKED EXAMPLE
데모 — dry-run 결과 한 장
# Dry-run — meeting-to-1page 분업 (sub agent 1회 실제 실행)
## 요청
회의록(sample-meeting.md)으로 1page 본문을 채우고 검수까지 돌려줘.
## 메인이 띄운 sub agent와 회수
| 리프 (node) | sub agent | handoff 회수 | review verdict |
|---|---|---|---|
| 본문 채우기 | build 세션 | 1page 본문 6칸 + 근거(출처) | evidence 1건 실패 |
| 보존 표현 인용 검사 | review 세션 | 인용 3줄 대조 | (대기) |
## Route
- verdict: rework
- 다음 행동: build 세션에 "성공 기준 60% 근거 줄을 달거나 본문에서 빼기"만 재의뢰
- state log: 본문 채우기 = rework(근거 누락) · 나머지 리프 대기
4-4. 프로젝트 2 — 작업분해 하네스 v182 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-4-3 · DELIVERABLE
프로젝트 2 산출물 — 내 업무를 sub agent 분업으로 돌리는 하네스 v1
Harness Contract + 메인 루프(handoff → review → route) + Node = 내 실제 리프 + Runtime Surface(예시) + dry-run(진짜 sub agent 1회) + v2 Backlog내 업무 입력을 넣었을 때 리프마다 handoff·verdict·다음 행동이 같은 구조로 돌면 v1 합격. 상태·checkpoint·재현 가능한 결정론 gate는 5장.
4-4. 프로젝트 2 — 작업분해 하네스 v184 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTE2004-4-3 · BRIDGE
5장으로 — 런타임 독립 하네스로 간다
4장 작업분해 하네스의 한계 — 장기 상태, checkpoint, runtime adapter, 여러 node의 orchestration — 이 지점에서 5장 Capability Graph와 MCP형 하네스가 시작된다. 5-4의 Ouroboros는 이 빈칸을 Seed·AC Tree·event store·rewind로 읽게 해준다.
4-4. 프로젝트 2 — 작업분해 하네스 v185 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTECHAPTER SYNTHESIS
4장 정리 — 4C를 실행 graph로 모았다
4-1 · C₁
Contract
리프 네 칸이 다 채워졌는지 + Parent 합이 완결됐는지 — 보조 세션과 맺는 작은 계약.
4-2 · C₂
Context
메인은 상태판, 보조는 소모품. handoff 양식 한 장으로 메인 컨텍스트를 보호한다.
4-3 · C₃·C₄
Control + Confidence
형식·증거·false-negative 3단으로 흐름을 제어하고, pass·rework·ask-back·exit 한 단어로 위임 여부를 결정한다.
4-4 · 통합
Agent Execution Graph
4-1~4-3 산출물(리프·handoff·review gate)을 하나의 실행 그래프로 잇고, sub agent를 띄워 돌리는 작업분해 하네스 v1을 만든다.
CHAPTER SYNTHESIS86 / 87
FAST CAMPUS · CHAPTER 04 · KEYNOTEEND
CLOSING · CHAPTER 04
분업형 — 메인은 상태판, 보조는 소모품
큰 일을 리프로 잘라 보조 세션에 맡기고, handoff로 받아 검수로 되돌린다. 다만 검수는 아직 sub agent끼리의 판단이다 — 진짜 결정론과 상태·복귀는 5장 MCP형이 코드로 잠근다.