Claude può interagire con gli ambienti informatici tramite lo strumento di uso del computer, che fornisce funzionalità di screenshot e controllo di mouse/tastiera per l'interazione autonoma con il desktop.
L'uso del computer è in beta e richiede un header beta:
"computer-use-2025-11-24" per Claude Sonnet 5, Claude Opus 4.8, Claude Opus 4.7, Claude Opus 4.6, Claude Sonnet 4.6 e Claude Opus 4.5"computer-use-2025-01-24" per Claude Sonnet 4.5, Claude Haiku 4.5, Claude Opus 4.1 (deprecato), Claude Sonnet 4 (ritirato, eccetto su Bedrock e Google Cloud) e Claude Opus 4 (ritirato, eccetto su Google Cloud)Contattaci tramite il modulo di feedback per condividere il tuo feedback su questa funzionalità.
Questa funzionalità è idonea per la Zero Data Retention (ZDR). Quando la tua organizzazione dispone di un accordo ZDR, i dati inviati tramite questa funzionalità non vengono conservati dopo che la risposta dell'API è stata restituita.
L'uso del computer è una funzionalità beta che consente a Claude di interagire con gli ambienti desktop. Questo strumento fornisce:
Sebbene l'uso del computer possa essere potenziato con altri strumenti come bash e l'editor di testo per flussi di lavoro di automazione più completi, l'uso del computer si riferisce specificamente alla capacità dello strumento di uso del computer di vedere e controllare gli ambienti desktop.
Per il supporto dei modelli, consulta il Riferimento degli strumenti.
L'uso del computer è una funzionalità beta con rischi unici distinti dalle funzionalità API standard. Questi rischi sono maggiori quando si interagisce con internet.
Per minimizzare i rischi, considera di adottare precauzioni come:
In alcune circostanze, Claude seguirà i comandi trovati nei contenuti anche quando sono in conflitto con le tue istruzioni. Ad esempio, le istruzioni sulle pagine web o contenute nelle immagini potrebbero sovrascrivere le tue istruzioni o causare errori a Claude. Adotta precauzioni per isolare Claude da dati e azioni sensibili per evitare rischi legati alla prompt injection.
Anthropic ha addestrato il modello a resistere a queste prompt injection e ha aggiunto un ulteriore livello di difesa. Se usi gli strumenti di uso del computer, dei classificatori verranno eseguiti automaticamente sui tuoi prompt per segnalare potenziali casi di prompt injection. Quando questi classificatori identificano potenziali prompt injection negli screenshot, guideranno automaticamente il modello a chiedere conferma all'utente prima di procedere con l'azione successiva. Questa protezione aggiuntiva non sarà ideale per ogni caso d'uso (ad esempio, casi d'uso senza un umano nel ciclo), quindi se desideri rinunciarvi e disattivarla, contatta il supporto.
Queste precauzioni rimangono importanti anche con il livello di difesa del classificatore attivo.
Informa gli utenti finali dei rischi rilevanti e ottieni il loro consenso prima di abilitare l'uso del computer nei tuoi prodotti.
Inizia con l'implementazione di riferimento per l'uso del computer che include un'interfaccia web, un container Docker, implementazioni di strumenti di esempio e un ciclo agentico.
Ecco come iniziare con l'uso del computer:
client = anthropic.Anthropic()
response = client.beta.messages.create(
model="claude-opus-4-8", # or another compatible model
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": "Save a picture of a cat to my desktop."}],
betas=["computer-use-2025-11-24"],
)
print(response)Un header beta è richiesto solo per lo strumento di uso del computer.
L'esempio precedente mostra tutti e tre gli strumenti usati insieme, il che richiede l'header beta perché include lo strumento di uso del computer.
Fornisci a Claude lo strumento di uso del computer e un prompt utente
Claude seleziona lo strumento di uso del computer
stop_reason di tool_use, che segnala una richiesta di uso dello strumento.Estrai l'input dello strumento, valuta lo strumento su un computer e restituisci i risultati
user contenente un blocco di contenuto tool_result.Claude continua a chiamare gli strumenti di uso del computer finché non ha completato l'attività
stop_reason di tipo tool_use e dovresti tornare al passaggio 3.La ripetizione dei passaggi 3 e 4 senza input dell'utente è chiamata "agent loop" (ciclo agentico), ovvero Claude risponde con una richiesta di uso degli strumenti e la tua applicazione risponde a Claude con i risultati della valutazione di quella richiesta.
L'uso del computer richiede un ambiente informatico sandbox in cui Claude possa interagire in sicurezza con applicazioni e il web. Questo ambiente include:
Display virtuale: Un server di display virtuale X11 (che usa Xvfb) che renderizza l'interfaccia desktop che Claude vedrà tramite screenshot e controllerà con azioni di mouse/tastiera.
Ambiente desktop: Una UI leggera con window manager (Mutter) e pannello (Tint2) in esecuzione su Linux, che fornisce un'interfaccia grafica coerente con cui Claude può interagire.
Applicazioni: Applicazioni Linux preinstallate come Firefox, LibreOffice, editor di testo e file manager che Claude può usare per completare le attività.
Implementazioni degli strumenti: Codice di integrazione che traduce le richieste astratte degli strumenti di Claude (come "muovi il mouse" o "fai uno screenshot") in operazioni effettive nell'ambiente virtuale.
Ciclo agentico: Un programma che gestisce la comunicazione tra Claude e l'ambiente, inviando le azioni di Claude all'ambiente e restituendo i risultati (screenshot, output dei comandi) a Claude.
Quando usi l'uso del computer, Claude non si connette direttamente a questo ambiente. Invece, la tua applicazione:
Per sicurezza e isolamento, l'implementazione di riferimento esegue tutto questo all'interno di un container Docker con mappature di porte appropriate per visualizzare e interagire con l'ambiente.
È disponibile un'implementazione di riferimento che include tutto ciò di cui hai bisogno per iniziare con l'uso del computer:
Il nucleo dell'uso del computer è l'"agent loop" (ciclo agentico): un ciclo in cui Claude richiede azioni degli strumenti, la tua applicazione le esegue e restituisce i risultati a Claude. Il ciclo usa il client che hai creato nell'Avvio rapido, un elenco di strumenti strutturato come l'array tools dell'Avvio rapido e l'helper di elaborazione delle chiamate agli strumenti definito in Elabora le chiamate agli strumenti di Claude. Ecco un esempio semplificato:
def sampling_loop(model, messages, max_iterations=10):
"""
Run the computer-use agent loop until Claude stops requesting tools
or the iteration limit is reached.
"""
for _ in range(max_iterations):
response = client.beta.messages.create(
model=model,
max_tokens=4096,
messages=messages,
tools=TOOLS,
betas=["computer-use-2025-11-24"],
)
# Aggiungi la risposta di Claude alla cronologia della conversazione
messages.append({"role": "assistant", "content": response.content})
# Esegui gli strumenti richiesti da Claude e raccogli i risultati
tool_results = process_tool_calls(response)
if not tool_results:
return messages # No more tool use; task complete
# Invia i risultati degli strumenti a Claude per l'iterazione successiva
messages.append({"role": "user", "content": tool_results})
return messagesIl ciclo continua finché Claude non risponde senza richiedere alcuno strumento (completamento dell'attività) o finché non viene raggiunto il limite massimo di iterazioni. Questa salvaguardia previene potenziali cicli infiniti che potrebbero comportare costi API imprevisti.
Prova l'implementazione di riferimento prima di leggere il resto di questa documentazione.
Ecco alcuni suggerimenti su come ottenere output della migliore qualità:
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>. Usare l'uso del computer all'interno di applicazioni che richiedono l'accesso aumenta il rischio di risultati negativi a causa della prompt injection. Consulta Mitigare jailbreak e prompt injection prima di fornire al modello le credenziali di accesso.content di un turno utente, posiziona il testo dell'istruzione prima dell'immagine dello screenshot. Fornire la descrizione del target prima che l'immagine venga elaborata migliora la precisione dei clic.computer_20251124 con enable_zoom: true impostato, Claude ingrandisce una regione quando gli viene chiesto di testo piccolo o elementi specifici dell'interfaccia utente che non sono leggibili alla risoluzione predefinita dello screenshot, come nomi di file in una barra laterale, titoli di schede, testo della barra di stato, numeri di riga o etichette di pulsanti. Se Claude non sta ingrandendo quando te lo aspetti, chiedi di una regione o di un elemento specifico piuttosto che dello schermo nel suo insieme.Se riscontri ripetutamente un insieme chiaro di problemi o conosci in anticipo le attività che Claude dovrà completare, usa il prompt di sistema per fornire a Claude suggerimenti o istruzioni esplicite su come svolgere le attività con successo.
Per gli agenti che si estendono su più sessioni, esegui una verifica end-to-end all'inizio di ogni sessione, non solo dopo l'implementazione. I controlli basati sul browser rilevano regressioni da sessioni precedenti che la sola revisione a livello di codice non coglie. Consulta Effective harnesses for long-running agents per i dettagli.
Quando uno degli strumenti con schema Anthropic viene richiesto tramite l'API di Claude, viene generato un prompt di sistema specifico per l'uso del computer. È simile al prompt di sistema per l'uso degli strumenti ma inizia con:
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.
Come per il normale uso degli strumenti, il parametro system fornito dall'utente viene comunque rispettato e usato nella costruzione del prompt di sistema combinato.
Lo strumento di uso del computer supporta queste azioni:
Azioni di base (tutte le versioni)
[x, y]Azioni avanzate (computer_20250124 e successive)
Disponibili in computer_20250124 e computer_20251124:
Azioni avanzate (computer_20251124)
Disponibili in Claude Sonnet 5, Claude Opus 4.8, Claude Opus 4.7, Claude Opus 4.6, Claude Sonnet 4.6 e Claude Opus 4.5:
computer_20250124enable_zoom: true nella definizione dello strumento. Accetta un parametro region con coordinate [x1, y1, x2, y2] che definiscono gli angoli in alto a sinistra e in basso a destra dell'area da ispezionare.| Parametro | Obbligatorio | Descrizione |
|---|---|---|
type | Sì | Versione dello strumento (computer_20251124 o computer_20250124) |
name | Sì | Deve essere "computer" |
display_width_px | Sì | Larghezza del display in pixel |
display_height_px | Sì | Altezza del display in pixel |
display_number | No | Numero del display per ambienti X11 |
enable_zoom | No | Abilita l'azione di zoom (solo computer_20251124). Imposta su true per consentire a Claude di ingrandire regioni specifiche dello schermo. Predefinito: false |
Importante: La tua applicazione deve eseguire esplicitamente lo strumento di uso del computer; Claude non può eseguirlo direttamente. Sei responsabile dell'implementazione della cattura degli screenshot, dei movimenti del mouse, degli input da tastiera e di altre azioni in base alle richieste di Claude.
Per combinare l'uso del computer con il pensiero esteso, consulta Pensiero esteso.
Per l'uso del computer in particolare, il benchmarking interno suggerisce queste impostazioni di effort:
high come predefinito; usa low per carichi di lavoro ad alto throughput o sensibili ai costi.medium come predefinito (miglior rapporto accuratezza-costo). Evita max, che aggiunge costi in token senza migliorare l'accuratezza nelle attività di interfaccia utente. Su questi modelli, low usa meno token di output rispetto alla disattivazione completa del pensiero (meno errori significano meno tentativi), rendendolo un'ottima opzione per cicli sensibili ai costi.Per aggiungere altri strumenti insieme all'uso del computer, includili nello stesso array tools. La sezione Avvio rapido mostra questo schema con lo strumento bash e lo strumento editor di testo. Puoi aggiungere le tue definizioni di strumenti personalizzati nello stesso modo.
L'implementazione di riferimento è pensata per aiutarti a iniziare con l'uso del computer. Include tutti i componenti necessari affinché Claude usi un computer. Tuttavia, puoi costruire il tuo ambiente per l'uso del computer in base alle tue esigenze. Avrai bisogno di:
tool_use usando le tue implementazioni degli strumentiLo strumento di uso del computer è implementato come uno strumento senza schema. Quando usi questo strumento, non devi fornire uno schema di input come per gli altri strumenti; lo schema è integrato nel modello di Claude e non può essere modificato.
Configura il tuo ambiente informatico
Crea un display virtuale o connettiti a un display esistente con cui Claude interagirà. Questo in genere comporta la configurazione di Xvfb (X Virtual Framebuffer) o di una tecnologia simile.
Implementa i gestori delle azioni
Crea funzioni per gestire ogni tipo di azione che Claude potrebbe richiedere:
def capture_screenshot():
return "<screenshot data>"
def click_at(x, y):
return f"clicked at ({x}, {y})"
def type_text(text):
return f"typed: {text}"
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"])
# Gestisci altre azioni secondo necessità
return f"unhandled action: {action_type}"Elabora le chiamate agli strumenti di Claude
Estrai ed esegui le chiamate agli strumenti dalle risposte di Claude:
def process_tool_calls(response):
tool_results = []
for block in response.content:
if block.type == "tool_use":
action = block.input["action"]
result = handle_computer_action(action, block.input)
tool_results.append(
{
"type": "tool_result",
"tool_use_id": block.id,
"content": result,
}
)
return tool_resultsImplementa il ciclo agentico
Crea un ciclo che continua finché Claude non completa l'attività:
def sampling_loop(model, messages, max_iterations=10):
"""
Run the computer-use agent loop until Claude stops requesting tools
or the iteration limit is reached.
"""
for _ in range(max_iterations):
response = client.beta.messages.create(
model=model,
max_tokens=4096,
messages=messages,
tools=TOOLS,
betas=["computer-use-2025-11-24"],
)
# Aggiungi la risposta di Claude alla cronologia della conversazione
messages.append({"role": "assistant", "content": response.content})
# Esegui gli strumenti richiesti da Claude e raccogli i risultati
tool_results = process_tool_calls(response)
if not tool_results:
return messages # No more tool use; task complete
# Invia i risultati degli strumenti a Claude per l'iterazione successiva
messages.append({"role": "user", "content": tool_results})
return messagesQuando implementi lo strumento di uso del computer, potrebbero verificarsi vari errori. Ecco come gestirli:
Gli screenshot inviati allo strumento computer dovrebbero rientrare nei limiti di dimensione delle immagini di Claude (consulta limiti di dimensione delle immagini). L'API ridimensiona le immagini troppo grandi prima che Claude le veda, e Claude restituisce le coordinate per l'immagine che vede, quindi affidarsi al ridimensionamento lato server ti lascia senza il fattore di scala necessario per mappare quelle coordinate sul tuo schermo. Solo le immagini che superano i limiti di richiesta separati dell'API (ad esempio, più di 8.000 px su un lato) vengono rifiutate con un errore di validazione anziché ridimensionate.
I limiti variano in base al modello. Claude Sonnet 5, Claude Opus 4.8 e Claude Opus 4.7 accettano fino a 2576 pixel sul lato lungo; i modelli precedenti accettano fino a 1568 pixel sul lato lungo e circa 1,15 megapixel in totale. L'esempio seguente usa i limiti dei modelli precedenti di 1568 px / 1,15 MP; sostituisci con il limite del tuo modello.
Se il tuo schermo è più grande del limite, ridimensiona lo screenshot prima di inviarlo, imposta display_width_px/display_height_px sulle dimensioni ridimensionate e riscala le coordinate restituite da Claude nello spazio dello schermo originale:
import math
def get_scale_factor(width, height):
"""Calculate scale factor to meet API constraints."""
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)
# Quando si cattura lo screenshot
scale = get_scale_factor(screen_width, screen_height)
scaled_width = int(screen_width * scale)
scaled_height = int(screen_height * scale)
# Ridimensiona l'immagine alle dimensioni scalate prima di inviarla a Claude
screenshot = capture_and_resize(scaled_width, scaled_height)
# Quando si gestiscono le coordinate di Claude, riscalale verso l'alto
def execute_click(x, y):
screen_x = x / scale
screen_y = y / scale
perform_click(screen_x, screen_y)I display Retina di macOS catturano gli screenshot con un device pixel ratio di 2, quindi l'immagine ha una risoluzione doppia rispetto alle coordinate logiche dello schermo. Ridimensiona lo screenshot di 2x prima di inviarlo, oppure dimezza le coordinate restituite da Claude prima di eseguire il clic.
Se i clic mancano i loro obiettivi, la causa è solitamente una delle seguenti:
| Sintomo | Causa probabile | Prova |
|---|---|---|
| I clic sono costantemente spostati in una direzione | display_width_px/display_height_px non corrispondono alle dimensioni dell'immagine effettivamente inviata | Assicurati che le dimensioni del display corrispondano esattamente allo screenshot che invii |
| I clic arrivano nell'area giusta ma mancano il target | Il target è molto piccolo, i dettagli sono stati persi ridimensionando una sorgente 4K+, o le proporzioni sono state distorte | Imposta enable_zoom: true; cattura a DPI inferiore o ritaglia la regione rilevante; preserva le proporzioni durante il ridimensionamento |
| Claude clicca sull'elemento completamente sbagliato | Istruzione ambigua o elementi visivamente simili nelle vicinanze | Usa prompt posizionali ("il pulsante blu Invia in basso a destra"); suddividi l'interazione in passaggi più piccoli |
| L'accuratezza è costantemente scarsa | Risoluzione troppo bassa | Prova 1280x720 come base di partenza |
La scelta del modello influisce sulla precisione dei clic. Claude Sonnet 4.6 è meccanicamente più preciso nei clic rispetto a Claude Opus 4.6 ed è più robusto quando gli screenshot richiedono un ridimensionamento significativo. Claude Opus 4.7 riduce questo divario: la sua precisione nei clic è approssimativamente paragonabile a Sonnet 4.6, e il suo limite di risoluzione più alto significa che è necessario meno ridimensionamento.
L'uso del computer è in beta. Tieni presente le seguenti limitazioni:
Latenza: L'attuale "latency" (latenza) dell'uso del computer per le interazioni umano-IA potrebbe essere troppo lenta rispetto alle normali azioni al computer dirette da un umano. Concentrati su casi d'uso in cui la velocità non è critica (ad esempio, raccolta di informazioni in background, test automatizzati del software) in ambienti affidabili.
Accuratezza e affidabilità della visione artificiale: Claude potrebbe commettere errori o avere allucinazioni quando produce coordinate specifiche durante la generazione delle azioni. Il pensiero esteso può aiutarti a comprendere il ragionamento del modello e identificare potenziali problemi.
Accuratezza e affidabilità nella selezione degli strumenti: Claude potrebbe commettere errori o avere allucinazioni quando seleziona gli strumenti durante la generazione delle azioni o intraprendere azioni inaspettate per risolvere i problemi. Inoltre, l'affidabilità potrebbe essere inferiore quando si interagisce con applicazioni di nicchia o con più applicazioni contemporaneamente. Formula i prompt con attenzione quando richiedi attività complesse.
Affidabilità dello scorrimento: L'azione di scorrimento supporta il controllo della direzione (su, giù, sinistra, destra) e una quantità specificata. Nelle applicazioni in cui lo scorrimento non ha effetto, alternative da tastiera come Page Down possono aiutare.
Interazione con i fogli di calcolo: Usa le azioni di controllo granulare del mouse (left_mouse_down, left_mouse_up) e le combinazioni di tasti modificatori per selezionare singole celle. Le operazioni complesse sui fogli di calcolo potrebbero comunque richiedere più tentativi.
Creazione di account e generazione di contenuti su piattaforme social e di comunicazione: Sebbene Claude visiti siti web, la capacità di Claude di creare account o generare e condividere contenuti o comunque impegnarsi nell'impersonificazione umana su siti web e piattaforme di social media è limitata. Questa capacità potrebbe essere aggiornata in futuro.
Vulnerabilità: Vulnerabilità come jailbreak o prompt injection potrebbero persistere nei sistemi di IA di frontiera, inclusa l'API beta di uso del computer. In alcune circostanze, Claude seguirà i comandi trovati nei contenuti, a volte anche quando sono in conflitto con le tue istruzioni. Ad esempio, le istruzioni sulle pagine web o contenute nelle immagini potrebbero sovrascrivere le tue istruzioni o causare errori a Claude. Considera quanto segue:
Azioni inappropriate o illegali: Secondo i Termini di servizio di Anthropic, non devi impiegare l'uso del computer per violare alcuna legge o la Politica di utilizzo accettabile.
Rivedi e verifica sempre attentamente le azioni e i log dell'uso del computer di Claude. Non usare Claude per attività che richiedono precisione perfetta o informazioni sensibili degli utenti senza supervisione umana.
L'uso del computer è uno strumento lato client. Tutti gli screenshot, le azioni del mouse, gli input da tastiera e qualsiasi file coinvolto in una sessione vengono catturati e archiviati nel tuo ambiente, non da Anthropic. Anthropic elabora le immagini degli screenshot e le richieste di azione in tempo reale come parte della chiamata API. La conservazione per quelle richieste API è regolata da API e conservazione dei dati.
Poiché la tua applicazione controlla dove e come vengono archiviati i dati dell'uso del computer, l'uso del computer è idoneo per ZDR. Per l'idoneità ZDR di tutte le funzionalità, consulta API e conservazione dei dati.
L'uso del computer segue la tariffazione standard per l'uso degli strumenti. Quando si utilizza lo strumento di uso del computer:
Overhead del prompt di sistema: la beta dell'uso del computer aggiunge 466-499 token al prompt di sistema
Utilizzo di token dello strumento di uso del computer:
| Modello | Token di input per definizione dello strumento |
|---|---|
| Modelli Claude 4.x | 735 token |
Consumo aggiuntivo di token:
Se stai utilizzando anche gli strumenti bash o text editor insieme all'uso del computer, tali strumenti hanno i propri costi in token, come documentato nelle rispettive pagine.
Risolvi gli errori più comuni dell'uso degli strumenti con tabelle diagnostiche da sintomo a soluzione.
Inizia con l'implementazione completa basata su Docker
Connetti Claude a strumenti e API esterni. Scopri dove vengono eseguiti gli strumenti, quando Claude li chiama e quale strumento è adatto alla tua attività.
Raccomandazioni basate su benchmark per risoluzione, sforzo di pensiero e gestione del contesto
Was this page helpful?