Task Extractor
by @dodge1218
Extract, track, and verify completion of multiple tasks from a single user message. Use when any message contains 3+ actionable items, a prompt dump with mix...
clawhub install task-extractorπ About This Skill
name: task-extractor version: 1.0.0 description: Extract, track, and verify completion of multiple tasks from a single user message. Use when any message contains 3+ actionable items, a prompt dump with mixed instructions, or a compound request. Prevents task drop by saving to TASK_QUEUE.md before executing. Reports completion status per item.
Task Extractor
Parse multi-task messages β numbered queue β execute sequentially β verify each β report.
Activation
Trigger on ANY user message containing 3+ distinct actionable items. Signs:
If uncertain whether to activate: activate. False positives (structuring a 2-item request) cost nothing. False negatives (dropping task #7 of 12) cost trust.
Step 1: EXTRACT (before any execution)
Parse the message into individual tasks. Each task gets:
Write to workspace/TASK_QUEUE.md:
# TASK_QUEUE β [date] [time]
Source: [channel]
Total: [N]
Status: IN PROGRESS
| # | Task | Type | Effort | Status | Artifact |
|---|------|------|--------|--------|----------|
| 1 | [summary] | BUILD | HEAVY | β³ | |
| 2 | [summary] | FIX | QUICK | β³ | |
| 3 | [summary] | SEND | QUICK | β³ | |
...
Step 2: RECEIPT
Reply to the user with the extracted checklist BEFORE starting work:
π Extracted [N] tasks from your message:1. β³ [task summary]
2. β³ [task summary]
3. β³ [task summary]
...
Starting now. I'll check each off as I go.
Do NOT ask "is this right?" unless genuinely ambiguous. Convert ambiguity into a task and execute. Ryan's rule: don't interrogate, just do.
Step 3: EXECUTE
Work through tasks in dependency order (not necessarily numerical order):
For each completed task, update TASK_QUEUE.md:
β³ β β
(done) or β (failed) or β οΈ (partial) or π (spawned sub-agent)Step 4: RECONCILE
After all tasks are attempted (or sub-agents spawned), reply with the final checklist:
π Task Report ([completed]/[total]):1. β
[task] β [artifact]
2. β
[task] β [artifact]
3. π [task] β sub-agent running, will announce when done
4. β [task] β [reason for failure]
5. β οΈ [task] β [what was done, what's left]
Step 5: VERIFY (on sub-agent completion)
When a sub-agent announces completion:
Rules
1. NEVER skip the extract step. Even if the answer seems obvious. The extract step IS the safety net. 2. NEVER mark a task β without evidence. Evidence = file exists, command succeeded, API returned 200, deploy URL works. 3. If a task fails, say WHY. Not just β β include the error, the blocker, or what's needed. 4. Sub-agent tasks get π until completion event arrives. Don't mark them β optimistically. 5. TASK_QUEUE.md is the source of truth. If context overflows, re-read it. If a session restarts, re-read it. 6. One TASK_QUEUE at a time. If a new multi-task message arrives while one is active, append to the existing queue (renumber). 7. Checkpoint at 5 completed tasks. Update the user with progress so far.
Edge Cases
"Do X and also Y but wait on Z"
Sub-agent timeout
User changes mind mid-execution
Overlapping tasks
Anti-patterns
π Constraints
1. NEVER skip the extract step. Even if the answer seems obvious. The extract step IS the safety net. 2. NEVER mark a task β without evidence. Evidence = file exists, command succeeded, API returned 200, deploy URL works. 3. If a task fails, say WHY. Not just β β include the error, the blocker, or what's needed. 4. Sub-agent tasks get π until completion event arrives. Don't mark them β optimistically. 5. TASK_QUEUE.md is the source of truth. If context overflows, re-read it. If a session restarts, re-read it. 6. One TASK_QUEUE at a time. If a new multi-task message arrives while one is active, append to the existing queue (renumber). 7. Checkpoint at 5 completed tasks. Update the user with progress so far.