← Zurück zur Liste

Opencode-models-discovery 2.0 Release: Formvoll konfigurieren, OpenCode v2 formal korrekt

itadol5j

Erstens:Opencode-models-discovery 2.0.0, veröffentlicht am 19. Oktober 2026, stellt OpenCode v2 formell auf die Hauptkraft und v1 auf den kompatiblen Adapter wieder her.Dies ist kein routinemäßiges Upgrade - die Form der Konfigurationsdatei wird vollständig geändert, und Sie folgen dem alten Lehrplan, und Sie können wahrscheinlich nicht aus der Reihe laufen.

Ich trat selbst auf drei Schwänze. Es ist alles da unten. Zunächst einmal, was es tut: Es ist ein OpenCode-Plugin, das ein sehr lästiges Problem löst - Sie erhalten eine Reihe von OpenCode-kompatiblen Gateways, lokalen Modelldiensten, Transit-API, und jedes neue Modell geht manuell zur Konfiguration, um den Modellnamen, die Kontextlänge und den Preis zu treffen. Dieses Plugin macht Sie nur einmal fit, und der Rest zieht sich von selbst.

opencode-models-discovery v2.0.0

Was hat sich diesmal geändert?

Das Lager wurde im April 2026 von yuhp / opencode-models-discovery, MIT, und jetzt 188 Sterne, 57 Gabel gebaut. Es klingt nicht nach der Spitze der Liste, aber es sind einige Projekte in der OpenCode-Ökologie, die es ernst meinen mit "Modellentdeckung".

2,0,0 Es gibt nur eine Kernaktion:OpenCode v2 zur primären stabilen IntegrationIch weiß es nicht. Technisch verwendet V2 originale Konfigurationsstrukturen für pulgins / Provider, Provider Lifecycle API, Host Hosting Storage, Integrationsgutschein, native TUI, RPC Handler und Agent Tools.

Übersetzer: Das alte Plugin war "Ich habe deine Konfiguration geändert" und jetzt ist es "Der Host öffnet mich." Das Dokument muss nicht in die Konfigurationsdatei geschrieben werden, der Cache wird dem Host-Manager übergeben, und die Modellabdeckungen können im TuI-Panel beleuchtet und nicht neu gestartet werden.

Support Level für v1 und v2

Host VersionUnterstützungsniveauFelder konfigurierenLagerung und Gutschein
OpenCode v2Stetig/Mainplugins und providersGastgeber ctx.storage / ctx.integration
OpenCode v1Legacy-Kompatibilitätplugin und providerv1 XDG Cache + Auth Bottom

v1 wird nicht geschnitten, sichere Reparatur und ernsthafte Rückkehr bleiben an Ort und Stelle. Aber die neuen Funktionen - Lebenszyklus, Cache, TUI, RPC, Modell-Overlay - gehen alle nur zu v2, nicht automatisch zurück zu v1.

Zwei oder neun Metadatenformate. Das ist das große Bild.

v2.0.0 Das offizielle Dokument hat neun Modellinformationsformate, die die "Metadatenaufnahme" und die "Entdeckungsplanung" vollständig entfernen. Dies ist ein intelligentes Design: Die Bewegungslogik muss nicht für jeden Hersteller mit einem Formatadapter geändert werden.

FormatWas?Zusätzliche Anträge
openrouterKontextlänge, Top-Output-Caps, Mode (Text/Bild/Audio), Prompt/Ergänzungs- und Cache-Preise, Tool Call Marks, Reasoning Slots (low/media/high)Kein zusätzlicher Antrag
aiproxyAnzeige von AIProxy Inline Limited, Preis, Aufwand + Models.dev VornameBaugruppe
bifrostInline Limits, Schimmel, Token, ArgumentationsvarianteKein zusätzlicher Antrag
litellmReichhaltige Modellmetadaten, Kontextbeschränkungen, Preise, FähigkeitenAntrag /v1/model/info
lmstudioGeladene Instanzkonfiguration (LM Studio 0.4.0+ native) /api/v1/modelsIch bin mir nicht sicher.Einmal.
llama-swapKontextlänge, Struktur, FunktionszeichenKein zusätzlicher Antrag
models.devPublic Directory Bottom, gemeinsamer Kontext und FähigkeitenZiehen Sie! models.json
omniroute(schnell/flexibel)Kein zusätzlicher Antrag
vllmgeradeaus. max_model_lenKein zusätzlicher Antrag
Neun Metadatenformatfähigkeitsvergleiche

