Module scoped
Expand description
ScopedToolRegistry - the one gated seam that mints the per-agent tool set.
Assembly applies peripherals, built-in policy, ACP memory stripping, MCP scope and policy, capability tools, pinned resources, and skills in that order. This is the intended construction path; the type boundary remains temporarily unsealed while legacy callers still accept raw tool vectors.
Structs§
- Scoped
Assembled - Output of
ScopedToolRegistry::assemble: the scoped registry plus the side-channel handles + the deferred-MCP prompt section the callers thread on. - Scoped
Assembly - Inputs to
ScopedToolRegistry::assemble. The eager built-ins arrive already built (built);assembledoes the policy-bearing steps the sites used to repeat. - Scoped
Tool Registry - A per-agent tool registry that has been scoped and gated. The inner field is
private and production code can only mint one through
ScopedToolRegistry::assemble. Today (the unsealed P1 phase) the engine still takes&[Box<dyn Tool>], so callers dissolve the type viastd::ops::DereforSelf::into_innerat the boundary; once every construction site is cut over, the engine’s tools field seals to this type and handing it an unfiltered registry becomes a compile error instead of a review-checklist item.