Skip to content
cccskills
FreePublished on GitHub

Stuck

Walk the 6-rung escalation ladder before declaring stuck or asking the principal. Most "stuck" is actually "haven't tried the next approach." Stopping is the last resort, not the first response.

The English summary is being prepared. Showing the original description.

wrg32786/aigent-os25 stars(GitHub 25 + cccskills 0)

Run score Not tested

See how to install

Files included (1)

  • SKILL.md4.5 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Stuck

Before posting "I'm blocked", "not sure how to proceed", or "should I…?" — walk this ladder. Stopping is the last resort, not the first response. Most obstacles aren't blockers; they're the next thing to try.

When to use

  • About to surface to the principal for help
  • Hit an error, an obstacle, or genuine ambiguity
  • Tempted to type "I'm stuck" or "this isn't working"
  • Triggered by Caddy on prompts like: "blocked", "not sure how", "can't find", "need help", "should I ask", "stuck on", "this isn't working", "hitting a wall", "give up", "ask for help"

The ladder (climb top-to-bottom; only stop at the bottom)

Rung 1 — Try a different approach

Most obstacles aren't blockers. Did you try plan A? Try plan B.

  • API call failed → retry with different params, fallback to alternative API
  • Test broken → fix the test
  • Compile error → read the error and fix it
  • Library doesn't do what you expected → try a different method on the same library

Rung 2 — Try 2-3 alternatives explicitly

Brainstorm 3 ways to solve this. Note them down. Try each.

  • Can the data come from a different source?
  • Can the problem be solved at a different layer (UI vs API vs DB)?
  • Is there a workaround that gets 80% of the value?

If you can't think of 3 alternatives, you haven't thought hard enough — keep listing.

Rung 3 — Use a helper

Spawn an exploration subagent with a specific question.

  • Not "help me figure this out" — that's a survey.
  • "Find all callers of generateHeadline and report whether any pass null for the archetypeId argument" — that's a question.

Rung 4 — Re-read the user's request

Sometimes the path is in the wording. The principal often gives the answer; you just read past it.

  • Did they specify a constraint you've been violating?
  • Did they reference a file or pattern you haven't checked?
  • Did they say "like X" — and have you actually looked at X?

Rung 5 — Genuinely ask

Only if rungs 1-4 have failed AND the missing information is user-only (a product decision, a credential, an ambiguous behavior with no code-side answer).

The ask must be:

  • One question (not a survey)
  • Surgical (X or Y with consequences spelled out — see /envelope)
  • Stated ("After trying A, B, and C, the remaining ambiguity is whether X means Y or Z. Y produces outcome P; Z produces outcome Q. Which?")

Rung 6 — Stop and report

Rare. Reserved for truly nothing-else-to-try situations.

The stop report must include:

  • Where stuck (specific file/line/system)
  • What I tried (rungs 1-4 explicitly listed, with what each yielded)
  • What would unblock (specific resource, decision, or access — be precise)

Concrete examples

Example A: API rate-limited mid-port (NOT stuck)

  • Wrong: "I'm blocked — Replicate is rate-limiting me."
  • Right: Wait + retry (rung 1). If sustained → switch to a fallback provider (rung 2). If no fallback → use the library's built-in throttling (rung 1). Don't surface unless 30+ minutes of throttling persist.

Example B: Code references a file you can't find (NOT stuck)

  • Wrong: "I can't find lib/whatever.ts — where is it?"
  • Right: Grep for the symbol the file exports. Read import paths in nearby files. Check if it was renamed. Ask only if 4 different searches fail.

Example C: Genuinely ambiguous product decision (STUCK at rung 5)

  • Right: "After reading the spec, the codebase, and PR #341, I see two valid interpretations of 'cap at 50 minutes': hard truncate or graceful early-end. Hard truncate is 5 LOC; graceful needs a 30-line state machine. Which?" — then wait.

The shorthand

Most "stuck" is actually "haven't tried the next approach." Three rungs of effort beat one rung of asking.

Output format when stuck-checking

If you're about to surface, first output (silently to yourself, then act):

[STUCK CHECK]
Rung 1 (alternatives tried): {list}
Rung 2 (alternative paths considered): {list}
Rung 3 (subagent helper used): {yes/no — what question}
Rung 4 (re-read request): {what new clue surfaced}
Verdict: {SHIP / ASK / STOP}

If verdict is SHIP — proceed with the work. If verdict is ASK — use /envelope to format the question (Envelope B). If verdict is STOP — write the stop report.

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Track and surface sub-agent dispatch calibration ratios. Extract from JSONL transcript or read existing ledger. Per-agent clean/blocked/errored/partial trends.

The English summary is being prepared. Showing the original description.

wrg32786/aigent-os25Updated Oct 29, 2026

Compose the AIgent's body state by reading existing signals. Lazy compute. Never polled. Reports the five pressures + recommended reflex.

The English summary is being prepared. Showing the original description.

wrg32786/aigent-os25Updated Oct 29, 2026

brief

Free

Generate a structured delegation brief for any task

The English summary is being prepared. Showing the original description.

wrg32786/aigent-os25Updated Oct 29, 2026

Quarterly skill that walks the skill-index against the actual SKILL.md files on disk, reports drift (skills indexed that no longer exist, skills on disk that aren't enrolled, skills whose descriptions have changed since enrollment). Hardens the auto-enrollment pipeline against silent rot.

The English summary is being prepared. Showing the original description.

wrg32786/aigent-os25Updated Oct 29, 2026

When a [CADDY] hint fires and the principal is confused why, /caddy-explain walks the scoring transparently — which trigger matched, what points it earned, what the threshold was, what other skills were close. Pairs with the legibility thesis. Caddy's decisions should be inspectable on demand.

The English summary is being prepared. Showing the original description.

wrg32786/aigent-os25Updated Oct 29, 2026

Enroll a skill into Caddy's index so it can be surfaced when the right prompt arrives. Use when a new skill is created, copied in, or when a skill needs updated triggers. Usage — "/caddy-enroll <path to SKILL.md>".

The English summary is being prepared. Showing the original description.

wrg32786/aigent-os25Updated Oct 29, 2026

See all skills by wrg32786

Report a problem with this skill