Sehen Sie sich den letzten Satz an:Wenn Sie nicht übereinstimmen modelInfoFormatDann gibt es nur Modell-ID, es gibt keine Metadaten.Es ist kein Bug, es ist Design - raten Sie nicht, welche Art von Service Sie in Anspruch nehmen, und vermeiden Sie eine Reihe falscher Preise und Kontextlängen.

Ich passte dieses Feld überhaupt nicht, und ich schaute mir eine Liste von Modellen mit nur Namen an und dachte: "Warum hat sich nichts geändert?" Und ich sah sie einen halben Tag an.

Was ist mit dem Profil? Schreiben

Dies ist der einfachste Ort, um zu rollen. v1 das. plugin / provider / options Invalid all in v2, ersetzen Sie es durch einen Plural settingsIch weiß es nicht.

OpenCode v1OpenCode v2
pluginplugins
providerproviders
provider.<id>.npmproviders.<id>.package
provider.<id>.optionsproviders.<id>.settings
options.baseURLsettings.baseURL
options.apiKeysettings.apiKey
options.modelsDiscoverysettings.modelsDiscovery
v1 bis v2 Feldkarte konfigurieren

Eine v2-Konfiguration, die direkt läuft, ist wie folgt:

{
  "$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
          }
        }
      }
    }
  }
}

Es gibt mehrere Punkte zu beachten:

  • modelsDiscovery.enabled Ja.SichtbarSchreiben trueIch weiß es nicht. v2 ist nicht mehr standardmäßig offen, es ist Verhaltensänderung, nicht optional.
  • package OpenAI Kompatibler Service Unified @opencode/ai/providers/openai-compatibleIch weiß es nicht.
  • Bescheinigung {env:KEY} Lassen Sie den Host analysieren oder nicht schreiben. apiKeyDirekt mit OpenCode. /connect Interaktiver Eintrag.
  • Der Default Pull ist /v1/models(relativ zum Ursprung von baseURL). In Kontakt mit DeepSeek. /models Ja, ja, ja. modelsDiscovery Riga. "endpoint": "/models"Ich weiß es nicht.
  • v2 Überhaupt nicht. V1 auth.json und OPENCODE_AUTH_CONTENT Gehen Sie nach unten. Es wird in 401 stecken bleiben.

IV. Model Cover und Cache, funktionaler als erwartet

Das v2-Modell deckt den gespeicherten Host ab overrides:<providerID>:<modelID> Namespace. Es können Änderungen an Feldern wie Anzeigenamen, Limits, Fähigkeiten, Argumentation, Anhänge, Varianten, Preise, kompatible Metadaten vorgenommen werden.

Es gibt viel zu sagen:Felder wie Gutscheine und Genehmigungen würden abgelehnt und wären niemals nachhaltig.Der Rahmen ist klar gezeichnet - die Abdeckung deckt die Anzeige- und Bewegungsparameter ab, nicht den Schlüssel, den Sie einstecken.

Sonstige Veranstalter /models-discovery-console Visualisieren Sie das Bearbeiten und Beschriften von überdeckten Modellen in der Liste *Ich weiß es nicht. Ändern Sie die Liste der Modelle, um die TUI direkt neu zu laden und zu aktualisieren, ohne den Dienst neu zu starten.Cache wird nicht gelöscht.Das machen viele Leute falsch.

Plugin-Workflows: Lesen von Konfigurationen, Ziehen von Modellen, Patches, Injektionen

Cache-Standards sind ausgeschaltet, dann TTL-Standards 24 Stunden, mit ursprünglicher Erkennungsreaktion und Eutrophierung, Go-Host ctx.storageIch weiß es nicht. Hinweis XDG Cache-Datei für v1Nope.Importiert eine v2, werden zwei Gruppen von benannten Räumen vollständig isoliert.

V. TUI-Befehle und Agent Tools

Die v2 bietet vier Access Points:

/models-discovery-refresh
/models-discovery-console
models_discovery_refresh
models_discovery_status

Die ersten beiden sind TUI-Befehle, die letzten beiden sind für die Automatisierung.models_discovery_status Pass rawCache: true Es ist besonders nützlich, wenn Sie die Originalmodelle im Cache zusammen mit den Eutrophierungsergebnissen ausspucken können.

Die Konsole unterstützt auch die Filterung nach Anbieter:/models-discovery-console status --provider <provider-id>Ich weiß es nicht. Wenn Sie drei oder fünf Gateways nehmen, spart es Zeit.

Sechs: Geben Sie dieses Checkblatt vor der Promotion.

Upgrade der ersten vier Checklisten
  • OpenCode Version:v2 erfordert ≥ 2.0.26; mindestens 1.18.29 verbleiben in v1.
  • Alle Felder ersetzen: Komplex + settingsIch weiß es nicht.npm Ja. packageIch weiß es nicht.options Ja. settingsIch weiß es nicht.
  • Sichtbar offenSchreiben Sie jeden Anbieter zu finden enabled: trueIch weiß es nicht.
  • Endkontrolle: Nein /v1/models Es ist manuell. endpointIch weiß es nicht.

Die anderen beiden sind leicht zu ignorieren: lokale Konstruktion.package zu füllen file:///绝对路径/distIch weiß es nicht.Zeigen Sie auf Verzeichnis statt index.jsWir müssen den Code ändern. opencode service restart Lassen Sie den Back-Office-Service das neue Bookle laden. Der dritte Punkt ist, wo ich feststecke - einen halben Tag ohne den Code, weil der Dienst noch nicht einmal gestartet wurde.

Lohnt es sich, so zu tun?

Schau dir deine Szene an.

  • Nur eine offizielle API: Tu nicht so, als ob. Die liste der modelle ist diejenigen, handgeschrieben für ein jahr, und die plugs sind eine weitere schicht.
  • Wir haben den Stopp. / Das Polymer Gateway.: Starke Empfehlung. Solche Servicemodelle sind durch Anwesenheit, Fehlnamen und häufige Preisverschiebungen gekennzeichnet, und die manuelle Wartung ist reiner Selbstmissbrauch.
  • Lokales LM Studio / vLLM / Lama-Swap: Belastung. Diese Servicemodelle werden auf Abruf geladen. Das Plugin wird Sie tatsächlich laden. max_model_len Es ist viel direkter, viel schneller als Ihre eigene Konfiguration.
  • Das Unternehmen baute das Gateway.: Eine Bewertung wert. Neun Formen. bifrostIch weiß es nicht.omniroute Es ist für das Gateway. includeBy / excludeBy Unterstützt die regelmäßige und gleichwertige Filterung von Originalfeldern, die direkt Modelle blockieren können, die von normalen Benutzern nicht gesehen werden sollten.

2,0,0 Die Release Notes beziehen sich auf 41 Testdateien, 314 Tests sowie lokale OpenAI-kompatible HTTP-Integrationstests und Übersetzungsproduktvalidierung. Diese Testdichte ist für ein 188-Sterne-Projekt schwerwiegend.

V1 funktioniert, aber neues Zeug ist in v2. Wenn Sie langfristig weiterarbeiten möchten, verschieben Sie Ihre Konfigurationen früher und warten Sie nicht bis zu dem Tag, an dem der V1-Adapter nur einen Sicherheitspatch hat.

Projektadresse:Gythub.com/yuhp/opencode-models-discovery, direkt installieren npm i opencode-models-discovery@2.0.0 Oder schreiben Sie den Paketnamen in die obige Konfiguration. pluginsOpenCode löst die Last selbst.