콘텐츠로 이동

03-실전

03. 실전 — “회의 예약” 비유로 보는 좋은 컨텍스트

섹션 제목: “03. 실전 — “회의 예약” 비유로 보는 좋은 컨텍스트”

Schmid는 컨텍스트 엔지니어링을 설명할 때 “회의 예약 어시스턴트” 비유를 쓴다. 같은 모델, 같은 사용자 요청이라도 컨텍스트가 다르면 결과가 마법처럼 달라진다.

  • 시스템 프롬프트: “너는 친절한 회의 예약 어시스턴트다.”
  • 사용자 프롬프트: “내일 오후에 김 부장님하고 30분 잡아줘.”
  • 도구: 없음.

결과: “네, 알겠습니다. 어떤 시간이 좋으세요?” — 아무것도 모른다.

  • 시스템 프롬프트: 같음.
  • 사용자 프롬프트: 같음.
  • 추가 컨텍스트:
    • 사용자의 캘린더(다음 7일간 빈 슬롯).
    • 김 부장과의 최근 이메일 스레드(미팅 의제와 선호 시간대).
    • 사내 컨퍼런스룸 가용성 도구.
    • 출력 형식: { "datetime": ..., "room": ..., "agenda": ... }.

결과: “내일 14:30~15:00에 4층 미팅룸 B로 잡았습니다. 의제는 Q2 OKR 리뷰로 채웠습니다.”

차이는 모델이 아니다. 컨텍스트다.

같은 비유를 코드 작업에 옮겨 보자.

슬롯싸구려 버전마법 버전
시스템 프롬프트(기본값)CLAUDE.md에 모노레포 구조·테스트 명령 명시
단기 기억30턴치 raw/compact로 핵심만 압축
장기 기억없음.omc/notepad.md + project-memory.json
RAG”전체 코드 다 읽어줘”Grep/Glob으로 필요한 파일만
도구32개 다 노출작업별로 5~7개로 좁힘
출력 형식자유 서술”변경 파일 + diff + 위험 항목” 템플릿

작업이 막혔을 때 던질 첫 질문은 “Which token in my context is doing the wrong work?”“내 컨텍스트의 어떤 토큰이 잘못된 일을 하고 있나?” 이다. 모델 탓을 하기 전에 컨텍스트를 본다.

  • 02 — CLAUDE.md / AGENTS.md 디렉티브를 어떻게 쓸 것인가
  • 03 — 1M 토큰 시대에도 왜 예산이 필요한가
  • 06 — 상태 파일로 장기 기억을 어떻게 관리할 것인가