Chapter 9: Codex 고급 멀티에이전트 — 의존성 그래프와 메타하네스
9.1 자기 수정 하네스
6장에서 의존성 그래프를 선언하고, 에이전트들이 자율적으로 태스크를 실행하는 패턴을 배웠다. 이제 한 단계 더: 그 에이전트들이 자기가 따르는 하네스를 직접 개선하면 어떻게 되는가?
Meta-Harness 논문(arXiv 2603.28052) [Um, 2026]의 핵심 아이디어가 바로 이것이다. Proposer 에이전트가 이전 모든 후보 하네스의 소스코드, 실행 트레이스, 점수를 파일시스템에서 읽고 새 하네스를 제안한다. 이것이 outer-loop로 반복된다. 결과:
- 텍스트 분류: SOTA 대비 +7.7점, 4배 적은 토큰
- IMO 수학: 5개 모델 평균 +4.7점
- TerminalBench-2: 수작업 baseline 상회
하네스가 스스로를 최적화하는 것이다.
9.2 의존성 그래프 — 실전
6장의 DAG 개념을 실제 코드로 구현해보자. Claude Code의 Agent Teams API [Anthropic, 2026]를 사용한다:
// 오케스트레이터 에이전트의 코드
const { TeamCreate, TaskCreate } = require('@anthropic/claude-code');
// 1. 팀 생성
const team = await TeamCreate({
members: ['architect', 'implementer', 'tester', 'reviewer']
});
// 2. 태스크 의존성 그래프 선언
const tasks = [
TaskCreate({ id: 't1', name: 'design-api', assignee: 'architect' }),
TaskCreate({ id: 't2', name: 'implement-core', assignee: 'implementer',
blockedBy: ['t1'] }),
TaskCreate({ id: 't3', name: 'write-tests', assignee: 'tester',
blockedBy: ['t2'] }),
TaskCreate({ id: 't4', name: 'review-all', assignee: 'reviewer',
blockedBy: ['t2', 't3'] }),
];
// 3. 에이전트들이 자율적으로 리프 태스크를 claim해서 실행
await team.execute(tasks);
리프 태스크(선행 의존성 없는 태스크)부터 에이전트들이 자율적으로 선택한다. t1이 완료되면 t2가 unlock된다. t2와 t3가 모두 완료되면 t4가 unlock된다.
observability: [IndyDevDan, 2026]의 접근처럼, hooks를 통해 태스크 시작/완료를 로깅하면 전체 그래프 실행을 추적할 수 있다 .
9.3 메타하네스 — 자기 최적화
메타하네스는 에이전트가 자기 하네스(AGENTS.md / SKILL.md / config.toml)를 개선하는 outer-loop다. 두 가지 접근:
접근 1: GEPA 스타일 피드백 루프
[Jagtap, 2026]의 GEPA(Generalized Evolutionary Prompt Automation) 접근:
- 에이전트 실행 → 결과 수집
- 실패 패턴 추출 (어떤 AGENTS.md 지시를 무시했는가?)
- AGENTS.md에 새 규칙 제안
- 다음 실행에 적용 → 다시 1단계
# 메타하네스 outer-loop (의사 코드)
while True:
# 에이전트 실행
results = run_agent(current_agents_md, tasks)
# 실패 패턴 분석
failures = extract_failures(results)
# AGENTS.md 개선 제안
new_agents_md = proposer_agent(
current_agents_md=current_agents_md,
prior_runs=filesystem.read_all_runs(),
failures=failures
)
# 평가 후 반영
if evaluate(new_agents_md) > evaluate(current_agents_md):
current_agents_md = new_agents_md
접근 2: 파일시스템 기반 경험 축적
Meta-Harness 논문의 핵심 통찰 [Um, 2026]: 피드백을 압축하지 말고 원본 그대로 보존한다. 이전 실행의 소스코드 + 트레이스 + 점수를 파일시스템에 그대로 저장하고, proposer 에이전트가 전체를 읽는다. 피드백을 요약하면 "왜 이 전략이 실패했는지"를 잃는다.
이것이 하네스 설계에 주는 교훈: CLAUDE.md / AGENTS.md는 "현재 버전의 정적 파일"이 아니라 "실행 이력과 함께 진화하는 살아있는 문서"로 관리할 때 더 효과적이다.
9.4 git worktrees — Agent Teams 이전의 병렬화
[IndyDevDan, 2026]가 기록한 방법 — Agent Teams API 이전에 git worktrees로 병렬화를 달성하던 방식:
# 여러 브랜치에서 동시에 작업
git worktree add ../feature-auth feature/auth
git worktree add ../feature-payments feature/payments
git worktree add ../feature-notifications feature/notifications
# 각 디렉토리에서 독립적으로 claude 실행
cd ../feature-auth && claude "implement auth module"
cd ../feature-payments && claude "implement payment module"
cd ../feature-notifications && claude "implement notifications"
이 패턴은 Agent Teams의 공식 병렬화가 나오기 전의 중요한 브릿지였다. 지금도 Codex의 branch-per-task와 함께 쓸 수 있다.
9.5 3-tier 로컬 모델 아키텍처
[NGUYEN, 2026]의 프로덕션 아키텍처:
[Tier 1: Local LLM (llama/deepseek-coder)]
↓ planning, code analysis, AGENTS.md 초안
[Tier 2: Frontier API (GPT-5.5 / Opus 4.7)]
↓ 핵심 구현, 복잡한 추론
[Tier 3: Dedicated Review Agent]
↓ 보안 체크, 코드 품질 검증
비용: Tier 1은 로컬 실행으로 API 비용 없음. Frontier API는 Tier 2에만 사용. 전체 비용 70-80% 절감 가능.
메타하네스 맥락에서: Tier 1 로컬 모델이 AGENTS.md 개선 제안을 빠르게 실험하고, Tier 2 frontier가 최종 평가를 한다. 실험 비용이 극적으로 낮아진다.
9.6 ch 12를 향한 브릿지 — 자율 연구로
Karpathy의 autoresearch 실험 [Karpathy, 2026] — GPT-2 학습 최적화에 700회 실험 / 2일 — 은 이 챕터의 메타하네스를 연구 도메인에 적용한 것이다. 에이전트가 실험을 설계하고, 실행하고, 결과를 분석하고, 다음 실험을 제안한다. 하네스가 연구 루프 자체가 된다.
이 방향이 12장에서 다루는 AI Scientist의 출발점이다.
참고문헌
- Anthropic, "Agent Teams," 2026. [Anthropic, 2026]
- Lee, Yoonho et al., "Meta-Harness: End-to-End Optimization of Model Harnesses," arXiv 2603.28052, 2026. [Um, 2026]
- B327Roy, "Multi-agent retrospective," 2026. [brunch), 2026]
- Jagtap, "Codex AGENTS.md auto-optimization (GEPA)," 2026. [Jagtap, 2026]
- Fulton, Alex, "Inside the agent harness," 2026. [Fulton, 2026]
- Luong, "Local LLMs with frontier — 3-tier," 2026. [NGUYEN, 2026]
- IndyDevDan, "Claude Code hooks for multi-agent observability," 2026. [IndyDevDan, 2026]
- IndyDevDan, "Pre-Agent-Teams parallelization with git worktrees," 2026. [IndyDevDan, 2026]
- Karpathy, Andrej, "Autoresearch," 2026. [Karpathy, 2026]
- Intuition, "Codex as superapp — multi-agent," 2026. [IntuitionLabs, 2026]