🎯 만점 노트 (5분 복습용)
① 핵심 요약
- 에이전트의 본체는 사실상 LLM이며, 우리가 만드는 에이전트는 "떠먹여 주는" 껍데기에 가깝다(온라인 게임의 서버=LLM, 클라=UI 구조와 동일).
- LLM은 기억력이 없어 매 턴 전체 컨텍스트를 다시 보내야 하고, 트랜스포머의 어텐션은 연산량이 O(n²)이라 컨텍스트가 길어질수록 느려지고 멍청해지고 비싸진다. 그래서 컨텍스트 관리가 핵심.
- 컨텍스트 절약 3대 장치: CLAUDE.md(공용 지침서·최소화), 스킬(라벨만 보여주는 도구함), MCP(외부 도구를 USB처럼 꽂는 변환기).
- MCP는 하나만 꽂아도 카탈로그(툴 스펙)가 통째로 실려 컨텍스트가 폭발한다 → 해법은 툴서치(키오스크식 검색)와 서브에이전트(분신으로 컨텍스트 분산).
- 프록시로 실제 클로드 코드↔LLM 패킷을 도청하면, 요청(meta/system/tools/messages)과 응답(SSE 스트리밍·content block·stop_reason·usage)이 전부 지금까지 배운 개념 그대로임을 확인할 수 있다 — "이 패킷 구조를 다 설명할 수 있으면 클로드 코드는 졸업".
② 핵심 개념 · 용어 정의
- 컨텍스트(Context): LLM에게 매 턴 통째로 넘기는 대화·지시 묶음. 종류는 크게 시스템 프롬트 / 유저 / 어시스턴트 / 도구(tools) 4가지("4대 천왕").
- 시스템 프롬트(System Prompt): 엔트로픽 개발자가 클로드 코드에 하드코딩해 둔 근본 사고 회로. 우리가
--append-system-prompt 등으로 추가 주입도 가능. 불변·영구 유지되어 CLAUDE.md보다 훨씬 강력.
- 토크나이저(Tokenizer): 단어/문장을 숫자→벡터로 변환하는 전처리기. LLM 개발 시 가장 먼저 만든다.
- 어텐션(Attention) / 트랜스포머: 모든 토큰 쌍의 연관도를 전부 계산하는 방식(2017 "Attention is all you need"). 문맥을 잘 잡지만 연산량이 **토큰 수의 제곱(n²)**으로 폭증 → 긴 컨텍스트가 느리고 비싼 근본 이유.
- 컴팩트(/compact) vs 클리어(/clear): 컴팩트는 컨텍스트를 요약(압축 비용·정보 누락 위험), 클리어는 사실상 새 세션. 중요한 작업은 압축보다 새 세션 시작이 성능상 유리.
- CLAUDE.md: 에이전트가 실행 경로에서 시작 시 무조건 읽는 공용 지침서. 일반 유저 메시지처럼 취급되며 마법이 아님. 최소한만 적고, 나머지는 라우팅으로 분리.
- 메모리(Memory): "기억해줘"라고 하면 CLAUDE.md가 아니라 내 컴퓨터의 별도 파일에 저장됨. CLAUDE.md에 남기려면 명시적으로 지시해야 함.
- 스킬(Skill): 특정 전문 업무용 도구함(툴킷/플러그인). 겉면의 이름·description(라벨)만 미리 노출하고, 필요할 때만 상세 내용을 열어 컨텍스트 폭발을 막음. 코드·에셋·실행파일도 동봉 가능.
- 슬래시 커맨드(Slash Command): 자주 쓰는 프롬트를
/이름 + 인자 단축키로 치환 실행하는 하위 호환 기능. 스킬이 상위 호환.
- MCP(Model Context Protocol): 외부 도구를 표준 규격으로 연결하는 프로토콜. USB 표준에 비유. 용어가 혼란스러운 이유는 프로토콜·클라이언트·서버가 전부 "MCP"로 불리기 때문.
- MCP 서버 / MCP 클라이언트: 연결 대상(제품)에 종속적으로 세트로 만드는 변환기. 서버는 제품 쪽, 클라이언트는 에이전트 쪽. 중앙의 통신(프로토콜)만 표준이고 양끝 변환기는 제품마다 새로 필요.
- JSON-RPC / Tools List / Tools Call: MCP 소통 방식(원격 함수 호출).
tools/list로 카탈로그(상점 진열)를 받고, tools/call로 특정 기능(예: save)을 실행.