운영 노하우
Claude Code v2.1.228부터 최신 모델은 원본을 한 번도 열어보지 않은 기존 파일도 통째로 덮어쓸 수 있습니다. 그전까지는 모든 모델이 예외 없이 "먼저 읽어야 덮어쓸 수 있다"는 제한에 묶여 있었습니다. 사고를 막아주던 장치 하나가 빠진 것인데, 같은 시기 다른 쪽 장치는 오히려 조여졌습니다. 아임웹 커스텀 코드나 카페24 스킨 파일을 AI에게 맡겨 다루는 1인 제작자라면 짚어둘 변화입니다. 무엇이 풀리고 무엇이 남았는지 공식 문서 기준으로 정리했습니다.
덮어쓰기 전 읽기, 무엇이 풀렸나
Claude Code에는 파일을 통째로 새로 쓰는 Write 도구가 있습니다. 기존 파일에 Write를 걸면 내용이 합쳐지는 것이 아니라 전부 갈아엎어집니다. 그래서 원래는 "이 대화에서 그 파일을 읽은 적이 있어야 덮어쓸 수 있다"는 제한이 걸려 있었습니다. 읽지 않고 덮어쓰면 원본이 무엇이었는지 아무도 모르는 채로 사라지기 때문입니다. v2.1.228부터 이 제한이 최신 모델에 한해 풀렸습니다. 조건은 "그 파일을 읽는 데 별도 권한 승인이 필요하지 않고, Read 도구를 쓸 수 있는 상태일 것" 두 가지입니다. 공식 문서는 이 변경을 Edit 도구의 기존 규칙에 맞춘 것이라고 설명합니다.
여전히 읽어야만 덮어쓸 수 있는 경우
전면 해제가 아닙니다. 공식 도구 레퍼런스 기준으로 다음 세 경우는 그대로 남아 있습니다.
첫째, Claude Opus 4.6과 Claude Haiku 4.5, 그리고 그 이전 모델은 여전히 읽기가 필수입니다. 읽지 않고 Write하면 오류가 납니다. 둘째, Jupyter 노트북 파일은 모든 모델에서 읽기가 필수입니다. 셋째, 파일이 길어서 일부만 읽고 PARTIAL view 표시가 붙은 경우도 모든 모델에서 읽기가 필요합니다. 절반만 본 상태로 전체를 갈아엎는 상황을 막기 위한 것입니다.
한 가지 더, 이 제한은 애초에 새 파일에는 적용되지 않습니다. 없던 파일을 새로 만드는 것은 원래부터 자유였고, 이번 변경이 걸리는 지점은 오직 이미 있는 파일을 갈아엎을 때입니다. 참고로 터미널에서 cat, head, tail, sed -n, grep 같은 명령으로 파일을 열어본 것도 "읽었다"로 인정됩니다. 단 파일 하나를 대상으로, 파이프나 리다이렉트 없이 실행했을 때만 해당합니다.
같은 시기, 반대 방향으로 조여진 것들
8월 릴리스 줄기를 이어서 보면 완화보다 강화 항목이 더 많습니다. v2.1.229에서는 커밋·푸시 명령에서 --force, --amend, --no-verify 같은 위험 플래그가 붙은 git 명령이 더 이상 자동 승인되지 않도록 바뀌었습니다. v2.1.222에서는 격리된 작업 공간 세션과 그 하위 에이전트가 원본 폴더에 파괴적인 git 명령을 실행할 수 있던 문제가 수정됐습니다.
v2.1.223에서는 교묘하게 짠 명령어가 권한 검사에서 자기 일부를 숨길 수 있던 우회 경로와, 탭이나 눈에 보이지 않는 특수문자를 끼워 넣어 승인 창에 명령 일부가 표시되지 않게 만들 수 있던 문제가 함께 수정됐습니다. 방향을 요약하면 이렇습니다. AI가 파일을 읽는 절차는 느슨해졌고, AI가 되돌릴 수 없는 명령을 실행하는 절차는 빡빡해졌습니다. 안전장치의 무게중심이 파일 읽기에서 명령 승인 쪽으로 옮겨간 것입니다. 에이전트가 과하게 움직이는 것을 설정으로 묶어두는 방법은 누끼토끼 칼럼의 지난 운영 노하우 글에서 세션 상한선을 다루며 정리해 두었습니다.
1인 제작자가 오늘 점검할 세 가지
읽기 요건은 사실 2차 방어선이었습니다. 1차 방어선은 언제나 버전 관리입니다. 2차선이 풀렸으니, 1차선이 비어 있으면 복구 지점이 아예 없는 상태가 됩니다.
첫째, 작업 시작 전 커밋입니다. 손대기 전 상태를 한 번 저장해두면 덮어쓰기가 잘못돼도 되돌릴 지점이 남습니다. 이것이 없으면 다른 어떤 장치도 소용없습니다. 둘째, 손대면 안 되는 경로는 아예 막아두는 것입니다. 설정에서 읽기·편집 거부 규칙을 걸면 해당 경로는 새 파일 생성까지 거부됩니다. 셋째, 자동 생성물 폴더와 원본 폴더를 분리하는 것입니다. 결과물이 원본 위에 바로 떨어지지 않게 경로를 나눠두면 덮어쓰기 사고가 일어날 자리 자체가 줄어듭니다. 노코드 빌더 작업이라고 예외가 아닙니다. 아임웹 커스텀 위젯 코드나 카페24 스킨 파일도 결국 로컬 파일이고, AI에게 "이 파일 다시 짜줘"라고 시키는 순간 Write 대상이 됩니다.
v2.1.228부터 최신 모델은 읽지 않은 기존 파일도 덮어쓸 수 있습니다. 구형 모델과 Jupyter 노트북, 일부만 읽은 파일은 여전히 읽기가 필수이고, 새 파일 생성에는 원래부터 해당이 없습니다. 같은 시기 권한과 승인 쪽 검사는 오히려 강화됐습니다. 결국 마지막에 남는 안전망은 버전 관리입니다. 작업 전 커밋 습관이 이전보다 더 중요해졌습니다.
누끼토끼는 아임웹·식스샵·카페24 작업을 1인 체계로 운영하면서 Claude Code로 스킨과 블록 코드를 매일 다루고 있습니다. AI에게 작업을 맡길 때 무엇을 열어주고 무엇을 막아둘지 정하는 기준은, 누끼토끼가 운영하는 강의와 칼럼에서 실제 작업 화면을 기준으로 다루고 있습니다.