Documentazione

Documentazione

Kimi Code

Kimi Code conserva i provider in un file TOML e, per un endpoint di terze parti, servono tre chiavi: type, base_url, api_key. Configurane uno per Kunavo e la CLI comunicherà con gli ID Claude e GPT usando il protocollo che già supporta.

Kimi Code conserva i provider in ~/.kimi-code/config.toml — imposta providers.<name>.base_url su https://api.kunavo.com/v1 con type = "openai" e la CLI esegue gli ID Claude e GPT con una sola chiave.

~/.kimi-code/config.toml
default_model = "kunavo/claude-sonnet-5"

[providers.kunavo]
type = "openai"
base_url = "https://api.kunavo.com/v1"
api_key = "sk-kn-..."

[models."kunavo/claude-sonnet-5"]
provider = "kunavo"
model = "claude-sonnet-5"
max_context_size = 200000
base_url mantiene il suffisso /v1. La pagina dei provider chiarisce la questione senza bisogno di deduzioni: il valore predefinito documentato per type = "openai" è https://api.openai.com/v1, mentre l'esempio pratico della pagina sulle variabili d'ambiente per un endpoint di terze parti è KIMI_MODEL_BASE_URL="https://api.example.com/v1". Kimi Code aggiunge solo il percorso, quindi qui un'origine senza suffisso produce un 404 anziché un errore di autenticazione. È il contrario dei client che usano il protocollo Anthropic, per i quali serve https://api.kunavo.com senza suffisso.
Esportare una variabile di shell non assegna una chiave al provider. La pagina di Kimi Code sui file di configurazione è chiara: eseguire export KIMI_API_KEY nel terminale non assegna una chiave a nessun provider. La priorità documentata è api_key oppure api_key_env — imposta esattamente uno dei due, perché sono mutuamente esclusivi — poi la chiave della sottotabella [providers.kunavo.env] se nessuno dei due è presente; se mancano tutti, l'avvio non riesce e viene restituito un errore. Per tenere la chiave fuori dal file, scrivi api_key_env = "KUNAVO_API_KEY" invece di api_key; se la variabile non è impostata o è vuota, la richiesta fallisce con un errore che indica il nome della variabile.
Kunavo non ha eseguito questo client sul proprio endpoint. Il blocco sopra è ricavato dalla documentazione attuale di Kimi Code, non da una sessione: qui non è stata registrata alcuna esecuzione di Kimi Code con streaming o chiamate agli strumenti, quindi considera la prima richiesta reale come un test, non come una conferma. La pagina pubblicata descrive la configurazione, non ne attesta il funzionamento.
type indica il protocollo, non il fornitore. L'elenco documentato comprende kimi, anthropic, openai, openai_responses, google-genai e vertexai: la tabella attuale non include una variante OpenAI legacy, quindi una guida che ti dice di impostarne una è precedente. Scegliere openai e poi inserire un ID modello Claude è la combinazione prevista: l'ID viene risolto all'URL di base, non nella CLI.
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 Kimi Code.

Passo dopo passo

  1. Crea una chiave su /app/keys e copiala: viene mostrata una sola volta.
  2. Apri ~/.kimi-code/config.toml, creato alla prima esecuzione. Se hai spostato la directory dei dati con KIMI_CODE_HOME, il file si trova in $KIMI_CODE_HOME/config.toml; il nome del file è sempre config.toml.
  3. Aggiungi la tabella [providers.kunavo] riportata sopra. Le tre chiavi indicate dalla documentazione per questo tipo, in quest'ordine, sono type, base_url e api_key.
  4. Dichiara un alias del modello sotto [models."..."] con provider, model e max_context_size: sono tutti e tre obbligatori. L'alias è il nome da passare a -m e a default_model; il valore model è l'ID inviato sul protocollo. Racchiudi tra virgolette qualsiasi alias contenga un punto.
  5. Nel primo tentativo, ometti capabilities. La pagina dei provider dice che le funzionalità vengono abbinate automaticamente in base al prefisso del nome del modello e la tabella dei modelli specifica che l'array viene solo ampliato, mai ridotto: quindi in seguito non potrai annullare un tag errato modificando la configurazione.
  6. Esegui kimi, oppure kimi -m kunavo/claude-sonnet-5 per scegliere l'alias per una sessione. Per provare l'endpoint senza modificare la configurazione, imposta KIMI_MODEL_NAME, KIMI_MODEL_API_KEY, KIMI_MODEL_PROVIDER_TYPE=openai e KIMI_MODEL_BASE_URL: la CLI crea un provider in memoria e non scrive nulla su disco.

