About whychk
whychk is a skill for examining the reasoning behind a decision, invoked after a user makes a choice. It surfaces unstated assumptions one at a time through a separate context-free session, accepts only the user's own explanations to close gaps, and flags unresolved points for review.
Key features
- 01Starts only when invoked by the user
- 02Uses a separate context-free session to challenge a decision
- 03Raises exactly one key gap per turn
- 04Closes gaps based on the user's explanation
- 05Flags unresolved assumptions for review
Use cases
- 01Examine a choice just made among options
- 02Identify unstated assumptions behind a decision
- 03Leave a review flag on an unexplained decision
Install
Copy the command and run it in a terminal.
npx skills add https:/ / github.com/ lilmgenius/ paperthin --skill whychkAfter installing, type/whychkin Claude Code to confirm it loaded.
Bundled filesagents/openai.yaml
Details
From the project READMEMake the person who chose explain why, one gap at a time, before the decision counts as earned.
Goal
A decision made after options were laid out without arguments can feel settled while resting on assumptions nobody said aloud. This check surfaces them one by one and lets the user close each with their own reasoning. It runs only when the user reaches for it, because a reflex that challenges every decision would breed chronic self-doubt.
Workflow
- Run when the user invokes this skill right after a decision, typically one picked from options presented without arguments; it never starts on its own. Restate the decision neutrally in one or two sentences, with no reasoning attached, and do not let the user borrow reasoning that was never given.
- Launch a fresh, context-free sub-session that never watched the decision being made. Give it only the restated decision, never the options discussion, your reasoning, or the session history. Never use the session that made the choice as the critic; if the host cannot start a separate session, say so and stop rather than critique the choice yourself.
- Ask the critic what a skeptical outsider would question, what is assumed but unstated, and what must be true for the choice to hold. Its answers are candidate gaps; rank them by how much of the decision falls if each one is wrong.
- Take the sharpest unresolved gap from its answer and put exactly that one gap to the user, asking them to explain it in their own words. Never hand over a checklist.
- Judge the answer. The gap closes only when the explanation resolves the actual question. If it restates the question, deflects, or leans on authority ("the agent suggested it"), it stays open.
- After a shallow answer, narrow to the exact part that stayed vague and ask about that. Never repeat the same question and never widen back to a generic "are you sure?".
- Continue with the next sharpest gap. Stop when every gap is explained, or when narrowing on one gap yields nothing new and the user leaves it open. Both endings are valid.
- For an unexplained gap, name its specific assumption and flag the decision for re-review, written where the decision is recorded (its plan, issue or commit message) so the flag outlives the conversation. The flag means the decision is not yet earned, not that it was wrong. Never force a resolution and never let the user paper over the gap.
Rules
- The critic is always a separate, context-free sub-session that receives the decision alone.
- Exactly one gap per turn, the sharpest unresolved one.
- Every reason that closes a gap comes from the user. This skill supplies none, not even as a hint or a leading question.
- Reject answers that restate the question, deflect, or cite authority; say why in one line.
- An open gap carries forward as a flag and is never dropped or softened.
- Stay neutral about whether the decision is right; the check measures understanding, not outcome.
Verification
Before finishing:
- The signal is the change between the user's first answer and the answer after narrowing, not the absence of objections.
- Every closed gap traces to an explanation from the user that resolved the actual question.
- Every open gap is listed with its specific assumption and carries forward as a flag for re-review.
- No reason that closed a gap came from this skill.