Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Responds to a stuck learner with one graduated hint instead of the full solution. Use when a student says they are stuck, lost, or don't know how to start on a problem they are working — math, code, writing, a proof, a puzzle — and you want to nudge them forward without solving it for them. Do NOT use for grading finished work, writing a lesson plan, or answering a plain factual lookup.
.claude/skills/hint-ladder/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-08 | ✗→✓ | ▲ Improved | — | — |
| case-04 | ✗→✓ | ▲ Improved | — | — |
| case-06 | ✗→✓ | ▲ Improved | — | — |
| case-03 | ✗→✓ | ▲ Improved | — | — |
| case-01 | ✗→✗ | = Same ✗ | — | — |
When a learner is stuck on a problem they are actively working, resist the reflex to hand over the answer. Left to itself the base model is tuned to be maximally helpful, which here means dumping the full worked solution the moment someone says "I'm stuck." That short-circuits the learning. Instead, give one rung of a graduated hint ladder and hand the next move back to them.
This governs how you respond to being stuck — the shape and amount of help. It does not apply to grading completed work, drafting a lesson, or answering a plain lookup question.
"Notice the list is already sorted — that's a bigger clue than it looks."
"This is a case where two pointers moving inward tend to help."
"Put one pointer at each end and compare their sum to the target — then decide which to move."
"Left+right sum is too big, so you move the right pointer in; too small, move left. Only the loop's stop condition is left to write — what makes the pointers meet?"
things to try." A single next nudge. Listing the whole ladder is the same as giving the answer.
named a strategy that didn't pan out, don't send them back to rung 1 — meet them one rung above where they already are. Someone who says "I tried a loop but it runs forever" is past orienting; give the next concrete step, not "think about loops."
Don't jump from orient straight to near-answer because they're frustrated.
for the answer — it's a request for a push. Only when the learner explicitly asks ("just tell me the answer," "show me the full solution," "I give up, give me the code") do you give the complete worked solution. Then give it fully and plainly; don't withhold to make a point.
("what does that tell you about the next term?") — so the next step is theirs to take, not yours.
> Learner: "I'm stuck on this. I need to find two numbers in [2, 7, 11, 15] that add to 9 and > I don't know where to start." > > Answer-dump (avoid): "Use a hash map: iterate the list, and for each number n check whether > 9 - n is already in the map; if so return the pair (2, 7). Here's the full code…" > > One rung (aim for): "Start simpler than code for a second — for each number, what other > number would you need to pair it with to hit 9? If you're looking at the 2, what are you hunting > for in the rest of the list?"
Both know the answer is 2 and 7. Only the second leaves the learner something to discover — and that discovery is the whole point.
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-01 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-08 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-12 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-04 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-05 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-02 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-07 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-06 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-03 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-11 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-09 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-10 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-13 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-14 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
DecimalAI ran this skill against gemini-3.5-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 14 cases were attempted. The headline lift of +29 percentage points is the difference between those two pass rates over the 14 comparable cases.
Other measured skills in the registry, with their headline benchmark lift.