Opencode-models-discovery 2.0 Release: Configure Shape Full, OpenCode v2 Formally Correct
Innanzitutto, la conclusione è che:Opencode-models-discovery 2.0.0, pubblicato il 19 ottobre 2026, ripristina formalmente OpenCode v2 alla forza principale e v1 all'adattatore compatibile.Questo non è un aggiornamento di routine -- la forma del file di configurazione è completamente cambiato, e si segue il vecchio curriculum, e probabilmente non si può eseguire fuori linea.
Ho calpestato tre code. È tutto laggiù. Prima di tutto, che cosa fa: è un plugin OpenCode che risolve un problema molto fastidioso -- si ottiene un gruppo di gateway compatibili OpenCode, servizi di modello locale, API transitoria, e ogni nuovo modello va manualmente alla configurazione per colpire il nome del modello, la lunghezza del contesto, il prezzo. Questo plugin ti rende adatto solo una volta, e il resto di esso si tira se stesso.
Cos'e' cambiato stavolta?
Il magazzino è stato costruito nell'aprile del 2026 da yuhp/opencode-models-scovery, MIT, e ora 188 stelle, 57 forche. Non sembra la parte superiore della lista, ma si tratta di alcuni progetti nell'ecologia OpenCode che sono seri su "scoperta del modello".
2.0.0 C'è solo un'azione core:Raise OpenCode v2 a integrazione stabile primariaNon lo so. Tecnicamente, V2 utilizza strutture di configurazione originali per pulgin / provider, API ciclo di vita del fornitore, storage host hosting, voucher di integrazione, TUI nativo, RPC Handler e Strumenti agente.
Traduttore: Il vecchio plugin era "Ho cambiato la tua configurazione" e ora è "L'host mi apre". Il documento non deve essere scritto nel file di configurazione, la cache è data al gestore host, e le copertine del modello possono essere accese nel pannello TuI e non riavviate.
Livello di supporto per v1 e v2
| Versione Host | Livello di sostegno | Configurare i campi | Deposito e voucher |
|---|---|---|---|
| OpenCode v2 | Steady / Main | plugins e providers | Host ctx.storage / ctx.integration |
| OpenCode v1 | Compatibilità legacy | plugin e provider | v1 XDG Cache + Auth Bottom |
v1 non è tagliato, riparazione sicura e ritorno serio rimarrà in vigore. Ma le nuove funzioni -- ciclo di vita, cache, TUI, RPC, overlay modello -- tutti vanno solo a v2, non automaticamente torna a v1.
Due o nove formati di metadati. E' la grande foto.
V2.0.0 Il documento ufficiale ha nove formati di informazioni di modello, che rimuove completamente l'"ingestione di metadati" e "programmazione scoperta". Questo è un design intelligente: la logica di movimento non deve essere cambiata per ogni produttore, con un adattatore di formato.
| Formato | Cosa? | Ulteriori richieste |
|---|---|---|
openrouter | Lunghezza del contesto, tappi di uscita superiore, modalità (text/image/udio), prezzo del prompt/complemento e della cache, segni delle chiamate degli strumenti, scanalature di ragionamento (basso/media/alto) | Nessuna richiesta aggiuntiva |
aiproxy | Visualizzazione di AIProxy Inline Limiteds, Prezzo, sforzo + Models.dev Primo nome | montaggio |
bifrost | Limiti in linea, stampo, token, variante di ragionamento | Nessuna richiesta aggiuntiva |
litellm | Ricco metadati modello, limiti di contesto, prezzi, capacità | Richiesta /v1/model/info |
lmstudio | Configurazione delle istanze caricate (LM Studio 0.4.0+ nativo) /api/v1/modelsNon ne sono sicuro. | Una volta. |
llama-swap | Lunghezza del contesto, struttura, segni di chiamata della funzione | Nessuna richiesta aggiuntiva |
models.dev | In basso, contesto e capacità comuni | Tira! models.json |
omniroute | (fast/flex) | Nessuna richiesta aggiuntiva |
vllm | Dritto. max_model_len | Nessuna richiesta aggiuntiva |
Guarda l'ultima frase:Se non corrisponda modelInfoFormatPoi c'e' solo l'ID del modello, non ci sono metadati.Non è bug, è design -- non indovinare che tipo di servizio si sta prendendo, evitando un sacco di prezzi errati e lunghezze di contesto.
Non mi sono adattato a questo campo in primo luogo, e ho guardato una lista di modelli con solo nomi e pensiero, "Perché non è cambiato nulla?" E li ho guardati mezzo giorno.
E il profilo? Scrivere
Questo è il posto più semplice per rotolare sopra. v1 che. plugin / provider / options Invalid all in v2, sostituirlo con un plurale settingsNon lo so.
| OpenCode v1 | OpenCode v2 |
|---|---|
plugin | plugins |
provider | providers |
provider.<id>.npm | providers.<id>.package |
provider.<id>.options | providers.<id>.settings |
options.baseURL | settings.baseURL |
options.apiKey | settings.apiKey |
options.modelsDiscovery | settings.modelsDiscovery |
Una configurazione v2 che viene eseguita direttamente è la seguente:
{
"$schema": "https://opencode.ai/config.json",
"plugins": [
"opencode-models-discovery@2.0.0"
],
"providers": {
"gateway": {
"package": "@opencode/ai/providers/openai-compatible",
"name": "My Gateway",
"settings": {
"baseURL": "https://gateway.example.com/v1",
"apiKey": "{env:GATEWAY_API_KEY}",
"modelsDiscovery": {
"enabled": true,
"modelInfoFormat": "models.dev",
"smartModelName": true,
"cache": {
"enabled": true,
"ttlSeconds": 86400
}
}
}
}
}
}
Ci sono diversi punti da notare:
modelsDiscovery.enabledSi'.VisibileScriveretrueNon lo so. v2 non è più aperto predefinito, è cambiamento comportamentale, non facoltativo.packageServizio compatibile OpenAI Unified@opencode/ai/providers/openai-compatibleNon lo so.- Certificato
{env:KEY}Lascia che la parsa dell'ospite, o non scrivi.apiKeyDirettamente utilizzando OpenCode./connectIngresso interattivo. - L'estrazione predefinita è
/v1/models(relativo all'origine baseURL). In contatto con DeepSeek./modelsSi', si', si'.modelsDiscoveryRiga."endpoint": "/models"Non lo so. - V Per niente. V
auth.jsoneOPENCODE_AUTH_CONTENTVai in fondo. Sarà bloccato nel 401.
IV. Copertura modello e cache, più funzionale del previsto
Il modello v2 copre l'host memorizzato overrides:<providerID>:<modelID> Namespace. Le modifiche possono essere apportate a campi come nomi di visualizzazione, limiti, abilità, ragionamento, allegati, varianti, prezzi, metadati compatibili.
C'è molto da dire su:Campi come buoni e autorizzazioni sarebbero respinti e non sarebbero mai sostenibili.Il bordo è chiaramente disegnato — la copertura copre i parametri di visualizzazione e movimento, non la chiave che si collega.
Altri organi /models-discovery-console Visualizza l'editing, etichettando modelli sovra coperti nell'elenco *Non lo so. Modificare l'elenco dei modelli per ricaricare e aggiornare il TUI direttamente, senza riavviare il servizio.Cache non verrà cancellato.E' questo che molte persone fanno male.
I default di Cache sono spenti, quindi i default di TTL 24 ore, con risposta di rilevamento originale e eutrophication, go-host ctx.storageNon lo so. Nota file di cache XDG per v1No.Importa un v2, due gruppi di spazi nominati sono completamente isolati.
V. Comandi TUI e Strumenti Agenti
Il v2 offre quattro punti di accesso:
/models-discovery-refresh
/models-discovery-console
models_discovery_refresh
models_discovery_status
I primi due sono comandi TUI, gli ultimi due sono per l'automazione.models_discovery_status Passo rawCache: true È particolarmente utile quando è possibile sputare i modelli originali nella cache insieme ai risultati dell'eutrofizzazione.
Console supporta anche il filtraggio da parte del fornitore:/models-discovery-console status --provider <provider-id>Non lo so. Quando prendi tre o cinque gateway, risparmia tempo.
Sei: Passa questo foglio di controllo prima della promozione.
- Versione OpenCode:v2 richiede ≥ 2.0.26; almeno 1.18.29 rimanenti in v1.
- Sostituisci tutti i campi: complesso +
settingsNon lo so.npmSi'.packageNon lo so.optionsSi'.settingsNon lo so. - Aperto visibile: Scrivere ogni fornitore per trovare
enabled: trueNon lo so. - Controllo finale: No
/v1/modelsE' manuale.endpointNon lo so.
Gli altri due sono facili da ignorare: la costruzione locale.package Per riempire file:///绝对路径/distNon lo so.Punta alla directory invece di index.jsDobbiamo cambiare il codice. opencode service restart Lascia che il servizio di back-office carichi il nuovo libretto. Il terzo e' dove sono bloccato, mezza giornata senza il codice, perche' il servizio non e' nemmeno iniziato.
Vale la pena fingere?
Guarda la tua scena.
- Solo una API ufficialeNon fingere. L'elenco dei modelli è quelli, scritti a mano per un anno, e le spine sono un altro strato.
- Abbiamo la fermata. / La porta dei polimeri.: Raccomandazioni forti. Tali modelli di servizio sono caratterizzati da presenze, nomi sbagliati e frequenti cambi di prezzo, e la manutenzione manuale è puramente autoabuso.
- Local running LM Studio / vLLM / llama-swap: Carico. Questi modelli di servizio sono caricati su richiesta. Il plug-in ti carica.
max_model_lenE' molto piu' diretto, molto piu' veloce della tua configurazione. - L'azienda ha costruito il gateway.: Vale una valutazione. Nove forme.
bifrostNon lo so.omnirouteE' per la porta.includeBy/excludeBySupporta il filtraggio regolare ed equivalente dei campi originali, che possono bloccare direttamente i modelli che non dovrebbero essere visti dagli utenti ordinari.
2.0.0 Per quanto riguarda se stesso, le note di rilascio si riferiscono a 41 file di prova, 314 test, più test di integrazione HTTP compatibili OpenAI locali e validazione dei prodotti di traduzione. Questa densità di prova è grave per un progetto a 188 stelle.
V1 funziona, ma la nuova roba e' in v2. Se si desidera seguire a lungo termine, spostare le configurazioni prima, e non aspettare fino al giorno in cui l'adattatore V1 ha solo una patch di sicurezza.
Indirizzo del progetto:Gythub.com/yuhp/opencode-models-discovery, installare direttamente npm i opencode-models-discovery@2.0.0 O scrivere il nome del pacchetto nella configurazione sopra. pluginsOpenCode risolverà il carico stesso.