# Ctx Status

> Report status — use on "what's the status", "where do things stand", "show the board", or /ctx-status; reads the board and case files, reports goal chain, case states, pending decisions and one-offs in plain language. Also triggers on Chinese — 用户说"现在什么情况""进展如何""有哪些案""资产都在哪""看一下板"，或显式 /ctx-status 时用。

- Skill: `bestiaya/ctx-status` (Agent Skill)
- Install (CLI): `npx skillmds@latest add bestiaya/ctx-status`
- Raw SKILL.md: https://api.skillmd.com/api/skills/bestiaya/ctx-status/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Docs & Writing
- Author: bestiaya (https://skillmd.com/u/bestiaya)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/bestiaya/ctx-status

---


# Status: board → cases → a plain-language report

> **Speak in the user's language, and write the board / case files / inbox rows in the user's language.** Status words and section letters are fixed bilingual, so a board or case written in either language must be readable by this skill. Section letters A~I never change. Status words used here: **running** (在跑) / **awaiting acceptance** (待验收) / **awaiting decision** (候拍) / **awaiting takeover** (候接手) / **in discussion** (讨论中) / **queued** (排队) / **to dispatch** (待派) / **delivered** (已交货) / **done** (已完) / **closed** (已收口); header-line fields `status` (状态) / `pen-holder` (持笔) / `stint` (任期) / `updated` (更新).

## 1. What to read (only these — no transcripts, no bodies of deliverables)
- **The board** (`TASKBOARD.md` inside the case library — the library is **resolved in this order: the path on the line `ctx-kit case library: <path relative to the project root>` in the project root's `CLAUDE.md` if there is one, otherwise an existing `_ops/CASES/`, otherwise `cases/`**; project root = the git root if there is a `.git`, otherwise cwd — the same order all six skills use, and status has no fallback of its own beyond it; a board kept somewhere else is found once by `ctx-init` and named on that `CLAUDE.md` line from then on): the **three zones of the header — goal, milestone table, routine table** — plus the case index and the one-off area. No board → read the file list of the case directory instead, and suggest "a board would help".
- **For every active case**: the header line (status / pen-holder / updated date) + **the Measurable line of section A (the number or condition that counts as done)** + **every row of section D** — read them all so you can count them and pick the most blocking one; **how many of them get reported is §2.3's call, not this step's** (D holds open items only: a decided row has moved into C, a done row has been deleted) + **the rows of section I (the inbox) that nobody has disposed of** — a blank disposition cell, or one that does not open with `done` (已办) / `dropped` (不办) / `moved to` (已转); you need their count and the most pressing one, not their text. When there are many cases, expand only the ones the user names and give the rest one line each.

## 2. Report format (four fixed sections, plain language)
1. **Goal chain**: the product top-level goal in one sentence + the **milestone table** (# / what is true once it is reached / status / who is pushing it) + the **routine table** (cadence / health reading / last – next, one cell). That is the whole header: milestones are tags on the jobs and routines are the jobs with no finish line — neither is a tier above the cases;
2. **Where each case stands**: case number + plain-language name | **milestone tag** | who holds the pen | **the latest reading — and it comes from one named cell**: the current value of that case's Measurable (the Measurable line of section A), or the verdict of the most recent delivered experiment where that has since restated it; the board's `where it is` cell is a position, not a reading, and never counts as one, and where there is no number anywhere say **"no measurement yet"** | the top open item (waiting on whom). Name any case tagged `candidate milestone` out loud — that is the owner's cue to add a plan row or stop the job;
3. **Waiting on the owner**: **one line per case by default** — how many rows are still standing in that case's section D, the single most blocking one in a sentence, and your recommendation for it. **Report D row by row only for the cases the user names.** A row still standing in D is open by definition (`ctx-kickoff` §2: decided rows move to C, done rows are deleted), so do not filter on the wording of the row: whatever it is labelled, it is still waiting on the owner. An older case may still carry struck-through rows (`~~like this~~`) or rows already moved into C: treat those as closed, and say in one line that the case wants tidying;
4. **One-offs, what is running, the routines, and who is waiting on us**: the board's one-off area + the rows in each case's E ledger whose status is running / awaiting acceptance + one line per routine giving its **cadence, its health reading and its last / next**, quoted from the routine table as they stand (a routine whose "next" has already gone by is worth naming) + **one line of inbox: which cases have undisposed rows and how many each — name the most pressing one**. Another case's message sitting undisposed is somebody waiting on us, and it shows up nowhere else in this report; say "nothing outstanding in any inbox" when there is none. **The cadence, health reading and last / next cells belong to whoever runs that routine** — they are written at the end of each run, so report them as they are, say plainly when a reading looks stale, and never refresh or work one out here.

## 3. Discipline
- Report only numbers that are written down in the two places step 1 reads — **the board or the case file**. Where a case has no number yet, say **"no measurement yet"** — **never guess, never work one out yourself, and never quote a stale status out of a transcript**.
- Board and case disagree → report both sides and mark it "needs reconciling"; do not quietly side with one of them.
- The first answer must not run past one screen; read deeper only when the user names a case or an item.
- Stop when the report is done, do not append a list of suggestions (the user will ask if they want them).

