3d557beeee
BottleBackend.provision now resolves the provider plugin from the
plan and dispatches prompt / skills / declarative-apply /
supervise-mcp through it. The four hooks the docker + smolmachines
backends used to override (provision_skills, provision_prompt,
provision_provider_auth, provision_supervise) are gone — the
duplicated 50-line implementations under
backend/{docker,smolmachines}/provision/{skills,prompt,
provider_auth,supervise}.py are deleted.
Each backend gains a small supervise_mcp_url(plan) override so the
provider plugin can run `claude mcp add` / `codex mcp add`
against the right URL: docker returns
http://{SUPERVISE_HOSTNAME}:{SUPERVISE_PORT}/ on the compose
network alias; smolmachines returns plan.agent_supervise_url which
launch.py already pins to a host-loopback port.
Removes tests/unit/test_provision_supervise.py — the URL it
asserted on now lives on the backend, with no equivalent
standalone surface to test against (it's covered by the broader
plan / launch integration tests).
12 lines
489 B
Python
12 lines
489 B
Python
"""Backend-infrastructure provisioners for the Docker backend.
|
|
|
|
Per PRD 0050 the per-provider provisioning steps (prompt, skills,
|
|
declarative provision-plan apply, supervise MCP registration) live on
|
|
the `AgentProvider` plugin under `bot_bottle/contrib/`. The modules
|
|
left in this subpackage handle only the steps that are
|
|
backend-specific:
|
|
|
|
- ca.py — install per-bottle CA bundle into the guest trust store
|
|
- git.py — copy host cwd `.git` into the guest when --cwd is used
|
|
"""
|