@agnishc/edb-todo 0.10.4 → 0.10.6
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/CHANGELOG.md +7 -0
- package/package.json +1 -1
- package/src/index.ts +5 -0
- package/src/state.ts +0 -12
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,12 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [0.10.6] - 2026-05-15
|
|
4
|
+
|
|
5
|
+
## [0.10.5] - 2026-05-15
|
|
6
|
+
|
|
7
|
+
### Changed
|
|
8
|
+
- Added `promptSnippet` to all six tools (`TaskCreate`, `TaskList`, `TaskGet`, `TaskUpdate`, `TaskOutput`, `TaskStop`) so they appear in the system prompt's Available tools section
|
|
9
|
+
|
|
3
10
|
## [0.10.4] - 2026-05-15
|
|
4
11
|
|
|
5
12
|
## [0.10.3] - 2026-05-15
|
package/package.json
CHANGED
package/src/index.ts
CHANGED
|
@@ -275,6 +275,7 @@ Returns a summary of each task:
|
|
|
275
275
|
- **blockedBy**: Open task IDs that must be resolved first
|
|
276
276
|
|
|
277
277
|
Use TaskGet with a specific task ID to view full details including description.`,
|
|
278
|
+
promptSnippet: "List all tasks in the task list with status, priority, and dependency info",
|
|
278
279
|
parameters: Type.Object({}),
|
|
279
280
|
|
|
280
281
|
async execute() {
|
|
@@ -343,6 +344,7 @@ Returns full task details:
|
|
|
343
344
|
|
|
344
345
|
- After fetching a task, verify its blockedBy list is empty before beginning work.
|
|
345
346
|
- Use TaskList to see all tasks in summary form.`,
|
|
347
|
+
promptSnippet: "Retrieve full details of a task by ID, including description and dependencies",
|
|
346
348
|
parameters: TodoGetParams,
|
|
347
349
|
|
|
348
350
|
async execute(_id, params) {
|
|
@@ -451,6 +453,7 @@ Delete a task:
|
|
|
451
453
|
|
|
452
454
|
Set dependencies:
|
|
453
455
|
\`{ "id": "t2", "addBlockedBy": ["t1"] }\``,
|
|
456
|
+
promptSnippet: "Update a task's status, content, priority, or dependency links",
|
|
454
457
|
promptGuidelines: [
|
|
455
458
|
"Mark tasks in_progress BEFORE starting work, completed immediately after finishing. Never batch completions.",
|
|
456
459
|
"ONLY mark completed when fully done — not when tests are failing or implementation is partial.",
|
|
@@ -521,6 +524,7 @@ Set dependencies:
|
|
|
521
524
|
"- Use block=true (default) to wait for task completion\n" +
|
|
522
525
|
"- Use block=false for a non-blocking check of current status\n" +
|
|
523
526
|
"- Task IDs can be found using TaskList",
|
|
527
|
+
promptSnippet: "Retrieve output from a running or completed background task process",
|
|
524
528
|
parameters: Type.Object({
|
|
525
529
|
task_id: Type.String({ description: "The task ID to get output from" }),
|
|
526
530
|
block: Type.Optional(Type.Boolean({ description: "Whether to wait for completion (default: true)" })),
|
|
@@ -595,6 +599,7 @@ Set dependencies:
|
|
|
595
599
|
"- Sends SIGTERM, waits 5 seconds, then SIGKILL if still running\n" +
|
|
596
600
|
"- Marks the task as completed after stopping\n" +
|
|
597
601
|
"- Use this tool when you need to terminate a long-running task",
|
|
602
|
+
promptSnippet: "Stop a running background task process",
|
|
598
603
|
parameters: Type.Object({
|
|
599
604
|
task_id: Type.String({ description: "The task ID of the background process to stop" }),
|
|
600
605
|
}),
|
package/src/state.ts
CHANGED
|
@@ -140,7 +140,6 @@ export class TodoWidget {
|
|
|
140
140
|
if (tasks.length === 0) {
|
|
141
141
|
if (this.widgetRegistered) {
|
|
142
142
|
this.uiCtx.setWidget("pi-todo", undefined);
|
|
143
|
-
this.uiCtx.setStatus("pi-todo", undefined);
|
|
144
143
|
this.widgetRegistered = false;
|
|
145
144
|
}
|
|
146
145
|
if (this.widgetInterval) {
|
|
@@ -182,16 +181,6 @@ export class TodoWidget {
|
|
|
182
181
|
{ placement: "aboveEditor" },
|
|
183
182
|
);
|
|
184
183
|
this.widgetRegistered = true;
|
|
185
|
-
|
|
186
|
-
// Also set status bar
|
|
187
|
-
const active = tasks.filter((t) => t.status !== "completed");
|
|
188
|
-
const inProg = active.filter((t) => t.status === "in_progress");
|
|
189
|
-
const doneCount = tasks.filter((t) => t.status === "completed").length;
|
|
190
|
-
const th = this.uiCtx.theme;
|
|
191
|
-
const parts: string[] = [];
|
|
192
|
-
if (inProg.length > 0) parts.push(th.fg("accent", `● ${inProg.length} active`));
|
|
193
|
-
if (doneCount > 0) parts.push(th.fg("success", `✓ ${doneCount} done`));
|
|
194
|
-
this.uiCtx.setStatus("pi-todo", parts.join(" "));
|
|
195
184
|
} else if (this.tui) {
|
|
196
185
|
this.tui.requestRender();
|
|
197
186
|
}
|
|
@@ -204,7 +193,6 @@ export class TodoWidget {
|
|
|
204
193
|
}
|
|
205
194
|
if (this.uiCtx) {
|
|
206
195
|
this.uiCtx.setWidget("pi-todo", undefined);
|
|
207
|
-
this.uiCtx.setStatus("pi-todo", undefined);
|
|
208
196
|
}
|
|
209
197
|
this.widgetRegistered = false;
|
|
210
198
|
this.tui = undefined;
|