Follow-up to #191 (epic). The escape hatch for behavior that genuinely cannot be expressed declaratively (after Phases 1–5 cover the common cases). Lowest priority, and deliberately not the default extension mechanism — dynamic host-side plugins carry trust, signing, ABI/API-stability, supply-chain, and host-execution risk.
Scope (design-first)
- Keep the existing Go SDK path: external consumers can already construct
agent.ClientEntry + Plugin (MCPConfig(), Seeder()) and pass them to a registry. Document this as the supported "advanced behavior" route.
- Evaluate a CLI-side external driver protocol instead of loading arbitrary Go plugins: a signed executable the host invokes over a well-defined protocol, with explicit trust boundaries (signature verification, capability scoping). Prefer this over
plugin-package loading.
Deliverables
- A short design doc / RFC weighing: Go SDK only vs. signed external driver vs. (rejected) dynamic Go plugins — with the trust model spelled out.
- Only after sign-off: implementation.
Non-goals
Do not make arbitrary host-side plugin loading the normal CLI extension mechanism — the declarative path (Phases 1–5) is the default. This issue exists so the epic's full surface is tracked; it should not be picked up before the declarative phases ship and a real need is demonstrated.
Follow-up to #191 (epic). The escape hatch for behavior that genuinely cannot be expressed declaratively (after Phases 1–5 cover the common cases). Lowest priority, and deliberately not the default extension mechanism — dynamic host-side plugins carry trust, signing, ABI/API-stability, supply-chain, and host-execution risk.
Scope (design-first)
agent.ClientEntry+Plugin(MCPConfig(),Seeder()) and pass them to a registry. Document this as the supported "advanced behavior" route.plugin-package loading.Deliverables
Non-goals
Do not make arbitrary host-side plugin loading the normal CLI extension mechanism — the declarative path (Phases 1–5) is the default. This issue exists so the epic's full surface is tracked; it should not be picked up before the declarative phases ship and a real need is demonstrated.