Skip to content

Documentv1.0.2

Updated

Last verified

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 ​

NeedStudy
Allow tools only after a gateF08 Stage-Gated Tools
Wait for a later resultF09 Wait Integration
Relay after call closeF10 Fire-and-Forget Post
Call tools in a strict orderF11 Ordered Integration Chain
Keep trusted data away from the modelF12 Integration Context
Build the smallest custom ComponentF13 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 result

Prompt your AI agent

Recommended
text
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.test

Omit --phone or --config when the operation does not need that data.

Gotchas ​

  • Local integration tests can make real HTTPS requests.
  • verify checks the ABI. test runs 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.

Dinodial customer documentation