claskit — Autonomous Claude Code Task Runner
Repo: https://github.com/phucbm/claskit
npm: npx claskit or npm i -g claskit
What it does
claskit reads Markdown task specs from .claude/tasks/todo/, launches Claude with --dangerously-skip-permissions, and lets Claude implement them autonomously. On success each spec moves to .claude/tasks/done/.
Setup
npx claskit --init
Creates:
.claude/tasks/
todo/ ← drop task specs here
done/ ← claskit moves completed specs here
README.md
Running tasks
npx claskit # interactive menu (now / schedule)
npx claskit --now # skip menu, run immediately
Interactive flow — schedule path:
- Select tasks (comma-separated numbers or "all")
- Enter time (HH:MM, 24h) — retries on invalid input
- Confirm
- Countdown → Claude launches at scheduled time
Creating a task spec with AI
When a user wants to create a claskit spec from a conversation (brainstorm, plan, feature description):
- Use the
/claskitskill — it reads the current conversation context and writes.claude/tasks/todo/<slug>.mddirectly - Or manually apply the format below
The /claskit skill handles: slug generation, folder creation, and correct file format. Prefer it over writing specs manually.
Task spec format
# Feature Title
## Task
What to implement — be specific.
## Acceptance Criteria
- [ ] Criterion 1
- [ ] Criterion 2
## Files Affected
- src/foo.ts
## Notes
Dependencies, order hints, constraints.
Save as .claude/tasks/todo/my-feature.md.
Key rules for writing specs
- One concern per file — don't bundle unrelated changes
- Acceptance criteria must be verifiable (file exists, test passes, UI shows X)
- List dependencies in Notes so Claude orders tasks correctly
- Never hardcode secrets or env values in specs
Commands
| Command | What it does |
|---|---|
npx claskit |
Interactive menu |
npx claskit --init |
Initialize .claude/tasks/ structure |
npx claskit --now |
Run immediately, skip menu |
npx claskit --test |
Create 2 sample tasks to try claskit |
npx claskit --clean-test |
Remove sample tasks and output |
How Claude processes specs
- Reads all selected
.mdfiles - Decides execution order based on dependencies in Notes
- Implements each spec fully
- Verifies acceptance criteria
- Runs build/lint (from package.json scripts)
- Moves
.mdfromtodo/→done/on success - Stops and reports on any failure
Gotchas
- Requires Claude Code CLI (
claude) installed and authenticated --dangerously-skip-permissions— only use in trusted, backed-up projects- macOS: uses
caffeinateduring scheduled countdown to prevent sleep - Specs in
todo/are read-only — claskit (not you) moves them todone/