Skip to content

feat: read providers dict from config.yaml for model list#950

Open
md-frank wants to merge 1 commit into
EKKOLearnAI:mainfrom
md-frank:feat/support-providers-dict
Open

feat: read providers dict from config.yaml for model list#950
md-frank wants to merge 1 commit into
EKKOLearnAI:mainfrom
md-frank:feat/support-providers-dict

Conversation

@md-frank
Copy link
Copy Markdown

The Web UI's available-models endpoint only reads from PROVIDER_ENV_MAP (built-in providers) and config.custom_providers (legacy array format). Hermes Agent's recommended provider configuration format — the providers dict — is completely ignored, so providers defined there never appear in the Web UI model selector.

Add a new code block in buildAvailableForProfile() that processes config.providers entries after custom_providers, resolving ${ENV_VAR} references from the profile's .env file, extracting model names from the models dict, and dynamically fetching available models when an API key is present.

This uses only existing infrastructure (envGetValue, cachedProviderModels, addGroup with its seenProviders dedup) and does not affect built-in provider or custom_providers handling.

The Web UI's available-models endpoint only reads from PROVIDER_ENV_MAP
(built-in providers) and config.custom_providers (legacy array format).
Hermes Agent's recommended provider configuration format — the providers
dict — is completely ignored, so providers defined there never appear in
the Web UI model selector.

Add a new code block in buildAvailableForProfile() that processes
config.providers entries after custom_providers, resolving ${ENV_VAR}
references from the profile's .env file, extracting model names from
the models dict, and dynamically fetching available models when an
API key is present.

This uses only existing infrastructure (envGetValue, cachedProviderModels,
addGroup with its seenProviders dedup) and does not affect built-in
provider or custom_providers handling.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant