Use when the coordinator publishes or maintains a dashboard board FOR the human owner (roster, NEED queue, owner decisions, pipeline) or routes owner answers from a dashboard back to agents. Loads the human-loop mandate - a posted question is a PROMISE — it stays answerable and visible until answered, and nothing on the board disappears silently on your side.
Installs into .claude/skills of the current project.
Are you the author of Coordinator Dashboard Human Loop?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/thrum-team-coordinator-dashboard-human-loop)
---
name: coordinator-dashboard-human-loop
description: "Use when the coordinator publishes or maintains a dashboard board FOR the human owner (roster, NEED queue, owner decisions, pipeline) or routes owner answers from a dashboard back to agents. Loads the human-loop mandate - a posted question is a PROMISE — it stays answerable and visible until answered, and nothing on the board disappears silently on your side."
---
# Coordinator dashboard: the human loop
You own boards the HUMAN reads — the reference shape is the Brainstorm Steward
console: ① NEED queue (unified, oldest-first, each an action-pick) ② roster
health ③ owner decisions (pending + recently-resolved) ④ pipeline status.
Surface basics live in `using-the-dashboard` — invoke it for the CLI shapes
and the live-vs-coming honesty table. THIS skill carries the loop mandate.
## 🔴 The mandate: posted questions don't disappear until answered
When a board carries a question for the human (an action-pick), that question
is a PROMISE with four parts:
1. **Visible** — it stays on the board (status PENDING) until answered or
explicitly withdrawn by YOU (update its text to withdrawn, don't just
delete it).
2. **Answerable** — an action-pick is answered in the UI, and the answer
arrives as a message. Pair every board question with its answering channel
(the NEED also routes via message/steward) so the human never hits a dead
control.
3. **Tracked** — check `thrum dashboard results` after every relevant nudge;
an answer arrives as a message carrying `question_id` + pick + optional
text. Unread answers + a PENDING widget = you broke the loop.
4. **Closed** — on consuming an answer, log the resolution in your decisions
list and mark the pick done with `thrum dashboard update <widget-id>`,
resubmitting the whole widget with `"status": "resolved"`. `dashboard show`
prints an answered pick as `ANSWERED (<pick>)` whatever its status, and a
resolved pick with no answer as `RESOLVED`; `dashboard results --unanswered`
leaves out answers whose pick is `resolved`. If something else wrote the board first,
your `update` can be rejected as an `expected_rev` mismatch — re-read with
`dashboard show` and resubmit against the fresh `rev` (see
`using-the-dashboard`).
## Authoring discipline
- **One question, one action-pick.** Don't bundle three rulings into one
widget — the human answers picks discretely (that's why pick+optional-text
won over free-text).
- **Options carry the tradeoff.** Each option's label states the choice AND
its one-line consequence ("Live-only — no new migration"); the human should
not need `get` to understand a vote. Set `allow_text: true` — "B, but weigh
X" is how owners actually answer.
- **Board hygiene is part of the loop.** Stale roster stats and resolved
pipelines rot the board's credibility; refresh stat-rows when state moves
and prune sections that no longer serve. The user can delete any widget
SILENTLY (you are not nudged) — a widget that vanished was seen and
dismissed; check `show` before reposting.
- **`clear` is a reset, not an archive.** Need history? It lives in the
answer messages and your memories, not on the board.
## Routing answers
An answer message is routed to the OWNING agent of the question (for steward
consoles: relay to the originating brainstormer, in the owner's words — the
pick plus their typed nuance). Relay the TEXT the human wrote; paraphrasing
away their nuance defeats the optional-text feature.
## Availability
The board renders in the web UI Dashboard tab and the `thrum dashboard` CLI is
available; the mandate sections of this skill apply. The surface and CLI
contract are in `using-the-dashboard`.
## Refs to other skills
- `using-the-dashboard` — surface + CLI contract + honesty table (invoke first)
- `coordinator-running-brainstorm-cycles` — where board NEEDs come from
- `coordinator-managing-state-and-lifecycle` — state ownership the boards reflect