@ryan_nookpi/pi-extension-todo-write 0.1.0 → 0.1.1
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.
- package/README.md +19 -5
- package/index.ts +5 -5
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,15 +1,29 @@
|
|
|
1
1
|
# @ryan_nookpi/pi-extension-todo-write
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
This extension lets pi manage a structured task list during a coding session.
|
|
4
|
+
|
|
5
|
+
It helps break larger requests into clear steps and keeps progress visible while work is in progress.
|
|
4
6
|
|
|
5
7
|
## Install
|
|
6
8
|
|
|
7
9
|
```bash
|
|
8
|
-
pi install /Users/creatrip/Documents/pi-extension/packages/todo-write
|
|
9
10
|
pi install npm:@ryan_nookpi/pi-extension-todo-write
|
|
10
11
|
```
|
|
11
12
|
|
|
12
|
-
##
|
|
13
|
+
## Great for
|
|
14
|
+
|
|
15
|
+
- multi-step implementation or debugging work
|
|
16
|
+
- showing the user what pi is doing right now
|
|
17
|
+
- reorganizing the plan when requirements change mid-task
|
|
18
|
+
|
|
19
|
+
## Example prompts
|
|
20
|
+
|
|
21
|
+
- "Create a task list and work through it step by step."
|
|
22
|
+
- "Break this job into phases and track progress."
|
|
23
|
+
- "Keep track of testing, fixing, and verification as separate tasks."
|
|
24
|
+
|
|
25
|
+
## Notes
|
|
13
26
|
|
|
14
|
-
- `todo_write` tool
|
|
15
|
-
-
|
|
27
|
+
- It uses the `todo_write` tool to create and update tasks.
|
|
28
|
+
- It is designed so that only one task stays `in_progress` at a time.
|
|
29
|
+
- It preserves task state so work can continue cleanly after session compaction.
|
package/index.ts
CHANGED
|
@@ -26,7 +26,7 @@ const InputTask = Type.Object({
|
|
|
26
26
|
status: StatusEnum,
|
|
27
27
|
activeForm: Type.Optional(
|
|
28
28
|
Type.String({
|
|
29
|
-
description: "Present continuous form for display during execution (e.g., 'Running tests'
|
|
29
|
+
description: "Present continuous form for display during execution (e.g., 'Running tests')",
|
|
30
30
|
}),
|
|
31
31
|
),
|
|
32
32
|
notes: Type.Optional(Type.String({ description: "Additional context or notes" })),
|
|
@@ -161,7 +161,7 @@ export function renderTodoWidgetLines(state: TodoState): string[] {
|
|
|
161
161
|
seenCompletedCount += 1;
|
|
162
162
|
if (seenCompletedCount <= hiddenCompletedCount) {
|
|
163
163
|
if (!insertedCompletedSummary) {
|
|
164
|
-
lines.push(
|
|
164
|
+
lines.push(`Completed +${hiddenCompletedCount}`);
|
|
165
165
|
insertedCompletedSummary = true;
|
|
166
166
|
}
|
|
167
167
|
continue;
|
|
@@ -466,7 +466,7 @@ export default function todoWriteExtension(pi: ExtensionAPI): void {
|
|
|
466
466
|
- Purely conversational or informational requests
|
|
467
467
|
|
|
468
468
|
## Rules
|
|
469
|
-
- Write todo content in
|
|
469
|
+
- Write concise todo content in a style appropriate for the current task and user
|
|
470
470
|
- Update task status in real-time as you work
|
|
471
471
|
- Mark tasks complete IMMEDIATELY after finishing — don't batch completions
|
|
472
472
|
- Exactly ONE task should be in_progress at any time
|
|
@@ -476,9 +476,9 @@ export default function todoWriteExtension(pi: ExtensionAPI): void {
|
|
|
476
476
|
- If requirements change mid-task, update the todo list before continuing
|
|
477
477
|
|
|
478
478
|
## Task Fields
|
|
479
|
-
- content: Imperative form (e.g., "
|
|
479
|
+
- content: Imperative form (e.g., "Run tests")
|
|
480
480
|
- status: pending | in_progress | completed
|
|
481
|
-
- activeForm: (optional) Present continuous form for display (e.g., "
|
|
481
|
+
- activeForm: (optional) Present continuous form for display (e.g., "Running tests")
|
|
482
482
|
- notes: (optional) Additional context`,
|
|
483
483
|
parameters: TodoWriteParams,
|
|
484
484
|
async execute(_toolCallId, params, _signal, _onUpdate, ctx) {
|