본문으로 건너뛰기
50% 할인 모든 플랜, 기간 한정. 시작 가격 $2.48/mo
12 min left
AI 및 머신러닝

AI 코딩 에이전트가 컨텍스트를 사전 로드하는 방법과 역효과가 나는 경우

D 작성자 Dan 12 분 분량
Split panel showing context files streaming into an AI agent on the left and a developer's blank prompt cursor waiting on the right, illustrating AI agent context pre-loading before the first message

에디터를 열고 세션을 시작합니다. 여러분이 무언가를 입력하기 전에, 커서가 입력창에 자리 잡기도 전에, 에이전트는 이미 상당한 양을 읽어 들인 상태입니다. 시스템 프롬프트, 호출할 수 있는 모든 도구의 정의, 동작 지침, 프로젝트의 CLAUDE.md(또는 .cursorrules, AGENTS.md), 적용되는 경로별 규칙, 그리고 메모리 파일에 들어 있는 모든 내용을 받아들였습니다. 여러분이 첫 단어를 꺼낼 무렵이면 에이전트는 이미 여러분과 프로젝트, 그리고 자신이 어떻게 행동해야 하는지에 대한 모델을 갖고 있습니다.

순진한 멘탈 모델은 이렇습니다. 당신이 입력하면 에이전트가 응답한다. 실제 순서는 이렇습니다. 에이전트가 당신의 컨텍스트를 읽고, 당신이 입력하고, 에이전트가 응답한다. 당신이 말하기 전에 에이전트가 당신을 읽는 이 조용한 첫 단계에서 결과의 놀라울 만큼 큰 부분이 결정됩니다. 그리고 당신이 넣어준 컨텍스트가 정말 도움이 되는지에 대한 증거는 우리 대부분이 짐작하는 것보다 불편합니다.

요약

  • AI 코딩 에이전트는 당신의 첫 메시지보다 먼저 미리 작성된 컨텍스트를 불러옵니다. 시스템 프롬프트, 도구 정의, 그리고 CLAUDE.md, Cursor 규칙, GitHub Copilot 지침, 또는 지원되거나 임포트된 경우의 AGENTS.md 같은 도구별 지침 파일이죠. 대화를 시작하는 것은 당신이 아니라 에이전트의 읽기입니다.
  • 이 사전 로딩은 당신이 한 글자도 입력하기 전에 사용할 수 있는 컨텍스트 창의 상당 부분을 잡아먹습니다. 그래서 실제 작업 예산은 모델이 광고하는 창 크기가 시사하는 것보다 작습니다.
  • 경험적 결과가 가장 반직관적인 부분입니다. 개발자가 직접 쓴 컨텍스트 파일은 실제 비용을 치르며(추론 비용 약 +19%) 조금 도움이 되지만(과제 성공률 약 +4%), LLM이 생성했거나 복사해 붙여넣은 컨텍스트 파일은 오히려 결과를 약간 더 나쁜.
  • 모델을 직접 호스팅하면 할 수 있는 것이 바뀐다 참조, 해야 하는 것이 아닌 do. 사전 세션 아키텍처는 어디서나 동일합니다. 로컬 도구는 단지 이를 검사하고 감사할 수 있게 해줄 뿐입니다. 실제로 이해하는 컨텍스트를 작성하는 규율은 사라지지 않습니다.

단순한 모델은 틀렸다: 에이전트가 먼저 읽는다

Claude Code 세션이 시작되는 바로 그 순간을 그려보십시오. 시스템 프롬프트가 들어갑니다. 도구 정의가 들어갑니다. 그런 다음, 당신이 아직 아무 말도 하지 않았는데 CLAUDE.md가 전달됩니다. 여기서 기계적인 세부 사항이 중요합니다. Anthropic의 문서는 다음과 같이 명시합니다. CLAUDE.md 내용은 “시스템 프롬프트 이후 사용자 메시지로 전달됩니다,” 열립니다 “모든 대화의 시작 시.” 따라서 대화 기록에서 첫 번째 사용자 턴은 당신이 아닙니다. 그것은 당신의 파일이며, 당신을 대신해 말하고, 당신이 도착하기 전에 조건을 설정합니다.

