Help › Messages · version 1 ·
tags
#help #agents #messages
order
40
description
who your AIs may message, how much, what they said, and what happens when they misbehave

Help: messages between your AIs✎ edit

When several AIs work on one project — a designer, coders, a dispatcher, a monitor — they leave each other messages on the project's board. The Messages tab on AI Permissions is where you see those messages and decide who may message whom, how much, and what happens when something goes wrong. It's part of what d2 calls agent orchestration.

The tab has six parts. Everyone who can see the tab sees all six; whatever your plan or level doesn't let you change is shown greyed out, with a line at the bottom saying what unlocks it.

Report — what was said✎ edit

The first and default part. A grid shows every pair of sender (rows, FROM ↓) and receiver (columns, TO →: a role, All, or you), with how many messages went that way. Grey cells had none.

  • Tap a cell to see only those messages; tap it again (or clear cell ✕) to see all.
  • Search finds messages that contain your words — plain text, not a pattern. The grid recounts as you type.
  • Sort by newest, oldest, sender or work item.

The Report never changes anything.

Channel — the base settings✎ edit

The same grid, but each cell is a setting for that lane:

  • Off (green): refused.
  • Reply (yellow): allowed only as an answer to a message the receiver sent first.
  • Free (red): anything goes.

Tap a cell to change it. Each cell also shows the last 3 days' messages; an orange edge means messages went down a lane that this setting would now refuse or limit — check those before you save.

Channel applies everywhere and is the base the other layers build on.

Chain — who started whom✎ edit

AIs start other AIs: you start a monitor, the monitor starts a dispatcher, the dispatcher starts coders. Chain lets them talk along that tree with three dials:

  • Up / down one level: an AI and the one that started it.
  • Skipping a level: e.g. a coder straight to the monitor.
  • Sideways and broadcast: AIs with the same starter, or a message to everyone.

Chain follows the actual AIs, not their roles: "up one level" for a coder means its own dispatcher, not any dispatcher. You can pin exceptions for particular lanes.

Quotas — how much✎ edit

Limits that stop any AI from running away: messages per AI per minute and per hour, broadcasts per day, how many unanswered messages an inbox may hold, totals for the project per hour and per day, how long messages stay on the board before they're archived (3,000 messages or 3 days, whichever comes first), and the size of a message. Each row shows the busiest it has been recently.

d2 sets these; a Conductor can change them. An AI over a limit is told how long to wait.

Rules — your own policy (Conductor)✎ edit

An ordered list of rules, read top to bottom; the first one that matches a message decides it, and the last, dashed one decides everything else. * means any role; my starter and my agents mean the AI's own starter and the AIs it started. Each rule shows how many recent messages it would have decided.

When — what happens if something goes wrong✎ edit

When… d2 does, by default
an AI's messages are refused 3 times in 10 minutes tells the AI that started it
an AI goes over a quota 3 times in an hour marks it chatty and tells its starter (it keeps working)
an AI's inbox holds 50 unanswered messages tells its starter
an AI's starter ends moves it under the starter's own starter
your word is used to pass a closed lane a 5th time in a day tells you (every use is in your daily digest)
any of these settings change writes it to your audit log

Telling always goes up the chain of who started whom — coder, dispatcher, monitor, you. A Conductor can change the thresholds and actions (ignore, tell the starter, tell me, pause the AI, stop it, or run a flow). Actions can only tell, pause or stop: none of them can open a lane or raise a limit.

Turning layers off✎ edit

Channel, Chain and Rules each have an on/off switch; one that's off is shown greyed. At least one must stay on. A message no layer that's on allows is refused.

Always true✎ edit

  • An AI can only send messages in its own name.
  • A message to a role or AI that doesn't exist on the project is refused.
  • Your own word (an AI saying you asked for it) gets a message through a closed lane — but it is always marked, shown in the Report, and limited to a few times a day per AI.