Appearance
Add in-call tools
Add an agent-owned integration only when the call must use an external result or side effect.
Start from a proven tool pattern
| Need | Study |
|---|---|
| Allow tools only after a gate | F08 Stage-Gated Tools |
| Wait for a later result | F09 Wait Integration |
| Relay after call close | F10 Fire-and-Forget Post |
| Call tools in a strict order | F11 Ordered Integration Chain |
| Keep trusted data away from the model | F12 Integration Context |
| Build the smallest custom Component | F13 Agent-Owned WASM |
Use the example catalog to select a pattern. Open the selected source tree through the installed dino-ping skill.
Execution flow
text
Model tool call
│
▼
Flow policy gate ──reject──▶ Correct the model on the same stage
│ allow
▼
Plugin validate ──reject───▶ Return the plugin's precise reason
│ accept
▼
Plugin execute ────────────▶ Return or inject the operation resultPrompt your AI agent
Recommendedtext
Use the `dino-ping` skill to add this in-call capability: <capability>.
Inspect F08 through F13 and choose the smallest matching integration pattern.
Define the trust boundary, operation inputs, validation rules, side effect, and result mode.
Keep the source and generated Component owned by this agent.
Use one stable integration ID across later agent versions.
Build, independently verify, locally test, and validate the complete agent.
Do not publish or call a live customer system without separate approval.Use the Dino CLI directly
text
dino integration new-id
dino integration scaffold --agent-dir <absolute-agent-dir> \
--name <local-name> --language rust --operation <operation> \
--confirm-mutation integration.scaffold
dino integration build --agent-dir <absolute-agent-dir> --name <local-name> \
--confirm-mutation integration.build
dino integration verify --component <component.wasm>
dino agent validate --agent-dir <absolute-agent-dir>Test the operation
Use the target deployment's reviewed runtime policy.
text
dino integration test --policy <runtime-policy.toml> \
--component <component.wasm> --operation <operation> \
--args <args.json> --record <record.json> --phone <e164> \
--context <context.json> --config <config.json> \
--confirm-mutation integration.testOmit --phone or --config when the operation does not need that data.
Gotchas
- Local integration tests can make real HTTPS requests.
verifychecks the ABI.testruns validation and execution.- Do not reuse an example's integration ID.
- Do not commit generated
plugins/files. - Do not add secrets to static configuration or source.
- A wait-mode deadline must leave time for network and result delivery.
Next
Return to Test your agent before publication.