← Volver al blog

Claude Computer Use Tool: la guia completa para la automatizacion de escritorio con IA

· Save Team
claudeaicomputer-useautomationapideveloperanthropic

Que pasaria si pudieras decirle a una IA “abre Firefox, navega a un sitio web, llena el formulario y guarda el resultado” — y realmente lo hiciera? No con un script de Selenium fragil. No con una integracion de API personalizada. Simplemente… mirando la pantalla y usando un raton y teclado como lo haria un humano.

Eso es exactamente lo que hace la herramienta computer use de Claude.

Que es Computer Use?

Computer use es una funcionalidad API en beta que permite a Claude interactuar con entornos de escritorio mediante:

  • Captura de pantalla — Claude ve lo que hay en pantalla
  • Control del raton — clic, arrastrar, desplazar
  • Entrada de teclado — escribir texto, presionar atajos
  • Automatizacion de escritorio — interactuar con cualquier aplicacion

La palabra clave es cualquier. A diferencia de la automatizacion tradicional (Selenium para navegadores, AppleScript para macOS), Claude no necesita APIs especiales ni selectores de elementos. Mira los pixeles en la pantalla y decide donde hacer clic. Igual que tu.

Como funciona (el bucle del agente)

Computer use sigue un ciclo simple:

  1. Envias una tarea a Claude — “Guarda una imagen de un gato en mi escritorio”
  2. Claude solicita una accion — “Toma una captura de pantalla”
  3. Tu aplicacion la ejecuta — captura la pantalla, devuelve la imagen
  4. Claude analiza y solicita la siguiente accion — “Haz clic en las coordenadas (500, 300)”
  5. Se repite hasta que la tarea este completa

Este ciclo se llama el bucle del agente (agent loop). Claude sigue solicitando acciones (captura de pantalla, clic, escritura, desplazamiento) y tu aplicacion sigue ejecutandolas, hasta que Claude determina que la tarea esta completa.

Aqui esta la llamada API minima para comenzar:

import anthropic

client = anthropic.Anthropic()

response = client.beta.messages.create(
    model="claude-opus-4-6",
    max_tokens=1024,
    tools=[
        {
            "type": "computer_20251124",
            "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": "Guarda una imagen de un gato en mi escritorio."
    }],
    betas=["computer-use-2025-11-24"],
)

El encabezado beta "computer-use-2025-11-24" es obligatorio. Las tres herramientas (computer, editor de texto, bash) trabajan juntas para dar a Claude control completo sobre el entorno.

Acciones disponibles

La herramienta computer use soporta un conjunto rico de interacciones:

Acciones basicas

  • screenshot — capturar la pantalla actual
  • left_click — clic en las coordenadas [x, y]
  • type — escribir una cadena de texto
  • key — presionar una tecla o combinacion (ej: ctrl+s, alt+tab)
  • mouse_move — mover el cursor

Acciones avanzadas (modelos Claude 4.x)

  • scroll — desplazar en cualquier direccion con control de cantidad
  • left_click_drag — clic y arrastrar entre coordenadas
  • right_click, middle_click — botones adicionales del raton
  • double_click, triple_click — multi-clics
  • hold_key — mantener una tecla presionada durante una duracion
  • wait — pausa entre acciones

Ultima novedad: Zoom

Disponible en Claude Opus 4.6, Sonnet 4.6 y Opus 4.5:

  • zoom — inspeccionar una region especifica de la pantalla en resolucion completa

Especialmente util cuando Claude necesita leer texto pequeno o identificar detalles finos de la interfaz.

El entorno de computo

Claude no se conecta directamente a tu computadora. Necesitas proporcionar un entorno aislado (sandbox) — tipicamente un contenedor Docker ejecutando:

  • Pantalla virtual — Xvfb (X Virtual Framebuffer) renderiza el escritorio
  • Entorno de escritorio — un gestor de ventanas ligero como Mutter
  • Aplicaciones — Firefox, LibreOffice, gestor de archivos, etc.
  • Implementaciones de herramientas — codigo que traduce las solicitudes de Claude en operaciones reales de raton/teclado