Verificato rispetto a Pagina di Kimi Code su provider e modelli il 21 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.

Questa è la versione breve. La guida completa, con scelta del modello, costo di una sessione reale e modalità di errore, è in Kimi Code o Claude Code: quale client, quale modello, quale account.

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 Kimi Code.

# 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 Kimi Code
claude-sonnet-5$1.40 / $7.00l'alias predefinito, il modello di lavoro per i cicli di modifica ed esecuzione
claude-opus-5$3.50 / $17.50un secondo alias per le fasi di pianificazione, in cui un piano errato costa caro
claude-haiku-4-5$0.70 / $3.50l'alias economico da associare a [secondary_model] per i subagenti
gpt-5-6-sol$2.00 / $12.00un secondo parere da una famiglia diversa, con la stessa chiave e la stessa tabella dei 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 indirizzo Kimi Code a un endpoint API personalizzato?

Aggiungi una tabella provider a ~/.kimi-code/config.toml con type = "openai", imposta base_url sull'endpoint e api_key sulla tua chiave, quindi dichiara un alias del modello sotto [models."<alias>"] con provider, model e max_context_size. La pagina dei provider di Kimi Code documenta type = "openai" per il protocollo OpenAI Chat Completions e per qualsiasi servizio di terze parti compatibile; se necessario, puoi impostare base_url su un valore personalizzato. Puoi anche aprire il gestore dei provider con /provider nell'interfaccia TUI, ma il percorso per i provider noti importa i dati dal catalogo models.dev: per un endpoint non presente in quel catalogo, aggiungerlo manualmente è più rapido.

La base_url di Kimi Code deve terminare con /v1?

Sì, per un endpoint compatibile con OpenAI. Kimi Code aggiunge solo il percorso, quindi base_url deve essere la radice /v1, ad esempio https://api.kunavo.com/v1. La documentazione chiarisce la questione senza bisogno di deduzioni: il valore predefinito di base_url per type = "openai" è https://api.openai.com/v1 e l'esempio di terze parti nella pagina sulle variabili d'ambiente è https://api.example.com/v1. Se manca /v1, si ottiene un 404, non un 401.

Perché Kimi Code dice che manca la mia chiave API anche se la variabile è esportata?

Perché non legge le variabili d'ambiente della shell per le credenziali, a meno che tu non gli dica quale variabile leggere. La pagina sui file di configurazione specifica che eseguire export KIMI_API_KEY non assegna una chiave a nessun provider. Puoi scrivere direttamente api_key in config.toml oppure impostare api_key_env con il nome della variabile: le due opzioni sono mutuamente esclusive, quindi impostane esattamente una. La sottotabella [providers.<name>.env] viene consultata solo se nessuna delle due è presente; se mancano tutte e tre, l'avvio non riesce e viene restituito un errore.

Kimi Code può eseguire modelli Claude tramite un provider di terze parti?

Il tipo di provider indica un protocollo, non un fornitore, e il valore model viene inoltrato all'indirizzo base_url configurato: quindi un ID Claude impostato su un provider di tipo openai viene risolto a quell'endpoint, non nella CLI. Kimi Code ha anche un tipo separato, type = "anthropic", per il protocollo Anthropic Messages, il cui URL di base è l'origine senza suffisso /v1. Kunavo non ha eseguito una sessione di Kimi Code sul proprio endpoint con nessuno dei due protocolli: verifica quindi con il curl sopra e considera la prima sessione un test.