Repolode
strands-agents

strands-agents/box

AI 에이전트의 실행, 읽기, 쓰기, 네트워크 접근을 기본 거부 정책으로 제한하는 오픈소스 샌드박스 엔진입니다.

스타
498
포크
41
열린 이슈
92
마지막 커밋
21시간 전

어떤 프로젝트인가요?

Strands Box는 AI 에이전트를 운영체제 샌드박스에서 실행하고, Dogwood로 작성한 시맨틱 정책을 적용합니다. 파일, 프로그램, 네트워크에 대한 접근은 box.toml에서 설정하고, policy.dw의 규칙은 인수, 이전 작업, 경과 시간을 바탕으로 어떤 작업을 허용할지 결정합니다. 정책 엔진이 검사하는 작업은 permit 규칙이 허용하지 않는 한 거부되며, forbid 규칙은 permit 규칙보다 우선합니다.

정책 엔진은 에이전트 프로세스 외부에서 동작합니다. Strands Shell, Python용 Monty, 이그레스 게이트웨이, MCP 브로커가 작업을 정책 엔진으로 전달하므로 한 인터프리터에서 파일을 읽은 결과가 이후의 아웃바운드 HTTP 요청 허용 여부에 영향을 줄 수 있습니다. 게이트웨이는 허용된 요청에 API 자격 증명이나 AWS SigV4 서명을 주입할 수 있어, 에이전트가 실제 비밀 정보를 전달받지 않습니다. 정책 결정은 OTLP JSON으로 기록됩니다.

Box는 하네스에 종속되지 않으므로 실행할 에이전트 프로그램이나 바이너리를 직접 선택할 수 있습니다. Rust 프로젝트로, 현재 프리뷰 단계이며 Apple silicon 기반 macOS에서의 로컬 실행만 지원하고 Linux 지원은 계획 중입니다. Rust 라이브러리로 연결해 사용할 수도 있습니다.

핵심 기능

  • 01OS 격리를 통해 에이전트의 파일, 프로그램, 네트워크 접근을 제한합니다.
  • 02Dogwood로 작성한 기본 거부 방식의 permit 및 forbid 규칙을 평가합니다.
  • 03셸, Python, 네트워크, MCP 호출에서 하나의 정책 엔진과 이벤트 기록을 공유합니다.
  • 04아웃바운드 연결과 HTTP 요청을 메서드 및 경로별로 검사합니다.
  • 05에이전트에 비밀 정보를 노출하지 않고 API 자격 증명이나 AWS SigV4 서명을 주입합니다.
  • 06정책 결정을 OTLP JSON으로 기록합니다.

활용 사례

  • 비밀 정보를 읽거나 임의의 호스트에 접속해서는 안 되는 코딩 에이전트를 실행하는 경우.
  • 에이전트가 호출할 수 있는 외부 API와 사용할 HTTP 메서드를 제한하는 경우.
  • 에이전트 프로세스에서 API 키를 보호하면서도 승인된 요청은 보낼 수 있게 하는 경우.
  • 정책 결정 로그를 통해 에이전트가 시도한 작업을 감사하는 경우.

빠른 시작

  1. 1

    README에 있는 공식 다운로드 스크립트를 실행합니다

  2. 2

    설치된 버전을 확인합니다

    ./box-core/box --version
  3. 3

    저장소를 클론합니다

    git clone https://github.com/strands-agents/box.git
  4. 4

    소스에서 box 바이너리를 빌드합니다

    cargo build --release -p strands-box -p strands-box-containment

사용 전 알아둘 점

  • 프리뷰 릴리스로, 현재 로컬 실행은 Apple silicon이 탑재된 macOS에서만 지원됩니다.
  • 시작하기 가이드를 이용하려면 Node.js 22.21 이상과 Amazon Bedrock의 Claude Opus 5 액세스 권한도 필요합니다.

포함된 컬렉션

토픽

#agent-sandbox#ai-safety#sandboxing#zero-trust#policy#rust#mcp#credential-management#agentic-ai#agents

자주 묻는 질문

box은(는) 무엇인가요?
AI 에이전트의 실행, 읽기, 쓰기, 네트워크 접근을 기본 거부 정책으로 제한하는 오픈소스 샌드박스 엔진입니다. Strands Box는 AI 에이전트를 운영체제 샌드박스에서 실행하고, Dogwood로 작성한 시맨틱 정책을 적용합니다. 파일, 프로그램, 네트워크에 대한 접근은 box.toml에서 설정하고, policy.dw의 규칙은 인수, 이전 작업, 경과 시간을 바탕으로 어떤 작업을 허용할지 결정합니다. 정책 엔진이 검사하는 작업은 permit 규칙이 허용하지 않는 한 거부되며, forbid 규칙은 permit 규칙보다 우선합니다.
box은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
box은(는) Apache-2.0 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
box은(는) 아직 유지보수되고 있나요?
활발히 유지보수 중. box의 마지막 커밋은 2026년 11월 6일입니다.
box은(는) 어디에 사용할 수 있나요?
비밀 정보를 읽거나 임의의 호스트에 접속해서는 안 되는 코딩 에이전트를 실행하는 경우. 에이전트가 호출할 수 있는 외부 API와 사용할 HTTP 메서드를 제한하는 경우. 에이전트 프로세스에서 API 키를 보호하면서도 승인된 요청은 보낼 수 있게 하는 경우. 정책 결정 로그를 통해 에이전트가 시도한 작업을 감사하는 경우.
box는 어떻게 설치하나요?
README에 있는 공식 다운로드 스크립트를 실행합니다 설치된 버전을 확인합니다: ./box-core/box --version 저장소를 클론합니다: git clone https://github.com/strands-agents/box.git 소스에서 box 바이너리를 빌드합니다: cargo build --release -p strands-box -p strands-box-containment
box은(는) 어디서 받을 수 있나요?
소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/strands-agents/box

요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.

관련 프로젝트