APIMaster.ai

OpenCode con APIMaster.ai

Aggiungi APIMaster come provider compatibile con OpenAI in OpenCode Desktop, con livelli di Reasoning opzionali tramite opencode.jsonc.

OpenCode Desktop è il client grafico per OpenCode (attualmente in beta): sessioni agente locali, modifiche ai file ed esecuzione di comandi shell. APIMaster.ai è compatibile con OpenAI — aggiungilo in Impostazioni → Providers → Provider personalizzato.

Ottieni la tua chiave API. Usa il segnaposto your_apimaster_key di seguito; gli screenshot nascondono le chiavi reali.


Prerequisiti

  1. OpenCode Desktop installato da opencode.ai/download.
    • Windows: opencode-desktop-win-x64.exe
    • macOS: brew install --cask opencode-desktop o .dmg
    • Linux: .deb / .rpm / AppImage
  2. Chiave API APIMaster dalla console.

Passo 1 — Apri Provider

  1. Avvia OpenCode Desktop e apri un workspace.
  2. Clicca sull'icona a forma di ingranaggio (in basso a sinistra).
  3. Seleziona Providers nella barra laterale.
  4. Scorri fino a Provider personalizzato (Aggiungi un provider compatibile con OpenAI tramite URL base).
  5. Clicca su + Connetti.

Impostazioni → Providers → Provider personalizzato


Passo 2 — Modulo provider personalizzato

Campo Valore
ID provider apimaster
Nome visualizzato APIMaster.ai
URL base https://apimaster.ai/v1
Chiave API La tua chiave APIMaster

Modulo provider personalizzato

Lascia vuoto Headers a meno che non autentichi solo tramite header.


Passo 3 — Aggiungi modelli e Invia

Nella schermata successiva, mappa i modelli (sinistra = etichetta in OpenCode, destra = id modello inviato ad APIMaster — di solito uguali):

Sinistra Destra
gpt-5.4 gpt-5.4
claude-sonnet-4-6 claude-sonnet-4-6
  1. Clicca su + Aggiungi modello per più righe.
  2. Clicca su Invia.

Aggiungi modelli e Invia

Scegli gli id dal marketplace. Evita modelli solo immagine (es. gpt-image-2) per la chat agente.


Passo 4 — Scegli un modello

  1. Avvia o apri una sessione.
  2. Apri il menu a discesa dei modelli sotto l'input.
  3. Sotto APIMaster.ai, seleziona un modello (es. claude-sonnet-4-6).

Selettore modello


Passo 5 — Test

Invia hello o un piccolo compito di coding. Una normale risposta dell'Assistente (modifiche file / shell) significa che APIMaster è connesso.

Test chat


Avanzato: opencode.jsonc e Reasoning

Il flusso dell'interfaccia sopra è sufficiente per un avvio rapido. Per configurare i livelli di Reasoning / thinking effort (low, high, max, …) per lo stesso id modello, modifica opencode.jsonc.

Posizione del file di configurazione

SO Percorso
macOS / Linux ~/.config/opencode/opencode.jsonc
Windows C:\Users\<nomeutente>\.config\opencode\opencode.jsonc

Crea il file se mancante. Riavvia OpenCode Desktop o avvia una nuova sessione dopo aver salvato.

Chiave API (non inserirla in jsonc)

Non memorizzare la tua chiave API in opencode.jsonc.

Usa:

  • /connect nel terminale, oppure
  • Impostazioni → Providers → Connetti Provider (stessi Passi 1–2 sopra).

Tieni i segreti nel vault di autenticazione di OpenCode; jsonc definisce solo provider, modelli e varianti Reasoning.

Provider APIMaster in jsonc

ID provider: apimaster. Pacchetto npm: @ai-sdk/openai-compatible.

baseURL deve essere:

https://apimaster.ai/v1

Non https://apimaster.ai/ — OpenCode aggiunge /chat/completions. Senza /v1 ottieni https://apimaster.ai/chat/completions404 Non Trovato.

Esempio completo con varianti Reasoning — scarica e sovrascrivi la configurazione di OpenCode:

  1. Scarica opencode.jsonc
  2. Sovrascrivi (o salva come):
    • macOS / Linux: ~/.config/opencode/opencode.jsonc
    • Windows: C:\Users\<nomeutente>\.config\opencode\opencode.jsonc
  3. Configura la chiave API tramite /connect o interfaccia (mai in jsonc).
  4. Riavvia OpenCode Desktop o avvia una nuova sessione.

Esegui il backup del file esistente prima di sovrascrivere, oppure unisci solo il blocco provider.apimaster.

