Skip to content
CodeBook

Triggers

Dropped or created — what each trigger does, why comments never start work, how duplicate events are handled, and how to start a run deliberately.

A trigger is what starts the worker on a station. Under Start work when there are two switches and you can use either or both.

A card is dropped into this column

A card moved into this station — dragged by a person, handed on by an earlier station, or arriving from another workflow — starts the worker.

This is the trigger that makes a row of stations a pipeline, and it is the only one that is on by default. Development's pass target is QA, QA starts when a card is dropped in, so passing work moves and starts the next station in one step.

A card is created in this column

A card created directly in this station starts the worker — including cards an agent writes there.

Use it on an intake station where every new card should be worked at once. Leave it off on a station whose agent writes its own cards when you ask for them, or each story it writes will start it again.

An agent that writes cards names the station they go to, and that station can be in any workflow of the same factory: an agent writing epics in one workflow can file them at the Backlog of the workflow that builds them. The card's own workflow is searched first, then the factory's other workflows; a name that matches no station is refused with the list of stations it could have been. When the receiving station has this trigger on, its worker starts on each new card with nobody moving anything, and a retried model turn cannot start it twice for the same card. The Idea to App Factory is built this way.

Comments do not start work

Comments are for talking, the board is for work. A comment never starts a station's worker.

To ask an agent something, write @ and its name in a comment on the card. The agent answers in the same thread. If that agent is already working the card — its run is queued or running — your comment is handed to that run and the agent reads it at its next step; CodeBook tells you it is already working, and no second piece of work starts. See Discussion.

Stations used to have a third switch, Someone comments on a card here. It has been removed: it ran the whole station again on every comment, and a card that was moved and commented on was worked twice.

Both off

With no triggers, an agent only works when you ask it to in chat, or when you press Run on a card. The first station of most templates is set up this way: the analyst on Backlog is there to talk to. See Conversations.

Starting a run deliberately

In the station's settings, under Runs: choose a card, then Run. It starts the worker on that card regardless of the triggers.

Useful for testing a new agent, for re-running after you have fixed the card, and for work that arrived some other way.

An outside agent can also start a station's worker through the MCP server, which is how another system hands work in.

Duplicate events

Every trigger produces a job, and a job carries the event that caused it. The same event arriving twice finds the existing job instead of starting a second one.

This matters because model work costs money. A double-click, a retried webhook or a racing move should not pay twice, and does not.

Watching what happened

Runs lists each run at the station: the card, the status, the result or error, and the steps it took, each tool call included. A live run can be cancelled from there.

Statuses you will see: queued, running, awaiting approval, waiting human, and the terminal ones. A run that ended wrote its verdict into the card's discussion too, which is usually the more useful place to read it.