그 시작 순간에 실제로 로드되는 것은 하나의 스택입니다. 시스템 프롬프트, 도구 정의, 동작 지침, 프로젝트 및 사용자 컨텍스트 파일, 지금 다루는 파일과 일치하는 경로별 규칙, 그리고 에이전트가 스스로 관리하는 메모리 파일입니다. Claude Code에서 컨텍스트 파일은 네 단계 계층으로 해석됩니다(관리형 정책, 그다음 사용자(~/.claude/CLAUDE.md), 그다음 프로젝트(./CLAUDE.md), 그다음 로컬(./CLAUDE.local.md)). 그리고 그 순서대로 이어 붙습니다. 자동 메모리도 자기 몫을 더합니다. 에이전트가 스스로 쓰고 읽는 MEMORY.md의 첫 200줄(또는 25KB)이 매 세션마다 로드됩니다.

이 중 어느 것도 공짜가 아닙니다. 인프라 오버헤드(시스템 프롬프트, 도구 정의, 동작 지침)는 당신의 첫 메시지가 도착하기도 전에 실효 컨텍스트 윈도의 상당 부분을 소모합니다. 이는 에이전트가 에이전트답게 굴 줄 알게 하는 대가로 내는 세금이며, 일부러 찾아보지 않는 한 눈에 보이지 않습니다.

이 모든 것을 관리하는 분야에 이름이 생겨나고 있습니다. Anthropic의 응용 AI 팀은 이를 컨텍스트 엔지니어링: “LLM 추론 중에 최적의 토큰(정보) 집합을 선별하고 유지하기 위한 전략의 집합.” 유용한 용어입니다. 당신이 쓰는 파일을 로봇에게 남기는 메모에서, 희소하고 비싼 자원을 무엇이 차지할지에 관한 아키텍처 결정으로 바꿔 놓기 때문입니다.

Timeline of what an AI coding agent loads before the developer types: system prompt, tool definitions, behavioral instructions, context files including CLAUDE.md, path-scoped rules, and agent memory, all loaded before the first user message

네 가지 에이전트, 당신을 먼저 읽는 네 가지 방법

에이전트들이 모두 같은 방식으로 당신을 읽지는 않습니다. 이름 붙일 만한 두 가지 축으로 나뉩니다: 무엇 세션 시작 시 로드됩니다 (큐레이션된 파일 계층 구조 대 항상 활성화된 규칙 대 전체 저장소 스캔), 그리고 그중 얼마나 검사할 수 있는지, 즉 그 메커니즘이 결정적이고 감사할 수 있는 산출물인지, 아니면 그냥 믿고 써야 하는 의미 기반 인덱스인지의 문제입니다. Claude Code, Cursor, GitHub Copilot, Aider가 실제로 갈리는 지점이 바로 이 두 축입니다.

도구세션 시작 시 로드되는 것메커니즘감사 가능성
Claude CodeCLAUDE.md hierarchy + .claude/rules/ + 자동 메모리; AGENTS.md는 가져오기 또는 심볼릭 링크된 경우에만파일 기반 계층 구조; 경로 범위 규칙은 지연 로딩 가능; 압축 및 재읽기 동작은 다양함파일과 메모리에 대해 높음; 시스템 프롬프트는 여전히 독점적입니다
Cursor프로젝트, 팀, 사용자 규칙; AGENTS.md 지원; 시맨틱 컨텍스트를 위한 코드베이스 인덱스읽기 가능한 규칙 파일과 시맨틱 코드베이스 인덱싱혼합: 규칙은 읽을 수 있지만 인덱스 검색은 덜 투명합니다
GitHub Copilot저장소 전체 copilot-instructions.md 및 경로별 .instructions.md 지원되는 경우Copilot 워크플로에 적용된 맞춤형 명령 파일보통: 파일은 읽을 수 있지만, 범위는 제품 표면에 따라 다릅니다
Aidergit 저장소에서 파생된 컴팩트한 repo-map, 수동으로 추가/읽은 파일 포함토큰 예산에 최적화된 심볼/그래프 기반 레포 맵높음: repo-map은 검사할 수 있지만, 전체 저장소를 그대로 담은 것이 아닌 선별된 지도입니다

