권한
헬피코드는 영향이 큰 작업을 하기 전에 사용자에게 묻습니다. 수락 모드, 권한 카드, "항상 허용"의 범위, 항상 확인하는 보호 파일을 설명합니다.
수락 모드
입력창 아래 칩에서 대화별로 수락 모드를 고릅니다. 새 대화는 마지막으로 쓴 모드로 시작하며, 첫 메시지부터 그 모드로 판단됩니다. 모드를 저장하지 못하면 수동 수락으로 돌아갑니다.
| 모드 | 설명 |
|---|---|
| 수동 수락 (기본) | 변경 전 항상 확인합니다. 행동하는 모든 작업(파일 편집, 읽기 전용이 아닌 명령, 웹, MCP·플러그인 도구)은 묻고, 조회성 작업(glob, grep, list, lsp, 일반 파일 읽기)은 묻지 않고 실행합니다. |
| 자동 수락 | 변경사항을 자동 반영합니다. 안전한 작업은 묻지 않고, 애매한 작업은 AI 판정(분류기) 이 허용·차단을 결정합니다. |
수동 수락에서 묻지 않는 것
- 파일 읽기·검색(
read,glob,grep,list,lsp). 단,.env,.env.*같은 환경 변수 파일 읽기는 묻습니다(.env.example은 묻지 않음). - 읽기 전용으로 분류된 셸 명령(
ls,cat등)은 규칙을 확인하기 전에 통과합니다. - 결과물 표시(
present_files)와 헬피비전 문서 OCR(document_vision). - 스킬 로드(
skill). 단, 내부용customize-opencode는 거부됩니다. - 첨부 폴더 읽기. 업로드한 파일은 권한 카드 없이 읽습니다.
자동 수락의 동작 방식
자동 수락은 2단계로 판단합니다.
- 1단계(규칙): 규칙, 셸 분류기, 보호 경로, 편집 검사로 확실한 것을 결정합니다.
- 프로젝트 안의 파일 편집과 환경 변수 파일 읽기는 허용합니다.
- 프로젝트 밖 읽기도 허용합니다.
- 2단계(AI 판정): 1단계가 "묻는다"로 분류한 호출을 AI 판정이 허용 또는 차단합니다. 판정은 최근 결정 기록(세션 단위, 최대 100개)을 참고합니다.
- 차단된 호출은 사용자에게 묻지 않고 막히며, AI는 막혔다는 사실을 전달받아 다른 방법을 찾습니다. 같은 호출을 쪼개서 다시 시도해도 기록에 남 아 계속 차단됩니다.
- 판정이 실패하거나, 시간이 초과되거나, 결과가 불분명하면 사용자에게 묻습니다.
자동 수락에서도 항상 사용자에게 묻는 것 (AI 판정이 대신하지 않습니다)
- 프로젝트나 루트 삭제, 링크를 따라 밖으로 나가는 쓰기, Windows 네트워크 경로(
\\host\share), 헬피코드 자체 폴더 접근 - 사용자 규칙이 "묻기"로 지정한 것
- 사용자에게만 답할 수 있는 질문: 반복 호출(
doom_loop), 계획 모드 전환(plan_enter/plan_exit),question
자동 수락 진입 시 비활성화되는 허용 규칙: 모든 도구를 허용하는 규칙(*), 서브에이전트 호출 허용(task), 임의 코드를 실행하는 명령 허용(인터프리터, 셸, 스크립트 러너, curl/wget/ssh 같은 다운로드·원격 도구, npm run, docker run 등)은 자동 수락에서는 적용되지 않습니다. 범위가 좁은 규칙(예: bash git status, MCP 도구)은 유지됩니다.
권한 패널
권한이 필요한 작업이 생기면 입력창을 가리는 권한 패널이 나타납니다. 아래 rail(프로젝트 칩, 수락 모드)은 그대로 보입니다. 요청이 여러 개면 요청 시각 순으로 첫 번째 하나만 표시하고, 응답하면 다음이 나타납니다. 서브에이전트가 낸 요청도 같은 패널로 올라옵니다.