Opencode-models-discovery 2.0 Release: Configure Shape Full, OpenCode v2 Formally Correct
Primero, la conclusión es que:Opencode-models-discovery 2.0.0, publicado el 19 de octubre de 2026, restaura formalmente OpenCode v2 a la fuerza principal y v1 al adaptador compatible.Esto no es una actualización de rutina -- la forma del archivo de configuración es completamente cambiada, y usted sigue el viejo plan de estudios, y probablemente no puede ejecutar fuera de línea.
Yo mismo pisé tres colas. Está todo ahí abajo. En primer lugar, lo que hace: es un plugin OpenCode que resuelve un problema muy molesto -- usted consigue un montón de gateways compatibles con OpenCode, servicios de modelos locales, API transitable, y cada nuevo modelo va manualmente al config para golpear el nombre modelo, la longitud del contexto, el precio. Este plugin te hace encajar sólo una vez, y el resto de ella se tira.
¿Qué ha cambiado esta vez?
El almacén fue construido en abril de 2026 por yuhp/opencode-models-discovery, MIT, y ahora 188 estrellas, 57 tenedor. No suena como la parte superior de la lista, pero son algunos proyectos en la ecología de OpenCode que son serios acerca del "descubrimiento modelo".
2.0.0 Sólo hay una acción básica:Aumentar OpenCode v2 a la integración primaria estableNo lo sé. Técnicamente, V2 utiliza estructuras de configuración originales para bucles / proveedores, API de ciclo de vida del proveedor, almacenamiento de hospedaje, cupón de integración, TUI nativo, RPC Handler y Herramientas del Agente.
Traductor: El viejo plugin fue "Cambié tu configuración" y ahora es "El anfitrión me abre". El documento no tiene que ser escrito en el archivo de configuración, el caché se da al administrador anfitrión, y las cubiertas de modelo se pueden encender en el panel TuI y no se reinician.
Nivel de apoyo para v1 y v2
| Versión de acogida | Nivel de apoyo | Configurar campos | Almacenamiento y vale |
|---|---|---|---|
| OpenCode v2 | Firma / Principal | plugins y providers | Host ctx.storage / ctx.integration |
| OpenCode v1 | Compatibilidad Legacy | plugin y provider | v1 XDG Cache + Auth Bottom |
v1 no se corta, la reparación segura y el retorno serio permanecerán en su lugar. Pero las nuevas funciones -- ciclo de vida, caché, TUI, RPC, superposición de modelo -- todos van sólo a v2, no automáticamente de vuelta a v1.
Dos o nueve formatos de metadatos. Esa es la gran imagen.
v2.0.0 El documento oficial tiene nueve formatos de información modelo, que eliminan por completo la "ingestión de metadatos" y "descubrimiento de programación". Este es un diseño inteligente: la lógica del movimiento no necesita ser cambiada para cada fabricante, con un adaptador de formato.
| Formato | ¿Conseguir qué? | Solicitudes adicionales |
|---|---|---|
openrouter | Longitud contexto, tapas de salida superior, modo (texto/image/udio), precios rápidos/complemento y caché, marcas de llamada de herramientas, ranuras de razonamiento (bajo/media/alto) | No hay solicitud adicional |
aiproxy | Visualización de AIProxy Inline Limiteds, Precio, esfuerzo + Modelos.dev Nombre | montaje |
bifrost | Límites de línea, molde, token, variante de razonamiento | No hay solicitud adicional |
litellm | Metadatos modelo ricos, limitaciones de contexto, precios, capacidades | Solicitud /v1/model/info |
lmstudio | Configuración de instancia cargada (LM Studio 0.4.0+ nativa) /api/v1/modelsNo estoy seguro. | Una vez. |
llama-swap | Longitud contextual, estructura, función de las marcas | No hay solicitud adicional |
models.dev | Directorio público inferior, contexto común y capacidades | ¡Tira! models.json |
omniroute | (fast/flex) | No hay solicitud adicional |
vllm | Correcto. max_model_len | No hay solicitud adicional |
Ver la última frase:Si no coincides modelInfoFormatEntonces sólo hay identificación modelo, no hay metadatos.No es un error, es diseño... no adivina qué tipo de servicio estás tomando, evitando un montón de precios incorrectos y longitudes de contexto.
No encajaba en este campo en primer lugar, y miré una lista de modelos con sólo nombres y pensé: "¿Por qué no ha cambiado nada?" Y los miré medio día.
¿Qué hay del perfil? Escriba
Este es el lugar más fácil para rodar. v1 que. plugin / provider / options Inválido todo en v2, reemplazarlo por un plural settingsNo lo sé.
| 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 configuración v2 que funciona directamente es la siguiente:
{
"$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
}
}
}
}
}
}
Hay varios puntos a destacar:
modelsDiscovery.enabledSí.VisibleEscribatrueNo lo sé. v2 ya no está abierto por defecto, es cambio de comportamiento, no opcional.packageServicio Compatible OpenAI Unificado@opencode/ai/providers/openai-compatibleNo lo sé.- Certificado
{env:KEY}Deje que el anfitrión parse, o no escriba.apiKeyUso directo de OpenCode./connectEntrada interactiva. - La tira predeterminada es
/v1/models(relativo al origen de la base). En contacto con DeepSeek./modelsSí, sí, sí.modelsDiscoveryRiga."endpoint": "/models"No lo sé. - v2 Para nada. V1
auth.jsonyOPENCODE_AUTH_CONTENTVe al fondo. Estará atrapado en 401.
IV. cubierta modelo y caché, más funcional de lo esperado
El modelo v2 cubre el host almacenado overrides:<providerID>:<modelID> Namespace. Los cambios se pueden realizar en campos tales como nombres de pantalla, límites, habilidades, razonamiento, apegos, variantes, precios, metadatos compatibles.
Hay mucho que decir sobre:Campos como vales y autorizaciones serán rechazados y nunca serán sostenibles.La frontera está claramente dibujada — la cobertura cubre los parámetros de visualización y movimiento, no la clave que conecta.
Otros organizadores /models-discovery-console Visualizar la edición, etiquetar modelos cubiertos en la lista *No lo sé. Cambia la lista de modelos para recargar y refrescar el TUI directamente, sin reiniciar el servicio.Cache no será borrado.Eso es lo que mucha gente hace mal.
Cache defaults are off, then TTL defaults 24 hours, with original detection response and eutrophication, go-host ctx.storageNo lo sé. Nota Archivo de caché XDG para v1No.Importaciones a v2, dos grupos de espacios nombrados están completamente aislados.
V. Comandos TUI y Herramientas del Agente
El v2 ofrece cuatro puntos de acceso:
/models-discovery-refresh
/models-discovery-console
models_discovery_refresh
models_discovery_status
Los dos primeros son comandos TUI, los dos últimos son para la automatización.models_discovery_status Paso rawCache: true Es particularmente útil cuando se puede escupir los modelos originales en la caché junto con los resultados de la eutrofización.
La consola también admite filtración por proveedor:/models-discovery-console status --provider <provider-id>No lo sé. Cuando tomas tres o cinco puertas, ahorra tiempo.
Seis: Pase esta ficha antes de la promoción.
- Versión abierta:v2 requiere ≥ 2.0.26; al menos 1.18.29 quedando en v1.
- Reemplazar todos los campos: complejo +
settingsNo lo sé.npmSí.packageNo lo sé.optionsSí.settingsNo lo sé. - Abierto visible: Escribe a cada proveedor para encontrar
enabled: trueNo lo sé. - Verificación finalNo
/v1/modelsEs manual.endpointNo lo sé.
Los otros dos son fáciles de ignorar: la construcción local.package Para llenar file:///绝对路径/distNo lo sé.Punto a directorio en lugar de index.jsTenemos que cambiar el código. opencode service restart Deje que el servicio de back-office cargue la nueva librería. El tercero es donde estoy atascada medio día sin el código, porque el servicio ni siquiera comenzó.
¿Vale la pena fingir?
Mira tu escena.
- Sólo una API oficialNo finjas. La lista de modelos es ésas, escritas a mano durante un año, y los enchufes son una capa más.
- Tenemos la parada. La puerta del polímero.: Fuerte recomendación. Estos modelos de servicio se caracterizan por la asistencia, los nombres erróneos y los cambios frecuentes de precios, y el mantenimiento manual es puramente autoabuso.
- Local running LM Studio / vLLM / llama-swap- Carga. Estos modelos de servicio se cargan bajo demanda. El plug-in te cargará.
max_model_lenEs mucho más directo, mucho más rápido que tu propia configuración. - La compañía construyó la puerta de entrada.- Vale una evaluación. Nueve formas.
bifrostNo lo sé.omnirouteEs para la puerta de entrada.includeBy/excludeByAdmite el filtrado regular y equivalente de campos originales, que pueden bloquear directamente los modelos que no deben ser vistos por los usuarios ordinarios.
2.0.0 En cuanto a sí mismo, las notas de liberación se refieren a 41 archivos de prueba, 314 pruebas, además de pruebas de integración HTTP compatibles locales de OpenAI y validación de productos de traducción. Esta densidad de prueba es seria para un proyecto de 188 estrellas.
V1 funciona, pero las cosas nuevas están en v2. Si desea seguir a largo plazo, mueva sus configuraciones antes, y no espere hasta el día en que el adaptador V1 sólo tenga un parche de seguridad.
Dirección del proyecto:Gythub.com/yuhp/opencode-models-discovery, instalar directamente npm i opencode-models-discovery@2.0.0 O escriba el nombre del paquete en la configuración anterior. pluginsOpenCode resolverá la carga misma.