agentic-harness

방법론 · 04

Context Engineering

context window 자체를 1급 엔지니어링 대상으로 다루는 4가지 원칙: write · select · compress · isolate.

Karpathy 가 2025년 초에 X 에 한 줄로 적은 표현이 있습니다 — “context engineering 은 다음 한 단계를 위해 컨텍스트 윈도우를 정확히 채우는 섬세한 예술이자 과학입니다.” 이 한 줄이 지금 멀티 에이전트 시스템 설계의 가장 중요한 키워드가 됐습니다. 컨텍스트 윈도우는 무한하지 않고, 무한해도 비싸지고, 비싸지 않아도 오래된 정보가 새 정보를 흐립니다. 그래서 우리는 컨텍스트 자체를 1급 엔지니어링 대상으로 다뤄야 합니다.

Context engineering is the delicate art and science of filling the context window with just the right information for the next step.

왜 이게 중요한가요

장시간 실행되는 에이전트 작업은 토큰을 끊임없이 쌓아 갑니다. 그 결과로 보통 셋 중 하나가 일어납니다.

  • 컨텍스트 윈도우 초과 — 환각, 혼란, 성능 저하
  • 비용·지연 폭증 — 토큰이 늘수록 추론 시간과 비용이 모두 늘어납니다
  • 성능 저하 — 오래된, 무관한 정보가 새로운 결정을 흐립니다 (context dilution)

Context engineering 은 컨텍스트 윈도우를 “관리되는 자원(managed resource)” 으로 다룹니다. 공짜 점심이 아닙니다.

4개의 기본 도구 — Lance Martin (LangChain) 의 framework

  • Write Context — 정보를 윈도우 밖에 적어 둡니다 (스크래치패드, 메모리 파일).
  • Select Context — 필요할 때 관련 정보를 가져옵니다 (RAG, 임베딩, 메모리 검색).
  • Compress Context — 토큰은 줄이되 의미는 보존합니다 (요약, 트리밍).
  • Isolate Context — 정보를 서브에이전트 또는 별도 런타임으로 분리합니다.
Long-running tasks accumulate tokens. Context engineering treats the context window as a managed resource, not a free lunch.

실제 적용 — CLAUDE.md 안의 컨텍스트 운영 원칙

CLAUDE.md (발췌)markdown
# AIOps 하네스를 위한 Context Engineering

## Write Context (윈도우 밖에 영속화)

### Scratchpad 패턴
- 긴 작업 중에는 .claude/memory/scratchpad.md 에 메모합니다
- 형식: ## [작업명] | 상태: in-progress | 사용 토큰: 5,234
- 컨텍스트가 차오르면 scratchpad 를 요약하여 detail 파일로 archive 합니다

### Memory 계층
- MEMORY.md (인덱스, 처음 200줄만 로드) → 토픽 파일 링크
- 토픽 파일: debugging.md, tool-specs.md, design-decisions.md
- 에이전트는 시작 시점이 아니라 “필요할 때만” 토픽 파일을 읽습니다

## Select Context (관련 정보 가져오기)

### Tool spec 검색
- 도구 정의를 .claude/memory/tool-specs.md 에 저장합니다
- 매 반복마다 모든 도구가 아니라 “현재 작업에 관련된” 2~3개만 grep 으로 찾아 로드합니다

## Compress Context (토큰 줄이기)
- scratchpad 가 2KB 를 넘으면 완료된 섹션은 요약합니다
- 오래된 git diff 는 “refactored logging layer” 같은 한 줄 요약으로 압축합니다

## Isolate Context (서브에이전트로 분리)
- 코드 리뷰는 별도 read-only 리뷰어 서브에이전트에게 위임합니다
- 부모 에이전트는 리뷰어의 입력을 직접 보지 않고, 결과만 받습니다

다른 방법론 글도 있습니다 → Karpathy 방법론 · Ralph Loop · Eval-Driven Development · Agent Teams · Self-Improving Systems · AutoResearch 심층 분석