Cursor의 분할 방식이 가장 교훈적입니다. 규칙은 사용자가 제어하는 읽기 가능한 파일에 있지만, 동시에 코드베이스 전체의 시맨틱 인덱스, @codebase 검색을 지원하지만 실제로 검사할 수 없는 벡터 임베딩. Aider는 반대편 끝에 위치합니다: 전체 git 저장소를 읽고 repo-map, 결정론적으로, 임베딩은 전혀 사용하지 않습니다. 모델에 무엇을 넣었는지 정확히 감사할 수 있습니다. 같은 구조적 역전이지만, 그에 대한 가시성은 매우 다릅니다. 도구별 비교를 더 깊이 보려면, 에이전트형 CLI 지형을 다룬 에이전트형 코딩 CLI 대결 그리고 직접 맞붙은 OpenCode 대 Claude Code 다른 곳에서.

도구별 형식 아래에서 도구를 가로지르는 표준이 자리를 잡아가고 있습니다. AGENTS.md는 에이전트 도구 생태계(OpenAI Codex, Amp, Google의 Jules, Cursor, Factory) 전반에서 등장했고, 지금은 Linux Foundation 산하 Agentic AI Foundation이 관리합니다, 6만 개가 넘는 저장소에 채택되었습니다. 세션 이전 컨텍스트 파일이 도구별 편의 기능에서 일급의 이식 가능한 산출물로 승격된 것입니다. 업계가 “여러분이 말하기 전에 에이전트가 읽는 것”은 그 자체로 표준을 가질 자격이 있다는 데 동의한 셈입니다.

Comparison of four AI coding agents and how they load context before the first message: Claude Code file hierarchy, Cursor rule files and semantic index, GitHub Copilot instruction files, Aider repo-map

이것 중 어느 것이 도움이 되는지에 대해 증거가 말하는 것

여기서 편안한 이야기가 무너집니다. ETH Zurich의 한 팀(Gloaguen, Mündler, Müller, Raychev, Vechev)이 통제된 평가를 실시했는데, “AGENTS.md 평가,” 저장소 수준의 이런 컨텍스트 파일이 코딩 에이전트의 성능을 실제로 높이는지에 대한 것이었다. 연구가 다룬 에이전트와 모델 전반에서 결과는 “컨텍스트 파일은 효과가 있다”도 “컨텍스트 파일은 소용없다”도 아니었다. 현재 초록은 컨텍스트 파일이 대체로 작업 성공률을 높이지 못하며 추론 비용을 평균 20% 넘게 늘린다고 말한다. 논문의 상세 결과에서 개발자가 직접 작성한 파일은 예외였다. 평균 약 4% 성능을 개선했지만 비용은 최대 19%까지 늘렸다. LLM이 생성한 파일은 반대 방향으로 움직여, 평균 약 3% 성능을 떨어뜨리면서 비용은 20% 넘게 올렸다. 세 번째 발견이 이를 더 날카롭게 만든다. 어떤 도구가 컨텍스트 파일에 언급되면 에이전트는 그 도구를 1.6~2.5배 더 자주 호출하는데, 이것이 도움이 되는지 해가 되는지는 전적으로 그 추가 호출이 타당했는지에 달려 있다.

