Claude Platform Docs
Managed AgentsSandboxes auto-hospedadas

Referência de workers auto-hospedados

Referência para workers de sandbox auto-hospedados: flags da CLI ant, variáveis de ambiente, requisitos do host, caminhos do sistema de arquivos e opções dos helpers do SDK.

Esta página documenta os workers pré-construídos que atendem a um ambiente self_hosted. Para guias orientados a tarefas, comece com Sandboxes auto-hospedados e Implantar workers auto-hospedados.

Comandos e flags da CLI

ComandoDescrição
ant beta:worker pollReivindica itens de trabalho da fila do ambiente e executa cada sessão no próprio processo. Com --on-work, chama seu script para cada item de trabalho em vez disso.
ant beta:worker runProcessa uma sessão reivindicada e encerra. Use-o como o entrypoint de um sandbox por sessão.
FlagDescrição
--environment-idO ambiente a ser consultado em busca de trabalho. Também lê de ANTHROPIC_ENVIRONMENT_ID.
--environment-keyAutentica o worker com este ambiente. Também lê de ANTHROPIC_ENVIRONMENT_KEY.
--workdirDiretório onde as skills são baixadas e onde as ferramentas leem e gravam arquivos. O padrão é . (o diretório atual).
--on-workScript a ser chamado para cada item de trabalho reivindicado em vez de executar as ferramentas no próprio processo. Recebe os detalhes da sessão como variáveis de ambiente e o item de trabalho como JSON na entrada padrão.
--max-idleQuanto tempo esperar depois que a sessão fica ociosa com um stop reason (motivo de parada) end_turn antes de encerrar. O padrão é 60s.
--log-formatFormato de saída dos logs. Use json para ingestão de logs estruturados. O padrão é text.

Variáveis de ambiente

VariávelDescriçãoDefinida por
ANTHROPIC_ENVIRONMENT_IDO ambiente cuja fila o worker atende.Você, no host do worker. O poller a repassa ao script --on-work.
ANTHROPIC_ENVIRONMENT_KEYAutentica o worker na sua fila.Você, no host do worker. O poller a repassa ao script --on-work.
ANTHROPIC_SESSION_IDA sessão que um item de trabalho reivindicado representa.O poller, para o script --on-work.
ANTHROPIC_WORK_IDO item de trabalho reivindicado.O poller, para o script --on-work.
ANTHROPIC_WORK_SECRETO segredo por sessão do item de trabalho.Você. O poller não a define. Consulte Encaminhar o segredo do item de trabalho.
ANTHROPIC_BASE_URLSubstitui o endpoint padrão da API. Opcional.Você, no host do worker.
ANTHROPIC_WEBHOOK_SIGNING_KEYVerifica os payloads de webhook recebidos.Você, em um host de handler de webhook.

Requisitos do host

WorkerRequisito
Todos os workersUm host Linux com /bin/bash exatamente nesse caminho. A ferramenta bash do worker o invoca diretamente, sem consultar o PATH.
SDK TypeScriptunzip e tar no PATH, e Node.js 22 ou posterior.
SDKs Python e GoNenhum binário adicional. Esses SDKs usam suas bibliotecas padrão para extração de arquivos compactados.

Memory stores (armazenamentos de memória) adicionam seus próprios requisitos.

Sistema de arquivos do sandbox

CaminhoConteúdo
/workspaceO diretório de trabalho padrão do sistema para execução de ferramentas e download de skills. Se você usar um diretório de trabalho diferente, atualize o prompt do sistema do seu agente para que Claude consiga localizar os arquivos das skills.
<workdir>/skills/<name>/As skills baixadas do agente.
/mnt/memory/<store>/Um diretório por memory store anexado, no mount_path do store (por exemplo, /mnt/memory/user-preferences/). O worker cria esses diretórios quando reivindica a sessão e os remove quando a sessão termina.

Em ambientes auto-hospedados, o prompt do sistema da sessão omite a instrução /mnt/session/outputs usada em sandboxes gerenciados pela Anthropic. Os entregáveis finais ficam onde quer que o agente os grave no sistema de arquivos do seu sandbox, normalmente sob o diretório de trabalho.

As skills podem incluir executáveis que o agente pode executar diretamente. Os workers da CLI e do SDK preservam as permissões de execução registradas no pacote da skill ao extraí-lo. Se você implementar o download de skills manualmente, será responsável por definir as permissões de execução.

Helpers do SDK

Os SDKs Python, TypeScript e Go fornecem três helpers com diferentes níveis de controle:

HelperO que fazUse quando
EnvironmentWorkerCuida do polling, da configuração e da execução de ponta a ponta.Na maioria dos casos.
work.poller()Consulta a fila de trabalho e entrega a você cada sessão reivindicada.Você determina o que acontece em cada sessão, por exemplo, iniciar um sandbox em vez de executar as ferramentas no próprio processo.
client.beta.sessions.events.tool_runner()Executa chamadas de ferramentas para uma única sessão, dados o ID da sessão e uma lista de ferramentas.Você já reivindicou o trabalho e só precisa da camada de execução.

EnvironmentWorker

MétodoDescrição
run()Executa indefinidamente, pegando as sessões à medida que chegam.
handle_item()Processa um único item de trabalho reivindicado e retorna. Passe explicitamente os identificadores do trabalho, da sessão e do ambiente e o work_secret, ou deixe-o ler as variáveis ANTHROPIC_*.
OpçãoDescrição
toolsUma factory que recebe o AgentToolContext da sessão e retorna a lista de ferramentas. O padrão é o conjunto de ferramentas padrão do agente.
memory_sync_intervalCom que frequência os memory stores anexados se reconciliam com o servidor enquanto a sessão é executada. Consulte Intervalo de sincronização.
memory_sync_deletionsSe os arquivos que o agente exclui localmente também são excluídos do store. Consulte Exclusões.

O EnvironmentWorker gerencia o AgentToolContext e o conjunto de ferramentas automaticamente. Passe uma factory tools para personalizar a lista de ferramentas:

EnvironmentWorker(client, ..., tools=lambda env: [beta_bash_tool(env), my_custom_tool])

Work poller

OpçãoDescrição
drainSe deve parar o polling quando a fila estiver vazia em vez de aguardar novo trabalho.
block_msQuanto tempo cada consulta aguarda a chegada de trabalho antes de retornar, em milissegundos. Deve estar entre 1 e 999; o helper refaz a consulta automaticamente. Passe None para uma verificação não bloqueante. O padrão é um long-poll de 999 ms.
reclaim_older_than_msReivindica novamente itens de trabalho que foram reivindicados, mas nunca confirmados dentro desse número de milissegundos.
auto_stopSe deve enviar um sinal de parada para cada item de trabalho quando o corpo do seu loop terminar de processá-lo. Defina como False quando o que quer que execute o item de trabalho envie a parada por conta própria. handle_item() faz isso, assim como um sandbox que você inicia e que é responsável pela chamada de parada.

Para um exemplo completo, consulte Iniciar sandboxes a partir do poller do SDK.

Session tool runner

client.beta.sessions.events.tool_runner() recebe uma lista de ferramentas como tools. Para construir essa lista, configure o AgentToolContext você mesmo e chame beta_agent_toolset_20260401(env):

from anthropic.lib.tools.agent_toolset import (
    AgentToolContext,
    beta_agent_toolset_20260401,
)

async with AgentToolContext(
    workdir="/workspace", client=client, session_id=work.data.id
) as env:
    # skills baixadas para /workspace/skills/<name>/
    tools = beta_agent_toolset_20260401(env)

AgentToolContext e o conjunto de ferramentas do agente

AgentToolContext é o contexto de execução para chamadas de ferramentas. Ele define o diretório de trabalho e a política de caminhos, e pode baixar as skills da sessão.

OpçãoDescrição
allowed_rootsDiretórios, além do diretório de trabalho, que as ferramentas de arquivo (read, write, edit, glob, grep) podem acessar.
read_only_rootsDiretórios sob os quais write e edit recusam caminhos.

O EnvironmentWorker adiciona por conta própria os diretórios dos memory stores da sessão a allowed_roots, e os diretórios dos stores anexados com access: "read_only" a read_only_roots.

O confinamento é uma proteção apenas para as ferramentas de arquivo, não um sandbox. Ele não restringe o bash.

beta_agent_toolset_20260401(env) recebe um AgentToolContext e retorna as implementações de ferramentas padrão (bash, read, write, edit, glob, grep).

Was this page helpful?