Skip to main content
Use these settings and machine-readable contracts to make agent tool calls predictable and recoverable.

Environment variables

The legacy OPENTOOLER_* names remain supported for existing automation. CRALO_API_BASE_URL, OPENTOOLER_API_URL, and OPENTOOLER_API_BASE_URL are accepted as endpoint aliases. Precedence is CRALO_API_URL, CRALO_API_BASE_URL, OPENTOOLER_API_URL, then OPENTOOLER_API_BASE_URL. Existing published @opentooler/cli releases keep https://api.opentooler.ai/v1 as their default and will not receive new versions. The primary @cralo/cli package defaults to https://api.cralo.ai/v1.

JSON output contract

With --json, stdout contains one JSON document:
Errors include a semantic exit code and a machine-readable payload that agents can use to choose a recovery action.

Exit codes

Diagnose setup

doctor reports platform, architecture, CLI and protocol versions, credential presence, keychain availability, API reachability, latency, and video-transcription prerequisites. INVOCATION_ADMISSION_UNKNOWN is produced locally by the CLI when it cannot confirm whether a paid call was admitted (for example, the network dropped after submission). The related API-level code for an unknown outcome after a wait budget is INVOCATION_OUTCOME_UNKNOWN; both have the same recovery rule: retry the exact same tool and input with the same idempotency key.
If a paid call returns INVOCATION_ADMISSION_UNKNOWN, the agent must rerun only the exact original tool and payload with the supplied idempotency key.