클로드 코드 AGENTS.md 지원, CLAUDE.md와 함께 쓰는 법

클로드 코드가 2026년 9월 18일(미국 시간 기준) 공개된 v2.1.277부터 AGENTS.md를 직접 읽어요. 다만 기본 동작은 ‘합치기’가 아니라 ‘대체’라서, CLAUDE.md가 없을 때만 AGENTS.md를 읽고 둘 다 있으면 CLAUDE.md만 읽습니다. 개인용 CLAUDE.local.md 하나만 만들어도 AGENTS.md가 밀려나니 아래 표부터 보세요.

이 글은 2026년 9월 19일 기준 공식 문서와 v2.1.277 릴리스 노트를 풀어 쓴 글이에요. 제가 직접 실행해 확인한 화면이 아니라 문서 기준이고, 릴리스 하루 뒤라 문서가 바뀔 수 있어요.

9월 18일에 바뀐 것 — 요청 393일 만의 AGENTS.md 지원

AGENTS.md는 쉽게 말해 AI 코딩 도구용 README예요. 사람이 새 프로젝트를 열면 README부터 읽듯이, AI 에이전트가 작업 전에 읽는 설명서죠. 빌드 명령어나 테스트 방법, 코드 스타일 같은 걸 적어 두는 파일이고, 공식 사이트 agents.md에 따르면 오픈소스 프로젝트 60,000개 이상이 쓰고 있어요.

