보안

신뢰 폴더

신뢰 폴더 보안을 사용하여 Bob Shell의 전체 기능을 사용할 수 있는 프로젝트를 제어하세요.

신뢰 폴더

신뢰 폴더를 사용하면 Bob Shell에서 사용할 수 있는 프로젝트를 제어할 수 있어요. Bob Shell이 프로젝트별 구성을 로드하기 전에 폴더를 승인해야 해요. 이를 통해 잠재적으로 악의적인 코드로부터 보호받을 수 있어요.

참고:

신뢰 폴더 기능은 기본적으로 비활성화되어 있어요. 활성화하려면 /settings 메뉴를 열고 Folder Trusttrue로 설정하세요. 변경 사항을 적용하려면 다시 시작해야 해요.

신뢰 폴더의 작동 방식

처음으로 폴더에서 Bob Shell을 실행하면 신뢰 대화 상자가 자동으로 나타나며 선택을 요청해요:

  • 폴더 신뢰: 현재 폴더(예: my-project)에 완전한 신뢰 권한 부여
  • 상위 폴더 신뢰: 상위 디렉터리(예: safe-projects)에 신뢰 권한 부여. 그 모든 하위 디렉터리가 자동으로 신뢰돼요. 모든 안전한 프로젝트를 한 곳에 보관한다면 이 옵션을 사용하세요
  • 신뢰 안 함: 폴더를 신뢰할 수 없음으로 표시. Bob Shell이 제한된 안전 모드로 작동해요

선택한 내용은 ~/.bob/trustedFolders.json에 저장되므로 폴더당 한 번만 요청받아요.

신뢰할 수 없는 폴더의 영향

폴더가 신뢰할 수 없는 경우 Bob Shell은 제한된 안전 모드로 실행돼요. 다음 기능은 비활성화되거나 무시돼요:

기능안전 모드에서의 동작
프로젝트 설정.bob/settings.json 파일이 로드되지 않아요. 사용자 정의 도구와 잠재적으로 위험한 구성은 차단돼요.
도구 자동 승인전역적으로 자동 승인을 활성화한 경우에도 도구가 실행되기 전에 항상 확인 메시지가 표시돼요.
MCP 서버Bob Shell이 MCP 서버에 연결을 시도하지 않아요.
사용자 정의 모드프로젝트 폴더에 정의된 모드는 사용할 수 없어요. 기본 제공 모드와 전역으로 정의한 모드만 사용할 수 있어요.
Skills프로젝트에 포함된 skills는 로드되지 않아요. 전역적으로 사용 가능한 skills와 기본 제공 기능만 활성화돼요.
Subagents프로젝트 폴더의 사용자 정의 subagents는 사용할 수 없어요. 에이전트는 프로젝트에서 제공한 helper에게 작업을 위임할 수 없어요.
프로젝트 지침AGENTS.md 같은 안내 파일과 사용자 정의 프로젝트 규칙은 읽지 않아요. 에이전트는 프로젝트의 사용자 정의 지침 없이 작동해요.

폴더에 신뢰를 부여하면 해당 워크스페이스에서 Bob Shell의 전체 기능이 잠금 해제돼요.

신뢰 설정 관리

신뢰가 결정되는 방식
Bob Shell은 ~/.bob/trustedFolders.json을 확인해 현재 폴더에 대한 기존 결정이 있는지 확인해요.
현재 폴더의 신뢰 변경
Bob Shell 내에서 /permissions 슬래시 명령을 실행하세요. 현재 폴더의 신뢰 수준을 변경할 수 있는 대화형 대화 상자가 나타나요.
모든 신뢰 규칙 보기
홈 디렉터리의 ~/.bob/trustedFolders.json을 확인하면 신뢰할 수 있는 폴더와 신뢰할 수 없는 폴더 규칙의 전체 목록을 볼 수 있어요.

비대화형 세션

대화형 모드와 달리 비대화형 세션에서는 신뢰 대화 상자가 표시되지 않아요. Bob Shell은 기존 신뢰 결정을 기반으로 자동으로 작동해요.

이 기능이 활성화되어 있고 폴더에 대한 신뢰 결정이 없거나 폴더가 신뢰할 수 없는 것으로 표시된 경우, Bob Shell은 오류를 발생시키고 실행되지 않아요:

<folder> is not a trusted folder. Pass --trust to run in this folder,
or run Bob Shell interactively and choose a trust level.

모드별 플래그 동작

--trust--auto-approve 플래그는 Bob Shell을 어떻게 실행하느냐에 따라 다르게 동작해요. 세션에 맞는 동작을 보려면 모드를 선택하세요:

--trust
폴더가 신뢰됨으로 영구 저장돼요. Bob Shell은 현재 디렉터리에 대한 신뢰 항목을 ~/.bob/trustedFolders.json에 기록하고 첫 접근 시 신뢰 대화 상자를 건너뛰어요. 이는 폴더를 열고 수동으로 "폴더 신뢰"를 선택하는 것과 같아요.
--auto-approve
신뢰할 수 없는 폴더에서는 자동 승인이 조용히 억제돼요. 그래도 각 도구 실행 전에 계속 확인을 요청받아요.
--trust
해당 실행에 한해서만 폴더가 신뢰된 것으로 처리돼요. 신뢰 결정은 저장되지 않고 신뢰 저장소에도 아무것도 기록되지 않아요.

자동화를 위한 사전 구성

안전한 자동화 및 CI/CD 파이프라인의 경우 비대화형 명령을 실행하기 전에 신뢰 결정을 확립하세요:

  1. 먼저 대화형 세션을 실행하여 대화 상자를 통해 신뢰 환경 설정을 지정하세요.
  2. ~/.bob/trustedFolders.json을 수동으로 구성하세요.

결정이 없을 때 Bob Shell은 신뢰된 상태로 되돌아가지 않으므로, 보안에 민감한 환경에서는 신뢰를 사전 구성하는 것이 필수예요.

모범 사례

  • 직접 검토하거나 만든 코드가 포함된 폴더만 신뢰하세요
  • 여러 안전한 프로젝트가 포함된 디렉터리에는 "상위 폴더 신뢰" 옵션을 사용하세요
  • ~/.bob/trustedFolders.json에서 신뢰 폴더 목록을 정기적으로 검토하세요
  • 익숙하지 않은 코드로 작업할 때는 신뢰를 부여하기 전에 프로젝트를 이해하기 위해 신뢰할 수 없는 모드에서 시작하세요
이 주제는 어떤가요?