You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Automated update of translated documentation.
Triggered by commit:
[4c5112c](4c5112c).
Message: `feat: add BoxMount support (#2988)
### Summary
This pull request adds Box as an rclone-backed sandbox mount provider.
- Adds `BoxMount` with Docker rclone volume-driver support and
in-container `RcloneMountPattern` config generation.
- Wires Box into the sandbox entry exports and provider docs.
- Updates rclone-backed sandbox extension wording for Daytona, E2B, and
Runloop.
- Adds Docker and rclone mount config tests for Box auth/path options.
### Test plan
- `bash .agents/skills/code-change-verification/scripts/run.sh` *(format
and lint passed; typecheck failed on pre-existing local ignored
`tests/local` symlink files and unrelated Temporal example dependency
typing)*
- `uv run pyright --project pyrightconfig.json src/agents/sandbox
src/agents/extensions/sandbox tests/sandbox/test_mounts.py
tests/sandbox/test_docker.py`
- `uv run mypy src/agents/sandbox src/agents/extensions/sandbox
tests/sandbox/test_mounts.py tests/sandbox/test_docker.py`
- `uv run pytest -q tests/sandbox/test_mounts.py
tests/sandbox/test_docker.py`
### Issue number
N/A
### Checks
- [x] I've added new tests (if relevant)
- [x] I've added/updated the relevant documentation
- [x] I've run `make lint` and `make format`
- [x] I've made sure tests pass
Co-authored-by: Carter Rabasa <carter.rabasa@gmail.com>`
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Copy file name to clipboardExpand all lines: docs/ko/sandbox/clients.md
+46-46Lines changed: 46 additions & 46 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,38 +4,38 @@ search:
4
4
---
5
5
# 샌드박스 클라이언트
6
6
7
-
이 페이지를 사용하여 샌드박스 작업을 어디에서 실행할지 선택하세요. 대부분의 경우 `SandboxAgent` 정의는 그대로 유지되고, 샌드박스 클라이언트와 클라이언트별 옵션만 [`SandboxRunConfig`][agents.run_config.SandboxRunConfig]에서 변경됩니다.
7
+
이 페이지를 사용해 샌드박스 작업을 어디에서 실행할지 선택하세요. 대부분의 경우 `SandboxAgent` 정의는 동일하게 유지되고, 샌드박스 클라이언트와 클라이언트별 옵션만 [`SandboxRunConfig`][agents.run_config.SandboxRunConfig]에서 변경됩니다.
8
8
9
9
!!! warning "베타 기능"
10
10
11
-
샌드박스 에이전트는 베타입니다. 정식 출시 전에는 API의 세부 사항, 기본값, 지원 기능이 변경될 수 있으며, 시간이 지나면서 더 고급 기능이 추가될 수 있습니다.
11
+
샌드박스 에이전트는 베타입니다. 정식 출시 전까지 API의 세부 사항, 기본값, 지원 기능이 변경될 수 있으며, 시간이 지나면서 더 고급 기능이 추가될 수 있습니다.
|`UnixLocalSandboxClient`| 없음 | macOS 또는 Linux에서 가장 빠른 로컬 반복 작업이 필요할 때. 로컬 개발의 좋은 기본값입니다 |[Unix-local 시작 예제](https://github.com/openai/openai-agents-python/blob/main/examples/sandbox/unix_local_runner.py)|
34
-
|`DockerSandboxClient`|`openai-agents[docker]`| 로컬 환경 일치를 위해 컨테이너 격리나 특정 이미지가 필요할 때 |[Docker 시작 예제](https://github.com/openai/openai-agents-python/blob/main/examples/sandbox/docker/docker_runner.py)|
33
+
|`UnixLocalSandboxClient`| 없음 | macOS 또는 Linux에서 가장 빠른 로컬 반복 작업이 필요할 때. 로컬 개발에 좋은 기본값입니다.|[Unix-local 시작 예제](https://github.com/openai/openai-agents-python/blob/main/examples/sandbox/unix_local_runner.py)|
34
+
|`DockerSandboxClient`|`openai-agents[docker]`|컨테이너 격리 또는 로컬 환경 일치를 위한 특정 이미지가 필요할 때 |[Docker 시작 예제](https://github.com/openai/openai-agents-python/blob/main/examples/sandbox/docker/docker_runner.py)|
35
35
36
36
</div>
37
37
38
-
Unix-local은 로컬 파일시스템을 대상으로 개발을 시작하는 가장 쉬운 방법입니다. 더 강한 환경 격리나 프로덕션 수준의 환경 일치가 필요하면 Docker 또는 호스티드 제공업체로 이동하세요.
38
+
Unix-local은 로컬 파일시스템을 대상으로 개발을 시작하는 가장 쉬운 방법입니다. 더 강력한 환경 격리나 프로덕션 수준의 환경 일치가 필요하면 Docker 또는 호스팅 공급자로 이동하세요.
39
39
40
40
Unix-local에서 Docker로 전환하려면 에이전트 정의는 그대로 두고 실행 구성만 변경하면 됩니다.
41
41
@@ -58,37 +58,37 @@ run_config = RunConfig(
58
58
59
59
## 마운트와 원격 스토리지
60
60
61
-
마운트 항목은 어떤 스토리지를 노출할지 설명하고, 마운트 전략은 샌드박스 백엔드가 해당 스토리지를 어떻게 연결할지 설명합니다. 내장 마운트 항목과 일반 전략은 `agents.sandbox.entries`에서 import하세요. 호스티드 제공업체 전략은 `agents.extensions.sandbox` 또는 제공업체별 확장 패키지에서 사용할 수 있습니다.
61
+
마운트 항목은 어떤 스토리지를 노출할지 설명하고, 마운트 전략은 샌드박스 백엔드가 해당 스토리지를 어떻게 연결할지 설명합니다. 내장 마운트 항목과 일반 전략은 `agents.sandbox.entries`에서 가져오세요. 호스팅 공급자 전략은 `agents.extensions.sandbox` 또는 공급자별 확장 패키지에서 사용할 수 있습니다.
62
62
63
63
일반적인 마운트 옵션:
64
64
65
-
-`mount_path`: 스토리지가 샌드박스 내에서 표시되는 위치입니다. 상대 경로는 매니페스트 루트 아래에서 해석되고, 절대 경로는 그대로 사용됩니다
66
-
-`read_only`: 기본값은 `True`입니다. 샌드박스가 마운트된 스토리지에 다시 써야 하는 경우에만 `False`로 설정하세요
67
-
-`mount_strategy`: 필수입니다. 마운트 항목과 샌드박스 백엔드 둘 다에 맞는 전략을 사용하세요
65
+
-`mount_path`: 샌드박스에서 스토리지가 나타나는 위치입니다. 상대 경로는 매니페스트 루트 아래에서 해석되고, 절대 경로는 그대로 사용됩니다.
66
+
-`read_only`: 기본값은 `True`입니다. 샌드박스가 마운트된 스토리지에 다시 써야 하는 경우에만 `False`로 설정하세요.
67
+
-`mount_strategy`: 필수입니다. 마운트 항목과 샌드박스 백엔드 모두에 맞는 전략을 사용하세요.
68
68
69
-
마운트는 임시 작업공간 항목으로 처리됩니다. 스냅샷 및 영속성 흐름에서는 저장된 작업공간에 마운트된 원격 스토리지를 복사하는 대신, 마운트된 경로를 분리하거나 건너뜁니다.
69
+
마운트는 일시적인 작업공간 항목으로 처리됩니다. 스냅샷 및 영속화 흐름에서는 마운트된 원격 스토리지를 저장된 작업공간에 복사하는 대신, 마운트된 경로를 분리하거나 건너뜁니다.
|`InContainerMountStrategy(pattern=RcloneMountPattern(...))`| 샌드박스 이미지에서 `rclone`을 실행할 수 있을 때 | S3, GCS, R2, Azure Blob을 지원합니다. `RcloneMountPattern`은 `fuse` 모드 또는 `nfs` 모드로 실행할 수 있습니다 |
78
-
|`InContainerMountStrategy(pattern=MountpointMountPattern(...))`| 이미지에 `mount-s3`가 있고 Mountpoint 스타일의 S3 또는 S3 호환 액세스가 필요할 때 |`S3Mount` 및 `GCSMount`를 지원합니다 |
79
-
|`InContainerMountStrategy(pattern=FuseMountPattern(...))`| 이미지에 `blobfuse2`와 FUSE 지원이 있을 때 |`AzureBlobMount`를 지원합니다 |
80
-
|`InContainerMountStrategy(pattern=S3FilesMountPattern(...))`| 이미지에 `mount.s3files`가 있고 기존 S3 Files 마운트 대상에 연결할 수 있을 때 |`S3FilesMount`를 지원합니다 |
81
-
|`DockerVolumeMountStrategy(driver=...)`| 컨테이너 시작 전에 Docker가 볼륨 드라이버 기반 마운트를 연결해야 할 때 | Docker 전용입니다. S3, GCS, R2, Azure Blob은 `rclone`을 지원하고, S3와 GCS는 `mountpoint`도 지원합니다 |
77
+
|`InContainerMountStrategy(pattern=RcloneMountPattern(...))`| 샌드박스 이미지에서 `rclone`을 실행할 수 있을 때 | S3, GCS, R2, Azure Blob, Box를 지원합니다. `RcloneMountPattern`은 `fuse` 모드 또는 `nfs` 모드로 실행할 수 있습니다.|
78
+
|`InContainerMountStrategy(pattern=MountpointMountPattern(...))`| 이미지에 `mount-s3`가 있고 Mountpoint 방식의 S3 또는 S3 호환 액세스를 원할 때 |`S3Mount`와 `GCSMount`를 지원합니다.|
79
+
|`InContainerMountStrategy(pattern=FuseMountPattern(...))`| 이미지에 `blobfuse2`와 FUSE 지원이 있을 때 |`AzureBlobMount`를 지원합니다.|
80
+
|`InContainerMountStrategy(pattern=S3FilesMountPattern(...))`| 이미지에 `mount.s3files`가 있고 기존 S3 Files 마운트 대상에 접근할 수 있을 때 |`S3FilesMount`를 지원합니다.|
81
+
|`DockerVolumeMountStrategy(driver=...)`|Docker가 컨테이너 시작 전에 볼륨 드라이버 기반 마운트를 연결해야 할 때 | Docker 전용입니다. S3, GCS, R2, Azure Blob, Box는 `rclone`을 지원하며, S3와 GCS는 `mountpoint`도 지원합니다.|
82
82
83
83
</div>
84
84
85
-
## 지원되는 호스티드 플랫폼
85
+
## 지원되는 호스팅 플랫폼
86
86
87
-
호스티드 환경이 필요할 때도 일반적으로 동일한 `SandboxAgent` 정의를 그대로 사용할 수 있으며, [`SandboxRunConfig`][agents.run_config.SandboxRunConfig]에서 샌드박스 클라이언트만 변경하면 됩니다.
87
+
호스팅 환경이 필요할 때는 동일한 `SandboxAgent` 정의를 그대로 사용할 수 있으며, 일반적으로[`SandboxRunConfig`][agents.run_config.SandboxRunConfig]에서 샌드박스 클라이언트만 변경하면 됩니다.
88
88
89
-
이 저장소 체크아웃 대신 공개된 SDK를 사용 중이라면, 일치하는 패키지 extra를 통해 샌드박스 클라이언트 의존성을 설치하세요.
89
+
이 저장소 체크아웃이 아니라 배포된 SDK를 사용 중이라면, 일치하는 패키지 extra를 통해 샌드박스 클라이언트 의존성을 설치하세요.
90
90
91
-
제공업체별 설정 참고 사항과 저장소에 포함된 확장 예제 링크는 [examples/sandbox/extensions/README.md](https://github.com/openai/openai-agents-python/blob/main/examples/sandbox/extensions/README.md)를 참고하세요.
91
+
공급자별 설정 참고 사항과 저장소에 포함된 확장 예제 링크는 [examples/sandbox/extensions/README.md](https://github.com/openai/openai-agents-python/blob/main/examples/sandbox/extensions/README.md)를 참고하세요.
| Docker |`InContainerMountStrategy` 및 `DockerVolumeMountStrategy`와 같은 로컬 전략으로 `S3Mount`, `GCSMount`, `R2Mount`, `AzureBlobMount`, `S3FilesMount`를 지원합니다 |
114
-
|`ModalSandboxClient`|`S3Mount`, `R2Mount`, HMAC 인증`GCSMount`에 대해 `ModalCloudBucketMountStrategy`를 사용한 Modal 클라우드 버킷 마운트를 지원합니다. 인라인 자격 증명 또는 이름이 지정된 Modal Secret을 사용할 수 있습니다 |
115
-
|`CloudflareSandboxClient`|`S3Mount`, `R2Mount`, HMAC 인증`GCSMount`에 대해 `CloudflareBucketMountStrategy`를 사용한 Cloudflare 버킷 마운트를 지원합니다 |
116
-
|`BlaxelSandboxClient`|`S3Mount`, `R2Mount`, `GCSMount`에 대해 `BlaxelCloudBucketMountStrategy`를 사용한 클라우드 버킷 마운트를 지원합니다. 또한 `agents.extensions.sandbox.blaxel`의 `BlaxelDriveMount`와 `BlaxelDriveMountStrategy`를 사용한 영구 Blaxel Drive도 지원합니다 |
117
-
|`DaytonaSandboxClient`|`DaytonaCloudBucketMountStrategy`를 사용한 클라우드 버킷 마운트를 지원합니다. `S3Mount`, `GCSMount`, `R2Mount`, `AzureBlobMount`와 함께 사용하세요 |
118
-
|`E2BSandboxClient`|`E2BCloudBucketMountStrategy`를 사용한 클라우드 버킷 마운트를 지원합니다. `S3Mount`, `GCSMount`, `R2Mount`, `AzureBlobMount`와 함께 사용하세요 |
119
-
|`RunloopSandboxClient`|`RunloopCloudBucketMountStrategy`를 사용한 클라우드 버킷 마운트를 지원합니다. `S3Mount`, `GCSMount`, `R2Mount`, `AzureBlobMount`와 함께 사용하세요 |
120
-
|`VercelSandboxClient`| 현재 호스티드 전용 마운트 전략이 노출되어 있지 않습니다. 대신 매니페스트 파일, 저장소, 또는 다른 작업공간 입력을 사용하세요 |
113
+
| Docker |`InContainerMountStrategy` 및 `DockerVolumeMountStrategy`와 같은 로컬 전략을 사용해 `S3Mount`, `GCSMount`, `R2Mount`, `AzureBlobMount`, `BoxMount`, `S3FilesMount`를 지원합니다.|
114
+
|`ModalSandboxClient`|`S3Mount`, `R2Mount`, HMAC 인증된`GCSMount`에서 `ModalCloudBucketMountStrategy`를 사용한 Modal 클라우드 버킷 마운트를 지원합니다. 인라인 자격 증명 또는 이름 있는 Modal Secret을 사용할 수 있습니다.|
115
+
|`CloudflareSandboxClient`|`S3Mount`, `R2Mount`, HMAC 인증된`GCSMount`에서 `CloudflareBucketMountStrategy`를 사용한 Cloudflare 버킷 마운트를 지원합니다.|
116
+
|`BlaxelSandboxClient`|`S3Mount`, `R2Mount`, `GCSMount`에서 `BlaxelCloudBucketMountStrategy`를 사용한 클라우드 버킷 마운트를 지원합니다. 또한 `agents.extensions.sandbox.blaxel`의 `BlaxelDriveMount` 및 `BlaxelDriveMountStrategy`를 사용한 영구 Blaxel Drive도 지원합니다.|
117
+
|`DaytonaSandboxClient`|`DaytonaCloudBucketMountStrategy`를 사용한 rclone 기반 클라우드 스토리지 마운트를 지원합니다. `S3Mount`, `GCSMount`, `R2Mount`, `AzureBlobMount`, `BoxMount`와 함께 사용하세요.|
118
+
|`E2BSandboxClient`|`E2BCloudBucketMountStrategy`를 사용한 rclone 기반 클라우드 스토리지 마운트를 지원합니다. `S3Mount`, `GCSMount`, `R2Mount`, `AzureBlobMount`, `BoxMount`와 함께 사용하세요.|
119
+
|`RunloopSandboxClient`|`RunloopCloudBucketMountStrategy`를 사용한 rclone 기반 클라우드 스토리지 마운트를 지원합니다. `S3Mount`, `GCSMount`, `R2Mount`, `AzureBlobMount`, `BoxMount`와 함께 사용하세요.|
120
+
|`VercelSandboxClient`| 현재 호스팅 전용 마운트 전략이 노출되어 있지 않습니다. 대신 매니페스트 파일, 저장소 또는 기타 작업공간 입력을 사용하세요.|
더 많은 실행 가능한 예제는 로컬, 코딩, 메모리, 핸드오프, 에이전트 구성 패턴에 대해서는 [examples/sandbox/](https://github.com/openai/openai-agents-python/tree/main/examples/sandbox)을, 호스티드 샌드박스 클라이언트에 대해서는[examples/sandbox/extensions/](https://github.com/openai/openai-agents-python/tree/main/examples/sandbox/extensions)를 살펴보세요.
141
+
실행 가능한 예제를 더 보려면 로컬, 코딩, 메모리, 핸드오프, 에이전트 구성 패턴은 [examples/sandbox/](https://github.com/openai/openai-agents-python/tree/main/examples/sandbox)를, 호스팅 샌드박스 클라이언트는[examples/sandbox/extensions/](https://github.com/openai/openai-agents-python/tree/main/examples/sandbox/extensions)를 살펴보세요.
0 commit comments