LLM이 생성한 파일에 관한 대목에서 잠시 멈춰 보세요. 이 부분이 전체를 떠받치는 대목이기 때문입니다. 여러분이 직접 쓰지 않은 파일은, 모델이 만들어 준 것이든 “최고의 CLAUDE.md 설정 모음” 같은 커뮤니티 팩에서 받아 저장소에 던져 넣은 것이든, 에이전트에게는 여러분의 코드베이스를 실제로 모르는 사람이 내린 지시처럼 읽힙니다. 연구가 다룬 모델들에서 이는 순손실이었습니다. 토큰은 더 쓰고 결과는 조금 더 나빠졌으니까요. Augment Code 리뷰 이에 대해 잘 짚어냅니다. 쌓인 결과를 두고 “당신 에이전트의 컨텍스트는 잡동사니 서랍”이라고 부르지요. 그럴듯해 보이는 지시문을 퍼 넣을 때마다 비용이 들고, 당신이 쓰지 않았고 그 코드베이스를 이해하지도 못한 채 들어온 지시문은 대개 돌려주는 것보다 더 많은 비용을 요구합니다.

나는 이것을 “컨텍스트 파일은 나쁘다”로도, “컨텍스트 파일은 좋다”로도 읽지 않는다. 데이터와 부딪히는 순간 무너지는 것이 바로 그런 전부 아니면 전무식 프레임이다. 더 좁은 해석은 이렇다. 컨텍스트는 의도적으로 설계하는 인프라이며, 당신이 쓰지 않은 파일, 그것도 이해하지 못하는 코드베이스를 위한 파일은 선물이 아니라 비용이다. 범위에 대한 단서도 중요하다. 이는 그 논문이 테스트한 모델과 에이전트에 대해 찾아낸 결과이지, 모든 LLM에 통하는 보편 법칙이 아니다. 하지만 한 방향을 강하게 가리키고 있고, 공급자 쪽에서도 뒷받침된다. Anthropic의 응용 AI 팀은 모든 것을 미리 싣기보다 런타임에 도구를 통해 컨텍스트를 “적시에” 불러오는 흐름을 언급했고, 일부 데이터는 미리 가져오고 나머지는 런타임에 탐색하는 혼합 방식을 설명한다. CLAUDE.md를 내놓는 회사가 덜 미리 싣는 쪽으로 기울고 있다면, 거대한 컨텍스트 파일을 복사해 붙여 넣는 본능은 한 번 더 들여다볼 만하다.

이 섹션의 결론: 누가 썼는가가 컨텍스트가 값을 하는지를 예측하는 신호입니다. 토큰 비용은 어느 쪽이든 똑같이 들고, 수익을 바꾸는 것은 그 지침이 코드베이스를 실제로 아는 사람에게서 나왔는지 여부입니다.

Research results on context file quality versus inference cost: developer-written files show +4% task success at +19% cost, LLM-generated files show -3% task success at +20% cost, from ETH Zurich evaluation of AGENTS.md

점차 사라지는 컨텍스트: 세션 시작이 전부가 아닌 이유

사전 로딩은 제약을 설정합니다. 하지만 그 제약을 유지해 주지는 않습니다. 개발자들이 계속 부딪히는 것은 이야기의 후반부입니다. 세션 시작에 공들여 배치한 컨텍스트는 세션이 진행되면서 침식되고, 그것도 조용히 일어납니다.

이를 이해하는 유용한 방법은 Mem0 팀의 설명에서 비롯됩니다. 그들은 컨텍스트 창은 RAM이지 저장소가 아님, 일시적이고 유한하며, 당신의 지시가 영구히 머무는 장소가 아닙니다. 시작할 때 무언가를 넣어두면 거기 있지만, 그것을 쓰지 않은 채 충분히 오래 진행하면 흐려집니다. 참조를 멈춘 변수가 결국 덮어써지는 것과 같습니다. 연구자들이 지시 감쇠라고 부르는 현상의 이면에 있는 메커니즘이 바로 이것입니다. Gamage와 동료들의 2026년 연구 생략 제약이 특히 취약하다는 사실을 발견했습니다. 테스트한 한 설정에서는 준수율이 5턴째 73%에서 16턴째 약 33%로 떨어졌습니다. 이는 실험실 결과일 뿐 보편적 상수는 아니지만, 긴 세션에서 많은 사람이 체감하는 바와 일치합니다.

