taskmaster  by blader

AI agent stop hook for guaranteed task completion

Created 2 months ago
490 stars

Top 62.9% on SourcePulse

GitHubView on GitHub
1 Expert Loves This Project
Project Summary

A stop hook for Claude Code, Taskmaster ensures agents complete all plans and user requests by blocking premature stopping. It provides a deterministic, parseable completion signal, benefiting users and automated systems that require certainty of task completion before proceeding.

How It Works

Taskmaster intercepts stop requests, preventing the agent from halting until an explicit TASKMASTER_DONE::<session_id> token is present in the transcript. If the token is absent, it returns a blocking response, presenting a completion checklist and the exact signal the agent must emit to be considered truly done. This approach guarantees that the agent only stops when explicitly instructed with the correct token.

Quick Start & Requirements

  • Install: Clone the repository (git clone https://github.com/blader/taskmaster.git), navigate into the directory (cd taskmaster), and run the install script (bash install.sh). Alternatively, follow the manual install steps by copying files and configuring ~/.claude/settings.json.
  • Prerequisites: Requires Claude Code with hooks support, jq, and bash.
  • Post-install: Restart your Claude Code agent.
  • Configuration: TASKMASTER_MAX (default 0, infinite blocking) controls the maximum block count before forced allowance. TASKMASTER_DONE_PREFIX (default TASKMASTER_DONE) defines the done token prefix.
  • Docs: See docs/SPEC.md for details on the session-specific token.

Highlighted Details

  • Emits a deterministic, parseable completion signal (TASKMASTER_DONE::<session_id>) for external automation.

Maintenance & Community

No specific details on contributors, sponsorships, or community channels were found in the provided README.

Licensing & Compatibility

Licensed under the MIT license, permitting commercial use and modification with attribution.

Limitations & Caveats

Requires Claude Code with hooks support and the jq utility. The hook script has a default timeout of 10 seconds.

Health Check
Last Commit

1 month ago

Responsiveness

Inactive

Pull Requests (30d)
1
Issues (30d)
0
Star History
28 stars in the last 30 days

Explore Similar Projects

Feedback? Help us improve.