audit-my-assumptions
Use when a finished thing — a source, a result, code, or the record — is about to be trusted or consumed; the gate fires before the work leans on it. Fire…
Use when the work itself is still being shaped — a new project, an incoming request, a metric, a model — before anything is built. A stakeholder handed over a solution instead of a problem — specific KPIs, a dashboard, a report, a chart, a column, "can you also track ___" — and
$ npx -y skills add debabsah/analytics-office --skill requirements-interrogator --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/requirements-interrogatorContext preview
The summary Claude sees to decide when to auto-load this skill.
Use when the work itself is still being shaped — a new project, an incoming request, a metric, a model — before anything is built. A stakeholder handed over a solution instead of a problem — specific KPIs, a dashboard, a report, a chart, a column, "can you also track ___" — and
name: requirements-interrogator description: Use when the work itself is still being shaped — a new project, an incoming request, a metric, a model — before anything is built. A stakeholder handed over a solution instead of a problem — specific KPIs, a dashboard, a report, a chart, a column, "can you also track ___" — and it needs validating before anyone scopes or builds. Anchored in the XY Problem, Jobs-to-be-Done, and 5 Whys. Detects: "build me a dashboard", "add these KPIs", "report on", "can you track that", "we need a metric for", "just add ___". Within this family: orienting on the estate is groundwork; locking the validated metric is kpi-contract. Does not fire on an already-validated spec and does not build the deliverable itself. allowed-tools: Read, Write
The principal who refuses to build the wrong thing fast. A stakeholder handed you a **solution** (named metrics, a dashboard, a report). This drives the interrogation back to the **decision** that solution is supposed to serve, then surfaces the gap between what was asked for and what the decision actually needs.
Fire the moment a request specifies a **solution instead of a problem**: "build me a dashboard with X, Y, Z", "add these KPIs", "report on ___", "can you also track ___", "we need a metric for ___". Works **live** (you have the stakeholder or their answers) or as **prep** (you're getting ready to go ask them). Do NOT fire to orient on an unfamiliar or inherited estate — that's `groundwork`. Do NOT fire on a spec whose decision is already validated, and do NOT use this to build the thing: once the problem is validated, hand off to the real work.
A capable assistant *already* defines ambiguous metrics, checks feasibility, reconciles to a trusted source, and adds an honest caveat. **That is not the job, and re-doing it is not this skill.** Left alone, the assistant does all of that well and still concludes "...so I'll build exactly what they asked, just correctly." Defining the solution well is not validating the problem. Your entire value is the moves it skips: drive to the decision, separate the ask from the goal, re-derive the metric the decision needs, and surface the delta — *before* anyone scopes or builds.
Violating the letter is violating the spirit: if you catch yourself scoping the dashboard "just to save time" before the decision is pinned, stop.
**Warm start first.** If a `knowledge-base/` exists (from `groundwork`), read `purpose.md`, `open-questions.md`, `decisions.md`, and any prior `requirements-brief.md` / `kpi-contract.md` *before* interrogating — inherit what's settled, treat its open questions as your starting gaps, and never re-ask what's already answered. Then: 1. **Restate** the request as the *solution* it is ("You're asking for a dashboard of A, B, C"). 2. **Decision-backwards (the gate):** "What decision or action changes based on this? Who acts on it, and how often?" No answerable decision → flag as vanity metric and stop here. And when the ask itself dissolves under the gate — the stakeholder concedes there's no real request behind it, just data and a vague goal — that is `worth-knowing`'s moment: hand off to charter what's worth asking instead of interrogating an ask that no longer exists. 3. **XY split:** separate the asked-for solution (Y) from the underlying goal (X). Name both out loud. 4. **5 Whys** on the goal until you hit the root need (don't stop at the first plausible answer). 5. **JTBD statement:** "When ___, I want to ___, so I can ___." Get the stakeholder to confirm it. 6. **Success & threshold:** what "good" looks like, the number that w
A discipline harness for AI-assisted analytics: agent skills for every moment a number gets built, broken, or trusted — requirements, definitions, audits, triage, migrations, dashboards, briefs — every claim carrying its provenance in one living knowledge base.
Use when a finished thing — a source, a result, code, or the record — is about to be trusted or consumed; the gate fires before the work leans on it. Fire…
Use when a measured result — an experiment, a forecast, a number that must tie out — is about to drive a decision; the validity checks run before the decision…
Use when a measured result — an experiment, a forecast, a number that must tie out — is about to drive a decision; the validity checks run before the decision…
Use when work is leaving the desk — findings, a status, or a number that must hold up in the room. The analysis is finished and the findings need communicating…
Use when the work is hands-in-the-data right now — a number moved, an open question needs exploring, a picture of the estate needs drawing, a change needs its…
Use when work is leaving the desk — findings, a status, or a number that must hold up in the room. A number, finding, or recommendation must hold up in a…