Daily Check-in Agent
The stand-up is the meeting everyone attends and nobody needs, because the answers already live on the Workboard. This agent reads them off the cards every morning, posts a three-line check-in per team, and chases only the people whose cards went quiet. On Wednesday it closes the week with the outcomes and the Human and AI token report the planning session runs on.
Cards in, check-ins out
This rail is the orientation, not the workflow. Real life branches, loops, and fails; the diagrams below are the truth, drawn branch by branch.
The morning check-in, every branch
Eight boxes in the rail; three decisions, one loop and two quiet endings in reality. The 09:00 message is the only warning anyone gets; thirty minutes later the agent reads the board as it stands. The check-in itself is the easy part: done yesterday is the Done lane, doing today is the Doing lane, blockers are the comments. The interesting work is the silence: telling a day off from a forgotten board, chasing only the latter, and putting a late update where the day’s record already lives, in the morning post’s thread, rather than as a second post.
What one person’s day looks like to the agent
Underneath the morning run sits one entity with rules: a person on a given day. Everyone starts stale at 09:30. A move or a comment in the window makes them fresh; a booked day off makes them off; anything else makes them pinged, hourly, until a card moves or the day ends. A person who turns fresh before 09:30 is in the post; one who turns fresh after it goes into the post’s thread. Only the human move, updating a card, is dashed. The agent never marks anyone fresh on its own.
The weekly summary, every branch
The week runs Wednesday to Tuesday because Wednesday is planning day: the summary lands an hour before the session and is read aloud in it. Three reads, one decision, one post. Human Tokens come from the tracker, per person; AI tokens come from the run log, per team; a person with no card activity all week is named, never averaged away.
Every exception has an owner
An automation is defined by what happens off the happy path. Each row here is a real condition the agent hits, what it does about it, and where a human hears about it. Silence is only ever by design.
| Condition | What happens | Where you hear about it |
|---|---|---|
| No card moved or commented in 24 hours | Day off checked; if none, a DM every hour | The DM; the post lists them as pending |
| Cards updated after the 09:30 post | Check-in posted as a reply in the morning post’s thread; the pending line is edited | The thread, the same day |
| Day off booked | Listed as off, never pinged | The team post, one line |
| Pinged all day, still nothing by 17:30 | Pings stop; named as missing in the next post | Tomorrow’s team post |
| Person has no cards on any board | Listed with “no cards”, no nudge | The team post, for the lead to fix |
| Card moved by someone other than the assignee | Counts as activity; the mover is named | The team post |
| Blocker written in a card comment | Surfaces under Blockers until the card moves | Every post until it clears |
| Public holiday | Treated as a day off for the whole team, no run | Nowhere, by design |
| Workboard read fails | Run aborts before any message or ping | Run log; the missing post is the tell |
| Lark send fails | Summary printed to the run log, pings skipped | Run log |
| No token data for a person that week | Shown as “no data”, never zero | The weekly summary |
| Same team and day seen again | No-op by key, never a duplicate post | Nowhere, by design |
Data, timing, and how we know it works
Reads and writes
- Reads: tasks, the stage log and the comments on them for the window; time off; the two team rosters and their chats; the Human Token Tracker; the routine run log for AI tokens
- Writes: one reminder and one check-in per team per weekday, at most one DM per stale person per hour, one thread reply and one post edit per late person, one weekly summary per team, one routine run row per run
- Idempotency keys: team plus date for the reminder and the post; person plus date plus hour for a ping; person plus date for the thread reply; team plus week for the summary
- Re-running any morning is a no-op: every message checks its key first
Timing model
- 09:00 (+07) weekdays: the reminder, thirty minutes before the board is read
- 09:30 (+07) weekdays: the check-in, after the first coffee, before the first meeting
- The window is since the previous post, so a Monday reads back over the weekend
- Pings run 10:30 to 17:30; a late update is threaded the same hour; the last ping is the last one, and the miss is named next morning
- Wednesday 09:00: the summary lands an hour before planning, covering Wednesday to Tuesday
- Runs live on a workstation schedule: a missed run executes at next wake, keys make that safe
How we know it works
- A weekday with no post in either chat is itself the alarm
- Every post lists who was off and who was pinged, so a quiet board is visible the same day
- The weekly token totals reconcile to the tracker; a gap means the tracker is behind, not the team
- Weekly eyeball: people pinged three days running, cards in Doing for over a week. Zero of each is the target
The seven elements
Every workflow we document has the same anatomy: seven elements, each assigned to a human, a machine, or both. This is the Centaur Map from our workflow design method.
Time. 09:00 (+07) every weekday for the reminder, 09:30 for the check-in, 09:00 every Wednesday for the weekly summary. Nobody calls a meeting.
The Workboard: each person’s cards, the moves logged against them, and the comments on them. Days off from the time-off table. Human Tokens from the tracker, AI tokens from the run log.
The agent decides whether a person has been active in the window and whether silence is a day off. It never decides what someone did; it reads it off the cards.
Two rosters, two chats. Product Team check-ins land in Infinite Leverage, EO check-ins land in EO. A nudge goes to the person as a DM, never to the channel.
One check-in message per team per weekday, one weekly summary per team on Wednesday, and a routine run row with the tokens it cost.
Lark messages in the team chat; hourly DMs to anyone stale; a late check-in as a reply in the morning post’s thread, with the post edited to match. The weekly summary is the first thing read at Wednesday planning.
A weekday with no post is the alarm. Every post names who was pinged and who was off, so the gaps are visible daily, not at the retro.
This is the same pattern as Lark Scheduler to CRM Updates: a scheduled agent reading systems that already hold the truth, writing one message a human actually reads, and refusing to guess. The cards are the stand-up; the agent only reads them out.