-
Notifications
You must be signed in to change notification settings - Fork 1
Closed
6 / 66 of 6 issues completedClosed
6 / 66 of 6 issues completed
Copy link
Labels
epicMilestone-level tracking issueMilestone-level tracking issue
Description
Goal
Replace the static `list_models()` returning only the configured model with a dynamic
`list_models_remote()` async method that queries each provider's API and returns the
full set of available models. Results are cached on disk with a 1-day TTL so repeated
calls are cheap.
Motivation
- `/model` command and TUI model picker currently show only the single configured model.
- Users cannot discover what models are available without consulting external docs.
- Ollama users especially benefit from seeing all locally pulled models.
Scope
| Provider | Endpoint | Auth |
|---|---|---|
| Ollama | `GET /api/tags` | none |
| Claude | `GET https://api.anthropic.com/v1/models\` | `x-api-key` |
| OpenAI | `GET https://api.openai.com/v1/models\` | Bearer |
| CompatibleProvider (Gemini, Grok, Groq, vLLM…) | `GET {base_url}/models` | Bearer |
| Candle | static (loaded model name) | — |
Child Issues
- feat(llm): add async list_models_remote trait method and disk cache with 1-day TTL #992 — `list_models_remote` trait method + disk cache infrastructure
- feat(llm/ollama): implement list_models_remote via GET /api/tags #993 — Ollama: `/api/tags` implementation
- feat(llm/claude): implement list_models_remote via GET /v1/models #994 — Claude: `/v1/models` implementation
- feat(llm/openai): implement list_models_remote for OpenAI and CompatibleProvider #995 — OpenAI + CompatibleProvider: `/v1/models` implementation
- feat(llm): wire list_models_remote into AnyProvider, RouterProvider, ModelOrchestrator #996 — `AnyProvider::list_models_remote` dispatch + orchestrator/router aggregation
- feat(core/tui/cli): integrate dynamic model listing into /model command and TUI model picker #997 — `/model` command and TUI model picker integration
Reactions are currently unavailable
Sub-issues
Metadata
Metadata
Assignees
Labels
epicMilestone-level tracking issueMilestone-level tracking issue