Read-only status check across the follow-up backlog: lists every ACTIVE follow-up entry, assesses whether it's still genuinely open, and recommends the single best next item to work on -- pulling in open RISK_REGISTER and TECH_DEBT rows and the value-rubric's ranked PLAN/FINDING/KNOWN_ISSUE candidates when the follow-up list itself is empty, since that's where promoted follow-up work actually ends up living. Triggers: '/follow-up', 'check follow-ups', 'what's open', 'what should I work on next', 'follow-up status check', 'next best item', 'what's still open'. Does NOT promote, close, or otherwise edit anything -- it reports and recommends, then applies follow-up-triage's own flow directly or hands off to the risk-register / tech-debt / plan-create skills for the actual write.
73
89%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Passed
No findings from the security scan
The read-only front door onto this project's backlog. follow-up-triage's flow is the action step once you already know a follow-up needs promoting or closing; this skill runs first to find out whether one does, and -- because the follow-up list itself is often empty once things have been promoted -- to say what to work on next even when it is. See Backlog Triage and Ranking for the full, self-contained decision logic this skill applies.
A follow-up sitting ACTIVE is a weak signal by design: someone flagged it and moved on, which is not the same as
it still being the right thing to do next. TYPICALLY the useful answer to "what's open" spans three sources at
once (the follow-up list, the register, the tech-debt list), not just the one the command name suggests. PREFER
checking all three and saying which source the recommendation came from, over answering only the literal
follow-up list and calling it done -- an empty follow-up list is a completely normal outcome (every follow-up
promoted and closed) and never grounds for stopping the check early.
risk-register / tech-debt skills to file or resolve a row, or
plan-create to scaffold work on the recommended item -- and only after the user says to proceed.ACTIVE follow-ups is not "nothing to do." It usually means the funnel is empty because everything in
it was already promoted or closed -- the real backlog then lives in the register/tech-debt Open rows and the
context index's DRAFT/ACTIVE PLAN/FINDING/KNOWN_ISSUE entries. Always fall through to those sources
rather than reporting an empty follow-up list as the whole answer.PLAN/FINDING/
KNOWN_ISSUE entries carry a value grade and a defined sort). For a pick sourced from the register or the
tech-debt list instead, say explicitly that it's a qualitative judgment call -- those rows carry no value
field, so there is no rubric-sorted answer to defer to.context-index skill) before trusting it. A quick sanity
check: its header entry count should roughly match the actual file count under the context directory (see
Prerequisites for the exact path). A mismatch means new or removed files haven't been indexed yet, and the
candidate-pool step of the Workflow would be working from stale data.ACTIVE follow-up outranks a silently-pending backlog row. If the follow-up sweep finds any ACTIVE
entry, lead the recommendation with it rather than the value-rubric or register/tech-debt pools -- a follow-up
is something a person already flagged as worth acting on, which is a stronger signal than an unflagged row
sitting in a list..context/follow-ups/*.md the follow-up list
.context/index.yaml the context index (value-rubric candidates)
docs/RISK_REGISTER.md the register
docs/TECH_DEBT.md the tech-debt list
.claude/instructions/follow-up-triage.md follow-up-triage's flow (canonical source; summarized in references/)
.claude/instructions/value-rubric.md the value-rubric protocol (canonical source; summarized in references/)/follow-up, or asks "what's open", "what should I work on next", "check the follow-up backlog",
"anything still outstanding", "next best item to work on".context-file / plan-create.risk-register / tech-debt directly, once this
skill (or anything else) has told you which row.Freshness check (Rule 4). Compare the context index's header entry count against the actual file count under the context directory:
find .context -name '*.md' | wc -lIf the result diverges meaningfully from the index's own header comment, run context-index first.
Follow-up sweep. Filter the follow-up list to status: ACTIVE:
grep -l 'status: ACTIVE' .context/follow-ups/*.mdDONE entries are closed; ignore them here. For each ACTIVE entry, read its Context + Outstanding Work,
check whether its topic already has a matching Open row on the register or the tech-debt list, and classify
per the disposal logic in Backlog Triage and Ranking -- ready to
close-as-superseded, needs promotion to the register, needs promotion to the tech-debt list, or still genuinely
open. File nothing; that's the handoff, not this skill's job. If none are ACTIVE, say so explicitly and
continue anyway (Rule 2).
Build the wider candidate pool. Count the committed-backlog side directly:
grep -c '| Open ' docs/RISK_REGISTER.md docs/TECH_DEBT.mdApply the value-rubric read protocol (same reference doc) over the context
index's PLAN/FINDING/KNOWN_ISSUE entries; separately collect Open rows from the register and the
tech-debt list.
Synthesize one recommendation (Rule 5 ordering): any ACTIVE follow-up first; otherwise the value-rubric
pool's top tier-1 item; otherwise a qualitative judgment call across the register/tech-debt pool (Rule 3).
Always state why the pick beats the runner-up, not just that it won.
Report using the format in Worked Example, then stop -- offer the relevant handoff rather than acting on it.
NEVER report "no open follow-ups" as the complete answer to /follow-up.
WHY: A follow-up funnel emptying out because everything in it was promoted or closed is the expected steady
state once a project matures past its early weeks -- exactly the case in this repo, where all 15 filed follow-ups
are currently DONE. Stopping there answers the literal words of the command while ignoring the actual open
backlog sitting in the register and the tech-debt list.
BAD: "No ACTIVE follow-ups. Nothing to report."
GOOD: "No ACTIVE follow-ups (all 15 filed ones are DONE). Falling through to the committed backlog: 38 open
register rows, 7 open tech-debt rows -- recommended next item is register row 5 (CI runner allowlist opacity,
recurring friction)."
Consequence: A genuinely large, actionable backlog goes completely unreported, and the person who ran
/follow-up walks away believing there is nothing to do when there are dozens of open items one directory over.
NEVER invent a value ranking for a register or tech-debt row.
WHY: Those rows have no value field and were never graded against the value-rubric protocol -- presenting a
pick from them with the same confidence as a rubric-sorted PLAN/FINDING/KNOWN_ISSUE pick overstates how
principled the ordering is.
BAD: "Value: HIGH -- row 6 (collector failure logging)." (no such field exists on that row)
GOOD: "Judgment call, not rubric-sorted: row 6 touches the RUNBOOK's symptom index directly, which is why it
ranks above rows 7-11's mechanical single-export-per-file cleanups."
Consequence: The reader trusts an ordering that was never actually graded against a standard, and a
differently-reasonable ranking (another person's judgment call) looks like a disagreement with the rubric instead
of what it actually is -- two informal opinions.
NEVER promote, close, or edit a row or follow-up from inside this skill.
WHY: This skill's entire value is being safe to run at any time with no side effects -- the moment it starts
writing to a committed doc, running it "just to check" carries the same risk as applying follow-up-triage's own
promotion/close step itself.
BAD: Silently flipping a follow-up's status to DONE because its topic was found already covered by an
existing register row.
GOOD: "This follow-up is ACTIVE but its topic is already covered by register row 16 -- recommend closing it as
superseded per follow-up-triage's flow. Want me to do that now?"
Consequence: A user who ran this skill expecting a safe, side-effect-free check instead finds a doc already
mutated without a chance to review the change first -- exactly the trust /follow-up is supposed to earn by never
needing that caution in the first place.
NEVER skip the freshness check and trust a possibly-stale context index.
WHY: A newly filed follow-up, or one just closed in a separate change, may not be reflected yet -- the sweep
and the candidate pool are both built directly from the index's current contents.
BAD: Reading the index once at the start of a long session and reusing it for every later /follow-up call
without re-checking.
GOOD: Compare the index's header entry count against the actual file count before every sweep; regenerate via
context-index on a mismatch, per Rule 4.
Consequence: The skill can recommend an item someone already closed in a separate change, or miss a brand-new
ACTIVE follow-up entirely -- silently, since a stale-but-present index never errors the way a missing file would.
NEVER present a register/tech-debt-sourced pick with the same confidence as a value-rubric-sorted pick.
WHY: Only PLAN/FINDING/KNOWN_ISSUE entries carry a value grade and a defined sort; a register or
tech-debt row has neither, so any ordering among them is this skill's own judgment call applying the rubric's
grading questions informally, not the project's own rubric output.
BAD: Reporting a register-sourced recommendation in the exact same sentence structure as a rubric-sorted one,
with no signal that one is graded and the other isn't.
GOOD: "Judgment call, not rubric-sorted: register row 5 outranks tech-debt row 7 because it retires a
recurring cost (every future CI job risks the same rediscovery), where row 7 only ever saves the one file it
touches."
Consequence: Two different people (or the same person on two different days) can reasonably rank the same
register/tech-debt pool differently, and presenting one ordering as if it were rubric output hides that
disagreement instead of surfacing it.
| Topic | Reference | When to Use |
|---|---|---|
| Full follow-up disposal logic and the value-rubric's ranked-candidate read protocol, self-contained | Backlog Triage and Ranking | Workflow steps 2-4, or when Rule 3's qualitative-judgment call needs justifying |
| A fully filled-in sample report against this project's real state, plus the blank output template | Worked Example | Workflow step 5, or when drafting the first report of a session |
a1083f4
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.