세션 경계가 더 명확해지는 지점이다. Hacker News 토론의 개발자들 생성된 서브에이전트가 컨텍스트 인계 문제를 겪을 수 있다고 보고합니다. 작업 도중에 넘겨진 일은 상위 세션의 컨텍스트를 생각보다 적게 가지고 도착할 수 있다는 뜻입니다. 그리고 유휴 시간에도 나름의 비용이 따릅니다. 다음 스레드에서는 Anthropic의 Boris Cherny가 의견을 밝혔다, 이 토론은 유휴 상태의 세션이 어떻게 수십만 토큰에 달하는 대규모 캐시 미스 재구축을 아무런 경고 없이 촉발할 수 있는지 다룹니다. 커뮤니티가 계속 보고하는 공통점은 침묵입니다. 압축이 실행되고, 앞선 추론이 잘려 나가고, 품질이 떨어지지만, 화면에는 그런 일이 있었다는 표시가 전혀 없습니다. 그저 출력이 나빠졌다는 것만 느끼게 됩니다.

셀프 호스팅이 더 많은 제어권을 제공하나요?

전부 직접 운영해 보세요(Ollama와 Open WebUI, 또는 로컬 모델을 가리키는 Aider나 Continue.dev 같은 에이전트). 그러면 “이제 통제력이 더 커졌나?”라는 질문에 대한 솔직한 답은 이렇습니다: 더 많은 가시성, 더 많은 본질적인 제어가 아닙니다. 그 구분이 핵심입니다.

셀프 호스팅이 실제로 안겨 주는 것은 들여다볼 수 있는 능력입니다. 대화 데이터는 여러분의 인프라를 벗어나지 않습니다. 비공개 시스템 프롬프트를 믿고 받아들이는 대신, 전체 시스템 프롬프트를 직접 읽을 수 있습니다. Aider처럼 결정론적인 도구를 쓰면 각 모델 호출에 정확히 무엇이 들어갔는지 감사할 수 있습니다. repo-map은 읽을 수 있는 산출물이지, Cursor의 임베딩 인덱스 같은 의미론적 블랙박스가 아닙니다. 감사 가능성과 재현 가능성을 중요하게 여기는 사람, “에이전트가 실제로 무엇을 봤는가?”에 답할 수 있기를 바라는 사람에게 이 들여다볼 수 있음은 실질적이며 결코 사소하지 않습니다.

하지만 이 구조적 역전은 모델이 어디서 도는지 신경 쓰지 않는다. Ollama로 로컬 모델을 쓰든, 클라우드 API에 붙은 Claude Code를 쓰든, 구독형 Cursor를 쓰든, 에이전트는 여전히 당신이 말하기 전에 세션 이전 컨텍스트를 읽고, 당신은 여전히 그 컨텍스트를 의도적으로 설계해야 한다. 요구되는 규율은 똑같다. 자체 호스팅은 그 메커니즘을 들여다보는 더 맑은 창을 줄 뿐, 다른 메커니즘을 주지는 않는다. 직접 쓰지 않은 컨텍스트를 불러올 때 무슨 일이 벌어지는지에 관한 ETH Zurich의 교훈에서 면제해 주지도 않는다. 그래서 이 모든 이야기에서 가져갈 단 하나의 전환은 이것이다. 컨텍스트 파일을 에이전트에게 건네는 선물로 여기기를 그만두고, 운영 비용이 드는 인프라로 다루기 시작하라. 코드베이스에 대해 실제로 이해하고 있는 것을 쓰고, 더 많이보다는 더 적게 싣고, 에이전트가 당신을 먼저 읽었다는 사실을 기억하라. 그가 읽은 당신의 버전은 당신이 떳떳하게 책임질 수 있는 버전이어야 한다.

