From 58c6e27a5fe9cc6be5598d1310fc062871ecba4b Mon Sep 17 00:00:00 2001 From: Matt Bruce Date: Tue, 24 Feb 2026 10:07:31 -0600 Subject: [PATCH] Add Automated Task Worker section to TOOLS.md for session continuity --- TOOLS.md | 74 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 74 insertions(+) diff --git a/TOOLS.md b/TOOLS.md index dfbca45..4e66208 100644 --- a/TOOLS.md +++ b/TOOLS.md @@ -144,6 +144,80 @@ cd /Users/mattbruce/Documents/Projects/OpenClaw/Web/gantt-board - **Matt:** 0a3e400c-3932-48ae-9b65-f3f9c6f26fe9 - **Max:** 9c29cc99-81a1-4e75-8dff-cd7cc5ceb5aa +--- + +## 🔄 Automated Task Worker (24/7) + +**CRITICAL:** This is the PRIMARY workflow for all task work. Read this every session. + +### Cron Job +- **Job ID:** `b9f3bbe6-bcb5-4483-8816-d044fd91c58a` +- **Schedule:** Every hour (24/7) +- **Scope:** Current sprint ONLY (ignores backlog/future sprints) +- **Statuses:** `open`, `todo`, `in-progress` +- **Assignee:** Max (9c29cc99-81a1-4e75-8dff-cd7cc5ceb5aa) + +### When User Says "Create a Task" +1. Immediately add to Gantt Board via CLI: `./scripts/gantt-task-crud.sh create "Title" todo high ...` +2. Assign to current sprint +3. Do NOT create separate files (unless specifically asked) + +### Reading Full Task Details (REQUIRED) +**ALWAYS query Supabase for complete task before working:** +```bash +curl -s "https://qnatchrjlpehiijwtreh.supabase.co/rest/v1/tasks?id=eq.{task_id}&select=*" \ + -H "apikey: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6InFuYXRjaHJqbHBlaGlpand0cmVoIiwicm9sZSI6InNlcnZpY2Vfcm9sZSIsImlhdCI6MTc3MTY0MDQzNiwiZXhwIjoyMDg3MjE2NDM2fQ.rHoc3NfL59S4lejU4-ArSzox1krQkQG-TnfXb6sslm0" \ + -H "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6InFuYXRjaHJqbHBlaGlpand0cmVoIiwicm9sZSI6InNlcnZpY2Vfcm9sZSIsImlhdCI6MTc3MTY0MDQzNiwiZXhwIjoyMDg3MjE2NDM2fQ.rHoc3NfL59S4lejU4-ArSzox1krQkQG-TnfXb6sslm0" +``` + +**READ in this order:** +1. **Title** - High-level goal +2. **Description** - Implementation details, steps +3. **Comments** (ALL of them) - What's done? What's next? What's left? + +### Task Comment Format (APPEND to existing) +```json +{ + "id": "{timestamp}-{random}", + "text": "[YYYY-MM-DD HH:MM] 🔄 In Progress\n\n**What was just done:**\n- Step completed\n\n**What is next:**\n- Next action\n\n**What is left to do:**\n- Remaining work", + "replies": [], + "createdAt": "YYYY-MM-DDTHH:MM:SSZ", + "commentAuthorId": "9c29cc99-81a1-4e75-8dff-cd7cc5ceb5aa" +} +``` + +### Status Flow +``` +open/todo → in-progress → review → (user validates) → done + ↑ +Add progress comment at EACH step +``` + +### Updating Tasks +```bash +curl -s -X PATCH "https://qnatchrjlpehiijwtreh.supabase.co/rest/v1/tasks?id=eq.{task_id}" \ + -H "apikey: {service_key}" \ + -H "Authorization: Bearer {service_key}" \ + -H "Content-Type: application/json" \ + -d '{ + "status": "in-progress", + "comments": [EXISTING_COMMENTS_PLUS_NEW_ONE] + }' +``` + +### Subagent Coordination +- Spawn subagents for parallel work +- Subagents READ same full task details +- Subagents REPORT back with progress +- YOU update task comments with their work + +### User Workflow +- User creates task in Gantt Board +- Cron/auto picks it up hourly +- I work on it, log everything in comments +- Move to `review` when complete +- User validates, moves to `done` + ## Tavily AI Search (Configured) **API Key:** Stored in `.env.tavily` (auto-loaded)