Skip to content

feat: preflight check for Ollama reachability and configured model tag #36

@rosspeili

Description

@rosspeili

Problem Statement

Users can finish the full wizard and only discover on the first agent turn that Ollama is not running, the base URL is wrong, or defaults.litellm_model (e.g. ollama/gemma4:e2b) does not match any tag from ollama list.

Settings (#28) expose the model in YAML but nothing validates it before play. Failures show up as generic [Error: ...] lines in the conversation, which feels broken and wastes setup time.

Proposed Solution

  • After loading settings (and before or immediately after agent selection), run an optional preflight:
    • Check ollama.base_url / OLLAMA_API_BASE is reachable.
    • Verify the configured LiteLLM model tag exists (e.g. Ollama /api/tags or a small helper).
  • Print a Rich panel with actionable fixes: start ollama serve, ollama pull <tag>, edit rooms.settings.yaml, or run python cli.py config init.
  • Add --skip-preflight for automation/CI; mock HTTP in tests (no real Ollama in CI).
  • Document in docs/EXAMPLES.md or ARCHITECTURE.

Alternatives Considered

Priority

High 🔴

Additional Context

Not a duplicate of #30 (auto-select), #29 (presets in wizard), #32 (config path naming), or #8 (retry loop). Pairs well with a future CLI error UX issue and with #29 once presets land.

Metadata

Metadata

Assignees

Labels

cliImprovements to the interactive wizard or terminal output.enhancementNew feature or requesthelp wantedExtra attention is needed
No fields configured for Feature.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions