유저 메모리 파일 관련 질문입니다!
안녕하세요 강사님!
User Memory(~/.claude/CLAUDE.md) 설정 미션을 진행하다가 궁금한 점이 생겨서 질문드립니다.
예시들을 보면 기술 스택이나 코딩 스타일 같은 내용을 User Memory에 작성하고 있는데, 이런 내용들은 프로젝트마다 달라질 수 있잖아요. (물론 저 예시는 연습을 위한 예시인건 인지하고 있습니다!!!)
예를 들어 주로 백엔드 프로젝트를 하더라도, 경우에 따라 프론트엔드나 다른 유형의 프로젝트를 진행할 수도 있는데, 모든 프로젝트에 공통 적용되는 User Memory보다는 각 프로젝트 폴더의 CLAUDE.md에 작성하는 게 더 적합할까요..??
앞으로 본격적으로 User Memory를 셋팅하려다 보니 이 부분이 걸려서요. 강사님께서 생각하는 방향성이 궁금합니다!!
참고로 지금 저의 생각은 User Memory에는 모든 프로젝트에서 공통으로 적용 할 만한
(1) 언어 및 커뮤니케이션 규칙 이라던지
(2) 작업 스타일 -> ex) 여러 방법이 있을 경우 trade-off를 함께 설명한다.
약간 이러한 내용만 작성하는건 어떨까요!!
답변 2
1
안녕하세요! 🙂
먼저 결론부터 말씀드리면, 생각하신 방향이 정확해요. User Memory에는 "어떤 프로젝트를 하든 늘 적용되었으면 하는 것"만 두고, 프로젝트마다 달라지는 건 각 프로젝트의 CLAUDE.md에 두는 게 맞습니다.
공식 문서 기준 메모리 계층을 다시 정리해 보면 이렇게 나뉘어요.
User Memory (
~/.claude/CLAUDE.md) — 내 PC의 모든 클로드 코드 세션에 공통 적용Project Memory (
./CLAUDE.md) — 해당 프로젝트에서만 적용, git에 커밋해서 팀과 공유Local Project Memory (
./CLAUDE.local.md) — 해당 프로젝트의 개인 설정 (git에 커밋 안 함)
이 구조를 보시면 어디에 뭐가 들어가야 하는지 자연스럽게 답이 나와요. "팀원이든 다른 프로젝트든 상관없이 늘 이렇게 동작했으면 좋겠다" → User Memory. "이 프로젝트에서만 이렇게 했으면 좋겠다" → Project Memory.
그래서 말씀하신 (1) 언어/커뮤니케이션 규칙, (2) 작업 스타일(trade-off 설명 등)은 User Memory에 두는 게 적절합니다. 추가로 같이 둘 만한 것들로는 답변 톤 규칙(불확실하면 명시, 추측 금지 등), 일하는 방식의 기본기(탐색 → 계획 → 구현 워크플로우), 자주 쓰는 도구의 기본 행동 정도가 있어요.
반대로 기술 스택, 코딩 컨벤션, 폴더 구조, 빌드 명령어처럼 프로젝트마다 달라지는 건 각 프로젝트의 ./CLAUDE.md에 두시면 돼요. 백엔드 프로젝트엔 그쪽 스택과 컨벤션을, 프론트엔드 프로젝트엔 그쪽 컨벤션을 두는 거죠.
미션 예시에 기술 스택이 들어가 있었던 건 "이런 식으로 적을 수 있다"는 작성 방법을 보여드리려는 의도였어요. 실제 운영하실 땐 말씀하신 방향대로 분리하시는 게 깔끔합니다.
감사합니다 🙂
0
안녕하세요, 인프런 AI 인턴입니다. 장첸이야님.
질문해주신 내용은 각 프로젝트에서 유저 메모리(~/.claude/CLAUDE.md)와 프로젝트 메모리(./CLAUDE.md)의 역할에 대한 이해를 돕는 중요한 질문입니다. 두 파일의 용도와 적합한 사용 사례를 명확히 구분하는 것이 사용자에게 많은 도움이 될 것입니다.
유저 메모리(~/.claude/CLAUDE.md)의 활용
유저 메모리는 모든 프로젝트에서 공통으로 적용할 내용들을 담아두기 좋은 파일입니다:
언어 및 커뮤니케이션 규칙: 모든 프로젝트에서 일관된 언어 규칙을 갖는 것은 팀 내 커뮤니케이션을 효율화하고 일관성을 유지하는 데 도움이 됩니다. 예를 들어, 코드 주석 및 문서화는 영어로, 클로드 코드와의 대화는 한국어로 설정할 수 있습니다.
보편적인 작업 스타일: 프로젝트 전반에 걸쳐 일관된 작업 스타일이나 프로세스를 유지하는 것이 중요할 때 유용한 설정을 여기에 넣어두면 좋습니다. 트레이드오프 분석 등은 전반적인 작업 효율성을 높일 수 있습니다.
프로젝트 메모리(./CLAUDE.md)의 활용
반면에 프로젝트 메모리는 해당 프로젝트에 특화된 규칙이나 설정을 적용하는 데에 적합합니다:
기술 스택: 프로젝트마다 사용하는 기술 스택은 다를 수 있으므로, 각 프로젝트의 특성에 맞는 구체적인 설정을 프로젝트 메모리에 저장하는 것이 바람직합니다.
프로젝트별 코딩 스타일 및 규칙: 특정 프로젝트에서만 사용할 코드 스타일이나 특정 기능을 강조하는 규칙이 있을 때, 이를 프로젝트 메모리에 담아두면 클로드가 이를 참고하여 보다 프로젝트에 맞춘 작업을 수행할 수 있습니다.
유저 메모리와 프로젝트 메모리는 이러한 방식으로 활용할 때, 프로젝트의 유연성을 높이고 클로드 코드의 효과적인 사용을 도모할 수 있습니다.
아래 링크에서 유사한 토픽에 대한 설명과 추가적인 팁을 참조하실 수 있습니다:
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
/output-style 이 안뜹니다
0
4
2
프로젝트 초기화 문제
0
2
1
섹션8,9부터는 진짜 못따라가겠어요...ㅠㅠ
0
6
1
파워쉘에서 이미지 복붙이 안됩니다.
0
8
1
160 강의 ppt-maker에 대해
0
10
1
이벤트 관리 앱 프로젝트 개발 순서
0
8
0
supabase next.js와 mcp
0
7
0
스테이징 10000개
0
8
1
160. Claude Code로 PPT 만들기 관련 질문
0
10
1
task master 관련질문입니다.
0
13
1
터미널 시작폴더가 달라요
0
25
2
my-profile-site 404 error
0
19
2
노션 .env.local
0
26
1
shrimp_data - WebGUI.md
0
21
2
powershell 복붙 문제
0
26
2
디렉토리가 보이지 않아요.
0
25
1
쉬림프 설치
0
20
2
tsakmaster api키
0
23
1
terminal-setup을 해도 shift+Enter 키로 줄바꿈이 되지 않아요.
0
24
2
ll- al 명령어 관련 문의
0
29
1
cursor ui 변경 문의
0
28
1
상태 표시줄 설치 오류
0
30
1
API 400알람 관련문의
0
37
2
사이트가 너무 달라요
0
64
2





