AGENTS.md 같은 저장소 지침과 일회성 AI 작업 요청은 어떻게 나누나요?
반복 규칙은 AGENTS.md 같은 저장소 지침에, 이번 목표는 작업 요청에 나눠 적으세요. 도구별 파일·적용 범위를 확인하고 실제 명령과 맞춥니다. 지침 문구는 행동 가이드이며 운영체제의 접근 차단을 대신하지 않습니다.
적용 조건·범위: Claude Code는 CLAUDE.md와 .claude/rules 등 자체 메모리 체계를 사용합니다. Codex 파일명과 같은 것으로 가정하지 않습니다. Claude Code 메모리
본문 근거: AGENTS.md 공식 문서 · Claude Code 메모리 · Cursor Rules
먼저 기준을 정합니다
AGENTS.md 같은 저장소 지침 파일은 매 요청마다 반복해야 할 프로젝트 규칙을 가까운 위치에 남기는 장치입니다. 도구가 읽는 지침 범위와 우선순위를 이해하고, 사람이 읽어도 명확한 규칙으로 작성합니다.
AI 코딩 도구의 제품 이름이나 UI는 바뀔 수 있지만, 저장소를 읽고 변경하고 검증한다는 기본 흐름은 같습니다. 따라서 특정 버튼 위치를 외우기보다 다음 질문에 답할 수 있어야 합니다.
- AI가 지금 어떤 파일을 읽을 수 있는가?
- 어떤 파일을 수정해도 되는가?
- 어떤 명령을 실행해도 되는가?
- 비밀정보가 컨텍스트에 포함되지 않았는가?
- 완료를 무엇으로 증명할 것인가?
요청을 작업 계약으로 바꾸기
# Project instructions
- TypeScript strict 유지
- 기존 패턴 우선
- 새 dependency 추가 전 이유 설명
- 변경 후 lint/test/build 중 관련 명령 실행
- .env와 secret 내용 출력 금지
좋은 요청은 구현 방법을 모두 대신 결정하는 문서가 아닙니다. 목표와 경계, 완료 조건을 명확히 해서 AI가 불필요한 범위를 추측하지 않게 만드는 것이 목적입니다.
제품별 지침 파일 구분
- Codex는 전역과 프로젝트 경로의 AGENTS.md를 읽습니다. 같은 디렉터리에 AGENTS.override.md가 있으면 이를 먼저 선택하며, 작업 디렉터리에 가까운 지침이 앞선 지침을 보완·덮어쓸 수 있습니다. AGENTS.md 공식 문서
- Claude Code는 CLAUDE.md와 .claude/rules 등 자체 메모리 체계를 사용합니다. Codex 파일명과 같은 것으로 가정하지 않습니다. Claude Code 메모리
- Cursor는 .cursor/rules와 간단한 AGENTS.md를 지원합니다. 하위 디렉터리 AGENTS.md도 해당 범위에 적용됩니다. Cursor Rules
직접 해볼 일 · 입력과 검토 기준
독자 질문: 프로젝트 지침 파일은 어디까지 믿어야 할까?
실습: 연습 저장소 루트에 AGENTS.md 초안을 만들고 규칙 세 줄만 넣은 뒤, 사용할 도구가 읽은 지침 목록을 직접 확인하세요. 파일명 자동 인식은 도구별로 다릅니다.
입력 예시: AGENTS.md 초안: ‘기존 구조를 먼저 탐색한다. 새 패키지 설치 전 이유와 대안을 묻는다. 변경 후 실제 package.json의 검증 스크립트를 확인한다.’ 이 지침을 읽었다고 가정하지 말고 현재 세션의 로드 출처를 알려 주세요.
결과 검토: Codex는 저장소 AGENTS.md와 범위 규칙을 공식 문서에서 확인합니다. Claude Code는 CLAUDE.md를 읽으며 최근 버전에서는 조건에 따라 AGENTS.md도 읽을 수 있습니다. Cursor는 Project Rules의 적용 범위를 따로 확인합니다. 지침 파일은 권한 강제가 아닙니다.
수정 요청: 읽지 않은 규칙을 읽었다고 답하거나 실제 스크립트와 어긋나면 지침 위치·적용 범위·명령을 수정하고 새 세션에서 다시 확인합니다.
다음 학습: 5회차에서 지침이 늘수록 커지는 검토 부담을 살펴봅니다.
확인 범위: 공식 자료 learn.chatgpt.com · code.claude.com · cursor.com를 대조했습니다. 이 글의 AI 도구 조작·저장소 변경·명령 실행은 편집자가 직접 수행하지 않았으므로 미확인입니다. 독자는 자신의 환경에서 결과를 기록해 주세요.
독립 실습: 반복 지침을 분리하기
아래는 AGENTS.md에 넣을 수 있는 부분 예시입니다. 설치나 보안 권한 변경은 없습니다. 실제 저장소의 package.json을 확인한 뒤 명령을 적습니다.
변경 전 관련 파일과 기존 패턴을 먼저 읽습니다.
패키지 관리자는 pnpm을 사용합니다.
앱 변경은 pnpm lint와 pnpm build로 확인합니다.
현재 test 스크립트가 없으므로 테스트 통과라고 기록하지 않습니다.
실행하지 못한 브라우저·외부 서비스 검증은 미검증으로 남깁니다.
삭제·배포·새 의존성은 작업 권한을 먼저 확인합니다.
.env와 인증정보 내용은 출력하지 않습니다.
새 세션에서 읽은 지침 파일과 적용할 명령을 설명하게 하고 실제 파일과 대조합니다. 지침이 무시되면 파일 위치·중첩 규칙·현재 작업 디렉터리를 점검합니다. 문서에 “금지”라고 썼다고 운영체제 수준의 접근이 차단되는 것은 아닙니다.
기대 결과는 공통 지침과 일회성 작업 요청을 나눈 두 문서입니다. 예를 들어 “기존 패키지 매니저 유지”는 공통 지침, “README 첫 문장 변경”은 이번 요청입니다. 자가 확인: 특정 파일의 이번 문구까지 전역 규칙으로 넣었다면 다음 작업에도 불필요하게 적용되지 않을지 점검하세요.
선택 실습: 같은 프로젝트로 연습하기
이 선택 실습은 TaskFlow 작업 관리 앱의 변경 요청을 AI와 함께 검토하는 연습입니다. 요청·코드·검증 결과를 구분해 기록합니다.
이번 주제: AI 하네스 파일 사용법 AGENTS.md와 Codex 지침 구조 이해하기.
TaskFlow 실습
이어서 읽기: AI 바이브 코딩 기준 코드 품질이 무너지기 전 확인할 것. 누적 작업 기록은 docs/ai-log.md에 회차별로 추가합니다. 새로 진입하면 실제 개발환경 시작 ZIP을 별도 폴더에 풉니다. 이 앱에는 상태 문구와 API URL 표시가 있으며 작업 목록·검색·완료 필터는 없습니다. 상단은 지침 파일과 일회성 요청을 분리하는 독립 과제입니다. 하단에서는 실제 스타터가 사용하는 명령을 지침과 작업 로그에 기록하며, 지침 작성 자체를 앱 기능 구현 완료로 기록하지 않습니다.
루트에 프로젝트용 지침 파일을 추가합니다.
포함 내용:
기술 스택 / 실행 명령 / 테스트 명령 / 수정 금지 영역 / 새 의존성 기준 / 비밀정보 규칙 / 완료 전 검증.
너무 긴 문서가 되지 않도록 프로젝트 공통 규칙만 유지합니다.
실습은 가능한 한 작은 변경으로 시작합니다. 변경 전에 현재 working tree를 확인하고, AI가 작업한 뒤에는 대화 내용보다 실제 diff를 기준으로 판단합니다.
git status --short
git diff
프로젝트에 맞는 검증 명령이 있다면 함께 실행합니다.
pnpm lint
pnpm build
이 과정의 TaskFlow 기준은 pnpm 11.19.0이며 lint·build 스크립트를 사용합니다. test 스크립트는 없으므로 npm test나 pnpm test가 통과한다고 기록하지 않습니다. 별도 테스트가 있는 저장소는 package.json의 실제 명령을 추가하고, TaskFlow 동작은 브라우저 확인으로 별도 기록합니다.
변경을 검토하는 방법
Before: 매번 같은 규칙을 프롬프트에 복사
After: 저장소 기본 규칙 + 작업별 요청만 전달
검토할 때는 “코드가 그럴듯한가”가 아니라 요구사항과 diff를 비교합니다.
요청한 파일만 바뀌었는가
기존 규칙을 재사용했는가
새 dependency가 필요한가
오류 처리와 접근성을 놓치지 않았는가
검증 결과가 실제 실행 결과인가
되돌리기 쉬운 변경인가
실패와 위험
- 존재하지 않는 지침 파일명을 표준처럼 설명
- instructions를 권한·보안 정책으로 오해
- 서로 충돌하는 중첩 규칙
- 오래된 명령이나 프로젝트 구조 방치
AI가 틀릴 수 있다는 추상적인 경고보다 실패를 발견할 구조를 만드는 것이 중요합니다. 작은 diff, 명확한 검증 명령, 사람 승인 지점이 있으면 모델이 달라져도 같은 작업 원칙을 유지할 수 있습니다.
완료 체크리스트
- Codex/Claude/Cursor 등 현재 지원 방식 공식 확인
- 실제 TaskFlow 명령과 일치
- 민감정보를 지침 파일에 포함하지 않음
- 다음 회차에서 규칙이 많아질수록 검토량도 늘 수 있음을 연결
누적 기록과 실행 결과
이전 회차 ai-step-03-scope-quality에 남긴 기록을 시작점으로 사용합니다.
현재 구조는 기존 TaskFlow 소스와 package.json을 유지하고, 학습 기록은 새로 만드는 docs/ai-log.md에 누적합니다. 이 경로는 앱 실행 파일이 아닌 실습용 기록 위치입니다. 기존 동명 파일이 있으면 덮어쓰지 않고 회차 항목을 추가합니다. 이번 회차는 저장소 지침 파일도 실제 사용 도구에 맞춰 검토합니다.
Before는 해당 회차의 기록 항목이 없는 상태이고, 적용은 위 실습을 수행하며 관찰 내용을 채우는 과정입니다. After는 아래 항목의 근거와 미검증 범위가 남은 상태입니다. 문서 제목을 바꾸는 것만으로 기능 구현이 완료된 것은 아닙니다.
아래는 docs/ai-log.md에 추가하는 회차 항목 전체입니다. 앱 전체 코드가 아닌 개발 로그 양식이며, 빈칸은 직접 확인한 결과로 채웁니다.
체크포인트: ai-step-04-harness
작업 요청 / 목표 / 비목표:
시작 상태 / 적용 지침:
허용 파일 / 실제 변경 파일:
계획 / diff 요약:
실행 명령 / 실제 결과 / 증거 위치:
미검증 항목 / 필요한 조건:
사람이 확인·수정한 내용:
승인 여부 / 승인 대상:
commit: 미생성 또는 실제 확인한 식별자
실패 지점 / 복구점 / 다음 행동:
검증란은 성공·실패·미실행을 구분합니다. 이 양식 자체는 실행 성공이나 사람 승인 증거가 아닙니다. 앱을 바꿨다면 diff → pnpm lint·pnpm build → 필요한 브라우저 확인 → 사람 검토 → 승인 → commit 순서로 기록합니다. 로그만 편집한 단계는 내용 대조가 검증이며 앱 테스트 통과로 부풀리지 않습니다.
완료 체크포인트
ai-step-04-harness
다음 학습
5회차 개발자가 AI 코딩 도구를 쓸 때 생기는 검토 부채 문제
도구별 기능·권한 명칭·설치 방법은 발행 시점 공식 문서를 기준으로 다시 확인하고, 이 글의 원칙과 제품별 UI를 구분합니다.
글 소개·학습 준비·전체 목차

AI 코딩 도구 · 4 / 11
AI 하네스 파일 사용법 AGENTS.md와 Codex 지침 구조 이해하기
매 요청마다 반복하던 프로젝트 규칙을 저장소 컨텍스트 파일로 분리합니다. AGENTS.md를 중심 예제로 사용하되 CLAUDE.md, 도구별 instructions/rules 파일은 같은 파일로 단정하지 않고 각 도구의 현재 공식 동작을 구분합니다.
선수 지식
Markdown 파일과 프로젝트 루트의 의미를 알고 있어야 합니다.
이번 글에서 배우는 내용
- 일회성 프롬프트와 저장소 지침의 차이
- 전역 지침과 프로젝트 지침
- 하위 디렉터리별 규칙이 필요한 경우
- 코딩 스타일·검증 명령·금지 작업 기록
- 지침 파일은 권한 부여가 아니라 행동 가이드라는 점
- 실제 도구가 어떤 파일을 자동 인식하는지 공식 문서 확인
목차
이 글이 도움이 되었나요?
읽음 기록
읽음 — / 전체 11개 · 필수 9개
새 글 받아보기
RSS 리더에서 BlogFlow의 새 글을 확인할 수 있습니다.