Source: https://aiprimetech.io/it/learn/use-claude-api-with-opencode/ [Home](/it/) / [Impara](/it/learn/) / Configurazione di OpenCode per Claude: impostazione di opencode.json, modelli ed errori comuni # Configurazione di OpenCode per Claude: impostazione di opencode.json, modelli ed errori comuni OpenCode legge le proprie impostazioni da opencode.json. Per usarlo con Claude tramite questo gateway, modifica un solo valore del provider Anthropic, baseURL, e fornisci una chiave. Di seguito trovi due configurazioni funzionanti, le impostazioni del modello e del contesto che contano e le soluzioni agli errori che gli utenti di OpenCode incontrano su questo gateway, ricavate dai nostri log delle richieste. ## Dove si trova opencode.json OpenCode unisce una configurazione globale a una specifica per progetto: ~/.config/opencode/opencode.json per le impostazioni che vuoi applicare ovunque, e opencode.json nella directory radice di un progetto per quel repository. Aggiungendo la riga $schema ottieni completamento automatico e validazione nella maggior parte degli editor. Non inserire la chiave nel file. Salvala in una variabile d'ambiente e fai riferimento a essa come {env:AIPRIME_API_KEY}. Le chiavi che aggiungi con /connect all'interno di OpenCode vengono memorizzate in ~/.local/share/opencode/auth.json; opencode auth list mostra ciò che vi è memorizzato. terminaleCopia ``` export AIPRIME_API_KEY=your_gateway_key # add to ~/.bashrc or ~/.zshrc opencode auth list # credentials OpenCode already knows about ``` ## Opzione 1: punta il provider Anthropic integrato al gateway La modifica minima: mantieni il provider Anthropic di OpenCode e il suo elenco di modelli e sovrascrivi la destinazione delle richieste. opencode.jsonCopia ``` { "$schema": "https://opencode.ai/config.json", "provider": { "anthropic": { "options": { "baseURL": "https://aiprimetech.io/v1", "apiKey": "{env:AIPRIME_API_KEY}" } } }, "model": "anthropic/claude-sonnet-5", "small_model": "anthropic/claude-haiku-4-5" } ``` La baseURL deve terminare con /v1. Il provider Anthropic di OpenCode è quello dell'AI SDK, @ai-sdk/anthropic, il cui valore predefinito è https://api.anthropic.com/v1; aggiunge /messages a qualunque valore tu gli fornisca. Senza /v1 la richiesta arriva al sito web e restituisce HTML, che OpenCode segnala come errore di parsing. ## Opzione 2: un provider personalizzato con il tuo elenco di modelli Una voce separata per il provider mantiene il gateway distinto da qualsiasi accesso Anthropic, ti consente di elencare nel selettore esattamente i modelli che desideri e di impostare i limiti di contesto per ciascun modello. opencode.jsonCopia ``` { "$schema": "https://opencode.ai/config.json", "provider": { "aiprime": { "npm": "@ai-sdk/anthropic", "name": "AI Prime Tech", "options": { "baseURL": "https://aiprimetech.io/v1", "apiKey": "{env:AIPRIME_API_KEY}" }, "models": { "claude-sonnet-5": { "name": "Claude Sonnet 5", "limit": { "context": 200000, "output": 64000 } }, "claude-opus-5-5": { "name": "Claude Opus 5.5", "limit": { "context": 200000, "output": 64000 } }, "claude-haiku-4-5": { "name": "Claude Haiku 4.5", "limit": { "context": 200000, "output": 32000 } } } } }, "model": "aiprime/claude-sonnet-5", "small_model": "aiprime/claude-haiku-4-5" } ``` Preferisci @ai-sdk/anthropic per Claude: usa la Messages API nativa, quindi la memorizzazione nella cache dei prompt e il ragionamento funzionano come previsto da Anthropic. Il gateway supporta anche il formato OpenAI, quindi @ai-sdk/openai-compatible con lo stesso https://aiprimetech.io/v1 URL di base funziona anche in questo caso ed è la modalità da usare per i modelli GPT con la stessa chiave. ## Modelli e limiti di contesto | ID del modello | Usalo per | claude-sonnet-5 | Scelta predefinita per programmazione e attività degli agenti: veloce, potente, di fascia media. | claude-opus-5-5 | Ragionamenti più complessi, refactoring estesi, esecuzioni prolungate degli agenti. | claude-fable-5-1 | Il più capace e il più costoso; riservalo alle attività più difficili. | claude-haiku-4-5 | Economico e rapido: titoli, riepiloghi, classificazione, piccoli passaggi. model è ciò che usa l'agente principale; small_model gestisce attività secondarie economiche, come i titoli delle sessioni. Il limit.context valore indica a OpenCode quando compattare la sessione. Se una sessione lunga fallisce con prompt is too long, riducilo (200000 è un valore sicuro) in modo che OpenCode riassuma prima, invece di inviare più di quanto l'endpoint accetti. Gli ID dei modelli sono stringhe esatte. I nomi precedenti, come claude-3-5-sonnet-20241022 o gli snapshot datati non sono disponibili; usa gli ID indicati sopra o l'elenco nella tua dashboard. ## Verifica la chiave e l'URL prima di avviare OpenCode Una sola richiesta dal terminale ti indica se la chiave e l'URL sono corretti, indipendentemente dalla configurazione di OpenCode: terminaleCopia ``` curl -s https://aiprimetech.io/v1/messages \ -H "x-api-key: $AIPRIME_API_KEY" \ -H "anthropic-version: 2023-06-01" \ -H "content-type: application/json" \ -d '{"model":"claude-haiku-4-5","max_tokens":20,"messages":[{"role":"user","content":"ping"}]}' ``` Una risposta JSON con un content array indica che il gateway funziona correttamente e che qualsiasi problema residuo si trova in opencode.json. Invalid API key indica che la variabile è vuota o contiene la chiave sbagliata. ## Risoluzione dei problemi: errori riscontrati dagli utenti di OpenCode Questi sono gli errori più frequenti con OpenCode su questo gateway, con la relativa soluzione. | Che cosa vedi | Causa | Soluzione | Un errore di parsing di JSON, con una risposta che inizia con < | baseURL senza /v1: la richiesta ha raggiunto il sito web, non l'API | Termina baseURL con /v1 | 404 page not found | /v1 due volte, quindi il percorso diventa /v1/v1/messages | Usa esattamente https://aiprimetech.io/v1 | Invalid API key | La variabile non è esportata nella shell da cui è stato avviato OpenCode, oppure è in uso una chiave diversa | echo $AIPRIME_API_KEY, opencode auth list, riavvia OpenCode | Modello non supportato / modello non trovato | Un ID che l'endpoint non rende disponibile, spesso un vecchio nome datato | Usa un ID della tabella qui sopra | prompt is too long: N tokens > N tokens | La sessione ha superato il limite accettato dal modello | /compact, e riduci limit.context | Concurrency limit exceeded for user | I sottoagenti in parallelo superano il limite di concorrenza della tua chiave | Esegui meno sottoagenti contemporaneamente oppure chiedi all'assistenza un limite di concorrenza più elevato | Insufficient account balance | Il saldo è esaurito | [Ricarica](/it/topup/) e riprova | No available accounts o This request could not be completed | Problema temporaneo di capacità a monte | Invia di nuovo il messaggio; cambia modello se il problema persiste Per gli errori che provengono dal modello anziché dal client, consulta [guida agli errori dell'API di Claude](/it/learn/claude-api-errors-troubleshooting/). ## Domande frequenti Dove si trova il file di configurazione di OpenCode? A livello globale in ~/.config/opencode/opencode.json e per ciascun progetto come opencode.json nella radice del repository. OpenCode combina i due file. Come posso usare Claude in OpenCode con una chiave API? Imposta provider.anthropic.options.baseURL sull'URL del gateway che termina con /v1 e apiKey su {env:YOUR_VAR}, oppure aggiungi un provider personalizzato con npm @ai-sdk/anthropic, quindi scegli il modello con model: provider/model-id. Perché OpenCode fallisce con un errore di parsing o una risposta che inizia con '<'? In baseURL manca /v1, quindi le richieste raggiungono il sito web anziché l'API. @ai-sdk/anthropic richiede il prefisso completo, ad esempio https://aiprimetech.io/v1. OpenCode può usare un accesso Claude Pro o Max? La documentazione di OpenCode indica che Anthropic vieta i plugin Pro/Max di terze parti e che OpenCode ha smesso di includerli in 1.3.0. Il metodo supportato è una chiave API. Inizia a usare Claude in pochi minuti Ottieni una chiave API: non servono un account Anthropic né una lista d'attesa.[Ottieni la tua chiave API](/register) AI Prime Tech è un gateway API indipendente. Non è affiliato ad Anthropic, non è approvato da Anthropic e non è un suo rivenditore. Claude e i nomi dei modelli correlati sono marchi dei rispettivi proprietari. ## Altre guide all'API di Claude [Come ottenere una chiave API di Claude](/it/learn/how-to-get-a-claude-api-key/)[I prezzi dell'API Claude, spiegati](/it/learn/claude-api-pricing-explained/)[Il modo più economico per usare l'API Claude](/it/learn/cheapest-way-to-use-claude-api/)[Cursor illimitato con l'API Claude](/learn/use-claude-api-with-cursor/)[Accesso illimitato a Claude Code](/it/learn/use-claude-api-with-claude-code/)[Gateway API Claude e accesso diretto ad Anthropic a confronto](/it/learn/claude-api-vs-anthropic-direct/)[Usare Claude tramite un'API compatibile con OpenAI](/it/learn/openai-compatible-claude-api/)[I modelli Claude spiegati: un confronto tra Claude Opus, Sonnet, Haiku e Fable — tutti i modelli API Claude, i nomi dei modelli Anthropic e i prezzi (2026)](/it/learn/claude-api-models-compared/)[Pagare l'API Claude con criptovalute](/it/learn/claude-api-with-crypto-payment/)[Accesso all'API Claude senza lista d'attesa](/it/learn/claude-api-without-waitlist/)[Come ridurre l'utilizzo dei token di Claude](/it/learn/how-to-reduce-claude-token-usage/)[Cline illimitato con l'API Claude](/it/learn/use-claude-api-with-cline/)[Roo Code illimitato con l'API Claude](/it/learn/use-claude-api-with-roo-code/)[Claude illimitato negli IDE JetBrains](/it/learn/use-claude-api-with-jetbrains/)[Aider senza limiti con l'API di Claude](/it/learn/use-claude-api-with-aider/)[Claude illimitato in VS Code](/it/learn/use-claude-api-with-vscode/)[Eseguire un agente Hermes senza limiti su Claude](/it/learn/run-hermes-agent-with-claude-api/)[Eseguire OpenClaw senza limiti con Claude](/it/learn/run-openclaw-with-claude-api/)[Cosa significa un'API compatibile con Anthropic](/it/learn/anthropic-compatible-api/)[Chiave API di Claude Code — ANTHROPIC_API_KEY: come ottenerla, configurarla e quando usare invece claude setup-token](/it/learn/claude-code-api-key-setup/)[Costi dell'API di Claude Code — Prezzi e come ridurli](/it/learn/claude-code-api-costs/)[Gli errori dell'API Claude spiegati: errore del server 500, sovraccarico 529, limite di frequenza 429, richiesta non valida 400 — e la soluzione per ciascuno](/it/learn/claude-api-errors-troubleshooting/)[Come acquistare crediti per l'API di Claude e perché un credito Claude conviene più di qualsiasi offerta per «acquistare un account Claude»](/it/learn/buy-claude-api-credits/)[API Claude gratuita: esiste una chiave API di Claude gratuita e che cosa è davvero gratuito nel 2026?](/it/learn/claude-api-free-trial/)[API Claude e abbonamento Claude Pro/Max a confronto — Quale scegliere](/it/learn/claude-api-vs-subscription/)[Eseguire la CLI di Codex su Claude](/it/learn/use-claude-api-with-codex/)[Collegare Claude a n8n](/it/learn/use-claude-api-with-n8n/)[Instradare LiteLLM verso Claude](/it/learn/use-claude-api-with-litellm/)[Usare Claude in Kilo Code](/it/learn/use-claude-api-with-kilo-code/)[Integrare Claude in GitHub Copilot](/it/learn/use-claude-api-with-github-copilot/)[Collega Zed a Claude tramite il gateway](/it/learn/use-claude-api-with-zed/)[Collega Cherry Studio a Claude](/it/learn/use-claude-api-with-cherry-studio/)[ChatAnthropic in LangChain: importazione, base_url, streaming, strumenti ed errori](/it/learn/use-claude-api-with-langchain/)[SDK Python di Anthropic: installazione, configurazione di base_url, streaming e gestione degli errori](/it/learn/anthropic-python-sdk/)[Claude con Vercel AI SDK: baseURL di createAnthropic, streaming e soluzioni ai problemi](/it/learn/use-claude-api-with-vercel-ai-sdk/)[Esegui Factory Droid con Claude](/it/learn/use-claude-api-with-factory-droid/)[L'API di Claude Code spiegata](/it/learn/claude-code-api/)[Integrare l'API di Claude nella tua applicazione](/it/learn/claude-api-integration/)[Come ottenere un utilizzo illimitato di Claude e perché non esiste un «Claude Code craccato»](/it/learn/get-unlimited-claude-usage/)