홍드로이드의 야매코딩

AI와 나눈 대화는 30일 뒤 지워집니다 — 그런데 내가 친 프롬프트는 안 지워집니다 본문

AI & Vibe Coding

AI와 나눈 대화는 30일 뒤 지워집니다 — 그런데 내가 친 프롬프트는 안 지워집니다

홍드로이드 2026. 8. 14. 04:17
반응형

내 디스크에 남는 것

대화는 30일 뒤 지워지는데
프롬프트는 안 지워집니다.

문서에 표가 두 개 있습니다. "자동으로 정리되는 것"과 "직접 지울 때까지 남는 것". 내가 타이핑한 프롬프트 전문은 두 번째 표에 있었습니다.

AI 도구 보안을 볼 때 대부분 "내 코드가 벤더 서버로 가느냐"를 봅니다. 보안 질문지개인정보 확인도 그쪽입니다. 이번엔 반대편을 봤습니다 — 내 노트북에는 뭐가, 얼마나 남는가. 공식 문서에 경로 단위로 적혀 있었고, 예상과 반대인 항목이 하나 있었습니다.

📌 30초 요약

  • 대화 전문·도구 결과·파일 스냅샷은 기본 30일 뒤 자동 삭제됩니다.
  • ⚠️ 그런데 내가 친 프롬프트 전부(history.jsonl)는 자동 삭제 대상이 아닙니다. 시각과 프로젝트 경로까지 붙어서 무기한 남습니다.
  • ⚠️ 전부 평문입니다. 암호화가 없고 OS 파일 권한이 유일한 보호라고 문서가 명시합니다.
  • ⚠️ 도구가 .env를 읽으면 그 값이 그대로 대화 기록 파일에 적힙니다.
  • ⚠️ 정리 작업이 조용히 멈춰 있을 수 있습니다 — 설정을 못 읽으면 삭제를 아예 안 돌립니다.
  • claude project purge --dry-run으로 지워질 목록을 먼저 볼 수 있습니다.

① 지워지는 것과, 안 지워지는 것

문서는 "자동으로 정리됨""직접 지울 때까지 남음"을 표 두 개로 갈라놨습니다. 먼저 지워지는 쪽입니다. 기준은 파일 나이이고 기본값은 30일입니다.

경로 내용
projects/…/세션.jsonl 대화 전문 — 모든 메시지·도구 호출·도구 결과
…/subagents/ 서브에이전트 대화 기록(부모 세션과 함께 삭제)
…/tool-results/ 덩치 큰 도구 출력을 따로 떨궈둔 파일
file-history/ 고치기 전 파일 원본 스냅샷(되돌리기용, 최근 100개)
paste-cache/, image-cache/ 붙여넣은 긴 텍스트와 첨부한 이미지
plans/, tasks/, debug/ 계획 파일 · 할 일 목록 · 디버그 로그
shell-snapshots/ 시작할 때 캡처한 셸 별칭·함수·옵션
usage-data/ 사용 분석 리포트와 그걸 만든 세션 분석 캐시

전부 홈 디렉터리의 ~/.claude/ 아래 · 보관 기간 기본 30일(최소 1일)

여기까지는 납득할 만한 목록입니다. 30일이면 길지도 짧지도 않고요. 문제는 다음 표입니다.

직접 지울 때까지 남는 것 내용
history.jsonl 내가 타이핑한 프롬프트 전부 — 시각과 프로젝트 경로까지
stats-cache.json 누적 토큰·비용 집계
remote-settings.json 회사가 내려준 설정의 캐시본(해당 조직만)
policy-limits.json 조직 기능 정책 캐시(일부 계정 유형만)

문서 표현 그대로 — "not covered by automatic cleanup and persist indefinitely"

📄 원문 — 첫 줄이 핵심입니다

"history.jsonl — Every prompt you've typed, with timestamp and project path. Used for up-arrow recall."

→ 위쪽 화살표로 이전 프롬프트를 불러오는 그 기능의 저장소입니다. 기능 자체는 편리한데, 대화 기록이 30일 뒤 사라진 다음에도 내가 뭘 시켰는지는 문장 단위로 남아 있다는 뜻이기도 합니다. 프로젝트 경로가 붙어 있으니 어느 저장소에서 무엇을 시켰는지까지 재구성됩니다.

자동 메모리(projects/…/memory/)도 정리 대상에서 빠져 있습니다. 디렉터리째 지우는 건 보관 기간 내내 비어 있었을 때뿐입니다. 다만 문서는 특정 버전 이전에는 메모리 아래 파일이 세션 데이터로 취급돼 지워질 수 있었다고도 적어놨습니다 — 버전에 따라 동작이 달랐다는 뜻이라 "항상 안 지워진다"로 읽으면 안 됩니다.

② 전부 평문입니다 — 그리고 .env도 거기 들어갑니다

⚠️ 문서가 스스로 적어둔 경고