클로드 코드는 이 파일을 자동으로 읽지 않았어요. 지원 요청 이슈(anthropics/claude-code #6235, ‘Feature Request: Support AGENTS.md.’)가 2025년 8월 21일에 열렸고 지원이 들어온 날이 2026년 9월 18일(미국 시간 기준)이니, 두 날짜에서 계산하면 393일, 약 1년 1개월 만이에요. 이슈는 지금 Closed 상태입니다.

릴리스 노트의 요지는 두 가지예요. CLAUDE.md가 없는 프로젝트에서는 AGENTS.md를 대신 읽고, 이 동작은 /config의 Project instructions에서 바꿀 수 있다는 것. 그리고 아직 Bedrock·Vertex·Foundry는 제외라는 단서가 붙었어요. 업데이트 이전에 쓰인 설명글은 “아직 공식 지원하지 않는다”를 전제로 심볼릭 링크 우회법을 안내하는데요.

그 전제가 9월 18일부로 틀린 정보가 됐습니다.

코드 편집기와 터미널 창이 함께 열려 있는 개발 화면
사진: Unsplash / Bernd Dittrich

AGENTS.md와 CLAUDE.md, 뭐가 다른가요

가장 큰 차이는 누가 읽느냐예요. CLAUDE.md는 클로드 코드가 읽는 전용 이름이고, AGENTS.md는 여러 도구가 함께 읽는 공용 이름이에요. 2025년 8월에 공개된 형식으로, 같은 해 12월 리눅스 재단 산하 Agentic AI Foundation에 기증돼 관리되고 있어요. agents.md가 꼽는 지원 도구는 Codex·Cursor·GitHub Copilot·Gemini CLI·Windsurf·Zed 등 20개 이상이고, 하위 폴더에 두면 편집하는 파일과 가장 가까운 AGENTS.md가 우선해요(agents.md 기준 OpenAI 메인 저장소에만 AGENTS.md 파일이 88개). 처리 방식은 도구마다 갈립니다.

도구 AGENTS.md를 읽는 방식(기본 동작)
Codex 루트부터 현재 폴더까지 폴더당 최대 1개씩 이어 붙이고 가까운 파일이 우선. 합산 32 KiB에서 중단
Cursor 루트 AGENTS.md를 .cursor/rules 대안으로 쓰고, 하위 폴더 파일은 그 폴더 작업 때 자동 적용
GitHub Copilot coding agent 2025년 8월 28일부터 루트·하위 폴더 지원. .github/copilot-instructions.md와 CLAUDE.md·GEMINI.md도 계속 읽음
클로드 코드 2026년 9월 18일(v2.1.277)부터. CLAUDE.md가 없을 때만 AGENTS.md를 대신 읽는 ‘대체’ 방식

저는 이 표에서 클로드 코드 줄이 제일 눈에 걸렸어요. Codex는 폴더를 내려오며 이어 붙이는데 클로드 코드는 기본값이 둘 중 하나만 고르는 방식이거든요. 같은 저장소에서 두 도구를 오가면 “Codex는 아는데 클로드는 모른다”는 일이 생길 수 있는 구조예요. 그래서 두 파일이 한 폴더에 같이 있을 때가 문제예요.

둘 다 있으면 뭘 읽나 — 상황별 4가지와 CLAUDE.local.md 함정

공식 문서 표 기준으로, 기본값에서 클로드는 작업 폴더나 그 위 폴더에 CLAUDE.md가 하나라도 있으면 그쪽만 읽고, 하나도 없을 때만 AGENTS.md로 넘어가요. 여기서 ‘CLAUDE.md가 있다’로 치는 파일은 CLAUDE.md, .claude/CLAUDE.md, CLAUDE.local.md 세 가지입니다. 반대로 ~/.claude/CLAUDE.md(개인 전역), 조직 관리 CLAUDE.md, .claude/rules/ 파일은 ‘있다’로 세지 않고 AGENTS.md와 함께 계속 로드돼요.

프로젝트 상황 클로드 코드가 읽는 것 확인 단서
1. AGENTS.md만 있음 AGENTS.md 대화 첫머리에 ‘no CLAUDE.md found; AGENTS.md loaded’ 줄
2. AGENTS.md + CLAUDE.md CLAUDE.md만 /memory·/context 목록에 CLAUDE.md만 뜸
3. CLAUDE.md가 @AGENTS.md를 import CLAUDE.md + import된 AGENTS.md /context의 Memory files에 AGENTS.md도 뜸
4. AGENTS.md + 개인용 CLAUDE.local.md CLAUDE.local.md만(AGENTS.md 제외) AGENTS.md loaded 줄이 안 뜸
규칙 파일 4가지 상황별로 클로드 코드가 읽는 파일을 보여주는 판정 도표 — AGENTS.md만 있으면 AGENTS.md, AGENTS.md와 CLAUDE.md가 함께 있으면 CLAUDE.md만, CLAUDE.md가 @AGENTS.md를 import하면 CLAUDE.md와 import된 AGENTS.md, AGENTS.md와 개인용 CLAUDE.local.md가 있으면 CLAUDE.local.md만(AGENTS.md 제외)
클로드 코드 상황별 규칙 파일 판정 (/config 기본값 기준, v2.1.277 이상)

4번째 줄이 이번 업데이트에서 제일 조심할 곳이에요.

CLAUDE.local.md는 커밋하지 않는 개인용 지침 파일인데, 이것도 CLAUDE.md로 쳐요. AGENTS.md에 기대던 프로젝트에 내 취향 메모용으로 CLAUDE.local.md를 하나 추가하는 순간, 클로드는 팀의 AGENTS.md를 더 이상 읽지 않습니다. 해결은 /config의 Project instructions를 claude-md-and-agents-md로 바꾸는 거예요. 참고로 AGENTS.local.md, AGENTS.override.md, .agents/ 폴더는 이름이 비슷해도 읽지 않아요.

내 프로젝트에 맞춰 설정하기 — 케이스 A·B·C와 설정값 4종

설정은 세 케이스 중 내 프로젝트에 맞는 하나만 고르면 끝나요. 케이스 A는 AGENTS.md만 있고 CLAUDE.md 계열이 하나도 없는 경우인데, 이때는 할 일이 없어요. 터미널에서 claude –version으로 v2.1.277 이상인지만 보면 됩니다.

케이스 B는 클로드에게만 따로 시킬 말이 있는 경우예요. AGENTS.md는 공용으로 두고, CLAUDE.md 첫 줄에서 불러온 뒤 Claude 전용 지침을 아래에 붙여요. 공식 문서 예시를 한국어로 옮기면 빈 줄을 빼고 3줄이면 됩니다. 이 방식은 어느 설정값에서도 같은 파일을 두 번 읽지 않아요.

@AGENTS.md

Claude 전용 지침:
- src/billing/ 아래를 고칠 때는 먼저 plan mode로 계획부터 세워줘.

케이스 C는 개인용 CLAUDE.local.md도 쓰고 싶거나 두 파일을 다 읽히고 싶을 때예요. /config를 열어 Project instructions를 바꾸면 값은 다음 메시지부터 적용돼요. 파일로도 지정할 수 있지만(~/.claude/settings.json의 pluginConfigs) 프로젝트·로컬 설정 파일에서는 무시된다고 해요. 제가 읽기엔 저장소로 팀 전체에 강제할 수는 없다는 뜻이라, 팀 동작을 맞추려면 설정값보다 케이스 B 같은 파일 배치가 맞아 보여요.

Project instructions 값 클로드가 읽는 파일 이럴 때 고르세요
claude-md-or-agents-md(기본값) CLAUDE.md 계열, 없으면 AGENTS.md 대부분의 프로젝트. 건드릴 필요 없음
claude-md-and-agents-md 둘 다. 폴더마다 CLAUDE.md 먼저, AGENTS.md 나중(이미 읽은 파일은 중복 로드 안 함) CLAUDE.local.md를 쓰면서 AGENTS.md도 읽히고 싶을 때
claude-md CLAUDE.md 계열만 AGENTS.md는 다른 도구용으로 두고 클로드에겐 안 보이게 할 때(CLAUDE.md에서 import하지 않았다면)
managed-only 조직 관리 지침·자동 메모리만(프로젝트·개인 CLAUDE.md와 모든 AGENTS.md 제외) 조직 관리자가 정책으로 묶을 때

예전 우회법, 지워도 될까요? 저라면 이 순서로 해요

서두를 필요는 없어요. 공식 문서가 우회법을 항목별로 짚어 주는데, 절반은 그냥 둬도 되거든요. (아 근데 “클로드 코드는 AGENTS.md를 못 읽는다”는 말도 정확한 표현은 아니었어요. 자동으로 안 읽었을 뿐 CLAUDE.md에서 @import로 불러오면 예전에도 읽혔으니까요.)

옛 우회법 판정 이유
CLAUDE.md 안의 @AGENTS.md import 그대로 둠 어느 설정값에서도 두 번 읽지 않음. AGENTS.md를 직접 못 읽는 세션이 있다면 유지
CLAUDE.md에 “AGENTS.md를 읽어라”라고 적은 문장 그 CLAUDE.md에 이 문장뿐이면 파일째 삭제, 다른 내용이 있으면 문장을 @AGENTS.md로 교체 클로드가 파일을 열기로 정해야만 읽힘. 문장만 지우고 파일을 두면 AGENTS.md는 계속 안 읽힘
CLAUDE.md → AGENTS.md 심볼릭 링크(ln -s AGENTS.md CLAUDE.md) 둬도, 지워도 됨 어느 쪽이든 내용은 한 번만 읽힘
AGENTS.md를 출력하는 SessionStart 훅 제거 직접 읽기와 겹쳐 컨텍스트에 사본이 하나 더 생김

링크를 남길 때는 제약이 둘 있어요. Edit·Write 도구는 링크 너머에 쓰기를 거부하고 원본인 AGENTS.md를 고치라고 안내해요. Windows에서는 링크 생성에 관리자 권한이나 개발자 모드가 필요하고 git이 링크를 한 줄짜리 텍스트로 체크아웃할 수 있어서, 문서는 @AGENTS.md import를 권합니다.

진짜 함정은 “지워도 된다”는 판정이 내 버전에서만 참이라는 점이에요. 오픈소스 phabfive는 CLAUDE.md가 AGENTS.md를 가리키는 링크를 쓰다가 2.1.277 이후 링크를 지우자는 이슈(#347)를 열었는데, 바로 지우면 2.1.276 이하 사용자는 경고 없이 프로젝트 지침이 통째로 빠지니 이슈 날짜로부터 3개월 뒤인 2026년 12월 18일까지 기다리자고 제안했어요. 저라면 팀 저장소의 링크·import는 그때까지 두고, 팀원 버전이 다 올라온 걸 확인한 뒤에 걷어낼 거예요. SessionStart 훅도 같은 이유로 버전이 섞여 있으면 미루는 게 안전해 보이는데, 이건 문서가 아니라 제 추론이에요.

AGENTS.md가 안 읽힐 때 점검 순서와 규칙 파일 쓰는 요령

분명 AGENTS.md를 넣었는데 클로드가 모르는 눈치라면 원인은 대개 경로 위 어딘가의 CLAUDE.md예요. 공식 문서 문제 해결 절이 권하는 순서를 옮기면 이래요.

  1. 작업 폴더와 그 위 폴더에서 CLAUDE.md, .claude/CLAUDE.md, CLAUDE.local.md를 찾기(~/.claude/CLAUDE.md는 제외). 하나라도 있으면 그 파일만 읽힘
  2. 터미널에서 claude –version을 쳐서 v2.1.277 이상인지 확인
  3. Bedrock 같은 타사 제공자, 텔레메트리를 끈 세션, 설치·업그레이드 직후 첫 세션인지, disableAllHooks·allowManagedHooksOnly를 켰거나 내장 agents-md 플러그인을 껐는지 확인
  4. /config에서 Project instructions가 claude-md나 managed-only가 아닌지 확인. 항목 자체가 안 보이면 3번 유형

읽혔는지는 기본값이면 대화 첫머리에 ‘no CLAUDE.md found; AGENTS.md loaded: /home/you/repo/AGENTS.md’ 같은 줄이 떠요. 직접 읽힌 AGENTS.md는 /memory 목록이나 /context의 Memory files에 안 뜨니(import·심볼릭으로 읽힌 것만 뜸), 줄이 안 보이면 클로드에게 프로젝트 지침 내용을 물어보면 됩니다. 3번에 걸렸다면 케이스 B의 @AGENTS.md 한 줄이 대안이에요. 4번은 파일이 아니라 값이 원인이라 /config에서 값을 바꾸면 돼요. claude-md라면 CLAUDE.md에 @AGENTS.md를 두는 것도 문서가 안내하는 대안이고, managed-only는 프로젝트 CLAUDE.md까지 빠지니 값을 바꿔야 해요.

이제 파일에 뭘 적을지가 남아요. 공식 문서는 CLAUDE.md를 한 파일당 200줄 이내로 권장해요. 길수록 컨텍스트를 더 쓰고 지시 준수율이 떨어지거든요(4 MiB를 넘는 파일은 건너뜀). Codex는 AGENTS.md 합산 32 KiB에서 파일 추가를 멈춰요. 제 계산으로는 한글이 UTF-8에서 글자당 3바이트라서, 공백·영문 없이 한글만 꽉 채운 줄이 55자씩 200줄이면 약 33,000바이트로 32,768을 넘어요. 공백·영문이 섞이면 더 작아지지만 한글 비중이 높을수록 Claude의 200줄 권장보다 Codex의 32 KiB 상한이 먼저 찰 수 있어요. 서로 다른 도구의 기준을 견준 거라 참고용이에요.

내용은 코드를 읽어서는 알 수 없는 것 위주가 좋아요. 공식 문서 예시대로 ‘npm test를 커밋 전에 실행한다’처럼 검증 가능하게, ‘API 핸들러는 src/api/handlers/에 둔다’처럼 구체적으로 쓰는 식이에요. 두 파일을 다 읽히는 케이스 C라면 같은 규칙을 양쪽에 적지 마세요. 규칙끼리 충돌하면 클로드가 임의로 하나를 고를 수 있다고 문서가 경고하니까요. 지난번 ‘AI 코드 검증 체크리스트’ 글의 커밋 전 5분 루틴 중 명령어로 굳힐 수 있는 항목은 AGENTS.md의 Testing instructions 자리에 한두 줄로 옮겨 두면, AGENTS.md를 읽는 도구라면 세션마다 그 줄을 읽고 시작해요.

맥북 에어의 터미널 창에 명령어 실행 결과가 출력된 화면과 한글 키보드
사진: Unsplash / park ingyeom

자주 묻는 질문

클로드 코드만 쓰는데 AGENTS.md도 만들어야 하나요?

안 만들어도 돼요. 클로드 코드만 쓴다면 CLAUDE.md로 충분하고, 다른 도구를 같이 쓰거나 그런 협업자가 있을 때 AGENTS.md가 값어치를 해요. 그땐 공용 규칙을 AGENTS.md에 적고 CLAUDE.md는 @AGENTS.md 한 줄로 시작하면 규칙 파일을 도구마다 따로 관리하지 않아도 됩니다.

업데이트하면 내가 써 둔 CLAUDE.md 설정이 바뀌나요?

프로젝트에 CLAUDE.md가 있으면 기본값에서 읽는 파일은 그대로예요(위 표의 2번). 지원이 켜졌는지는 /config에 Project instructions 항목이 보이는지로 알 수 있어요. 항목이 아예 없다면 그 세션은 AGENTS.md를 직접 못 읽는 유형입니다.

오늘 할 일은 세 가지예요. 버전을 확인하고, 프로젝트 폴더에서 CLAUDE.md·CLAUDE.local.md가 있는지 찾고, 새 세션 첫머리에 AGENTS.md loaded 줄이 뜨는지 보는 거요. 업그레이드 직후라면 첫 세션은 건너뛰고 두 번째 세션에서 봐야 해요. 저라면 팀 저장소는 케이스 B로 맞춰 두고, 링크와 훅 정리는 팀원 버전이 다 올라온 뒤로 미룰 거예요.

Similar Posts

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다