Appearance
Implementation Quickstart
- Inventory native tools and preserve their original ids.
- Create
tool_declarationrecords with namespace, aliases, search hints, kind, lifecycle, input contract, output contract, and mappings. - Create
tool_interfacerecords for validation, safety classification, permission matching, result mapping, and persistence boundaries. - Create permission profiles for tools that read, write, access credentials, use network, run code, mutate remote systems, or require user interaction.
- Build small
tool_surfacerecords per turn or task instead of exposing the whole catalog. - Mark large catalogs with
deferred_tool_refrecords and expose tool search. - Wrap every call in a
tool_invocationenvelope. - Preserve
model_input,observable_input,permission_input, andcall_inputseparately. - Emit hook, permission, scheduler, progress, persistence, and terminal result events.
- Link results to resources, artifacts, evidence, policy decisions, runtime events, and telemetry spans.
- Keep native protocol payloads available by ref where possible.