# Lesson 05 Context Management

> AI 에이전트 강의 패키지의 5강 — 비개발자가 에이전트의 컨텍스트 윈도우 한계를 이해하고, 본인 작업의 컨텍스트를 분석해 최적화 1가지를 적용할 때 사용하는 30분 대화형 강의. 무엇을 항상 컨텍스트에 두고 무엇을 필요할 때만 가져올지 판단 기준을 잡는다. 사용자가 "5강 시작", "컨텍스트 관리", "에이전트가 자꾸 까먹어요", "이전 대화 잊어버려요", "컨텍스트 길어지면 답이 이상해요", "긴 대화에서 답이 흐려져요", "여러 페이지 첨부 후 답이 이상해요", "토큰 절약", "context window" 같은 표현을 쓰거나, 4강 끝난 후 자연스럽게 이어지는 강의에 진입하려 할 때 반드시 이 스킬을 사용한다. 단순 컨텍스트 설명이 아니라, 한 청크씩 게임처럼 진행되는 30분짜리 가이드형 학습 흐름이라는 점이 핵심이다.

- Skill: `matthewoong/lesson-05-context-management` (Agent Skill, multi-file: 11 files)
- Install (CLI): `npx skillmds@latest add matthewoong/lesson-05-context-management`
- Raw SKILL.md: https://api.skillmd.com/api/skills/matthewoong/lesson-05-context-management/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: Matthewoong (https://skillmd.com/u/matthewoong)
- Updated: 2026-09-22
- Page: https://skillmd.com/skills/matthewoong/lesson-05-context-management

---


# Lesson 05 — 컨텍스트 관리

> 학습자가 끝나면 컨텍스트 윈도우의 한계를 이해하고, 본인 작업에 *최적화 1가지*를 직접 적용한다.

이 스킬은 *대화형 강의*입니다. 한 청크씩 따라오며 학습자가 본인 작업의 컨텍스트 사용 패턴을 *직접 점검*하고 *어떤 부분을 슬림화할지* 결정합니다.

---

## 0. 시작하기 전에

| 문서 | 언제 |
|---|---|
| `_shared/teaching-protocol.md` | 이론 청크 |
| `_shared/guided-practice-protocol.md` | 가이드 실습 |
| `_shared/learner-profile-schema.md` | 진도·draft |
| `_shared/style-guide.md` | 톤·분기·예시 |
| `_shared/menu-template.md` | 메뉴 |

---

## 1. 진입 시 행동

1. 학습자 프로필 확인.
2. `progress["05-context-management"].status` 분기.
3. 1~4강 미수강 시 한 번만 안내.
4. 첫 인사.
5. 이론 진입 (`lesson/01-*.md`~). 헤더 `📘 [Lesson 5 · 청크 X/Y]`.
6. 이론 마지막 → 가이드 실습 (옵션 2개 인라인).
7. 실습 종료 → 진도 갱신 + 다음 강의(6강) 안내.

---

## 2. 진도 갱신 + draft 키 명세

| 시점 | 갱신 |
|---|---|
| 5강 첫 진입 | `status = "in_progress"`, `current_chunk = 1` |
| 청크 통과 | `current_chunk += 1` |
| 청크 4 답변 (현재 사용량 추정) | `draft.current_context_estimate` |
| 청크 5 답변 (우선 항목) | `draft.priority_items = [<항목들>]` |
| 가이드 실습 적용 | `draft.optimization_applied = <적용한 최적화>` |
| 실습 통과 | `practice_status = "done"`, `status = "completed"` |
| 모든 갱신 시 | `updated_at` |

### 5강이 사용하는 `draft` 키

| 키 | 시점 | 형식 |
|---|---|---|
| `current_context_estimate` | 청크 4 | string (한 줄 자가 추정) |
| `priority_items` | 청크 5 | array (항상 컨텍스트에 둘 항목들) |
| `optimization_applied` | 가이드 실습 | string (적용한 최적화 1가지) |

---

## 3. 이론 lesson 흐름

청크 8개. `lesson/01-*.md` ~ `08-*.md`.

### 5강에서 *왜* 한 청크씩 가는가
컨텍스트 관리는 *추상적 개념*과 *실제 한계 체감*이 함께 가야 합니다. 한 청크씩 *개념 → 본인 사용량 점검 → 다음*으로 가야 학습자가 "아, 내 작업이 이래서 답이 이상했구나" 하고 깨닫고 본인 환경에 적용할 수 있습니다.

---

## 4. 가이드 실습 — 옵션 2개 인라인

### 4-0. 진입 시 draft 정리

```
🎉 이론 끝! 이제 본인 작업에 적용해볼 시간이에요.

📝 현재 사용량 추정: <draft.current_context_estimate>
📝 우선 항목들:
   - <draft.priority_items[0]>
   - <draft.priority_items[1]>

이 둘을 토대로 *최적화 1가지*를 적용해볼게요.
```

### 4-1. 옵션 제시

```
어디에 최적화를 적용해볼까요?

  (1) {{name}}님의 실제 작업에 적용
       (가장 추천 — 즉시 효과)
  (2) 가상 시나리오로 연습
       (실제 작업이 떠오르지 않으시면)

번호로 답해주세요.
```

### 4-2. 옵션 ① — 본인 작업에 적용

학습자에게 *현재 사용 중인 작업*을 짧게 듣고, *어떤 부분을 슬림화할지* 함께 결정. 적용 후 변화를 학습자가 체감하도록.

### 4-3. 옵션 ② — 가상 시나리오

강의가 제공하는 시나리오 (예: "10페이지짜리 문서 + 매번 전체 첨부")로 *어떤 슬림화가 가능한지* 함께 분석.

### 4-4. 검증 기준

| 항목 | 통과 기준 |
|---|---|
| `priority_items`에 3개 이상 항목 분류 | ✅ |
| `optimization_applied`가 *실제로 실행 가능한* 형태 | ✅ |
| 학습자가 *왜 이 최적화를 골랐는지* 한 줄로 설명 가능 | ✅ |

3개 중 2개 이상 ✅. 부족한 부분 명확히 명시.

---

## 5. 자리표시자 처리
1강 동일.

---

## 6. 도구 비종속
본문에 도구명 노출 X. 도구별 컨텍스트 한도(예: 200K, 1M) 차이는 부록.

---

## 7. 종료 시 행동
1. 진도 갱신.
2. 적용한 최적화의 *예상 효과* 한 줄.
3. 다음 강의 안내 — 6강(free-api-playbook).

---

## 8. 강의 작성자 메타

- **트랙**: 기초 5강
- **선행**: 1~4강 (권장)
- **분량**: 약 30분
- **외부 자료**: 없음
- **비용**: 없음
- **학습 목표**:
  - 컨텍스트 윈도우의 한계와 그것이 답변 품질에 미치는 영향 이해
  - 본인 작업에 *어떤 항목을 항상 둘지/필요할 때만 가져올지* 분류
  - 최적화 1가지를 *실제로 적용*해본다
- **다음 강의**: 06-free-api-playbook

---

## 9. 빠른 자기 점검
- [ ] 학습자 프로필 읽음
- [ ] `📘 [Lesson 5 · 청크 X/Y]`
- [ ] 한 청크만, 끝에 ❓/🛠/🔀
- [ ] 자리표시자 채움
- [ ] 도구명 노출 X
- [ ] 시도 전 답 X
- [ ] `progress["05-context-management"]` 갱신

