Claude pode interagir com ambientes de computador através da ferramenta de uso de computador, que fornece recursos de captura de tela e controle de mouse/teclado para interação autônoma de desktop.
O uso de computador está atualmente em beta e requer um cabeçalho beta:
"computer-use-2025-11-24" (Claude Opus 4.5)"computer-use-2025-01-24" (modelos Claude 4 e Claude Sonnet 3.7 (descontinuado))Claude pode interagir com ambientes de computador através da ferramenta de uso de computador, que fornece recursos de captura de tela e controle de mouse/teclado para interação autônoma de desktop.
O uso de computador está atualmente em beta e requer um cabeçalho beta:
"computer-use-2025-11-24" (Claude Opus 4.5)"computer-use-2025-01-24" (modelos Claude 4 e Claude Sonnet 3.7 (descontinuado))O uso de computador é um recurso beta que permite que Claude interaja com ambientes de desktop. Esta ferramenta fornece:
Embora o uso de computador possa ser aumentado com outras ferramentas como bash e editor de texto para fluxos de trabalho de automação mais abrangentes, o uso de computador especificamente se refere à capacidade da ferramenta de uso de computador de ver e controlar ambientes de desktop.
Claude pode interagir com ambientes de computador através da ferramenta de uso de computador, que fornece recursos de captura de tela e controle de mouse/teclado para interação autônoma de desktop.
O uso de computador está atualmente em beta e requer um cabeçalho beta:
"computer-use-2025-11-24" (Claude Opus 4.5)"computer-use-2025-01-24" (modelos Claude 4 e Claude Sonnet 3.7 (descontinuado))O uso de computador é um recurso beta que permite que Claude interaja com ambientes de desktop. Esta ferramenta fornece:
Embora o uso de computador possa ser aumentado com outras ferramentas como bash e editor de texto para fluxos de trabalho de automação mais abrangentes, o uso de computador especificamente se refere à capacidade da ferramenta de uso de computador de ver e controlar ambientes de desktop.
O uso de computador está disponível para os seguintes modelos Claude:
| Modelo | Versão da ferramenta | Sinalizador Beta |
|---|---|---|
| Claude Opus 4.5 | computer_20251124 | computer-use-2025-11-24 |
| Modelos Claude 4 | computer_20250124 | computer-use-2025-01-24 |
| Claude Sonnet 3.7 (descontinuado) | computer_20250124 | computer-use-2025-01-24 |
Claude Opus 4.5 introduz a versão da ferramenta computer_20251124 com novas capacidades incluindo a ação de zoom para inspeção detalhada de regiões da tela. Os modelos Claude 4 usam versões de ferramentas atualizadas otimizadas para a nova arquitetura. Claude Sonnet 3.7 (descontinuado) introduz capacidades adicionais incluindo o recurso de pensamento para mais insight no processo de raciocínio do modelo.
Versões mais antigas de ferramentas não têm garantia de compatibilidade com versões mais recentes de modelos. Sempre use a versão da ferramenta que corresponde à versão do seu modelo.
Claude pode interagir com ambientes de computador através da ferramenta de uso de computador, que fornece recursos de captura de tela e controle de mouse/teclado para interação autônoma de desktop.
O uso de computador está atualmente em beta e requer um cabeçalho beta:
"computer-use-2025-11-24" (Claude Opus 4.5)"computer-use-2025-01-24" (modelos Claude 4 e Claude Sonnet 3.7 (descontinuado))O uso de computador é um recurso beta que permite que Claude interaja com ambientes de desktop. Esta ferramenta fornece:
Embora o uso de computador possa ser aumentado com outras ferramentas como bash e editor de texto para fluxos de trabalho de automação mais abrangentes, o uso de computador especificamente se refere à capacidade da ferramenta de uso de computador de ver e controlar ambientes de desktop.
O uso de computador está disponível para os seguintes modelos Claude:
| Modelo | Versão da ferramenta | Sinalizador Beta |
|---|---|---|
| Claude Opus 4.5 | computer_20251124 | computer-use-2025-11-24 |
| Modelos Claude 4 | computer_20250124 | computer-use-2025-01-24 |
| Claude Sonnet 3.7 (descontinuado) | computer_20250124 | computer-use-2025-01-24 |
Claude Opus 4.5 introduz a versão da ferramenta computer_20251124 com novas capacidades incluindo a ação de zoom para inspeção detalhada de regiões da tela. Os modelos Claude 4 usam versões de ferramentas atualizadas otimizadas para a nova arquitetura. Claude Sonnet 3.7 (descontinuado) introduz capacidades adicionais incluindo o recurso de pensamento para mais insight no processo de raciocínio do modelo.
Versões mais antigas de ferramentas não têm garantia de compatibilidade com versões mais recentes de modelos. Sempre use a versão da ferramenta que corresponde à versão do seu modelo.
O uso de computador é um recurso beta com riscos únicos distintos dos recursos padrão da API. Esses riscos são aumentados ao interagir com a internet. Para minimizar riscos, considere tomar precauções como:
Em algumas circunstâncias, Claude seguirá comandos encontrados em conteúdo mesmo que conflitem com as instruções do usuário. Por exemplo, instruções Claude em páginas da web ou contidas em imagens podem substituir instruções ou fazer com que Claude cometa erros. Sugerimos tomar precauções para isolar Claude de dados e ações sensíveis para evitar riscos relacionados a injeção de prompt.
Treinamos o modelo para resistir a essas injeções de prompt e adicionamos uma camada extra de defesa. Se você usar nossas ferramentas de uso de computador, executaremos automaticamente classificadores em seus prompts para sinalizar possíveis instâncias de injeções de prompt. Quando esses classificadores identificarem possíveis injeções de prompt em capturas de tela, eles automaticamente direcionarão o modelo a pedir confirmação do usuário antes de prosseguir com a próxima ação. Reconhecemos que essa proteção extra não será ideal para todos os casos de uso (por exemplo, casos de uso sem um humano no loop), portanto, se você gostaria de desativar e desativar, por favor entre em contato conosco.
Ainda sugerimos tomar precauções para isolar Claude de dados e ações sensíveis para evitar riscos relacionados a injeção de prompt.
Por fim, informe aos usuários finais os riscos relevantes e obtenha seu consentimento antes de ativar o uso de computador em seus próprios produtos.
Por favor, use este formulário para fornecer feedback sobre a qualidade das respostas do modelo, a API em si ou a qualidade da documentação - mal podemos esperar para ouvir você!
Claude pode interagir com ambientes de computador através da ferramenta de uso de computador, que fornece recursos de captura de tela e controle de mouse/teclado para interação autônoma de desktop.
O uso de computador está atualmente em beta e requer um cabeçalho beta:
"computer-use-2025-11-24" (Claude Opus 4.5)"computer-use-2025-01-24" (modelos Claude 4 e Claude Sonnet 3.7 (descontinuado))O uso de computador é um recurso beta que permite que Claude interaja com ambientes de desktop. Esta ferramenta fornece:
Embora o uso de computador possa ser aumentado com outras ferramentas como bash e editor de texto para fluxos de trabalho de automação mais abrangentes, o uso de computador especificamente se refere à capacidade da ferramenta de uso de computador de ver e controlar ambientes de desktop.
O uso de computador está disponível para os seguintes modelos Claude:
| Modelo | Versão da ferramenta | Sinalizador Beta |
|---|---|---|
| Claude Opus 4.5 | computer_20251124 | computer-use-2025-11-24 |
| Modelos Claude 4 | computer_20250124 | computer-use-2025-01-24 |
| Claude Sonnet 3.7 (descontinuado) | computer_20250124 | computer-use-2025-01-24 |
Claude Opus 4.5 introduz a versão da ferramenta computer_20251124 com novas capacidades incluindo a ação de zoom para inspeção detalhada de regiões da tela. Os modelos Claude 4 usam versões de ferramentas atualizadas otimizadas para a nova arquitetura. Claude Sonnet 3.7 (descontinuado) introduz capacidades adicionais incluindo o recurso de pensamento para mais insight no processo de raciocínio do modelo.
Versões mais antigas de ferramentas não têm garantia de compatibilidade com versões mais recentes de modelos. Sempre use a versão da ferramenta que corresponde à versão do seu modelo.
O uso de computador é um recurso beta com riscos únicos distintos dos recursos padrão da API. Esses riscos são aumentados ao interagir com a internet. Para minimizar riscos, considere tomar precauções como:
Em algumas circunstâncias, Claude seguirá comandos encontrados em conteúdo mesmo que conflitem com as instruções do usuário. Por exemplo, instruções Claude em páginas da web ou contidas em imagens podem substituir instruções ou fazer com que Claude cometa erros. Sugerimos tomar precauções para isolar Claude de dados e ações sensíveis para evitar riscos relacionados a injeção de prompt.
Treinamos o modelo para resistir a essas injeções de prompt e adicionamos uma camada extra de defesa. Se você usar nossas ferramentas de uso de computador, executaremos automaticamente classificadores em seus prompts para sinalizar possíveis instâncias de injeções de prompt. Quando esses classificadores identificarem possíveis injeções de prompt em capturas de tela, eles automaticamente direcionarão o modelo a pedir confirmação do usuário antes de prosseguir com a próxima ação. Reconhecemos que essa proteção extra não será ideal para todos os casos de uso (por exemplo, casos de uso sem um humano no loop), portanto, se você gostaria de desativar e desativar, por favor entre em contato conosco.
Ainda sugerimos tomar precauções para isolar Claude de dados e ações sensíveis para evitar riscos relacionados a injeção de prompt.
Por fim, informe aos usuários finais os riscos relevantes e obtenha seu consentimento antes de ativar o uso de computador em seus próprios produtos.
Por favor, use este formulário para fornecer feedback sobre a qualidade das respostas do modelo, a API em si ou a qualidade da documentação - mal podemos esperar para ouvir você!
Aqui está como começar com o uso de computador:
import anthropic
client = anthropic.Anthropic()
response = client.beta.messages.create(
model="claude-sonnet-4-5", # or another compatible model
max_tokens=1024,
tools=[
{
"type": "computer_20250124",
"name": "computer",
"display_width_px": 1024,
"display_height_px": 768,
"display_number": 1,
},
{
"type": "text_editor_20250728",
"name": "str_replace_based_edit_tool"
},
{
"type": "bash_20250124",
"name": "bash"
}
],
messages=[{"role": "user", "content": "Save a picture of a cat to my desktop."}],
betas=["computer-use-2025-01-24"]
)
print(response)Um cabeçalho beta é necessário apenas para a ferramenta de uso de computador.
O exemplo acima mostra todas as três ferramentas sendo usadas juntas, o que requer o cabeçalho beta porque inclui a ferramenta de uso de computador.
Claude pode interagir com ambientes de computador através da ferramenta de uso de computador, que fornece recursos de captura de tela e controle de mouse/teclado para interação autônoma de desktop.
O uso de computador está atualmente em beta e requer um cabeçalho beta:
"computer-use-2025-11-24" (Claude Opus 4.5)"computer-use-2025-01-24" (modelos Claude 4 e Claude Sonnet 3.7 (descontinuado))O uso de computador é um recurso beta que permite que Claude interaja com ambientes de desktop. Esta ferramenta fornece:
Embora o uso de computador possa ser aumentado com outras ferramentas como bash e editor de texto para fluxos de trabalho de automação mais abrangentes, o uso de computador especificamente se refere à capacidade da ferramenta de uso de computador de ver e controlar ambientes de desktop.
O uso de computador está disponível para os seguintes modelos Claude:
| Modelo | Versão da ferramenta | Sinalizador Beta |
|---|---|---|
| Claude Opus 4.5 | computer_20251124 | computer-use-2025-11-24 |
| Modelos Claude 4 | computer_20250124 | computer-use-2025-01-24 |
| Claude Sonnet 3.7 (descontinuado) | computer_20250124 | computer-use-2025-01-24 |
Claude Opus 4.5 introduz a versão da ferramenta computer_20251124 com novas capacidades incluindo a ação de zoom para inspeção detalhada de regiões da tela. Os modelos Claude 4 usam versões de ferramentas atualizadas otimizadas para a nova arquitetura. Claude Sonnet 3.7 (descontinuado) introduz capacidades adicionais incluindo o recurso de pensamento para mais insight no processo de raciocínio do modelo.
Versões mais antigas de ferramentas não têm garantia de compatibilidade com versões mais recentes de modelos. Sempre use a versão da ferramenta que corresponde à versão do seu modelo.
O uso de computador é um recurso beta com riscos únicos distintos dos recursos padrão da API. Esses riscos são aumentados ao interagir com a internet. Para minimizar riscos, considere tomar precauções como:
Em algumas circunstâncias, Claude seguirá comandos encontrados em conteúdo mesmo que conflitem com as instruções do usuário. Por exemplo, instruções Claude em páginas da web ou contidas em imagens podem substituir instruções ou fazer com que Claude cometa erros. Sugerimos tomar precauções para isolar Claude de dados e ações sensíveis para evitar riscos relacionados a injeção de prompt.
Treinamos o modelo para resistir a essas injeções de prompt e adicionamos uma camada extra de defesa. Se você usar nossas ferramentas de uso de computador, executaremos automaticamente classificadores em seus prompts para sinalizar possíveis instâncias de injeções de prompt. Quando esses classificadores identificarem possíveis injeções de prompt em capturas de tela, eles automaticamente direcionarão o modelo a pedir confirmação do usuário antes de prosseguir com a próxima ação. Reconhecemos que essa proteção extra não será ideal para todos os casos de uso (por exemplo, casos de uso sem um humano no loop), portanto, se você gostaria de desativar e desativar, por favor entre em contato conosco.
Ainda sugerimos tomar precauções para isolar Claude de dados e ações sensíveis para evitar riscos relacionados a injeção de prompt.
Por fim, informe aos usuários finais os riscos relevantes e obtenha seu consentimento antes de ativar o uso de computador em seus próprios produtos.
Por favor, use este formulário para fornecer feedback sobre a qualidade das respostas do modelo, a API em si ou a qualidade da documentação - mal podemos esperar para ouvir você!
1. Forneça a Claude a ferramenta de uso de computador e um prompt do usuário
2. Claude decide usar a ferramenta de uso de computador
stop_reason de tool_use, sinalizando a intenção de Claude.3. Extraia a entrada da ferramenta, avalie a ferramenta em um computador e retorne os resultados
user contendo um bloco de conteúdo tool_result.4. Claude continua chamando ferramentas de uso de computador até completar a tarefa
stop_reason de tool_use e você deve retornar à etapa 3.Nos referimos à repetição das etapas 3 e 4 sem entrada do usuário como o "agent loop" - ou seja, Claude respondendo com uma solicitação de uso de ferramenta e seu aplicativo respondendo a Claude com os resultados da avaliação dessa solicitação.
Claude pode interagir com ambientes de computador através da ferramenta de uso de computador, que fornece capacidades de captura de tela e controle de mouse/teclado para interação autônoma de desktop.
O uso de computador está atualmente em beta e requer um cabeçalho beta:
"computer-use-2025-11-24" (Claude Opus 4.5)"computer-use-2025-01-24" (modelos Claude 4 e Claude Sonnet 3.7 (descontinuado))O uso de computador é um recurso beta que permite que Claude interaja com ambientes de desktop. Esta ferramenta fornece:
Embora o uso de computador possa ser aumentado com outras ferramentas como bash e editor de texto para fluxos de trabalho de automação mais abrangentes, o uso de computador especificamente se refere à capacidade da ferramenta de uso de computador de ver e controlar ambientes de desktop.
O uso de computador está disponível para os seguintes modelos Claude:
| Modelo | Versão da Ferramenta | Sinalizador Beta |
|---|---|---|
| Claude Opus 4.5 | computer_20251124 | computer-use-2025-11-24 |
| Modelos Claude 4 | computer_20250124 | computer-use-2025-01-24 |
| Claude Sonnet 3.7 (descontinuado) | computer_20250124 | computer-use-2025-01-24 |
Claude Opus 4.5 introduz a versão da ferramenta computer_20251124 com novas capacidades incluindo a ação de zoom para inspeção detalhada de regiões da tela. Os modelos Claude 4 usam versões de ferramentas atualizadas otimizadas para a nova arquitetura. Claude Sonnet 3.7 (descontinuado) introduz capacidades adicionais incluindo o recurso de pensamento para mais insight no processo de raciocínio do modelo.
Versões de ferramentas mais antigas não são garantidas como compatíveis com versões mais recentes de modelos. Sempre use a versão da ferramenta que corresponde à sua versão de modelo.
O uso de computador é um recurso beta com riscos únicos distintos dos recursos padrão da API. Esses riscos são aumentados ao interagir com a internet. Para minimizar riscos, considere tomar precauções como:
Em algumas circunstâncias, Claude seguirá comandos encontrados em conteúdo mesmo que conflitem com as instruções do usuário. Por exemplo, instruções Claude em páginas da web ou contidas em imagens podem substituir instruções ou fazer com que Claude cometa erros. Sugerimos tomar precauções para isolar Claude de dados e ações sensíveis para evitar riscos relacionados a injeção de prompt.
Treinamos o modelo para resistir a essas injeções de prompt e adicionamos uma camada extra de defesa. Se você usar nossas ferramentas de uso de computador, executaremos automaticamente classificadores em seus prompts para sinalizar possíveis instâncias de injeção de prompt. Quando esses classificadores identificam possíveis injeções de prompt em capturas de tela, eles automaticamente direcionam o modelo a pedir confirmação do usuário antes de prosseguir com a próxima ação. Reconhecemos que essa proteção extra não será ideal para todos os casos de uso (por exemplo, casos de uso sem um humano no loop), portanto, se você gostaria de desativar e desligar, por favor entre em contato conosco.
Ainda sugerimos tomar precauções para isolar Claude de dados e ações sensíveis para evitar riscos relacionados a injeção de prompt.
Finalmente, por favor informe aos usuários finais os riscos relevantes e obtenha seu consentimento antes de ativar o uso de computador em seus próprios produtos.
Por favor use este formulário para fornecer feedback sobre a qualidade das respostas do modelo, a API em si, ou a qualidade da documentação - não podemos esperar para ouvir você!
Aqui está como começar com o uso de computador:
import anthropic
client = anthropic.Anthropic()
response = client.beta.messages.create(
model="claude-sonnet-4-5", # or another compatible model
max_tokens=1024,
tools=[
{
"type": "computer_20250124",
"name": "computer",
"display_width_px": 1024,
"display_height_px": 768,
"display_number": 1,
},
{
"type": "text_editor_20250728",
"name": "str_replace_based_edit_tool"
},
{
"type": "bash_20250124",
"name": "bash"
}
],
messages=[{"role": "user", "content": "Save a picture of a cat to my desktop."}],
betas=["computer-use-2025-01-24"]
)
print(response)Um cabeçalho beta é necessário apenas para a ferramenta de uso de computador.
O exemplo acima mostra todas as três ferramentas sendo usadas juntas, o que requer o cabeçalho beta porque inclui a ferramenta de uso de computador.
1. Forneça a Claude a ferramenta de uso de computador e um prompt do usuário
2. Claude decide usar a ferramenta de uso de computador
stop_reason de tool_use, sinalizando a intenção de Claude.3. Extraia a entrada da ferramenta, avalie a ferramenta em um computador e retorne resultados
user contendo um bloco de conteúdo tool_result.4. Claude continua chamando ferramentas de uso de computador até completar a tarefa
stop_reason de tool_use e você deve retornar ao passo 3.Nos referimos à repetição dos passos 3 e 4 sem entrada do usuário como o "loop de agente" - ou seja, Claude respondendo com uma solicitação de uso de ferramenta e sua aplicação respondendo a Claude com os resultados da avaliação dessa solicitação.
O uso de computador requer um ambiente de computação em sandbox onde Claude pode interagir com segurança com aplicações e a web. Este ambiente inclui:
Exibição virtual: Um servidor de exibição X11 virtual (usando Xvfb) que renderiza a interface de desktop que Claude verá através de capturas de tela e controlará com ações de mouse/teclado.
Ambiente de desktop: Uma interface de usuário leve com gerenciador de janelas (Mutter) e painel (Tint2) executando no Linux, que fornece uma interface gráfica consistente para Claude interagir.
Aplicações: Aplicações Linux pré-instaladas como Firefox, LibreOffice, editores de texto e gerenciadores de arquivos que Claude pode usar para completar tarefas.
Implementações de ferramentas: Código de integração que traduz solicitações de ferramentas abstratas de Claude (como "mover mouse" ou "tirar captura de tela") em operações reais no ambiente virtual.
Loop de agente: Um programa que gerencia a comunicação entre Claude e o ambiente, enviando as ações de Claude para o ambiente e retornando os resultados (capturas de tela, saídas de comando) de volta para Claude.
Quando você usa o uso de computador, Claude não se conecta diretamente a este ambiente. Em vez disso, sua aplicação:
Para segurança e isolamento, a implementação de referência executa tudo isso dentro de um contêiner Docker com mapeamentos de porta apropriados para visualizar e interagir com o ambiente.
Construímos uma implementação de referência que inclui tudo o que você precisa para começar rapidamente com o uso de computador:
O núcleo do uso de computador é o "loop de agente" - um ciclo onde Claude solicita ações de ferramentas, sua aplicação as executa e retorna resultados para Claude. Aqui está um exemplo simplificado:
async def sampling_loop(
*,
model: str,
messages: list[dict],
api_key: str,
max_tokens: int = 4096,
tool_version: str,
thinking_budget: int | None = None,
max_iterations: int = 10, # Add iteration limit to prevent infinite loops
):
"""
A simple agent loop for Claude computer use interactions.
This function handles the back-and-forth between:
1. Sending user messages to Claude
2. Claude requesting to use tools
3. Your app executing those tools
4. Sending tool results back to Claude
"""
# Set up tools and API parameters
client = Anthropic(api_key=api_key)
beta_flag = "computer-use-2025-01-24" if "20250124" in tool_version else "computer-use-2024-10-22"
# Configure tools - you should already have these initialized elsewhere
tools = [
{"type": f"computer_{tool_version}", "name": "computer", "display_width_px": 1024, "display_height_px": 768},
{"type": f"text_editor_{tool_version}", "name": "str_replace_editor"},
{"type": f"bash_{tool_version}", "name": "bash"}
]
# Main agent loop (with iteration limit to prevent runaway API costs)
iterations = 0
while True and iterations < max_iterations:
iterations += 1
# Set up optional thinking parameter (for Claude Sonnet 3.7)
thinking = None
if thinking_budget:
thinking = {"type": "enabled", "budget_tokens": thinking_budget}
# Call the Claude API
response = client.beta.messages.create(
model=model,
max_tokens=max_tokens,
messages=messages,
tools=tools,
betas=[beta_flag],
thinking=thinking
)
# Add Claude's response to the conversation history
response_content = response.content
messages.append({"role": "assistant", "content": response_content})
# Check if Claude used any tools
tool_results = []
for block in response_content:
if block.type == "tool_use":
# In a real app, you would execute the tool here
# For example: result = run_tool(block.name, block.input)
result = {"result": "Tool executed successfully"}
# Format the result for Claude
tool_results.append({
"type": "tool_result",
"tool_use_id": block.id,
"content": result
})
# If no tools were used, Claude is done - return the final messages
if not tool_results:
return messages
# Add tool results to messages for the next iteration with Claude
messages.append({"role": "user", "content": tool_results})O loop continua até que Claude responda sem solicitar nenhuma ferramenta (conclusão da tarefa) ou o limite máximo de iterações seja atingido. Esta salvaguarda evita possíveis loops infinitos que poderiam resultar em custos inesperados de API.
Ao usar a ferramenta de uso de computador, você deve incluir o sinalizador beta apropriado para sua versão de modelo:
Recomendamos tentar a implementação de referência antes de ler o resto desta documentação.
Aqui estão algumas dicas sobre como obter as melhores saídas de qualidade:
After each step, take a screenshot and carefully evaluate if you have achieved the right outcome. Explicitly show your thinking: "I have evaluated step X..." If not correct, try again. Only when you confirm a step was executed correctly should you move on to the next one.<robot_credentials>. Usar o uso de computador em aplicações que exigem login aumenta o risco de resultados ruins como resultado de injeção de prompt. Por favor, revise nosso guia sobre mitigação de injeções de prompt antes de fornecer ao modelo credenciais de login.Se você encontrar repetidamente um conjunto claro de problemas ou souber com antecedência as tarefas que Claude precisará completar, use o prompt do sistema para fornecer a Claude dicas explícitas ou instruções sobre como fazer as tarefas com sucesso.
Quando uma das ferramentas definidas pela Anthropic é solicitada através da API Claude, um prompt do sistema específico de uso de computador é gerado. É semelhante ao prompt do sistema de uso de ferramenta mas começa com:
You have access to a set of functions you can use to answer the user's question. This includes access to a sandboxed computing environment. You do NOT currently have the ability to inspect files or interact with external resources, except by invoking the below functions.
Como com o uso de ferramenta regular, o campo system_prompt fornecido pelo usuário ainda é respeitado e usado na construção do prompt do sistema combinado.
Construímos uma implementação de referência que inclui tudo o que você precisa para começar rapidamente com o uso de computador:
O núcleo do uso de computador é o "loop de agente" - um ciclo onde Claude solicita ações de ferramentas, sua aplicação as executa e retorna resultados para Claude. Aqui está um exemplo simplificado:
async def sampling_loop(
*,
model: str,
messages: list[dict],
api_key: str,
max_tokens: int = 4096,
tool_version: str,
thinking_budget: int | None = None,
max_iterations: int = 10, # Add iteration limit to prevent infinite loops
):
"""
A simple agent loop for Claude computer use interactions.
This function handles the back-and-forth between:
1. Sending user messages to Claude
2. Claude requesting to use tools
3. Your app executing those tools
4. Sending tool results back to Claude
"""
# Set up tools and API parameters
client = Anthropic(api_key=api_key)
beta_flag = "computer-use-2025-01-24" if "20250124" in tool_version else "computer-use-2024-10-22"
# Configure tools - you should already have these initialized elsewhere
tools = [
{"type": f"computer_{tool_version}", "name": "computer", "display_width_px": 1024, "display_height_px": 768},
{"type": f"text_editor_{tool_version}", "name": "str_replace_editor"},
{"type": f"bash_{tool_version}", "name": "bash"}
]
# Main agent loop (with iteration limit to prevent runaway API costs)
iterations = 0
while True and iterations < max_iterations:
iterations += 1
# Set up optional thinking parameter (for Claude Sonnet 3.7)
thinking = None
if thinking_budget:
thinking = {"type": "enabled", "budget_tokens": thinking_budget}
# Call the Claude API
response = client.beta.messages.create(
model=model,
max_tokens=max_tokens,
messages=messages,
tools=tools,
betas=[beta_flag],
thinking=thinking
)
# Add Claude's response to the conversation history
response_content = response.content
messages.append({"role": "assistant", "content": response_content})
# Check if Claude used any tools
tool_results = []
for block in response_content:
if block.type == "tool_use":
# In a real app, you would execute the tool here
# For example: result = run_tool(block.name, block.input)
result = {"result": "Tool executed successfully"}
# Format the result for Claude
tool_results.append({
"type": "tool_result",
"tool_use_id": block.id,
"content": result
})
# If no tools were used, Claude is done - return the final messages
if not tool_results:
return messages
# Add tool results to messages for the next iteration with Claude
messages.append({"role": "user", "content": tool_results})O loop continua até que Claude responda sem solicitar ferramentas (conclusão da tarefa) ou o limite máximo de iterações seja atingido. Essa proteção evita possíveis loops infinitos que poderiam resultar em custos inesperados de API.
Ao usar a ferramenta de uso de computador, você deve incluir a flag beta apropriada para sua versão de modelo:
Recomendamos experimentar a implementação de referência antes de ler o resto desta documentação.
Aqui estão algumas dicas sobre como obter as melhores saídas de qualidade:
After each step, take a screenshot and carefully evaluate if you have achieved the right outcome. Explicitly show your thinking: "I have evaluated step X..." If not correct, try again. Only when you confirm a step was executed correctly should you move on to the next one.<robot_credentials>. Usar o uso de computador em aplicações que requerem login aumenta o risco de resultados ruins como resultado de injeção de prompt. Por favor, revise nosso guia sobre mitigação de injeções de prompt antes de fornecer ao modelo credenciais de login.Se você encontrar repetidamente um conjunto claro de problemas ou souber antecipadamente as tarefas que Claude precisará completar, use o prompt do sistema para fornecer ao Claude dicas ou instruções explícitas sobre como fazer as tarefas com sucesso.
Quando uma das ferramentas definidas pela Anthropic é solicitada via API Claude, um prompt do sistema específico para uso de computador é gerado. É semelhante ao prompt do sistema de uso de ferramentas mas começa com:
You have access to a set of functions you can use to answer the user's question. This includes access to a sandboxed computing environment. You do NOT currently have the ability to inspect files or interact with external resources, except by invoking the below functions.
Como com o uso regular de ferramentas, o campo system_prompt fornecido pelo usuário ainda é respeitado e usado na construção do prompt do sistema combinado.
A ferramenta de uso de computador suporta estas ações:
Ações básicas (todas as versões)
[x, y]Ações aprimoradas (computer_20250124)
Disponível em modelos Claude 4 e Claude Sonnet 3.7:
Ações aprimoradas (computer_20251124)
Disponível em Claude Opus 4.5:
computer_20250124enable_zoom: true na definição da ferramenta. Leva um parâmetro region com coordenadas [x1, y1, x2, y2] definindo os cantos superior esquerdo e inferior direito da área a inspecionar.| Parâmetro | Obrigatório | Descrição |
|---|---|---|
type | Sim | Versão da ferramenta (computer_20251124, computer_20250124, ou computer_20241022) |
name | Sim | Deve ser "computer" |
display_width_px | Sim | Largura da exibição em pixels |
display_height_px | Sim | Altura da exibição em pixels |
display_number | Não | Número de exibição para ambientes X11 |
enable_zoom | Não | Ativar ação de zoom (computer_20251124 apenas). Defina como true para permitir que Claude amplie regiões específicas da tela. Padrão: false |
Mantenha a resolução da exibição em ou abaixo de 1280x800 (WXGA) para melhor desempenho. Resoluções mais altas podem causar problemas de precisão devido ao redimensionamento de imagem.
Importante: A ferramenta de uso de computador deve ser explicitamente executada por sua aplicação - Claude não pode executá-la diretamente. Você é responsável por implementar a captura de tela, movimentos do mouse, entradas de teclado e outras ações com base nas solicitações de Claude.
| Parâmetro | Obrigatório | Descrição |
|---|---|---|
type | Sim | Versão da ferramenta (computer_20251124, computer_20250124, ou computer_20241022) |
name | Sim | Deve ser "computer" |
display_width_px | Sim | Largura da exibição em pixels |
display_height_px | Sim | Altura da exibição em pixels |
display_number | Não | Número de exibição para ambientes X11 |
enable_zoom | Não | Ativar ação de zoom (computer_20251124 apenas). Defina como true para permitir que Claude amplie regiões específicas da tela. Padrão: false |
Mantenha a resolução da exibição em ou abaixo de 1280x800 (WXGA) para melhor desempenho. Resoluções mais altas podem causar problemas de precisão devido ao redimensionamento de imagem.
Importante: A ferramenta de uso de computador deve ser explicitamente executada por sua aplicação - Claude não pode executá-la diretamente. Você é responsável por implementar a captura de tela, movimentos do mouse, entradas de teclado e outras ações com base nas solicitações de Claude.
Claude Sonnet 3.7 introduziu uma nova capacidade de "pensamento" que permite que você veja o processo de raciocínio do modelo enquanto ele trabalha em tarefas complexas. Este recurso ajuda você a entender como Claude está abordando um problema e pode ser particularmente valioso para fins de depuração ou educacionais.
Para ativar o pensamento, adicione um parâmetro thinking à sua solicitação de API:
"thinking": {
"type": "enabled",
"budget_tokens": 1024
}O parâmetro budget_tokens especifica quantos tokens Claude pode usar para pensar. Isso é subtraído do seu orçamento geral de max_tokens.
Quando o pensamento está ativado, Claude retornará seu processo de raciocínio como parte da resposta, o que pode ajudá-lo a:
Aqui está um exemplo de como a saída de pensamento pode parecer:
[Thinking]
I need to save a picture of a cat to the desktop. Let me break this down into steps:
1. First, I'll take a screenshot to see what's on the desktop
2. Then I'll look for a web browser to search for cat images
3. After finding a suitable image, I'll need to save it to the desktop
Let me start by taking a screenshot to see what's available...| Parâmetro | Obrigatório | Descrição |
|---|---|---|
type | Sim | Versão da ferramenta (computer_20251124, computer_20250124, ou computer_20241022) |
name | Sim | Deve ser "computer" |
display_width_px | Sim | Largura da exibição em pixels |
display_height_px | Sim | Altura da exibição em pixels |
display_number | Não | Número de exibição para ambientes X11 |
enable_zoom | Não | Ativar ação de zoom (computer_20251124 apenas). Defina como true para permitir que Claude amplie regiões específicas da tela. Padrão: false |
Mantenha a resolução da exibição em ou abaixo de 1280x800 (WXGA) para melhor desempenho. Resoluções mais altas podem causar problemas de precisão devido ao redimensionamento de imagem.
Importante: A ferramenta de uso de computador deve ser explicitamente executada por sua aplicação - Claude não pode executá-la diretamente. Você é responsável por implementar a captura de tela, movimentos do mouse, entradas de teclado e outras ações com base nas solicitações de Claude.
A ferramenta de uso de computador pode ser combinada com outras ferramentas para criar fluxos de trabalho de automação mais poderosos. Isso é particularmente útil quando você precisa:
curl https://api.anthropic.com/v1/messages \
-H "content-type: application/json" \
-H "x-api-key: $ANTHROPIC_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "anthropic-beta: computer-use-2025-01-24" \
-d '{
"model": "claude-sonnet-4-5",
"max_tokens": 2000,
"tools": [
{
"type": "computer_20250124",
"name": "computer",
"display_width_px": 1024,
"display_height_px": 768,
"display_number": 1
},
{
"type": "text_editor_20250728",
"name": "str_replace_based_edit_tool"
},
{
"type": "bash_20250124",
"name": "bash"
},
{
"name": "get_weather",
"description": "Get the current weather in a given location",
"input_schema": {
"type": "object",
"properties": {
"location": {
"type": "string",
"description": "The city and state, e.g. San Francisco, CA"
},
"unit": {
"type": "string",
"enum": ["celsius", "fahrenheit"],
"description": "The unit of temperature, either 'celsius' or 'fahrenheit'"
}
},
"required": ["location"]
}
}
],
"messages": [
{
"role": "user",
"content": "Find flights from San Francisco to a place with warmer weather."
}
],
"thinking": {
"type": "enabled",
"budget_tokens": 1024
}
}'| Parâmetro | Obrigatório | Descrição |
|---|---|---|
type | Sim | Versão da ferramenta (computer_20251124, computer_20250124, ou computer_20241022) |
name | Sim | Deve ser "computer" |
display_width_px | Sim | Largura da tela em pixels |
display_height_px | Sim | Altura da tela em pixels |
display_number | Não | Número de exibição para ambientes X11 |
enable_zoom | Não | Ativar ação de zoom (computer_20251124 apenas). Defina como true para permitir que Claude amplie regiões específicas da tela. Padrão: false |
Mantenha a resolução da tela em ou abaixo de 1280x800 (WXGA) para melhor desempenho. Resoluções mais altas podem causar problemas de precisão devido ao redimensionamento de imagem.
Importante: A ferramenta de uso de computador deve ser executada explicitamente pela sua aplicação - Claude não pode executá-la diretamente. Você é responsável por implementar a captura de tela, movimentos do mouse, entradas de teclado e outras ações com base nas solicitações de Claude.
Claude Sonnet 3.7 introduziu uma nova capacidade de "pensamento" que permite que você veja o processo de raciocínio do modelo enquanto ele trabalha em tarefas complexas. Este recurso ajuda você a entender como Claude está abordando um problema e pode ser particularmente valioso para fins de depuração ou educacionais.
Para ativar o pensamento, adicione um parâmetro thinking à sua solicitação de API:
"thinking": {
"type": "enabled",
"budget_tokens": 1024
}O parâmetro budget_tokens especifica quantos tokens Claude pode usar para pensar. Isso é subtraído do seu orçamento geral de max_tokens.
Quando o pensamento está ativado, Claude retornará seu processo de raciocínio como parte da resposta, o que pode ajudá-lo a:
Aqui está um exemplo de como a saída de pensamento pode parecer:
[Thinking]
Preciso salvar uma foto de um gato na área de trabalho. Deixe-me dividir isso em etapas:
1. Primeiro, vou tirar uma captura de tela para ver o que está na área de trabalho
2. Depois vou procurar um navegador da web para procurar imagens de gatos
3. Depois de encontrar uma imagem adequada, precisarei salvá-la na área de trabalho
Deixe-me começar tirando uma captura de tela para ver o que está disponível...A ferramenta de uso de computador pode ser combinada com outras ferramentas para criar fluxos de trabalho de automação mais poderosos. Isso é particularmente útil quando você precisa:
curl https://api.anthropic.com/v1/messages \
-H "content-type: application/json" \
-H "x-api-key: $ANTHROPIC_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "anthropic-beta: computer-use-2025-01-24" \
-d '{
"model": "claude-sonnet-4-5",
"max_tokens": 2000,
"tools": [
{
"type": "computer_20250124",
"name": "computer",
"display_width_px": 1024,
"display_height_px": 768,
"display_number": 1
},
{
"type": "text_editor_20250728",
"name": "str_replace_based_edit_tool"
},
{
"type": "bash_20250124",
"name": "bash"
},
{
"name": "get_weather",
"description": "Get the current weather in a given location",
"input_schema": {
"type": "object",
"properties": {
"location": {
"type": "string",
"description": "The city and state, e.g. San Francisco, CA"
},
"unit": {
"type": "string",
"enum": ["celsius", "fahrenheit"],
"description": "The unit of temperature, either 'celsius' or 'fahrenheit'"
}
},
"required": ["location"]
}
}
],
"messages": [
{
"role": "user",
"content": "Find flights from San Francisco to a place with warmer weather."
}
],
"thinking": {
"type": "enabled",
"budget_tokens": 1024
}
}'A implementação de referência foi desenvolvida para ajudá-lo a começar com o uso de computador. Ela inclui todos os componentes necessários para que Claude use um computador. No entanto, você pode construir seu próprio ambiente para uso de computador para atender às suas necessidades. Você precisará de:
tool_use usando suas implementações de ferramentasA ferramenta de uso de computador é implementada como uma ferramenta sem esquema. Ao usar esta ferramenta, você não precisa fornecer um esquema de entrada como com outras ferramentas; o esquema é integrado ao modelo Claude e não pode ser modificado.
Configurar seu ambiente de computação
Crie uma exibição virtual ou conecte-se a uma exibição existente com a qual Claude interagirá. Isso normalmente envolve configurar Xvfb (X Virtual Framebuffer) ou tecnologia similar.
Implementar manipuladores de ação
Crie funções para lidar com cada tipo de ação que Claude pode solicitar:
def handle_computer_action(action_type, params):
if action_type == "screenshot":
return capture_screenshot()
elif action_type == "left_click":
x, y = params["coordinate"]
return click_at(x, y)
elif action_type == "type":
return type_text(params["text"])
# ... handle other actionsProcessar chamadas de ferramenta do Claude
Extraia e execute chamadas de ferramenta das respostas do Claude:
for content in response.content:
if content.type == "tool_use":
action = content.input["action"]
result = handle_computer_action(action, content.input)
# Return result to Claude
tool_result = {
"type": "tool_result",
"tool_use_id": content.id,
"content": result
}Implementar o loop do agente
Crie um loop que continua até que Claude conclua a tarefa:
while True:
response = client.beta.messages.create(...)
# Check if Claude used any tools
tool_results = process_tool_calls(response)
if not tool_results:
# No more tool use, task complete
break
# Continue conversation with tool results
messages.append({"role": "user", "content": tool_results})Ao implementar a ferramenta de uso de computador, vários erros podem ocorrer. Aqui está como lidar com eles:
A funcionalidade de uso de computador está em beta. Embora as capacidades do Claude sejam de ponta, os desenvolvedores devem estar cientes de suas limitações:
left_mouse_down, left_mouse_up e novo suporte a teclas modificadoras. A seleção de células pode ser mais confiável usando esses controles refinados e combinando teclas modificadoras com cliques.Sempre revise e verifique cuidadosamente as ações e logs de uso de computador do Claude. Não use Claude para tarefas que exigem precisão perfeita ou informações sensíveis do usuário sem supervisão humana.
A funcionalidade de uso de computador está em beta. Embora as capacidades do Claude sejam de ponta, os desenvolvedores devem estar cientes de suas limitações:
left_mouse_down, left_mouse_up e novo suporte a teclas modificadoras. A seleção de células pode ser mais confiável usando esses controles refinados e combinando teclas modificadoras com cliques.Sempre revise e verifique cuidadosamente as ações e logs de uso de computador do Claude. Não use Claude para tarefas que exigem precisão perfeita ou informações sensíveis do usuário sem supervisão humana.
Computer use follows the standard tool use pricing. When using the computer use tool:
System prompt overhead: The computer use beta adds 466-499 tokens to the system prompt
Computer use tool token usage:
| Model | Input tokens per tool definition |
|---|---|
| Claude 4.x models | 735 tokens |
| Claude Sonnet 3.7 (deprecated) | 735 tokens |
Additional token consumption:
If you're also using bash or text editor tools alongside computer use, those tools have their own token costs as documented in their respective pages.
A funcionalidade de uso de computador está em beta. Embora as capacidades do Claude sejam de ponta, os desenvolvedores devem estar cientes de suas limitações:
left_mouse_down, left_mouse_up e novo suporte a teclas modificadoras. A seleção de células pode ser mais confiável usando esses controles refinados e combinando teclas modificadoras com cliques.Sempre revise e verifique cuidadosamente as ações e logs de uso de computador do Claude. Não use Claude para tarefas que exigem precisão perfeita ou informações sensíveis do usuário sem supervisão humana.
Computer use follows the standard tool use pricing. When using the computer use tool:
System prompt overhead: The computer use beta adds 466-499 tokens to the system prompt
Computer use tool token usage:
| Model | Input tokens per tool definition |
|---|---|
| Claude 4.x models | 735 tokens |
| Claude Sonnet 3.7 (deprecated) | 735 tokens |
Additional token consumption:
If you're also using bash or text editor tools alongside computer use, those tools have their own token costs as documented in their respective pages.