Tools & capabilities
Support · Recommended implementations & strategies · Back to layer index
| Symbol | Kind | Purpose |
|---|---|---|
CapabilityCatalogOptions | interface | Catalog construction options. |
CapabilityModule | interface | Minimal composition contract; lifecycle and domain fields remain application-owned. |
CapabilityToolReferences | interface | Tool references declared by one owner module. |
CompiledTool | type | Tool definition type derived from a declaration literal, preserving input/output/id. |
defineCapabilityCatalog | function | Build a frozen capability catalog from application module declarations. Each module must carry a non-empty description, and every contributed tool ID must be unique across modules. Reference projections run during construction and must be synchronous. |
defineTool | function | Validate one tool declaration and freeze a detached copy of it. authorize must settle with void; a rejection has to be thrown, so a returned false cannot silently pass. Handlers are bound to the declaration object, and the input schema is re-snapshotted so later mutation cannot widen the accepted input. |
defineToolCatalog | function | Infer the host context from existing executable definitions, without widening it to unknown. Explicit host typing remains available for contextually typed declaration lists. |
SelectedTools | type | Catalog narrowed to the given ids: each kept tool's id literal is intersected with Id. |
ToolCatalog | interface | Frozen tool catalog with model tools and per-request binding. |
ToolCatalogEntry | type | Public declaration surface of one tool, without registry internals. |
ToolModelView | interface | Model capability view of a tool catalog, retaining the host context type. |
ToolOutput | type | Output type of the tool whose id matches Id; never for any other id. |
ToolRuntime | interface | Catalog bound to one App request. |
validateToolReferences | function | Validate tool references against the complete registered set. Checking against every registered tool (not only the ones available in the current request) keeps the declaration honest: a module may reference a tool that this request filters out, but never one that does not exist. |