managed-agents-2026-04-01 beta header. The Anthropic SDK used in this guide adds it automatically. See Anthropic beta access.
Prerequisites
Before you begin, you need the following:- W&B API 키. 이 예시에서는 W&B 인증을 사용합니다.
- Anthropic 워크스페이스의 Claude Managed Agents 액세스 권한, 그리고 세션을 생성하는 클라이언트에서 사용할 Console API 키.
agent_toolset_20260401로 설정된 기존 에이전트. Anthropic의 Managed Agents 퀵스타트를 참고해 에이전트를 생성하고 에이전트 ID를 기록해 두세요.- SDK 예시를 실행하려면
uv가 설치된 Python 3.11 이상 또는 Node.js 22 이상.
cws-agent가 W&B 인증을 사용하도록 설정된 CoreWeave 토큰은 모두 unset하세요:
Create an environment
In the Claude Console, create a Self-hosted environment. Open it and generate an environment key. Record the environment ID and store the key securely. See Anthropic’s environment setup. The environment key authenticates workers to this environment. The Console API key creates sessions from your client. Keep the two credentials separate. For the verification task, use an environment with only the worker created in this guide. That prevents another worker from claiming the test session. With the environment ready, choose eithercws-agent or the Sandbox SDK to start its worker, then run the verification task.
Quick start with cws-agent
cws-agent 설치 안내에 따라 설치하세요. 이 도구는 파일 시스템 스냅샷으로 워크스페이스를 저장하고 복원하는 데 사용할 스냅샷 볼륨을 설정합니다.
Replace [ENVIRONMENT-KEY], [ENVIRONMENT-ID], and [SANDBOX-NAME] with your environment key, environment ID, and a cws-agent session name for the sandbox. For the session name, use 1 to 40 lowercase letters, digits, or hyphens, starting with a letter or digit:
/workspace/claude/0 and returns to your shell. The tool passes the environment key into the sandbox.
To view the worker’s terminal, run:
cws-agent run command doesn’t drive Managed Agents conversations.
Set up with the Sandbox SDK
This alternative starts Anthropic’sant worker as the sandbox’s main process. It doesn’t require cws-agent or configure snapshots.
Run Python snippets in the virtual environment created in this guide. Save TypeScript snippets as .mts files in the project where you install the client, then run them with npx tsx [FILENAME].mts.
Configure credentials and install the client
Export the environment key and ID from the Console in the terminal where you run the script:- Python
- TypeScript
Python 3.11 이상과
uv를 사용하세요.Start the worker
Save the script for your language using the filename shown. The script installs theant CLI in a Linux image with Bash, starts one worker, and prints the sandbox ID. The client reads ANTHROPIC_ENVIRONMENT_KEY from your local environment and passes its value in the sandbox request to set the worker’s environment variable.
- Python
- TypeScript
start_claude_worker.py
- Python
- TypeScript
wait() can also return if the main process has already completed. A printed sandbox ID doesn’t confirm that the worker is authenticated or polling. Before starting a task, inspect its status and recent logs. Replace [SANDBOX-ID] with the printed ID:
- Python
- TypeScript
선택: 시크릿 저장소 사용
환경 키 값 대신 W&B 시크릿 참조를 전달할 수 있습니다. SDK 예시는 이미 W&B 인증을 사용하도록 되어 있습니다. 환경 키를 담당 W&B 팀의 Secret Manager에 저장하고, 해당 팀이 기본 entity가 아니라면WANDB_ENTITY로 그 팀을 지정하세요.
[SECRET-NAME]을 팀 시크릿 이름으로 바꾸세요.
- Python
- TypeScript
cwsandbox에서 Secret을 임포트하고, environment_variables에서 ANTHROPIC_ENVIRONMENT_KEY를 제거한 다음 Sandbox.run()에 secrets=[Secret(store="wandb", name="[SECRET-NAME]", env_var="ANTHROPIC_ENVIRONMENT_KEY")]를 추가하세요.Run and verify a task
Run the session client on your own machine for either setup path. Install the Anthropic SDK for your language:- Python
- TypeScript
[ANTHROPIC-API-KEY] with your Console API key, [AGENT-ID] with your existing agent ID, and [ENVIRONMENT-ID] with the environment connected to your worker:
- Python
- TypeScript
verify_claude_worker.py
- Python
- TypeScript
requires_action, inspect the referenced tool events. Calls with evaluated_permission: "ask" need Anthropic’s tool-confirmation workflow. The worker handles allowed calls. If they stall, inspect its logs. Keep the session ID to continue that session rather than creating another one.
After the task completes, read the file from the sandbox with the command for your setup. Replace [SANDBOX-NAME] or [SANDBOX-ID] with the workspace name or printed sandbox ID:
- cws-agent
- Sandbox SDK
cwsandbox if needed. For TypeScript, save the SDK snippet as an .mts file and run it with npx tsx.
The file must match the value printed by the client. This ties the agent’s tool execution to the specific CoreWeave sandbox.
Keep results and stop
Wait for active tasks to finish and copy any results you need out of the sandbox. Then stop it using the command for your setup:- cws-agent
- Sandbox SDK
down은 중지하기 전에 워크스페이스 스냅샷을 생성합니다. 캡처에 실패하면 cws-agent status [SANDBOX-NAME]을 확인하고 원인을 해결한 뒤 다시 시도하세요. 저장되지 않은 변경 사항을 버려도 된다면 down --no-snapshot을 사용하세요.Troubleshoot
Use these checks to resolve common issues:- If the session waits for a worker, check the environment ID, the worker logs, and whether another task already occupies the worker.
- If the worker can’t authenticate, check its environment key. The Console API key used by the session client is a different credential.
- If a tool is missing, build an image with the required dependencies. The example uses a Python image and doesn’t install a project-specific toolchain.