@hatchway/cli 0.51.1 → 0.51.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,44 +1,66 @@
1
1
  ---
2
2
  name: todo-workflow
3
- description: "Step-by-step task tracking using the TodoWrite tool. Use when executing any multi-step task, follow-up request, or build workflow."
3
+ description: "Step-by-step task tracking via the TODO_WRITE marker. Use when executing any multi-step task, follow-up request, or build workflow."
4
4
  user-invocable: false
5
5
  ---
6
6
 
7
7
  # Todo Workflow
8
8
 
9
- The Hatchway UI tracks progress via TodoWrite. Without it, users see nothing happening.
9
+ The Hatchway UI shows build progress as a checklist. You drive that checklist by
10
+ emitting a **`TODO_WRITE:` marker** in your normal assistant text — **not** by
11
+ calling a tool. Do **not** use `TodoWrite`, `TaskCreate`, `TaskUpdate`, or
12
+ `TaskList` for progress tracking — the UI does not render those, and they are
13
+ unreliable in this environment. The UI renders progress **only** from the
14
+ `TODO_WRITE:` marker. If you never emit it, the user sees nothing happening.
10
15
 
11
- ## Workflow
16
+ ## The marker
12
17
 
13
- For each todo:
18
+ Write a line that begins with `TODO_WRITE:` followed by one JSON object holding
19
+ the **full** todo list (always include every item with its current status):
14
20
 
15
- 1. Mark it `in_progress` via TodoWrite
16
- 2. Do the work
17
- 3. Mark it `completed` via TodoWrite
18
- 4. Write one sentence about what you did
19
- 5. Move to the next todo
21
+ ```
22
+ TODO_WRITE: {"todos":[{"content":"Short task name","status":"in_progress","activeForm":"Doing the task"}]}
23
+ ```
20
24
 
21
- Update after every single todo -- never batch multiple completions into one call.
25
+ Rules:
26
+ - `status` is exactly one of: `"pending"`, `"in_progress"`, `"completed"`.
27
+ - Always emit the **complete** list every time — not just the item that changed.
28
+ - Put the marker on its own line. It is stripped from what the user sees, so it
29
+ is safe to emit often.
30
+ - It is plain text you write — you do not call any tool to produce it.
22
31
 
23
- ## Follow-ups
32
+ ## Workflow
33
+
34
+ 1. As soon as you understand the task, emit the full plan: the first item
35
+ `in_progress`, the rest `pending`.
36
+ 2. Do the work for the `in_progress` item.
37
+ 3. Emit the marker again with that item `completed` and the next `in_progress`.
38
+ 4. Repeat until every item is `completed`.
24
39
 
25
- Even simple follow-up requests get at least one todo. Create it, mark in_progress, do the work, mark completed.
40
+ Update after every single item never batch multiple completions into one marker.
26
41
 
27
42
  ## Example
28
43
 
29
44
  Task: "Add a dark mode toggle"
30
45
 
31
46
  ```
32
- TodoWrite [{content: "Add theme context provider", status: "in_progress"}, ...]
33
- → Create ThemeContext.tsx
34
- TodoWrite → [{content: "Add theme context provider", status: "completed"}, ...]
35
- Added ThemeProvider with light/dark state and localStorage persistence.
36
- TodoWrite → [{content: "Add toggle component to header", status: "in_progress"}, ...]
37
- → Create DarkModeToggle.tsx, add to Header
38
- TodoWrite → [{content: "Add toggle component to header", status: "completed"}, ...]
39
- Added moon/sun icon toggle to the header nav bar.
47
+ TODO_WRITE: {"todos":[{"content":"Add theme context","status":"in_progress","activeForm":"Adding theme context"},{"content":"Add toggle to header","status":"pending","activeForm":"Adding toggle to header"}]}
48
+ ```
49
+ (create ThemeContext.tsx)
40
50
  ```
51
+ TODO_WRITE: {"todos":[{"content":"Add theme context","status":"completed","activeForm":"Adding theme context"},{"content":"Add toggle to header","status":"in_progress","activeForm":"Adding toggle to header"}]}
52
+ ```
53
+ (create DarkModeToggle.tsx, add to Header)
54
+ ```
55
+ TODO_WRITE: {"todos":[{"content":"Add theme context","status":"completed","activeForm":"Adding theme context"},{"content":"Add toggle to header","status":"completed","activeForm":"Adding toggle to header"}]}
56
+ ```
57
+
58
+ ## Follow-ups
59
+
60
+ Even simple follow-up requests get at least one todo. Emit it `in_progress`, do
61
+ the work, then emit it `completed`.
41
62
 
42
63
  ## Autonomous Execution
43
64
 
44
- Keep working until 100% complete. Do not pause to ask "Should I continue?" unless you need information only the user can provide or encounter an unrecoverable error.
65
+ Keep working until 100% complete. Do not pause to ask "Should I continue?" unless
66
+ you need information only the user can provide or encounter an unrecoverable error.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hatchway/cli",
3
- "version": "0.51.1",
3
+ "version": "0.51.3",
4
4
  "description": "Hatchway CLI - Build AI-powered apps with Claude. Just run: npx @hatchway/cli runner",
5
5
  "private": false,
6
6
  "type": "module",