-
Notifications
You must be signed in to change notification settings - Fork 167
Description
Summary
ouroboros pm currently constructs LiteLLMAdapter() directly, so the PM interview path ignores the configured LLM backend and requires provider/API-key setup even when Ouroboros is configured for Codex.
Repro
- Run
ouroboros setupand select Codex runtime. - Confirm
~/.ouroboros/config.yamlshows:
llm:
backend: codex
orchestrator:
runtime_backend: codex- Run
ouroboros pmon a stock install.
Actual
The PM path imports and instantiates LiteLLMAdapter directly from ouroboros/cli/commands/pm.py.
That means:
- Codex runtime selection does not control PM interview execution.
- PM can still require provider-specific model strings and API keys.
- Backend-safe defaults like
defaultare not valid for the LiteLLM path.
Expected
The PM interview command should create its adapter through the provider factory so it respects the configured backend, e.g. Codex should use the Codex CLI adapter.
Evidence
Current code path in ouroboros/cli/commands/pm.py:
from ouroboros.providers.litellm_adapter import LiteLLMAdapter
adapter = LiteLLMAdapter()There is already a factory abstraction in ouroboros.providers.factory.create_llm_adapter(use_case="interview") that resolves Codex correctly.
Local workaround
I patched my local install to replace the direct LiteLLMAdapter() construction with create_llm_adapter(use_case="interview"). After that, ouroboros pm started generating interview questions through the Codex-backed path instead of failing in the LiteLLM path.