9월 11일 나온 릴리스 노트에 "Edit() 거부 규칙과 쓰기 경로 검사가 Bash `tee` 명령이 쓰는 파일에는 적용되지 않던 문제를 고쳤다"와 "`Bash(tee:*)` 허용 규칙이 이제 작업 폴더 밖 대상까지 덮지 않는다"가 나란히 적혀 있어요. 공식 권한 문서는 `> file` 처럼 출력을 파일로 돌리는 경우 그 대상이 Edit 허용·거부 규칙과 보호 경로, 작업 폴더 검사를 거친다고 적어 뒀지만 `tee` 는 그 문서 어디에도 없어요. 같은 규칙이 새던 읽기 쪽(`< file` 과 `tac`·`egrep`)은 9월 1일 v2.1.257 에서 막혔고, 이번 판은 쓰기 쪽이에요.
용어 풀이
- tee
- 출력을 화면과 파일에 동시에 쓰는 유닉스 명령
- 작업 폴더
- 클로드 코드가 승인 없이 읽고 쓸 수 있도록 지정해 둔 폴더 범위
- allow 목록
- 설정 파일에 적어 두면 승인 없이 실행되는 도구·명령 규칙 목록
운영자 인사이트
`settings.json` 의 allow 목록에 `Bash(tee:*)` 를 넣어 뒀다면 올린 뒤 동작이 달라져요. 작업 폴더 밖 경로가 더는 자동 승인되지 않아 그쪽으로 로그를 쓰던 스크립트가 승인을 묻고 멈춰요. 반대로 `.env` 같은 파일에 Edit 거부 규칙만 걸어 둔 채 2.1.269 아래를 쓰고 있다면 `tee` 한 줄로 비껴갈 수 있는 상태라, 막아 뒀다고 믿는 경로를 직접 한 번 돌려 확인해 보세요.
여러 관점으로 보기
- 릴리스 노트 원문 v2.1.269 노트에 "Fixed Edit() deny rules and the write-path check not applying to the file a Bash tee command writes; a Bash(tee:*) allow rule no longer covers destinations outside the working directories" 로 적혀 있어요. GitHub
- 공식 권한 문서가 약속해 둔 범위 권한 문서의 리다이렉션 절은 "`> file`·`>> file`·`2> file` 은 Edit 허용·거부 규칙과 보호 경로, 작업 폴더를 검사한다"고 적어 뒀는데, 같은 문서에 `tee` 는 한 번도 나오지 않아요. Anthropic 공식 문서
- 열흘 전 막힌 읽기 쪽 9월 1일 v2.1.257 노트에는 "Bash Read()/Edit() 거부 규칙이 `< file` 리다이렉트와 `tac`·`egrep` 같은 읽기 명령에 걸리지 않던 문제를 고쳤다"가 있어요. 같은 규칙이 읽기에서 한 번, 쓰기에서 한 번 샌 거예요. GitHub