5.3 KiB
| name | description | type |
|---|---|---|
| PC 간 승인 설정 일관성은 .claude/settings.json 커밋으로만 보장 | PD님의 일괄 승인 원칙을 PC 간 일관되게 유지하려면 조직 공용 `.claude/settings.json`을 git 커밋해야 함. memory/org/의 "일괄 승인" 메모리는 행동 지침일 뿐 harness의 permission system과 분리되어 있음. | feedback |
Claude Code의 승인 체계는 2계층으로 분리되어 있다:
- Harness permission (
.claude/settings.json) — Claude Code 런타임이 도구 실행 전에 참조하는 allow/deny 규칙. 없으면 매번 사용자에게 승인 요청. - 메모리 지침 (
memory/org/feedback_*.md) — Claude의 행동 기준. 사용자 승인 여부와 무관하게 Claude가 어떻게 판단·행동할지의 지침.
두 계층은 독립적으로 동작한다. 메모리에 "일괄 승인" 원칙이 있어도 settings.json이 없으면 harness가 매번 승인을 요구한다.
PC 간 일관성
.claude/settings.json— git 커밋 대상, 모든 PC에서 clone·pull로 자동 적용 ✅.claude/settings.local.json—.gitignore대상, 세션별 개별 명령 누적 기록 ❌ PC 이동 시 소실~/.claude/settings.json— 사용자 홈 설정, PC마다 별도 관리 필요
결론: 조직 공용 permission은 반드시 .claude/settings.json(프로젝트 루트)에 선언·커밋해야 PC 독립성이 보장된다.
자식 디렉토리 전파 원칙 (너드나비스 구조 특수사항)
Claude Code는 .claude/ 폴더 1개만 프로젝트 루트로 인식하며 부모 방향 auto-merge를 지원하지 않는다. 너드나비스 조직 레포는 루트 외에 개발실/.claude/·기획실/.claude/가 이미 존재(agents·commands·skill-modules 용). 이 때문에 자식 디렉토리에서 세션을 시작하면 루트의 settings.json이 무시된다.
해결 구조:
- SOT:
.claude/settings.json(루트). 모든 변경은 이 파일을 먼저 편집. - 파생:
개발실/.claude/settings.json·기획실/.claude/settings.json— 루트 SOT의 복사본. - 동기화:
setup/setup_windows.ps1이 루트 SOT → 두 부서로 자동 복제. 셋업 스크립트 실행 시마다 갱신. - 수동 동기화 (스크립트 미실행 환경): 루트 settings.json 수정 후 두 부서 파일에도 동일 내용 반영 후 일괄 커밋.
검증법: 각 부서 디렉토리에서 .claude/settings.json 존재 여부 확인. 파일이 같은 내용인지 diff로 점검.
권장 구성
{
"permissions": {
"allow": ["Edit", "Write", "MultiEdit", "TodoWrite", "Bash(git:*)", ...],
"deny": ["Bash(rm -rf /*)", "Bash(sudo:*)", ...]
}
}
- 포괄 허용: Edit·Write·MultiEdit·NotebookEdit·TodoWrite·Read·Glob·Grep
- 안전 Bash: git·gh·ls·cat·find·grep·mkdir·cp·mv·powershell 등
- 위험 deny: rm -rf /·rm -rf ~·sudo·dd·mkfs·포크 봄·/etc /System C:/Windows 쓰기
적용 타이밍
.claude/settings.json 변경은 세션 재시작 후 적용된다. PD님께 사전 고지 필수 (feedback_session_restart.md 원칙).
Windows Store(MSIX) 버전 Claude 앱 특수사항 (2026-04-15 실증)
PD님의 주 PC는 Windows Store에서 설치한 MSIX 버전 Claude 앱(PackageFamilyName = Claude_pzs8sxrjxfjjc, AppId = Claude)을 사용. 다음 3가지가 실전 안정화의 핵심으로 실증됨:
1. 세션 재시작 = 앱 프로세스 완전 종료
- 창 닫기·
New Session버튼만으로는.claude/settings.json이 reload 되지 않음 - 반드시 작업 관리자(
Ctrl+Shift+Esc)에서 Claude 관련 모든 프로세스를 "작업 끝내기" 해야 함 - 그 후 앱을 새로 실행해야 settings.json이 실제 로드됨
2. 부서별 진입은 바탕화면 바로가기로 표준화
- "New Session" 버튼은 현재 열린 프로젝트 컨텍스트 내에서 새 대화만 만듦 → 프로젝트 전환 안 됨
- 부서별 세션을 원하면 각 부서 폴더를
WorkingDirectory로 지정한 바로가기 생성 - MSIX 앱용 바로가기 스펙:
TargetPath = explorer.exeArguments = shell:AppsFolder\Claude_pzs8sxrjxfjjc!ClaudeWorkingDirectory = <부서 폴더>
- 자동화:
setup/setup_windows.ps1 -CreateShortcuts실행 (MSIX·일반 exe 모두 자동 탐지)
3. /permissions 슬래시 커맨드 미지원
- MSIX 버전 Claude 앱은 슬래시 커맨드를 스킬 시스템으로 처리 →
/permissions는 "Unknown skill" 반환 - 권한 확인은 앱 Settings UI 메뉴에서 수행
Why
2026-04-15 PD님이 새 PC에서 "md 파일 수정 시 매번 승인 요구" 이슈 지적. 이전 PC에선 일괄 승인 상태였으나 새 PC에선 .claude/settings.local.json이 비어있어 개별 승인 요구 발생. 조직 레포에 .claude/settings.json이 커밋되어 있지 않아 PC 간 승인 설정이 독립적으로 관리되는 구조였음. 근본 해결을 위해 조직 공용 settings.json 신설·커밋.
How to apply
- 새 PC 셋업 시
.claude/settings.json이 자동 로드되므로 별도 셋업 불필요 - 조직 공통 허용 규칙 변경은 본 파일을 편집·커밋
- PC 고유의 임시·실험적 허용은
.claude/settings.local.json에 추가 (자동 누적) - settings.json 변경 후 세션 재시작으로 반영