diff --git a/src/nodeBridge.ts b/src/nodeBridge.ts index 5e1ee813..708017aa 100644 --- a/src/nodeBridge.ts +++ b/src/nodeBridge.ts @@ -416,16 +416,18 @@ class NodeHandlerRegistry { } : null; const groupedModels = Object.values( - providers as Record, - ).map((provider) => ({ - provider: provider.name, - providerId: provider.id, - models: Object.entries(provider.models).map(([modelId, model]) => ({ - name: (model as ModelData).name, - modelId: modelId, - value: `${provider.id}/${modelId}`, - })), - })); + normalizeProviders(providers, context), + ) + .filter((provider) => provider.hasApiKey) + .map((provider) => ({ + provider: provider.name, + providerId: provider.id, + models: Object.entries(provider.models).map(([modelId, model]) => ({ + name: (model as ModelData).name, + modelId: modelId, + value: `${provider.id}/${modelId}`, + })), + })); return { success: true, data: { @@ -2399,6 +2401,7 @@ function normalizeProviders(providers: ProvidersMap, context: Context) { doc: provider.doc, env: provider.env, apiEnv: provider.apiEnv, + models: provider.models, validEnvs, hasApiKey, }; diff --git a/src/slash-commands/builtin/model.tsx b/src/slash-commands/builtin/model.tsx index d7ab9b07..f00c0de2 100644 --- a/src/slash-commands/builtin/model.tsx +++ b/src/slash-commands/builtin/model.tsx @@ -62,6 +62,12 @@ export const ModelSelect: React.FC = ({ + + + Only models that are available after logging in are provided. If you + cannot find the model, please execute `/login` first + +