Struttura minima:

{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "apimaster": {
      "name": "APIMaster.ai",
      "npm": "@ai-sdk/openai-compatible",
      "options": { "baseURL": "https://apimaster.ai/v1" },
      "models": {
        "gpt-5.4": {
          "name": "gpt-5.4",
          "variants": {
            "low": { "reasoningEffort": "low" },
            "high": { "reasoningEffort": "high" }
          }
        }
      }
    }
  }
}

Principi di Reasoning

  • variants = più livelli di Reasoning per un id modello nell'interfaccia.
  • Per API compatibili con OpenAI, OpenCode mappa reasoningEffortreasoning_effort nel corpo della richiesta.
  • I nomi delle varianti devono corrispondere al parametro reale (high"reasoningEffort": "high").
  • Ogni modello supporta livelli diversi — configura secondo la documentazione ufficiale; nessun rimappaggio nascosto.

Livelli di Reasoning per modello

Modello Varianti Reasoning Note
gpt-5.4 low, medium, high, xhigh Reasoning GPT
gpt-5.5 low, medium, high, xhigh Reasoning GPT
deepseek-v4-flash high, max Pensiero DeepSeek (consigliato)
deepseek-v4-pro high, max Pensiero DeepSeek (consigliato)
claude-sonnet-4-6 low, medium, high, max Sforzo Claude Sonnet
claude-opus-4-7 low, medium, high, xhigh, max Sforzo Claude Opus
claude-opus-4-8 low, medium, high, xhigh, max Sforzo Claude Opus
claude-haiku-4-5 nessuno Nessun livello di sforzo confermato
minimax-m3 nessuno Nessun livello di sforzo confermato

Vedi opencode.jsonc per il file completo.

Cambiare Reasoning in OpenCode

  1. Salva opencode.jsonc, poi riavvia o nuova sessione.
  2. Usa il menu a discesa del modello / Reasoning (es. gpt-5.4 / high).
  3. Se supportato nella tua build: Ctrl + Maiusc + D cicla i livelli di Reasoning.

Risoluzione dei problemi

Configurazione interfaccia

Problema Soluzione
401 Controlla la chiave; ruotala se esposta
Modello non trovato L'URL base deve essere https://apimaster.ai/v1; l'id modello deve corrispondere al marketplace
Nessun modello APIMaster Modifica il provider in Impostazioni → aggiungi mappature → Invia
Lento / timeout Prova un altro modello; usa API Key Tester

Reasoning / jsonc

Perché solo high e max per DeepSeek?
Lo sforzo di pensiero ufficiale compatibile con OpenAI per DeepSeek è high e max. Evita low / medium / xhigh che vengono rimappati in modo imprevedibile.

Perché max per Claude Sonnet e non xhigh?
Il livello massimo di Sonnet è max; xhigh è per Opus (claude-opus-4-7 / claude-opus-4-8).

Perché nessuna variante per Haiku o MiniMax M3?
Senza valori documentati di reasoningEffort, salta le varianti — il modello funziona comunque; l'interfaccia semplicemente non mostrerà sottolivelli di Reasoning.

Ricevi ancora errore 400?

  1. baseURL = https://apimaster.ai/v1 (non root del sito).
  2. L'ortografia dell'id modello corrisponde al marketplace.
  3. Chiave configurata tramite /connect o interfaccia.
  4. Rimuovi temporaneamente le variants — se le richieste semplici funzionano, il reasoning_effort scelto potrebbe non essere supportato per quel modello.

Sicurezza

  • Non condividere mai chiavi in chat o screenshot non oscurati.
  • Ruota le chiavi che sono apparse in screenshot o log.
  • OpenCode può leggere/scrivere file ed eseguire comandi shell — usa solo workspace fidati.

Checklist

  • OpenCode Desktop installato
  • Provider personalizzato connesso oppure apimaster in opencode.jsonc
  • URL base / baseURL = https://apimaster.ai/v1 (non https://apimaster.ai/)
  • Chiave API tramite /connect o interfaccia (non in jsonc)
  • Almeno un modello chat mappato
  • (Opzionale) Varianti Reasoning corrispondenti ai livelli ufficiali
  • Messaggio di test completato con successo

Riepilogo

  • Chiavi: baseURL (https://apimaster.ai/v1), id modello, chiave API (/connect o interfaccia), varianti Reasoning opzionali.
  • Nomi delle varianti = valori effettivi di reasoning_effort.
  • Configura i livelli per modello; salta le varianti quando non supportate (Haiku, MiniMax M3).

Vedi anche