Skip to main content

Overview

Prerequisites:
  • This feature is available on workspaces with DinoAI programmable agents enabled.
  • Your API keys must have access to the DinoAI Agents API.
These examples authenticate with an account API key (api_secret="prdm_cmp_..." plus workspace_uid), which requires paradime-io 6.0.0 or later. Legacy workspace API keys (api_key + api_secret) are still supported. See Getting Started.
The DinoAI Agents module lets you drive DinoAI programmable agents from Python. This module offers a comprehensive set of tools to trigger agent runs from YAML-defined agents, send ad-hoc prompts, follow up on a live session with new messages, poll for run state, and block until a run completes.

Trigger an agent run

Triggers a DinoAI programmable agent run. At least one of agent or message must be provided.
Optional[str]
Name of the YAML-defined agent to load (matches the file name under .dinoai/agents/ without the .yml extension).
Optional[str]
Custom prompt appended to the agent’s context. When only agent is provided, the run starts with the agent’s role/goal/backstory.
Optional[str]
Slack channel ID the run should post into (e.g. "C0123456789"). Must be provided together with slack_thread.
Optional[str]
Slack thread timestamp the run should reply in (e.g. "1714142436.001200"). Must be provided together with slack_channel.
Optional[str]
Git branch the agent checks out before creating its working branch. Defaults to the repository’s default branch.
slack_channel and slack_thread must be supplied together — passing only one will be rejected by the API. Omit both to leave Slack routing to the agent’s YAML configuration (if any).
DinoaiAgentTriggerResult
Contains ok, agent_session_id, and status (always the literal string "queued" on accept — poll with get_run for live status).

Trigger an agent run and wait for completion

Triggers a DinoAI agent run and blocks until it reaches COMPLETED or FAILED.
Optional[str]
Name of the YAML-defined agent to load.
Optional[str]
Custom prompt appended to the agent’s context.
Optional[str]
Slack channel ID. Must be provided together with slack_thread.
Optional[str]
Slack thread timestamp. Must be provided together with slack_channel.
Optional[str]
Git branch the agent checks out before creating its working branch. Defaults to the repository’s default branch.
int
default:"3600"
Maximum seconds to wait before raising TimeoutError.
int
default:"10"
Seconds between status polls.
DinoaiAgentRun
The final run state, including status, all messages, child_session_ids, and workspace_uid.Raises DinoaiAgentRunFailedException if the run finishes with status FAILED, and TimeoutError if the run does not complete within timeout seconds.

Send a follow-up message

Sends a follow-up message to an active DinoAI agent session. The agent pod stays alive for up to 24 hours since the last message; follow-ups resume the same conversation with full context.
str
required
The session ID of the running agent.
str
required
The follow-up message to send.
DinoaiAgentTriggerResult
Contains ok, agent_session_id, and status (always "queued" on accept).

Get an agent run

Fetches the current state of a DinoAI agent run.
str
required
The session ID returned by trigger_run or send_message.
DinoaiAgentRun
Contains ok, status (one of QUEUED, RUNNING, COMPLETED, FAILED, or EXPIREDEXPIRED is terminal and means the agent pod never started), messages (each with ts as a string epoch timestamp, role, content), child_session_ids (sub-agents spawned during the run), and workspace_uid.