YAML Configuration

Agents are defined as YAML files committed to your repo under .dinoai/agents/. Each file defines one agent.

Full Example

name: pr-reviewer        # must match file name
version: 1               # schema version (currently 1)

role: >
  PR Review Orchestrator responsible for assessing all aspects of a pull
  request across dbt™ models.

goal: >
  Review incoming PRs for quality, coverage, and correctness.
  Delegate specialist work where needed.

backstory: >
  You coordinate reviews across multiple quality dimensions and know when
  to call in specialists.

tools:
  mode: allowlist         # "allowlist" or "denylist"
  list:
    - read_file
    - search_files_and_directories
    - ripgrep_search
    - post_slack_message
    - invoke_agent        # required to delegate to sub-agents

agents_squad:             # sub-agents this agent may invoke
  - test-maintainer

slack:
  channel: "#pr-reviews"

Field Reference

Field
Required
Description

name

Yes

Unique identifier. Must match the YAML file name (without .yml).

version

Yes

Schema version for forward compatibility. Currently 1.

role

Yes

What the agent is — injected into the system prompt each turn.

goal

Yes

What the agent is trying to achieve.

backstory

Yes

How the agent approaches problems.

tools.mode

If tools present

allowlist (only listed tools available) or denylist (all tools except listed).

tools.list

If tools present

Tool names to allow or deny.

slack.channel

No

If present, a Slack thread is created at run start and all agent messages post there.

Requires Slack integration configured and Pardime bot invited to the slack channel

agents_squad

No

Names of sub-agents this agent is permitted to invoke via invoke_agent.

Important: If the tools block is omitted entirely, the agent has access to all available tools. Use an allowlist for production agents to limit blast radius.

Tool Modes

allowlist — only the tools listed are available to the agent. Recommended for production agents.

denylist — all tools are available except the ones listed.

Last updated

Was this helpful?