Documentazione

Documentazione

Zed

Zed dichiara un provider compatibile con OpenAI in settings.json e acquisisce la chiave separatamente tramite Agent Panel. L’array models non è una semplice comodità: costituisce l’intero elenco di modelli che Zed conoscerà.

Un blocco language_models.openai_compatible in settings.json dichiara l'endpoint e i relativi modelli; la chiave va inserita nell'interfaccia Agent Panel, mai nel file.

~/.config/zed/settings.json
{
  "language_models": {
    "openai_compatible": {
      "kunavo": {
        "api_url": "https://api.kunavo.com/v1",
        "available_models": [
          {
            "name": "claude-sonnet-5",
            "display_name": "Claude Sonnet 5",
            "max_tokens": 200000,
            "max_output_tokens": 64000,
            "capabilities": { "tools": true, "images": true }
          },
          {
            "name": "claude-haiku-4-5",
            "display_name": "Claude Haiku 4.5",
            "max_tokens": 200000
          }
        ]
      }
    }
  }
}
La chiave API non va inserita in questo file. La documentazione di Zed lo specifica chiaramente: inseriscila nelle impostazioni del provider in Agent Panel oppure imposta la variabile d’ambiente generata da Zed per il nome del provider. settings.json viene sincronizzato e condiviso; una chiave inserita al suo interno viaggia insieme al file.
Per Zed, available_models è l’intero catalogo: per un provider compatibile con OpenAI non viene effettuata alcuna chiamata di rilevamento, quindi un modello non incluso nell’elenco non compare nel selettore. Aggiungi una voce per ogni ID che intendi usare, impostando max_tokens sulla finestra di contesto effettiva del modello.
Non hai ancora una chiave? Crea un account Kunavo, genera una chiave (inizia con sk-kn-) e aggiungi credito da $10: le chiamate vengono pagate con quel saldo e le chiamate non riuscite non vengono addebitate. La dashboard si apre quindi sulla configurazione Zed.

Passo dopo passo

  1. Crea una chiave su /app/keys e copiala: viene mostrata una sola volta.
  2. Apri settings.json con zed: open settings dalla palette dei comandi e aggiungi il blocco qui sopra.
  3. Apri le impostazioni di Agent Panel, trova il provider sotto il nome che hai usato come chiave (qui kunavo) e incolla lì la chiave API.
  4. Scegli il modello nel selettore dei modelli di Agent Panel: mostra display_name e invia name.
  5. Sovrascrivi solo i valori capabilities che differiscono da quelli predefiniti di Zed; i valori predefiniti sono tools: true con immagini e chiamate parallele agli strumenti disattivate.

Verificato rispetto a Documentazione di Zed sull’accesso API il 6 settembre 2026. Le impostazioni di terze parti cambiano; se il nome di un campo qui non corrisponde più a quello visualizzato, fa fede quella pagina, non questa.

Verifica prima di eseguire il debug del client

Una sola richiesta stabilisce se il problema riguarda l'endpoint, la chiave o il file di configurazione. Se restituisce JSON, lo stesso base URL e la stessa chiave funzionano in Zed.

# Settles whether a failure is the endpoint, the key, or the client.
curl -sS https://api.kunavo.com/v1/models \
  -H "Authorization: Bearer sk-kn-..."

Quale model id inserire nel campo

Ogni modello di testo è raggiungibile come model id: l'elenco aggiornato è GET /v1/models e il catalogo con i prezzi è nella pagina dei modelli. Le tariffe sono in USD per 1M di token, input / output.

ID del modelloKunavo ingresso / uscitaDove si inserisce in Zed
claude-sonnet-5$1.40 / $7.00il valore predefinito dell’agente — strumenti e immagini attivi
claude-opus-5$3.50 / $17.50refactor più ampi, in cui il piano conta più della velocità
claude-haiku-4-5$0.70 / $3.50assistenze in linea e modifiche rapide
gpt-5-6-terra$0.70 / $4.20una seconda famiglia dietro la stessa voce del provider
La fatturazione è per token, usando un saldo prepagato senza canone mensile: vedi billing. In presenza di contesto ripetuto, che costituisce la maggior parte di ciò che invia un editor o un client di chat, prompt caching incide sulla spesa più della scelta del modello.

Domande frequenti

Come aggiungo un provider compatibile con OpenAI a Zed?

Aggiungi un blocco language_models.openai_compatible a settings.json, usando il nome del provider come chiave, un api_url che punti alla radice /v1 dell’endpoint e un array available_models che elenchi ogni ID modello desiderato. Poi apri le impostazioni del provider in Agent Panel e inserisci lì la chiave API. La documentazione di Zed specifica chiaramente che le chiavi non vanno inserite in settings.json.

Perché un modello non compare nel selettore dei modelli di Zed?

Perché non è incluso in available_models. Zed non interroga un endpoint compatibile con OpenAI per ottenere il catalogo, quindi l’array in settings.json è l’elenco completo dei modelli offerti da quel provider. Aggiungi una voce con l’ID del modello come name, un display_name per il selettore e max_tokens impostato sulla finestra di contesto effettiva.

Dove salva Zed la chiave API per un provider personalizzato?

Nell’interfaccia delle impostazioni del provider in Agent Panel oppure nella variabile d’ambiente generata da Zed a partire dal nome del provider, non in settings.json. Zed mantiene intenzionalmente le credenziali fuori dal file delle impostazioni, perché quel file è pensato per essere portabile e condivisibile, mentre una chiave non lo è.

Zed può usare modelli Claude tramite un endpoint personalizzato?

Sì. Il provider openai_compatible passa il nome del modello direttamente ad api_url, quindi è l’endpoint a risolvere un ID Claude, non Zed. Imposta capabilities.tools su true per i modelli che supportano le chiamate agli strumenti — è il valore predefinito di Zed per questo tipo di provider — e l’agente funziona come con un provider proprietario.