Agent board reporting
Board reporting fails in two directions: a scramble that produces
inconsistent numbers, or a polished narrative that quietly omits what
went wrong. Agents fix the first reliably and can worsen the second, so
this desk is built around a check that specifically hunts for omission.
Team
- Metrics assembler (
saas-metrics, product-metrics): pulls the
standing metric set from source and computes movement.
- Narrator (
status-updates): drafts the commentary against the
numbers.
- Fact checker: verifies every figure back to source and flags any
claim without one.
- Omission checker: asks what a well-informed sceptic would want to
know that the draft does not say.
Shape: assemble, draft, then two independent checks before human review.
Method
- Fix the metric set in advance and keep it stable. Changing which
metrics appear between periods is how reporting loses credibility.
If a metric is dropped, say so and why.
- Compute from source every period. Never carry a number forward
from the last deck, because that is how an error survives four
quarters.
- Write commentary that explains movement. Each material change
needs a cause, and where the cause is unknown, saying so is
stronger than a plausible story.
- Run the omission check as a separate pass. Its only job is to
find the missing bad news: the metric that stalled, the churned
account, the missed milestone. Fold it into drafting and it stops
working (see agent-red-team-blue-team).
- Separate fact from forecast visibly. Actuals, forecast, and
aspiration are three different things, and blurring them is the
failure that damages trust permanently.
- Keep the ask explicit. What the board is being asked to decide,
approve, or help with, stated plainly rather than implied.
- Version the pack with its source snapshot. Later questions
should be answerable against exactly what was reported.
Run it
In Claude Code, run the assembler over exported data into a metrics
file, the narrator over that file, then the fact checker and omission
checker as separate subagents writing findings the human reads
alongside the draft. Nothing goes to a board without human sign-off.
Port to LangGraph with two verification nodes that can return the draft
for rework.
Signals it works
- Every number traces to source, recomputed this period.
- The omission check regularly finds something the draft had softened.
- Actuals and forecasts are never presented in the same shape.
Boundaries
Agents assemble and draft; the accountable human owns what is
communicated to investors and directors. Statements to investors carry
legal weight, and misstatement has consequences that no drafting
process transfers to a tool. Forward-looking statements, valuations,
and financial statements need qualified review.
1---2name: agent-board-reporting3description: Assemble an investor or board update from source metrics with agents that draft, fact-check every number, and surface bad news rather than bury it. Use when periodic reporting eats days and the numbers keep needing correction.4---56# Agent board reporting78Board reporting fails in two directions: a scramble that produces9inconsistent numbers, or a polished narrative that quietly omits what10went wrong. Agents fix the first reliably and can worsen the second, so11this desk is built around a check that specifically hunts for omission.1213## Team1415- **Metrics assembler** (`saas-metrics`, `product-metrics`): pulls the16 standing metric set from source and computes movement.17- **Narrator** (`status-updates`): drafts the commentary against the18 numbers.19- **Fact checker**: verifies every figure back to source and flags any20 claim without one.21- **Omission checker**: asks what a well-informed sceptic would want to22 know that the draft does not say.2324Shape: assemble, draft, then two independent checks before human review.2526## Method27281. **Fix the metric set in advance and keep it stable.** Changing which29 metrics appear between periods is how reporting loses credibility.30 If a metric is dropped, say so and why.312. **Compute from source every period.** Never carry a number forward32 from the last deck, because that is how an error survives four33 quarters.343. **Write commentary that explains movement.** Each material change35 needs a cause, and where the cause is unknown, saying so is36 stronger than a plausible story.374. **Run the omission check as a separate pass.** Its only job is to38 find the missing bad news: the metric that stalled, the churned39 account, the missed milestone. Fold it into drafting and it stops40 working (see agent-red-team-blue-team).415. **Separate fact from forecast visibly.** Actuals, forecast, and42 aspiration are three different things, and blurring them is the43 failure that damages trust permanently.446. **Keep the ask explicit.** What the board is being asked to decide,45 approve, or help with, stated plainly rather than implied.467. **Version the pack with its source snapshot.** Later questions47 should be answerable against exactly what was reported.4849## Run it5051In Claude Code, run the assembler over exported data into a metrics52file, the narrator over that file, then the fact checker and omission53checker as separate subagents writing findings the human reads54alongside the draft. Nothing goes to a board without human sign-off.55Port to LangGraph with two verification nodes that can return the draft56for rework.5758## Signals it works5960- Every number traces to source, recomputed this period.61- The omission check regularly finds something the draft had softened.62- Actuals and forecasts are never presented in the same shape.6364## Boundaries6566Agents assemble and draft; the accountable human owns what is67communicated to investors and directors. Statements to investors carry68legal weight, and misstatement has consequences that no drafting69process transfers to a tool. Forward-looking statements, valuations,70and financial statements need qualified review.