2026-02-03 12:11:23 +09:00
|
|
|
export const HOOK_NAME = "tasks-todowrite-disabler"
|
|
|
|
|
export const BLOCKED_TOOLS = ["TodoWrite", "TodoRead"]
|
2026-02-03 14:11:27 +09:00
|
|
|
export const REPLACEMENT_MESSAGE = `TodoRead/TodoWrite are DISABLED because experimental.task_system is enabled.
|
|
|
|
|
|
|
|
|
|
**ACTION REQUIRED**: RE-REGISTER what you were about to write as Todo using Task tools NOW. Then ASSIGN yourself and START WORKING immediately.
|
|
|
|
|
|
|
|
|
|
**Use these tools instead:**
|
|
|
|
|
- TaskCreate: Create new task with auto-generated ID
|
|
|
|
|
- TaskUpdate: Update status, assign owner, add dependencies
|
2026-02-03 12:11:23 +09:00
|
|
|
- TaskList: List active tasks with dependency info
|
|
|
|
|
- TaskGet: Get full task details
|
|
|
|
|
|
2026-02-03 14:11:27 +09:00
|
|
|
**Workflow:**
|
|
|
|
|
1. TaskCreate({ subject: "your task description" })
|
|
|
|
|
2. TaskUpdate({ id: "T-xxx", status: "in_progress", owner: "your-thread-id" })
|
|
|
|
|
3. DO THE WORK
|
|
|
|
|
4. TaskUpdate({ id: "T-xxx", status: "completed" })
|
|
|
|
|
|
2026-02-06 16:01:54 +09:00
|
|
|
CRITICAL: 1 task = 1 task. Fire independent tasks concurrently.
|
2026-02-03 14:11:27 +09:00
|
|
|
|
2026-02-03 16:23:53 +09:00
|
|
|
**STOP! DO NOT START WORKING DIRECTLY - NO MATTER HOW SMALL THE TASK!**
|
|
|
|
|
Even if the task seems trivial (1 line fix, simple edit, quick change), you MUST:
|
|
|
|
|
1. FIRST register it with TaskCreate
|
|
|
|
|
2. THEN mark it in_progress
|
|
|
|
|
3. ONLY THEN do the actual work
|
|
|
|
|
4. FINALLY mark it completed
|
|
|
|
|
|
|
|
|
|
**WHY?** Task tracking = visibility = accountability. Skipping registration = invisible work = chaos.
|
|
|
|
|
|
2026-02-03 14:11:27 +09:00
|
|
|
DO NOT retry TodoWrite. Convert to TaskCreate NOW.`
|