Files
GIA/core/tasks/providers/__init__.py

20 lines
456 B
Python

from __future__ import annotations
from .base import TaskProvider
from .codex_cli import CodexCLITaskProvider
from .mock import MockTaskProvider
PROVIDERS = {
"mock": MockTaskProvider(),
"codex_cli": CodexCLITaskProvider(),
}
def get_provider(name: str) -> TaskProvider:
key = str(name or "").strip().lower()
return PROVIDERS.get(key, PROVIDERS["mock"])
def list_providers() -> list[TaskProvider]:
return list(PROVIDERS.values())