"Transcripts and history are not encrypted at rest. OS file permissions are the only protection. If a tool reads a .env file or a command prints a credential, that value is written to projects/<project>/<session>.jsonl."

→ 세 문장이 각각 다른 얘기입니다. ①저장 시 암호화 없음OS 파일 권한이 유일한 보호 ③도구가 .env를 읽거나 명령이 자격증명을 출력하면 그 값이 그대로 파일에 적힘. 벤더로 보내느냐와 별개로, 내 디스크에 이미 적혀 있습니다.

앞의 표를 다시 보면 "도구 결과"와 "붙여넣은 긴 텍스트"가 저장 대상이었습니다. 붙여넣기가 목록에 있다는 건 생각보다 큽니다. 로그를 통째로 붙여넣거나, 스크린샷을 첨부하거나, 설정 파일 내용을 긁어 넣는 건 전부 일상적인 동작인데 그게 캐시로 남습니다.

이건 결함이 아니라 설계입니다. 되돌리기·이어하기·위쪽 화살표가 전부 이 기록 위에서 돌아갑니다. 되돌리기가 못 잡는 것을 다룰 때 나온 파일 스냅샷도 여기 있는 그 file-history/입니다. 편의와 흔적은 같은 파일입니다. 다만 그 사실을 알고 쓰는 것과 모르고 쓰는 건 다릅니다.

③ 삭제가 아예 안 돌고 있을 수 있습니다

"30일 지나면 알아서 지워지겠지"에 조건이 붙어 있습니다. 문서가 정리 작업의 예외 네 가지를 열거하는데, 그중 하나가 이겁니다.

📄 "정리 작업이 일시 중지됨"

"if Claude Code can't safely determine the retention period, it pauses the retention cleanup sweep"

보관 기간을 안전하게 판정할 수 없으면 정리를 아예 안 돌립니다. 설정 파일을 못 읽거나 파싱에 실패한 경우, 또는 보관 기간 설정에 오류가 있는 경우가 여기 해당합니다. 지워지고 있다고 믿는 동안 안 지워지고 있을 수 있다는 뜻입니다.

캐싱·샌드박스·되돌리기·컨텍스트에 이어 다섯 번째로 만난 같은 모양입니다. 안 되고 있는데 안 된다는 신호가 약한 것들이요.

다만 이건 앞의 넷보다 신호가 조금 더 있습니다. 설정 오류로 멈춘 경우에는 /status에 경고가 뜹니다(설정을 고칠 때까지). 그래서 "완전히 조용하다"고는 못 쓰겠고, 보고 있지 않으면 놓치기 쉽다까지가 제가 확인한 범위입니다. 회사가 설정을 내려주는 환경이면 그 값으로 정리가 돌아간다는 예외도 따로 적혀 있습니다.

④ 지금 확인하고, 줄이는 법

지우기 전에 뭐가 지워질지 먼저 보는 게 순서입니다. 미리보기 옵션이 있습니다.

# 1) 지워질 목록만 출력, 실제로는 아무것도 안 지움
claude project purge ~/work/my-repo --dry-run

# 2) 계획을 보여주고 y/N 한 번 물어본 뒤 삭제
claude project purge ~/work/my-repo

# 3) 경로를 빼면 프로젝트 목록에서 고를 수 있음
claude project purge

# 지워지는 것: 대화 기록·자동 메모리·작업 목록·디버그·파일 스냅샷
#             그리고 history.jsonl 중 이 프로젝트에서 친 줄만 골라서
# 안 지워지는 것: shell-snapshots/ 와 backups/ (프로젝트 단위가 아님)

미리보기가 왜 중요하냐면, 이 명령이 확인 후 되돌릴 수 없다고 스스로 경고하기 때문입니다. 그리고 --all을 쓰면 프로젝트별로 골라내는 대신 history.jsonl을 통째로 지웁니다 — 필터링이 아니라 파일 삭제입니다. 이 차이는 문서에 한 줄로만 적혀 있어서 놓치기 쉽습니다.

애초에 덜 남기는 쪽도 세 가지가 제시돼 있습니다.

방법 효과 잃는 것
보관 기간을 줄이기 30일 → 더 짧게(최소 1일) 그만큼 옛 세션 이어하기·되돌리기
기록 자체를 끄기 대화 기록·프롬프트 기록을 안 씀 이어하기·위쪽 화살표 전부
권한 규칙으로 차단 자격증명 파일 읽기를 거부 해당 파일을 봐야 하는 작업

기록 끄기는 환경변수로 걸며, 비대화형 실행에는 별도 플래그가 따로 있습니다

세 번째가 가장 저평가돼 있습니다. 앞의 둘은 이미 적힌 뒤에 지우는 방식이고, 세 번째만 애초에 안 적히게 하는 방식입니다. 에이전트 권한 점검에서 다룬 그 권한 규칙을 보안 목적이 아니라 흔적 관리 목적으로도 쓸 수 있다는 얘기입니다.

⑤ 회사 보안 검토와 겹치는 지점

보안 질문지 항목 대부분은 벤더 서버를 묻습니다. 그런데 여기까지 확인하고 나면 질문 하나가 비어 있다는 게 보입니다.

🔍 비어 있던 질문

"데이터가 어디에 저장되나요"에 "서울 리전"이라는 답을 받아도, 직원 노트북 홈 디렉터리는 그 답에 안 들어 있습니다. 재택·개인 장비 환경이면 특히요.

그래서 "엔드포인트에 무엇이 얼마나 남고, 그걸 조직이 통제할 수 있나"가 별도 질문이 됩니다. 이 도구의 경우 회사가 설정을 내려주면 그 보관 기간으로 정리가 돌아간다고 문서에 적혀 있으니, 답할 근거는 있는 셈입니다. 다른 도구도 그런지는 확인하지 않았습니다.

이 글을 특정 도구가 위험하다는 얘기로 읽지는 마세요. 오히려 경로와 보관 기간을 표로 공개하고, 평문이라는 것과 자격증명이 적힐 수 있다는 것까지 문서에 적어둔 쪽입니다. 제가 쓰는 다른 도구들도 이만큼 적어뒀는지는 확인하지 않았습니다. 물어볼 질문이 하나 생긴 겁니다.

자주 묻는 것

Q. 제 PC에서 직접 열어보고 쓴 건가요?

아닙니다. 공식 문서만 읽었습니다. 실제 파일 크기나 내용 표본을 확인하지 않았고, purge를 실행해보지도 않았습니다. 이 글은 "문서에 이렇게 적혀 있다"까지입니다. 본인 환경은 직접 열어보셔야 합니다.

Q. 이미 자격증명이 적혔으면 어떻게 하나요?

문서에 복구·소거 절차는 없습니다. 파일을 지우는 방법은 나오지만, 지웠으니 안전하다는 보장은 어디에도 안 적혀 있습니다. 값이 노출됐다면 파일을 지우는 것보다 그 키를 폐기하고 새로 발급하는 게 순서입니다 — 이건 문서 내용이 아니라 일반적인 사고 대응입니다.

Q. 다른 AI 코딩 도구도 마찬가지인가요?

확인하지 않았습니다. 로컬에 대화 기록을 남기는 구조는 흔하지만, 보관 기간·평문 여부·정리 방식은 도구마다 다릅니다. "다 그렇다"고 쓰면 제가 안 본 걸 쓰는 게 됩니다. 쓰시는 도구 문서에서 "data" 또는 "retention"으로 찾아보세요. 없으면 없다는 것도 정보입니다.

✨ 정리하면

대화 전문·도구 결과·파일 스냅샷은 기본 30일. 그런데 내가 친 프롬프트 전부는 자동 삭제 대상이 아닙니다.

전부 평문이고, .env를 읽었으면 그 값이 그대로 적힙니다. 게다가 정리 작업은 멈춰 있을 수도 있습니다.

지우기 전에 --dry-run으로 목록부터 보세요. 그리고 진짜 대책은 지우는 게 아니라 애초에 자격증명 파일을 못 읽게 막는 것입니다.

🧭 AI 지출 전체 그림

도입 전 확인할 것과 쓰면서 새는 곳을 개인·개발자·회사별로 묶어뒀습니다. 5단계 "조용히 안 되는 것들"에 이 글의 정리 작업 얘기와 같은 계열이 모여 있습니다 → AI에 쓰는 돈 총정리 — 숨은 비용 7가지

🔗 같이 보면 좋은 글


확인 시점 — 2026년 8월 14일. ✅ 1차 확인 : Claude Code 공식 문서의 Explore the .claude directory 중 "Application data" 전체 — 자동 정리 대상 경로표 · 정리 예외 네 가지 · 무기한 보관 경로표 · "Plaintext storage" 절 · "Clear local data" 절(purge 옵션과 삭제 계획 출력 예시 포함). 인용문은 원문 그대로이며 번역은 제 것입니다. 확인하지 않은 것 : 제 PC의 실제 파일을 열어 대조 · purge 명령 실행 · 파일 크기나 누적량 · 삭제 후 복원 가능성 · 다른 AI 코딩 도구의 로컬 보관 정책. 일반화 금지 : 본문의 경로·기본값은 이 도구 기준이며 다른 도구에 적용되지 않습니다. 자동 메모리의 정리 제외는 특정 버전 이후의 동작으로 문서에 표기돼 있어, 버전에 따라 다를 수 있음을 본문에 함께 적었습니다. 사고 대응 관련 : FAQ의 "키를 폐기하고 재발급" 조언은 문서 내용이 아니라 일반 보안 관행입니다. 경로와 기본값은 예고 없이 바뀝니다. 제휴·협찬 없습니다.

반응형
Comments