Anthropic proporciona una implementacion de referencia con todo esto preconfigurado en Docker. Es la forma mas rapida de comenzar.

Construir el bucle del agente

Aqui hay un bucle de agente simplificado que maneja el intercambio:

async def agent_loop(task: str, max_iterations: int = 10):
    client = anthropic.Anthropic()
    messages = [{"role": "user", "content": task}]

    tools = [
        {
            "type": "computer_20251124",
            "name": "computer",
            "display_width_px": 1024,
            "display_height_px": 768,
        },
        {"type": "text_editor_20250728", "name": "str_replace_based_edit_tool"},
        {"type": "bash_20250124", "name": "bash"},
    ]

    for _ in range(max_iterations):
        response = client.beta.messages.create(
            model="claude-opus-4-6",
            max_tokens=4096,
            messages=messages,
            tools=tools,
            betas=["computer-use-2025-11-24"],
        )

        messages.append({"role": "assistant", "content": response.content})

        tool_results = []
        for block in response.content:
            if block.type == "tool_use":
                result = execute_tool(block.name, block.input)
                tool_results.append({
                    "type": "tool_result",
                    "tool_use_id": block.id,
                    "content": result,
                })

        if not tool_results:
            return messages  # Tarea completa

        messages.append({"role": "user", "content": tool_results})

La funcion execute_tool es donde conectas la captura de pantalla real, los clics del raton y la entrada de teclado a tu entorno de computo.

Escalado de coordenadas: la trampa

La API limita las imagenes a un maximo de 1568px en el lado mas largo. Si tu pantalla es mas grande (digamos 1512x982), las capturas de pantalla se reducen — pero Claude devuelve coordenadas basadas en la imagen mas pequena.

Debes escalar las coordenadas de vuelta:

import math

def get_scale_factor(width, height):
    long_edge = max(width, height)
    total_pixels = width * height
    long_edge_scale = 1568 / long_edge
    total_pixels_scale = math.sqrt(1_150_000 / total_pixels)
    return min(1.0, long_edge_scale, total_pixels_scale)

scale = get_scale_factor(1512, 982)

# Cuando Claude dice "clic en (450, 300)", escala hacia arriba:
def execute_click(x, y):
    screen_x = x / scale
    screen_y = y / scale
    perform_click(screen_x, screen_y)

Omitir este paso significa que los clics de Claude fallaran sus objetivos. Este es el bug de implementacion mas comun.

Consejos de prompting para mejores resultados

Computer use funciona mejor con prompts claros y estructurados:

  1. Se especifico. “Abre Firefox, ve a example.com y haz clic en el boton Iniciar sesion” funciona mejor que “inicia sesion en el sitio”.

  2. Pide a Claude que verifique. Agrega esto a tu prompt: “Despues de cada paso, toma una captura de pantalla y evalua si lograste el resultado correcto. Solo avanza cuando este confirmado.”

  3. Usa atajos de teclado. Los menus desplegables y barras de desplazamiento pueden ser dificiles de hacer clic. Indica a Claude que use Tab, Enter y las flechas en su lugar.

  4. Proporciona ejemplos. Para tareas repetitivas, incluye capturas de pantalla de ejemplo y las llamadas de herramientas esperadas en tu prompt.

  5. Usa etiquetas XML para credenciales. Si Claude necesita iniciar sesion, pasa las credenciales en etiquetas <robot_credentials>. Pero ten cuidado — los riesgos de inyeccion de prompt son mayores cuando Claude interactua con contenido no confiable.

Seguridad: tomala en serio

