Skip to content

Base ouroboros-ai install is missing litellm, but ouroboros pm imports it unconditionally #239

@srausser

Description

@srausser

Summary

A base ouroboros-ai install can succeed, but ouroboros pm crashes immediately because it imports litellm unconditionally even though litellm is not installed.

Repro

  1. Install the base package only:
uv tool install --python /opt/homebrew/bin/python3.12 ouroboros-ai
  1. Run:
ouroboros pm

Actual

The command crashes with:

ModuleNotFoundError: No module named 'litellm'

Traceback points to:

  • ouroboros/cli/commands/pm.py
  • ouroboros/providers/litellm_adapter.py

The failing import path is effectively:

  • pm.py imports LiteLLMAdapter
  • litellm_adapter.py imports litellm

Expected

One of these should be true:

  1. litellm is included in the base dependencies if pm requires it.
  2. pm should gracefully fail with an actionable install hint.
  3. pm should only import the adapter in code paths where the dependency is available.

Local workaround

I fixed my local tool install with:

uv tool install --python /opt/homebrew/bin/python3.12 --force --with litellm ouroboros-ai

After adding litellm, ouroboros pm starts normally.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugReproducible defect or broken behavior

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions