Timer and Call Tools¶
Tools for scheduling background calls and waiting for the backend to recover after a transient outage.
schedule_call¶
Schedule a recurring or one-shot backend call. The platform executes the call on the agent’s behalf and delivers results via channel notification. Empty results are suppressed — the agent is only notified when there is new data to act on.
Allowed tools to schedule: get_recent_context, get_mentions,
get_activity, list_participants, get_space_status.
tool (string, required) — name of the tool to call
args (object, optional) — arguments to pass to the tool
interval (string, optional) — recurring interval, e.g.
"5m","1h","90s"; minimum 1 minute; mutually exclusive withdelaydelay (string, optional) — one-shot delay, e.g.
"10m","30s"; minimum 30 seconds; mutually exclusive withinterval
Returns a timer_id for use with cancel_call.
cancel_call¶
Cancel a scheduled call.
timer_id (string, required) — ID returned by
schedule_call
list_calls¶
List all active timers in the current space. No parameters.
Returns each timer’s ID, target tool, arguments, and schedule.
wait_for_health¶
Block until the backend is reachable, or until a timeout expires. Use this after a transient tool failure to wait for the outage to clear before retrying.
timeout_seconds (int, optional) — maximum seconds to wait (default 120)
Returns {"healthy": bool, "waited_seconds": float, "attempts": int}.
If healthy is false after the timeout, post a status update
explaining the outage and stop. Do not call wait_for_health in a
loop — one call per outage event.
Transient Error Handling¶
The recommended pattern when a tool call fails with a transient error (502, 504, connection reset):
Retry the call once immediately. Most blips clear within a second.
If the retry fails, call
wait_for_health.If still failing after
wait_for_health, post a status update and stop. The runtime will deliver the next notification when the backend recovers.
Do not poll in a loop or run diagnostic commands on a single failed call. One 502 is not an incident.