DriversRecommendedOutdated drivers can make a good PC feel brokenScan driver issues before chasing fixes manually.Scan NowOctober DealsAmazon USOctober deal check: compare before you payAmazon US: current deals, useful picks and tech finds.Check DealsPC HealthRecommendedCrashes, freezes, slowdowns? Check your PC nowSpot repairable issues before they interrupt work.Check PC×
Skip to content
World desk5 min

Keep Claude Code on Track With cliffhanger’s Bounded Stop Hook

cliffhanger combines a Claude Code Stop hook and skill to catch defined unfinished-task states. See how it works, how to try observe mode, and why its benchmark is not proof of test correctness or general results.
Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

cliffhanger is a free, MIT-licensed Claude Code project that combines a Stop hook with a skill to catch certain unfinished-task states before a turn ends. It can ask Claude Code to continue when a defined checklist or message pattern indicates work remains, but it does not verify test results or guarantee that the work is complete. Its project-reported benchmark is a small, developer-run trial—not independent evidence of general effectiveness.

What cliffhanger does

cliffhanger is a software project distributed through its public repository and Claude Code’s plugin marketplace. It pairs a Claude Code Stop hook with a skill. The project says the hook reads the final assistant message and task state: it first rebuilds a checklist from task tools or Markdown checkboxes, then checks for defined early-stop language if it finds no checklist. It handles both Stop and SubagentStop events. The project README describes the implementation and its installation options.

As an Amazon Associate I earn from qualifying purchases.

When the hook identifies unfinished work, it can block the stop and return a reason for Claude Code to continue. The project also documents conditions that let a stop through: an explicit BLOCKED: or NEEDS-YOU: line, active background work, plan mode, or reaching the continuation cap. The documented default is three automatic continuations per user turn. Those rules are cliffhanger’s own behavior, not properties of Claude Code’s Stop event.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

The maintainer says the hook uses Python’s standard library, makes no model calls, stores decision data locally, and fails open on an internal error. It also offers an observe mode that records would-be blocks without blocking. These are project descriptions, not an independent security or implementation audit. The repository specifies Python 3.8 or newer available as python3 for the hook.

How Claude Code Stop hooks work

Claude Code’s Stop event runs just before Claude concludes a response and returns control to the user. In the documented hook behavior, a command hook that exits with code 2 sends its standard error back as a system message and Claude continues; code 0 suppresses standard output and standard error for this event. See the hooks reference and hooks guide for the platform’s event and exit-code details.

Claude Code supplies the extension point; cliffhanger supplies its own checklist extraction, message-pattern checks, allow-through conditions, and continuation limit. The platform reference also describes a stop_hook_active input to indicate that a Stop hook is already causing continuation. Custom hooks should account for that state to reduce the risk of repeated continuation.

Install it and try observe mode first

The repository’s plugin quickstart is to add its marketplace and install the plugin:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
  1. Run claude plugin marketplace add Arthur031221/cliffhanger.
  2. Run claude plugin install cliffhanger@cliffhanger.

The README also documents a global Agent Skills installation, a Git clone followed by cliffhanger/bin/cliffhanger install for settings-based hook installation, and a one-session launch with claude --plugin-dir ./cliffhanger. Repository instructions and plugin metadata can change, so check the current README before installing; the repository identified the plugin metadata version as 0.1.0 at the time covered by its documentation.

The maintainer recommends starting in observe mode and reviewing cliffhanger stats to see what the hook would have blocked before enabling blocking behavior. The README also documents cliffhanger off and an environment variable to pause or observe behavior; consult the repository for the exact current configuration and command usage.

What the public benchmark shows—and does not

The repository reports a developer-run benchmark dated September 30, 2026, using Claude Code 2.1.284, Sonnet 5.5, a MacBook Air M5, one small WSGI-app fixture, and 12 tasks. The reported outcomes were:

Reported result Scope and qualification
6 of 12 baseline runs stopped before a green test run. Project-reported result for this benchmark setup, not a general Claude Code failure rate.
0 of 12 runs using cliffhanger’s blocking hook and skill stopped before a green test run. Project-reported result for the same small fixture and task set; it does not establish performance across other projects or workflows.
About 4% additional cost for the hook-plus-skill treatment. Project-reported estimate for this benchmark setup.
About 13% additional cost when every test command needed by the agent was allowed; both arms completed all 12 tasks. Project-reported result under that command-permission condition.

The project says the benchmark used one model, one fixture, and one run per task and arm. It also says advice for handling a refused command was added after the same failure appeared in earlier runs, so the reported test was not held out. Taken together, the figures illustrate one failure mode and a possible mitigation in a particular setup. They do not prove that cliffhanger generally improves completion, saves money, or outperforms other approaches.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Limits that matter for unattended tasks

The developer says cliffhanger inspects the final response and task state, not tool results or whether a test result matches the current code revision. A checklist can therefore be internally consistent and still be wrong; the hook is not proof that tests ran or that their result applies to the current working tree. The developer’s Reddit discussion also addresses these limitations and how to handle blockers.

  • Make completion criteria concrete. List deliverables and checks explicitly so the hook has task state to evaluate. Ambiguous requirements and dependencies are harder to assess.
  • Define genuine blockers. Missing credentials, approvals, requirements, or other external input cannot be solved by repeated continuation. Mark such work as blocked and report what is needed.
  • Bound retries and watch for no progress. The project documents a default continuation cap, but the developer also warns that an agent can repeatedly claim progress without changing anything. Stop when consecutive attempts produce no file or task-state changes rather than allowing an unproductive loop.
  • Verify important results independently. Use an appropriate test or review step to establish that checks ran against the current code; the hook does not perform that verification for you.

When to use a Stop hook instead of relying on a prompt

Claude Code supports Stop hooks without cliffhanger, and its hooks guide shows a prompt-based completion gate that asks whether requested tasks are complete. That is a separate approach: it relies on a natural-language check, while cliffhanger’s project describes a checklist-first hook with defined pattern checks and stop exceptions. A hook can be configured for applicable sessions, whereas a prompt is an instruction to the model; exact scope depends on how each is installed and configured. Check the current Claude Code documentation and cliffhanger README for platform and project details before choosing.

Consider cliffhanger if your tasks have explicit checklist items and you want a bounded mechanism to catch certain premature stops. Prefer a simpler prompt or a separate human or automated verification step when the key question is whether code or tests are actually correct. Neither a Stop hook nor a completion prompt resolves unclear requirements, external approvals, or other missing inputs.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Leave a Reply

Your email address will not be published. Required fields are marked *

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

More from the Wire

  1. World desk4 min
    How to Spot an AI Voice Scam Before Sending MoneyDon’t rely on how a caller sounds. Pause, call back through a known number, and verify the emergency with another trusted person before sending money.
  2. Mountain View desk4 min
    Google’s SynthID Detector: How to Check AI-Generated Images, Video and AudioGoogle’s SynthID Detector looks for an embedded watermark in supported images, video and audio. Here is what its results do—and do not—show.
  3. Redmond desk20 min
    How to create a link to File or Folder in Windows 11Windows 11 gives you several ways to point to a file or folder without moving or duplicating it. You can create a desktop shortcut,…
Recommended PC Tool
Recommended PC Tool
Crashes, No Sound, or Screen Glitches?Free driver scan
PC Slower Than It Used to Be?Free scan - under a minute

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.