@vibetasks/mcp-server 0.5.5 → 0.5.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/dist/index.js +29 -15
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -24,7 +24,7 @@ function setupTools(taskOps) {
|
|
|
24
24
|
// create_task
|
|
25
25
|
{
|
|
26
26
|
name: "create_task",
|
|
27
|
-
description: "Create a new task in VibeTasks. Use this instead of TodoWrite - tasks persist across sessions and sync everywhere.",
|
|
27
|
+
description: "Create a new task in VibeTasks. Use this instead of TodoWrite - tasks persist across sessions and sync everywhere. If you plan to work on it immediately, set start_vibing=true.",
|
|
28
28
|
inputSchema: z.object({
|
|
29
29
|
title: z.string().describe("Task title (required)"),
|
|
30
30
|
description: z.string().optional().describe("Brief description of what this task involves"),
|
|
@@ -36,7 +36,8 @@ function setupTools(taskOps) {
|
|
|
36
36
|
})).optional().describe("Inline subtasks - each with title, done status, and optional notes"),
|
|
37
37
|
due_date: z.string().optional().describe("Due date (ISO 8601 format)"),
|
|
38
38
|
priority: z.enum(["none", "low", "medium", "high"]).default("none").describe("Task priority"),
|
|
39
|
-
tags: z.array(z.string()).optional().describe("Tag names to attach")
|
|
39
|
+
tags: z.array(z.string()).optional().describe("Tag names to attach"),
|
|
40
|
+
start_vibing: z.boolean().default(false).describe(`If true, immediately set task to "vibing" status (you're starting work on it now)`)
|
|
40
41
|
}),
|
|
41
42
|
handler: async (args, taskOps2) => {
|
|
42
43
|
let tagIds = [];
|
|
@@ -64,6 +65,10 @@ function setupTools(taskOps) {
|
|
|
64
65
|
if (tagIds.length > 0) {
|
|
65
66
|
await taskOps2.linkTaskTags(task.id, tagIds);
|
|
66
67
|
}
|
|
68
|
+
let finalTask = task;
|
|
69
|
+
if (args.start_vibing) {
|
|
70
|
+
finalTask = await taskOps2.updateTask(task.id, { status: "vibing" });
|
|
71
|
+
}
|
|
67
72
|
return {
|
|
68
73
|
content: [
|
|
69
74
|
{
|
|
@@ -72,14 +77,16 @@ function setupTools(taskOps) {
|
|
|
72
77
|
{
|
|
73
78
|
success: true,
|
|
74
79
|
task: {
|
|
75
|
-
id:
|
|
76
|
-
title:
|
|
77
|
-
description:
|
|
78
|
-
priority:
|
|
79
|
-
due_date:
|
|
80
|
+
id: finalTask.id,
|
|
81
|
+
title: finalTask.title,
|
|
82
|
+
description: finalTask.description,
|
|
83
|
+
priority: finalTask.priority,
|
|
84
|
+
due_date: finalTask.due_date,
|
|
85
|
+
status: finalTask.status,
|
|
80
86
|
subtasks: subtasksJson,
|
|
81
|
-
created_at:
|
|
82
|
-
}
|
|
87
|
+
created_at: finalTask.created_at
|
|
88
|
+
},
|
|
89
|
+
message: args.start_vibing ? "Task created and set to vibing status - you're now working on it!" : "Task created successfully"
|
|
83
90
|
},
|
|
84
91
|
null,
|
|
85
92
|
2
|
|
@@ -267,14 +274,15 @@ function setupTools(taskOps) {
|
|
|
267
274
|
// create_task_with_subtasks
|
|
268
275
|
{
|
|
269
276
|
name: "create_task_with_subtasks",
|
|
270
|
-
description: "Create a parent task with multiple subtasks in one call. Use this when using TodoWrite - it automatically mirrors your todo list to TaskFlow for persistent tracking.",
|
|
277
|
+
description: "Create a parent task with multiple subtasks in one call. Use this when using TodoWrite - it automatically mirrors your todo list to TaskFlow for persistent tracking. Set start_vibing=true if you're starting work immediately.",
|
|
271
278
|
inputSchema: z.object({
|
|
272
279
|
title: z.string().describe("Parent task title (the overall goal)"),
|
|
273
280
|
subtasks: z.array(z.string()).describe("Array of subtask titles (one for each todo item)"),
|
|
274
281
|
notes: z.string().optional().describe("Notes for parent task"),
|
|
275
282
|
due_date: z.string().optional().describe("Due date for parent task (ISO 8601 format)"),
|
|
276
283
|
priority: z.enum(["none", "low", "medium", "high"]).default("none").describe("Priority for parent task"),
|
|
277
|
-
tags: z.array(z.string()).optional().describe("Tag names to attach to parent task")
|
|
284
|
+
tags: z.array(z.string()).optional().describe("Tag names to attach to parent task"),
|
|
285
|
+
start_vibing: z.boolean().default(false).describe(`If true, immediately set parent task to "vibing" status (you're starting work on it now)`)
|
|
278
286
|
}),
|
|
279
287
|
handler: async (args, taskOps2) => {
|
|
280
288
|
let tagIds = [];
|
|
@@ -304,6 +312,10 @@ function setupTools(taskOps) {
|
|
|
304
312
|
});
|
|
305
313
|
subtasks.push(subtask);
|
|
306
314
|
}
|
|
315
|
+
let finalParentTask = parentTask;
|
|
316
|
+
if (args.start_vibing) {
|
|
317
|
+
finalParentTask = await taskOps2.updateTask(parentTask.id, { status: "vibing" });
|
|
318
|
+
}
|
|
307
319
|
return {
|
|
308
320
|
content: [
|
|
309
321
|
{
|
|
@@ -312,15 +324,17 @@ function setupTools(taskOps) {
|
|
|
312
324
|
{
|
|
313
325
|
success: true,
|
|
314
326
|
parent_task: {
|
|
315
|
-
id:
|
|
316
|
-
title:
|
|
317
|
-
priority:
|
|
327
|
+
id: finalParentTask.id,
|
|
328
|
+
title: finalParentTask.title,
|
|
329
|
+
priority: finalParentTask.priority,
|
|
330
|
+
status: finalParentTask.status,
|
|
318
331
|
subtask_count: subtasks.length
|
|
319
332
|
},
|
|
320
333
|
subtasks: subtasks.map((s) => ({
|
|
321
334
|
id: s.id,
|
|
322
335
|
title: s.title
|
|
323
|
-
}))
|
|
336
|
+
})),
|
|
337
|
+
message: args.start_vibing ? "Parent task created and set to vibing status - you're now working on it!" : "Parent task and subtasks created successfully"
|
|
324
338
|
},
|
|
325
339
|
null,
|
|
326
340
|
2
|
package/package.json
CHANGED