harnesslog.dev

Claude Code, AI, 개발 이야기

KO · EN
H
hwangjungmin

Claude Code에는 allow, ask, deny 세 가지 permission이 있다. settings.json에 설정하고, deny → ask → allow 순으로 먼저 매칭된 규칙이 적용된다. Bash(npm run *), Read(/home/*) 같은 패턴 매칭도 지원한다.

--dangerously-skip-permissions는 이름 자체가 무서워서 안 쓰는 사람들이 많은데, 대신 승인 피로를 없애려고 allow에 Bash(*)를 넣는 경우가 있다. 결국 같은 거다. 플래그는 위험을 눈에 보이게 표시하고, Bash(*)는 그걸 설정 파일 안에 숨기는 것뿐인 거다.

더 나은 방법은 실제로 필요한 것만 추리는 건데, Bash(git *), Bash(npm run *) 같이 자기 워크플로우에 맞는 명령어만 allow에 넣고 위험한 건 deny에 박아두면 된다. 한 번만 제대로 설정해두면 매번 승인 누를 필요도 없고, 전체를 열어두지 않아도 된다.