Reasoning scratchpad cot
Skill firststone-vc/reasoning-pack/skills/reasoning-scratchpad-cot
Make a cheap model reason like Claude Fable 5 - 11 installable Claude skills: plan-then-execute, self-consistency, reflexion, tree-of-thoughts, verification and more. MIT.
npx -y skills add firststone-vc/reasoning-pack --skill reasoning-scratchpad-cotAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Use for any task with a checkable right answer that involves arithmetic, multi-step logic, multi-hop lookups, or a plan with dependent steps — think step by step in a separate scratchpad before writing the final answer, instead of jumping straight to a conclusion.
SKILL.md
5.0 KB, ~1.1k tokens by cl100k_base, as published. Nobody here has run it
Reasoning Scratchpad (Chain-of-Thought)
What this is
A discipline for how to think before answering, not a change to what the model is. The model writes its intermediate reasoning — decomposed steps, intermediate values, checks — in a scratchpad section that is separate from the final answer. Only after the scratchpad is internally consistent does it get compressed into a clean final answer. This trades a few extra output tokens for a large drop in silent one-shot errors (arithmetic slips, skipped constraints, premature conclusions), which matters most on tasks that have more than one dependent step.
This is not prompt magic and does not add knowledge the model doesn't have. It only helps when the task's difficulty comes from chaining steps correctly, not from missing facts.
When to use it
- Arithmetic or unit conversions with more than one operation.
- Multi-step logic or constraint puzzles (ordering, scheduling, "who did what").
- Multi-hop questions where the answer depends on combining 2+ intermediate facts.
- Plans or instructions with steps that depend on the outcome of a prior step.
- Any task where you'd normally want to "double check that" before sending it.
When NOT to use it
- Single-fact lookups, definitions, translations — the extra step just adds latency.
- Open-ended creative writing with no "correct" answer to converge on.
- Tasks where the user explicitly wants only the answer at high speed and low stakes (e.g. casual chat).
Inputs required
- The task or question to answer.
- Constraints or reference facts needed to reason correctly (numbers, rules, prior context). If critical facts are missing, ask before reasoning — do not guess and then reason confidently on a guess.
- (Optional) Desired output format for the final answer (e.g. "just the number", "a JSON object", "one sentence").
- (Optional) Whether to show the work. Default: no — the scratchpad stays internal and only the final answer is shown. Show it only if the user asks to "show your work" / "explain your reasoning".
Steps
- Restate the goal. In the scratchpad, write in one line what the final answer must actually contain (the exact question being asked, not a nearby one).
- List known facts/constraints. Pull out every number, rule, or condition given in the input. Missing a constraint here is the single biggest source of wrong answers downstream.
- Decompose into an ordered list of small steps. Each step should do one operation or one inference — not multiple at once.
- Work the steps one at a time, writing the intermediate result of each explicitly (a number, a sub-conclusion, an eliminated option). Never skip a step silently because it "seems obvious" — that's where errors hide.
- Self-check before concluding. Re-read the scratchpad against the restated goal from step 1: does the final step actually answer the question? Re-derive the result a second way if cheap (e.g. re-add the parts, re-check a constraint), and look for contradictions between steps.
- If a check fails, fix the reasoning, not the answer. Go back and redo the specific failing step in the scratchpad. Do not patch the final number without fixing the step that produced it.
- Compress into a clean final answer. Write it so it stands alone — no "as shown above", no reference to the scratchpad — as if the reader never saw the reasoning.
- Emit output per the Output Format below. By default, drop the scratchpad from what's shown to the user; keep only the Final Answer block. Include the Scratchpad block only if the user asked to see the work.
Output format
## Scratchpad (internal — omit from the reply unless the user asked to see the work)
Goal: <one line: what must the final answer contain>
Facts: <bullet list of given constraints/numbers>
Steps:
1. <step + intermediate result>
2. <step + intermediate result>
...
Check: <re-derivation or contradiction check, pass/fail>
## Final Answer
<the clean, standalone answer, in the format the user requested>
When showing work is not requested, return only the Final Answer content (no headers needed) — the scratchpad above is a thinking discipline, not something to paste into the reply.
Worked example
Input: "A store had 84 apples. It sold 3/7 of them in the morning and 15 more in the afternoon. How many are left?"
## Scratchpad
Goal: number of apples left at end of day.
Facts: start = 84; morning sale = 3/7 of 84; afternoon sale = 15 more (units, not a fraction).
Steps:
1. Morning sold = 84 * 3/7 = 36.
2. Remaining after morning = 84 - 36 = 48.
3. Afternoon sold = 15 → remaining = 48 - 15 = 33.
Check: 36 (morning) + 15 (afternoon) + 33 (left) = 84 = start. Matches. Pass.
## Final Answer
33 apples are left.
What ships with it
Read from the repository
Just SKILL.md. No reference files, no scripts.