context-mode
무엇인가
Context Mode는 AI 코딩 에이전트와 외부 도구 사이에 놓이는 MCP 서버다. 에이전트가 컨텍스트 윈도에 밀어 넣는 데이터의 양과, 대화가 압축될 때 사라지는 작업 상태를 함께 다룬다. 도구 호출의 원시 출력이 그대로 대화 기록에 쌓이는 경로를 대체하는 자리에 있다.
어떻게 동작하나
구성은 세 부분이다. 샌드박스 도구 여섯 개(ctx_batch_execute, ctx_execute, ctx_execute_file, ctx_index, ctx_search, ctx_fetch_and_index)가 원시 데이터를 컨텍스트 밖에서 처리하고, 메타 도구 다섯 개(ctx_stats, ctx_doctor, ctx_upgrade, ctx_purge, ctx_insight)가 상태 점검과 정리를 맡는다. 파일 편집, git 작업, 태스크, 에러, 사용자 결정은 SQLite에 기록되고 FTS5 색인으로 들어가 BM25 검색으로 관련 항목만 회수된다. 훅 여섯 종(PreToolUse, PostToolUse, UserPromptSubmit, PreCompact, SessionStart, Stop)이 이 흐름을 강제한다.
무엇과 다른가
Think in Code 방식은 에이전트가 데이터를 직접 읽는 대신 분석 스크립트를 작성하고 console.log()로 결과만 출력하게 한다. 파일 50개를 읽어 함수 개수를 세는 대신 스크립트 하나가 그 계산을 수행한다. 반면 출력 문체는 규정하지 않는다. 간결성 프롬프트가 코딩·추론 벤치마크를 떨어뜨린다는 근거에 따라, 라우팅 블록은 데이터가 어디로 가는지만 정하고 모델이 어떻게 말하는지는 건드리지 않는다.
어떻게 쓰나
설치는 플랫폼별로 나뉜다. Claude Code는 플러그인 마켓플레이스로 설치하고 재시작하면 SessionStart 훅이 라우팅 지침을 런타임에 주입하며 프로젝트에 파일을 쓰지 않는다. Gemini CLI는 ~/.gemini/settings.json 한 파일에 MCP 서버와 훅 네 개를 등록한다. VS Code Copilot은 .vscode/mcp.json과 .github/hooks/context-mode.json을 만든다. 검증은 ctx doctor, 상태 확인은 ctx stats로 한다.
전제와 한계
Node.js 22.5 이상 또는 Bun이 필요하다. 훅을 지원하는 플랫폼은 라우팅이 자동 적용되고, 그렇지 않은 플랫폼은 라우팅 파일을 한 번 복사해야 한다. MCP 도구만 등록하는 설치도 가능하지만 이 경우 자동 라우팅은 없다. --continue 없이 세션을 시작하면 이전 세션 데이터는 즉시 삭제된다.
관련 논문 3
유사 도구
- xclaude-pluginiOS 빌드·테스트·시뮬레이터 도구를 8개 MCP 서버로 쪼개 작업별로 필요한 것만 켜게 하고, 도구 출력을 구조화 JSON으로 압축해 컨텍스트를 아끼게 하는 Claude Code 플러그인이다.
- claude-context코드베이스 전체를 벡터 DB에 인덱싱하고 시맨틱 검색으로 관련 코드만 꺼내 Claude Code 등 코딩 에이전트의 컨텍스트에 넣는 MCP 서버다.
- claude-mem에이전트 세션의 작업 기록을 AI로 압축해 SQLite에 저장하고, 다음 세션에 관련 컨텍스트를 주입하는 TypeScript 기반 CLI 메모리 계층이다.
- git-mcpGitHub 저장소의 최신 문서와 코드를 MCP 서버로 노출해 AI 어시스턴트가 환각 없이 참조하게 하는 TypeScript 원격 서버다.
- claude-hudClaude Code 상태줄에 컨텍스트 사용량·활성 도구·실행 중 에이전트·할 일 진행률을 렌더링하는 절차를 주입하는 플러그인이다.
- gemini-cliGemini 모델을 터미널에서 직접 쓰는 TypeScript 기반 오픈소스 AI 에이전트다. 파일·셸·검색 도구와 MCP 서버를 붙여 코드 작업을 실행한다.