[공지] Claude Code 세션이 로컬에 평문 JSON으로 저장됨 (붙여넣은 모든 내용 포함)
PSA: your claude code sessions are on disk as plaintext json, including everything you ever pasted
핵심 요약
Claude Code 세션 기록이 로컬에 평문 JSON으로 저장되어, 실수로 붙여넣은 민감 정보가 그대로 노출될 수 있다는 경고.
- 저장 경로 — 로컬 디스크의 ~/.claude/projects/ 폴더에 세션별로 저장됨
- 데이터 내용 — 대화 내용뿐만 아니라 도구 실행 결과까지 평문으로 기록됨
- 보안 위험 — 실수로 붙여넣은 API 키나 환경 변수가 암호화 없이 그대로 남아있음
- 활용 방법 — grep을 사용해 과거 세션 내용을 검색하거나 에이전트의 실제 동작을 감사할 수 있음
몇 주 전에 했던 작업을 찾다가 Claude Code가 모든 내용을 로컬에 보관한다는 걸 알게 됨. 많은 사람이 모르는 것 같아서 공유함.
파일은 ~/.claude/projects/<slugified-path>/<session-id>.jsonl에 저장됨. 프로젝트당 폴더 하나, 세션당 파일 하나임. 윈도우는 C:\Users\사용자\.claude\projects\에 있음.
각 줄은 JSON 객체임. 사용자 입력, 어시스턴트 응답, 그리고 중요한 건 도구 호출과 그 결과까지 포함됨. 즉, 대화뿐만 아니라 실제로 실행된 내용과 결과까지 다 들어있음.
알아두면 좋은 세 가지:
grep이 먹힘. rg "some command" ~/.claude/projects를 치면 3주 전에 어렴풋이 기억나는 명령어를 실행했던 세션을 바로 찾을 수 있음.
에이전트가 말한 내용이 아니라 실제로 뭘 했는지 감사할 수 있음. tool_result 항목이 곧 진실임.
생각보다 용량이 큼. 내 컴퓨터의 한 프로젝트에는 세션 파일이 71개 있고, 가장 큰 세션은 35MB임. 출시 이후 매일 썼다면 디스크 용량을 꽤 차지할 거임.
알아둘 점: 평문 JSON이라 세션에 붙여넣은 건 뭐든 암호화 없이 그대로 남아있음. 프롬프트에 키를 붙여넣은 적 있다면 그 파일 어딘가에 다 들어있음.
이거 가지고 더 똑똑하게 활용하는 사람 있음? 난 grep 정도밖에 안 해봄.


