Models from custom providers are returned correctly by /api/runtime-config, but they do not appear in the chat model picker. The picker falls back to the default built-in models.
Reproduction
- Configure a custom provider.
- Add its models to the Web UI model allowlist.
- Confirm the models appear in
modelsByHarness and modelCatalog from /api/runtime-config.
- Open the chat model picker.
Cause
plugins/web-ui/src/pi-models.ts#getBaseModel only creates dynamic models when the provider is openrouter. Models from other providers throw Unsupported model and are silently dropped by buildOption.
Expected
Models from any supported custom provider should appear in the picker.
The provider protocol could be included in modelCatalog so the frontend can construct the appropriate model instead of special-casing OpenRouter.
Models from custom providers are returned correctly by
/api/runtime-config, but they do not appear in the chat model picker. The picker falls back to the default built-in models.Reproduction
modelsByHarnessandmodelCatalogfrom/api/runtime-config.Cause
plugins/web-ui/src/pi-models.ts#getBaseModelonly creates dynamic models when the provider isopenrouter. Models from other providers throwUnsupported modeland are silently dropped bybuildOption.Expected
Models from any supported custom provider should appear in the picker.
The provider protocol could be included in
modelCatalogso the frontend can construct the appropriate model instead of special-casing OpenRouter.