자주 묻는 질문

AI 코딩 에이전트가 아무것도 입력하기 전에 파일을 읽나요?

그렇습니다. 세션이 시작될 때 AI 코딩 에이전트는 시스템 프롬프트, 도구 정의, 그리고 여러분의 컨텍스트 파일(CLAUDE.md, .cursorrules, AGENTS.md)과 repo-map이나 메모리 파일까지 모두 첫 메시지를 보내기 전에 불러옵니다. 특히 Claude Code에서는 CLAUDE.md가 시스템 프롬프트 바로 뒤에 사용자 메시지로 전달되므로, 대화는 사실상 여러분이 아니라 여러분의 파일로 시작됩니다.

CLAUDE.md 같은 컨텍스트 파일이 실제로 에이전트 성능을 향상시키나요?

부분적으로, 그리고 대부분의 사람들이 생각하는 것보다 적다. 그 ETH Zurich의 AGENTS.md 스타일 파일 평가, 현재 초록은 컨텍스트 파일이 대체로 작업 성공률을 높이지 않으며 추론 비용을 평균 20% 넘게 늘린다고 말합니다. 실무자에게는 세부 결과가 더 유용합니다. 개발자가 제공한 파일은 평균 약 4% 성능을 향상시켰지만 비용을 최대 19%까지 올렸고, LLM이 생성한 파일은 평균 약 3% 성능을 떨어뜨리면서 비용은 20% 넘게 높였습니다. 실용적인 해석은 이렇습니다. 직접 쓰고 이해하는 파일은 약간 도움이 될 수 있지만, 직접 쓰지 않은 파일은 조용히 비용만 늘릴 수 있습니다.

메시지를 보내기 전에 컨텍스트 창의 얼마나 많은 부분이 사용되나요?

상당한 비중입니다. 시스템 프롬프트, 도구 정의, 동작 지침은 사용자 입력보다 먼저 로드되며, 이들이 합쳐져 실효 컨텍스트 윈도의 적지 않은 부분을 차지합니다. 이 고정된 시작 오버헤드 때문에 실제로 쓸 수 있는 작업 예산은 모델이 광고하는 컨텍스트 윈도보다 작습니다.

AI 모델을 자체 호스팅하면 컨텍스트에 대한 더 많은 제어권을 얻을 수 있나요?

더 큰 통제권이 아니라 더 나은 가시성입니다. 자체 호스팅을 하면 시스템 프롬프트 전체를 들여다볼 수 있고, 대화 데이터를 자기 인프라에 둘 수 있으며, (Aider 같은 결정론적 도구와 함께라면) 각 호출에 정확히 무엇이 들어갔는지 감사할 수 있습니다. 하지만 세션 이전의 컨텍스트 구조는 클라우드 도구와 똑같고, 여전히 컨텍스트를 의도적으로 설계해야 합니다.

AGENTS.md란 무엇인가요?

AGENTS.md는 코딩 에이전트에게 코드베이스를 어떻게 다뤄야 하는지 알려주는 개방형 포맷으로, README의 에이전트용 대응물입니다. 에이전트 도구 생태계 전반(OpenAI Codex, Amp, Google의 Jules, Cursor, Factory)에서 등장했고, 지금은 Linux Foundation 산하 Agentic AI Foundation이 관리합니다. 6만 개가 넘는 저장소에서 채택되면서 세션 전 에이전트 컨텍스트를 위한 도구 간 표준으로 자리 잡아 가고 있습니다.

공유

블로그 더 보기

계속 읽기.

배포할 준비가 되셨나요? 월 $2.48부터.

2008년부터 독립 클라우드. AMD EPYC, NVMe, 40 Gbps. 14일 환불 보장.