Concrete adapter classes (AnthropicAdapter, GitHubAdapter, etc.) are no longer imported at the top of team_runner.py. Instead, each registry maps short names to 'module.path:ClassName' strings resolved lazily via importlib.import_module at instantiation time. This means: - Adding a new adapter requires only an entry in the registry string dict (or a full dotted path directly in team.yaml) — no changes to TeamRunner. - Third-party / custom adapters work out of the box: set e.g. adapters.llm: mypackage.llm.openai:OpenAIAdapter in team.yaml. - The runner no longer hard-wires knowledge of which concrete classes exist. Addresses tandrewng review comment on PR #1.
28 KiB
28 KiB