Computer use tiene riesgos de seguridad unicos:

  • Inyeccion de prompt a traves del contenido en pantalla. Claude lee todo lo que aparece en pantalla. Una pagina web maliciosa podria mostrar instrucciones que anulen tu prompt.
  • Acciones autonomas. Claude podria hacer clic en enlaces, aceptar dialogos o navegar lejos de donde pretendias.
  • Exposicion de credenciales. Si Claude puede ver contrasenas o tokens en pantalla, se convierten en parte de la conversacion.

Anthropic ha integrado clasificadores que senalan posibles inyecciones de prompt en las capturas de pantalla. Pero la mejor defensa es el aislamiento:

  • Ejecuta en una VM dedicada o contenedor Docker con privilegios minimos
  • No des acceso a cuentas sensibles sin supervision
  • Limita el acceso a internet a una lista blanca de dominios
  • Requiere confirmacion humana para acciones con consecuencias (compras, creacion de cuentas, etc.)

Que construir con esto

Computer use es ideal para tareas donde la velocidad no es critica pero la automatizacion es valiosa:

  • Pruebas automatizadas — prueba cualquier aplicacion de escritorio, no solo apps web
  • Recoleccion de datos — navega sitios web y extrae informacion
  • Integracion de sistemas legacy — automatiza flujos de trabajo en apps que no tienen API
  • Llenado de formularios — completa formularios web en multiples sitios
  • Flujos de investigacion — busca, lee y compila informacion desde la web
  • QA y monitoreo — verifica que las interfaces se renderizan correctamente

Para flujos de investigacion y recoleccion de datos, herramientas como Save complementan bien el computer use — una vez que Claude navega a una pagina, convertirla a Markdown limpio te da contenido estructurado y listo para IA en lugar de capturas de pantalla en bruto.

Limitaciones actuales

Ten en cuenta estas limitaciones de la beta:

  • Latencia. Cada accion requiere una llamada API, una captura de pantalla y una respuesta. Es mas lento que un humano haciendo clic.
  • Precision visual. Claude puede leer mal texto pequeno o identificar mal elementos de interfaz. La nueva accion zoom ayuda, pero no es perfecta.
  • Desplazamiento. Mejorado significativamente en versiones recientes, pero las interacciones de desplazamiento complejas aun pueden ser poco confiables.
  • Hojas de calculo. La seleccion de celdas es complicada. Usa la navegacion por teclado cuando sea posible.
  • Sin creacion de cuentas en redes sociales. Claude intencionalmente no creara cuentas ni suplantara humanos en redes sociales.

Precios

Computer use sigue los precios estandar de uso de herramientas:

  • Sobrecarga del prompt del sistema: 466-499 tokens
  • Definicion de herramienta: 735 tokens por herramienta (para Claude 4.x)
  • Capturas de pantalla: facturadas como tokens de vision (varia segun la resolucion)
  • Cada llamada API en el bucle del agente es una solicitud facturable separada

Para una tarea tipica de 10 pasos, espera usar de 15,000 a 50,000 tokens dependiendo del tamano de las capturas de pantalla y la complejidad de las respuestas.

Para comenzar

  1. Prueba la implementacion de referencia. Clona anthropic-quickstarts, ejecuta el contenedor Docker y experimenta.
  2. Comienza con tareas simples. “Abre un editor de texto, escribe Hello World, guarda el archivo.” Haz que funcione el bucle del agente antes de intentar flujos de trabajo complejos.
  3. Agrega protecciones. Establece limites de iteraciones. Valida las coordenadas. Registra cada accion. Agrega confirmacion humana para cualquier cosa irreversible.
  4. Optimiza tus prompts. Cuanto mejores sean tus instrucciones, menos iteraciones necesita Claude — y menores seran tus costos en tokens.

Computer use representa un cambio fundamental en lo que es posible con las APIs de IA. En lugar de construir integraciones personalizadas para cada aplicacion, puedes dar a Claude la misma interfaz que usan los humanos — una pantalla, un raton y un teclado — y dejar que se encargue del resto.

El futuro de la automatizacion no son mas APIs. Es IA que puede usar las interfaces que ya tenemos.