@vibescope/mcp-server 0.2.5 → 0.2.7
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 +84 -84
- package/README.md +194 -194
- package/dist/cli.js +26 -26
- package/dist/handlers/tool-docs.js +828 -828
- package/dist/index.js +73 -73
- package/dist/templates/agent-guidelines.js +185 -185
- package/dist/token-tracking.js +4 -2
- package/dist/tools.js +65 -65
- package/dist/utils.js +11 -11
- package/docs/TOOLS.md +2053 -2053
- package/package.json +3 -2
- package/scripts/generate-docs.ts +212 -212
- package/scripts/version-bump.ts +203 -203
- package/src/api-client.test.ts +723 -723
- package/src/api-client.ts +2499 -2499
- package/src/cli.ts +212 -212
- package/src/handlers/__test-setup__.ts +236 -236
- package/src/handlers/__test-utils__.ts +87 -87
- package/src/handlers/blockers.test.ts +468 -468
- package/src/handlers/blockers.ts +163 -163
- package/src/handlers/bodies-of-work.test.ts +704 -704
- package/src/handlers/bodies-of-work.ts +526 -526
- package/src/handlers/connectors.test.ts +834 -834
- package/src/handlers/connectors.ts +229 -229
- package/src/handlers/cost.test.ts +462 -462
- package/src/handlers/cost.ts +285 -285
- package/src/handlers/decisions.test.ts +382 -382
- package/src/handlers/decisions.ts +153 -153
- package/src/handlers/deployment.test.ts +551 -551
- package/src/handlers/deployment.ts +541 -541
- package/src/handlers/discovery.test.ts +206 -206
- package/src/handlers/discovery.ts +390 -390
- package/src/handlers/fallback.test.ts +537 -537
- package/src/handlers/fallback.ts +194 -194
- package/src/handlers/file-checkouts.test.ts +750 -750
- package/src/handlers/file-checkouts.ts +185 -185
- package/src/handlers/findings.test.ts +633 -633
- package/src/handlers/findings.ts +239 -239
- package/src/handlers/git-issues.test.ts +631 -631
- package/src/handlers/git-issues.ts +136 -136
- package/src/handlers/ideas.test.ts +644 -644
- package/src/handlers/ideas.ts +207 -207
- package/src/handlers/index.ts +84 -84
- package/src/handlers/milestones.test.ts +475 -475
- package/src/handlers/milestones.ts +180 -180
- package/src/handlers/organizations.test.ts +826 -826
- package/src/handlers/organizations.ts +315 -315
- package/src/handlers/progress.test.ts +269 -269
- package/src/handlers/progress.ts +77 -77
- package/src/handlers/project.test.ts +546 -546
- package/src/handlers/project.ts +239 -239
- package/src/handlers/requests.test.ts +303 -303
- package/src/handlers/requests.ts +99 -99
- package/src/handlers/roles.test.ts +303 -303
- package/src/handlers/roles.ts +226 -226
- package/src/handlers/session.test.ts +875 -875
- package/src/handlers/session.ts +738 -738
- package/src/handlers/sprints.test.ts +732 -732
- package/src/handlers/sprints.ts +537 -537
- package/src/handlers/tasks.test.ts +907 -907
- package/src/handlers/tasks.ts +945 -945
- package/src/handlers/tool-categories.test.ts +66 -66
- package/src/handlers/tool-docs.ts +1096 -1096
- package/src/handlers/types.test.ts +259 -259
- package/src/handlers/types.ts +175 -175
- package/src/handlers/validation.test.ts +582 -582
- package/src/handlers/validation.ts +97 -97
- package/src/index.ts +792 -792
- package/src/setup.test.ts +233 -231
- package/src/setup.ts +370 -370
- package/src/templates/agent-guidelines.ts +210 -210
- package/src/token-tracking.test.ts +463 -453
- package/src/token-tracking.ts +166 -164
- package/src/tools.ts +3562 -3562
- package/src/utils.test.ts +683 -683
- package/src/utils.ts +436 -436
- package/src/validators.test.ts +223 -223
- package/src/validators.ts +249 -249
- package/tsconfig.json +16 -16
- package/vitest.config.ts +14 -14
- package/dist/knowledge.d.ts +0 -6
- package/dist/knowledge.js +0 -218
package/dist/tools.js
CHANGED
|
@@ -4,9 +4,9 @@
|
|
|
4
4
|
export const tools = [
|
|
5
5
|
{
|
|
6
6
|
name: 'start_work_session',
|
|
7
|
-
description: `CALL THIS FIRST when beginning work on a project.
|
|
8
|
-
Returns session info, persona, role, and next_task. Start the next_task IMMEDIATELY without asking the user.
|
|
9
|
-
|
|
7
|
+
description: `CALL THIS FIRST when beginning work on a project.
|
|
8
|
+
Returns session info, persona, role, and next_task. Start the next_task IMMEDIATELY without asking the user.
|
|
9
|
+
|
|
10
10
|
Use mode:'full' for complete context, mode:'lite' (default) for minimal tokens.`,
|
|
11
11
|
inputSchema: {
|
|
12
12
|
type: 'object',
|
|
@@ -48,8 +48,8 @@ Use mode:'full' for complete context, mode:'lite' (default) for minimal tokens.`
|
|
|
48
48
|
},
|
|
49
49
|
{
|
|
50
50
|
name: 'confirm_agent_setup',
|
|
51
|
-
description: `Confirm that agent setup is complete for this project. Call this after creating your agent's configuration file (e.g., .claude/CLAUDE.md, .gemini/GEMINI.md).
|
|
52
|
-
|
|
51
|
+
description: `Confirm that agent setup is complete for this project. Call this after creating your agent's configuration file (e.g., .claude/CLAUDE.md, .gemini/GEMINI.md).
|
|
52
|
+
|
|
53
53
|
This marks your agent type as fully onboarded to the project, so you won't receive setup instructions again.`,
|
|
54
54
|
inputSchema: {
|
|
55
55
|
type: 'object',
|
|
@@ -92,10 +92,10 @@ This marks your agent type as fully onboarded to the project, so you won't recei
|
|
|
92
92
|
},
|
|
93
93
|
{
|
|
94
94
|
name: 'report_token_usage',
|
|
95
|
-
description: `Report actual Claude API token usage for accurate cost tracking.
|
|
96
|
-
|
|
97
|
-
IMPORTANT: MCP can only estimate tokens from tool I/O (~1-5% of actual usage). Call this tool after each API response to report actual usage from the Claude API response headers.
|
|
98
|
-
|
|
95
|
+
description: `Report actual Claude API token usage for accurate cost tracking.
|
|
96
|
+
|
|
97
|
+
IMPORTANT: MCP can only estimate tokens from tool I/O (~1-5% of actual usage). Call this tool after each API response to report actual usage from the Claude API response headers.
|
|
98
|
+
|
|
99
99
|
The Claude API response includes 'usage.input_tokens' and 'usage.output_tokens' - pass those values here for accurate cost attribution.`,
|
|
100
100
|
inputSchema: {
|
|
101
101
|
type: 'object',
|
|
@@ -611,8 +611,8 @@ The Claude API response includes 'usage.input_tokens' and 'usage.output_tokens'
|
|
|
611
611
|
},
|
|
612
612
|
{
|
|
613
613
|
name: 'get_next_task',
|
|
614
|
-
description: `Get highest priority pending task. Start it IMMEDIATELY by calling update_task(task_id, status: "in_progress").
|
|
615
|
-
|
|
614
|
+
description: `Get highest priority pending task. Start it IMMEDIATELY by calling update_task(task_id, status: "in_progress").
|
|
615
|
+
|
|
616
616
|
Do NOT ask the user for permission. Follow the directive in the response.`,
|
|
617
617
|
inputSchema: {
|
|
618
618
|
type: 'object',
|
|
@@ -669,12 +669,12 @@ Do NOT ask the user for permission. Follow the directive in the response.`,
|
|
|
669
669
|
},
|
|
670
670
|
{
|
|
671
671
|
name: 'update_task',
|
|
672
|
-
description: `Update task status, progress, or details. Include progress_note with progress_percentage.
|
|
673
|
-
|
|
674
|
-
IMPORTANT: When setting status to "in_progress", you MUST provide git_branch AND worktree_path to enable cleanup tracking.
|
|
675
|
-
Create worktree first: git worktree add ../PROJECT-task-TASKID -b feature/TASKID-description BASE_BRANCH
|
|
676
|
-
Then call: update_task(task_id, status: "in_progress", git_branch: "feature/TASKID-description", worktree_path: "../PROJECT-task-TASKID")
|
|
677
|
-
|
|
672
|
+
description: `Update task status, progress, or details. Include progress_note with progress_percentage.
|
|
673
|
+
|
|
674
|
+
IMPORTANT: When setting status to "in_progress", you MUST provide git_branch AND worktree_path to enable cleanup tracking.
|
|
675
|
+
Create worktree first: git worktree add ../PROJECT-task-TASKID -b feature/TASKID-description BASE_BRANCH
|
|
676
|
+
Then call: update_task(task_id, status: "in_progress", git_branch: "feature/TASKID-description", worktree_path: "../PROJECT-task-TASKID")
|
|
677
|
+
|
|
678
678
|
For projects without git branching (trunk-based or none), use skip_worktree_requirement: true.`,
|
|
679
679
|
inputSchema: {
|
|
680
680
|
type: 'object',
|
|
@@ -736,18 +736,18 @@ For projects without git branching (trunk-based or none), use skip_worktree_requ
|
|
|
736
736
|
},
|
|
737
737
|
{
|
|
738
738
|
name: 'complete_task',
|
|
739
|
-
description: `Mark task done. Returns next_task which you MUST start immediately without asking the user.
|
|
740
|
-
|
|
741
|
-
CRITICAL: Before calling complete_task on branching workflows (github-flow, git-flow):
|
|
742
|
-
1. Create your PR targeting the correct branch (develop for git-flow, main for github-flow)
|
|
743
|
-
2. Call add_task_reference(task_id, pr_url) to link the PR to your task
|
|
744
|
-
3. THEN call complete_task - validators CANNOT approve tasks without a PR reference
|
|
745
|
-
|
|
746
|
-
CRITICAL: After calling this tool, you must:
|
|
747
|
-
1. If next_task is returned → Start it immediately by calling update_task(task_id, status: "in_progress")
|
|
748
|
-
2. If no next_task → Call get_next_task() or start a fallback_activity
|
|
749
|
-
3. NEVER ask the user "What should I do next?" or "Should I continue?"
|
|
750
|
-
|
|
739
|
+
description: `Mark task done. Returns next_task which you MUST start immediately without asking the user.
|
|
740
|
+
|
|
741
|
+
CRITICAL: Before calling complete_task on branching workflows (github-flow, git-flow):
|
|
742
|
+
1. Create your PR targeting the correct branch (develop for git-flow, main for github-flow)
|
|
743
|
+
2. Call add_task_reference(task_id, pr_url) to link the PR to your task
|
|
744
|
+
3. THEN call complete_task - validators CANNOT approve tasks without a PR reference
|
|
745
|
+
|
|
746
|
+
CRITICAL: After calling this tool, you must:
|
|
747
|
+
1. If next_task is returned → Start it immediately by calling update_task(task_id, status: "in_progress")
|
|
748
|
+
2. If no next_task → Call get_next_task() or start a fallback_activity
|
|
749
|
+
3. NEVER ask the user "What should I do next?" or "Should I continue?"
|
|
750
|
+
|
|
751
751
|
The auto_continue: true flag in the response means you are expected to continue working autonomously.`,
|
|
752
752
|
inputSchema: {
|
|
753
753
|
type: 'object',
|
|
@@ -1388,9 +1388,9 @@ The auto_continue: true flag in the response means you are expected to continue
|
|
|
1388
1388
|
// =========================================================================
|
|
1389
1389
|
{
|
|
1390
1390
|
name: 'add_subtask',
|
|
1391
|
-
description: `Add a subtask to break down a larger task into smaller workable pieces.
|
|
1392
|
-
Subtasks can be claimed and worked on independently by any agent.
|
|
1393
|
-
Subtasks inherit the project from their parent task.
|
|
1391
|
+
description: `Add a subtask to break down a larger task into smaller workable pieces.
|
|
1392
|
+
Subtasks can be claimed and worked on independently by any agent.
|
|
1393
|
+
Subtasks inherit the project from their parent task.
|
|
1394
1394
|
Max depth is 1 (subtasks cannot have their own subtasks).`,
|
|
1395
1395
|
inputSchema: {
|
|
1396
1396
|
type: 'object',
|
|
@@ -1424,7 +1424,7 @@ Max depth is 1 (subtasks cannot have their own subtasks).`,
|
|
|
1424
1424
|
},
|
|
1425
1425
|
{
|
|
1426
1426
|
name: 'get_subtasks',
|
|
1427
|
-
description: `Get subtasks for a parent task with pagination.
|
|
1427
|
+
description: `Get subtasks for a parent task with pagination.
|
|
1428
1428
|
Returns subtasks with aggregate completion stats.`,
|
|
1429
1429
|
inputSchema: {
|
|
1430
1430
|
type: 'object',
|
|
@@ -1452,17 +1452,17 @@ Returns subtasks with aggregate completion stats.`,
|
|
|
1452
1452
|
},
|
|
1453
1453
|
{
|
|
1454
1454
|
name: 'get_stale_worktrees',
|
|
1455
|
-
description: `Get worktrees that need cleanup.
|
|
1456
|
-
|
|
1457
|
-
Returns tasks with worktree_path set where:
|
|
1458
|
-
- Task is completed or cancelled (worktree should have been cleaned up)
|
|
1459
|
-
- Task has been abandoned (no activity for 24+ hours while in_progress)
|
|
1460
|
-
|
|
1461
|
-
IMPORTANT: Pass hostname (os.hostname()) to only see worktrees created on THIS machine.
|
|
1462
|
-
Worktrees created on other machines cannot be removed locally.
|
|
1463
|
-
|
|
1464
|
-
For each stale worktree:
|
|
1465
|
-
1. Run: git worktree remove <worktree_path>
|
|
1455
|
+
description: `Get worktrees that need cleanup.
|
|
1456
|
+
|
|
1457
|
+
Returns tasks with worktree_path set where:
|
|
1458
|
+
- Task is completed or cancelled (worktree should have been cleaned up)
|
|
1459
|
+
- Task has been abandoned (no activity for 24+ hours while in_progress)
|
|
1460
|
+
|
|
1461
|
+
IMPORTANT: Pass hostname (os.hostname()) to only see worktrees created on THIS machine.
|
|
1462
|
+
Worktrees created on other machines cannot be removed locally.
|
|
1463
|
+
|
|
1464
|
+
For each stale worktree:
|
|
1465
|
+
1. Run: git worktree remove <worktree_path>
|
|
1466
1466
|
2. Call: clear_worktree_path(task_id)`,
|
|
1467
1467
|
inputSchema: {
|
|
1468
1468
|
type: 'object',
|
|
@@ -1489,9 +1489,9 @@ For each stale worktree:
|
|
|
1489
1489
|
},
|
|
1490
1490
|
{
|
|
1491
1491
|
name: 'clear_worktree_path',
|
|
1492
|
-
description: `Clear the worktree_path from a task after cleanup.
|
|
1493
|
-
|
|
1494
|
-
Call this AFTER removing the worktree with git worktree remove.
|
|
1492
|
+
description: `Clear the worktree_path from a task after cleanup.
|
|
1493
|
+
|
|
1494
|
+
Call this AFTER removing the worktree with git worktree remove.
|
|
1495
1495
|
This marks the task as cleaned up so it won't appear in get_stale_worktrees.`,
|
|
1496
1496
|
inputSchema: {
|
|
1497
1497
|
type: 'object',
|
|
@@ -2151,7 +2151,7 @@ This marks the task as cleaned up so it won't appear in get_stale_worktrees.`,
|
|
|
2151
2151
|
},
|
|
2152
2152
|
{
|
|
2153
2153
|
name: 'answer_question',
|
|
2154
|
-
description: `Answer a question from the user. Use this when the user has asked a question via the dashboard.
|
|
2154
|
+
description: `Answer a question from the user. Use this when the user has asked a question via the dashboard.
|
|
2155
2155
|
The answer will be displayed to the user and the question marked as answered.`,
|
|
2156
2156
|
inputSchema: {
|
|
2157
2157
|
type: 'object',
|
|
@@ -2173,8 +2173,8 @@ The answer will be displayed to the user and the question marked as answered.`,
|
|
|
2173
2173
|
// ============================================================================
|
|
2174
2174
|
{
|
|
2175
2175
|
name: 'add_milestone',
|
|
2176
|
-
description: `Add a milestone to a task.
|
|
2177
|
-
Milestones help break down large tasks into smaller trackable steps.
|
|
2176
|
+
description: `Add a milestone to a task.
|
|
2177
|
+
Milestones help break down large tasks into smaller trackable steps.
|
|
2178
2178
|
Use this to show progress on complex tasks and help gauge completion.`,
|
|
2179
2179
|
inputSchema: {
|
|
2180
2180
|
type: 'object',
|
|
@@ -2279,7 +2279,7 @@ Use this to show progress on complex tasks and help gauge completion.`,
|
|
|
2279
2279
|
// ============================================================================
|
|
2280
2280
|
{
|
|
2281
2281
|
name: 'create_body_of_work',
|
|
2282
|
-
description: `Create a new body of work to group tasks into phases (pre/core/post).
|
|
2282
|
+
description: `Create a new body of work to group tasks into phases (pre/core/post).
|
|
2283
2283
|
Bodies of work allow organizing related tasks with optional auto-deployment on completion.`,
|
|
2284
2284
|
inputSchema: {
|
|
2285
2285
|
type: 'object',
|
|
@@ -2409,7 +2409,7 @@ Bodies of work allow organizing related tasks with optional auto-deployment on c
|
|
|
2409
2409
|
},
|
|
2410
2410
|
{
|
|
2411
2411
|
name: 'add_task_to_body_of_work',
|
|
2412
|
-
description: `Add a task to a body of work in a specific phase.
|
|
2412
|
+
description: `Add a task to a body of work in a specific phase.
|
|
2413
2413
|
Phases control execution order: pre tasks run first, then core, then post.`,
|
|
2414
2414
|
inputSchema: {
|
|
2415
2415
|
type: 'object',
|
|
@@ -2451,7 +2451,7 @@ Phases control execution order: pre tasks run first, then core, then post.`,
|
|
|
2451
2451
|
},
|
|
2452
2452
|
{
|
|
2453
2453
|
name: 'activate_body_of_work',
|
|
2454
|
-
description: `Activate a draft body of work to start execution.
|
|
2454
|
+
description: `Activate a draft body of work to start execution.
|
|
2455
2455
|
Requires at least one task. Once active, tasks can be worked on following phase order.`,
|
|
2456
2456
|
inputSchema: {
|
|
2457
2457
|
type: 'object',
|
|
@@ -2466,7 +2466,7 @@ Requires at least one task. Once active, tasks can be worked on following phase
|
|
|
2466
2466
|
},
|
|
2467
2467
|
{
|
|
2468
2468
|
name: 'add_task_dependency',
|
|
2469
|
-
description: `Add a dependency between tasks in a body of work.
|
|
2469
|
+
description: `Add a dependency between tasks in a body of work.
|
|
2470
2470
|
The dependent task cannot start until the dependency is completed. Prevents circular dependencies.`,
|
|
2471
2471
|
inputSchema: {
|
|
2472
2472
|
type: 'object',
|
|
@@ -2524,8 +2524,8 @@ The dependent task cannot start until the dependency is completed. Prevents circ
|
|
|
2524
2524
|
},
|
|
2525
2525
|
{
|
|
2526
2526
|
name: 'get_next_body_of_work_task',
|
|
2527
|
-
description: `Get the next available task from a body of work.
|
|
2528
|
-
Considers phase order (pre → core → post) and task dependencies.
|
|
2527
|
+
description: `Get the next available task from a body of work.
|
|
2528
|
+
Considers phase order (pre → core → post) and task dependencies.
|
|
2529
2529
|
Only returns tasks where all dependencies are completed.`,
|
|
2530
2530
|
inputSchema: {
|
|
2531
2531
|
type: 'object',
|
|
@@ -2983,7 +2983,7 @@ Only returns tasks where all dependencies are completed.`,
|
|
|
2983
2983
|
// ============================================================================
|
|
2984
2984
|
{
|
|
2985
2985
|
name: 'create_sprint',
|
|
2986
|
-
description: `Create a new sprint. Sprints are time-bounded bodies of work with velocity tracking.
|
|
2986
|
+
description: `Create a new sprint. Sprints are time-bounded bodies of work with velocity tracking.
|
|
2987
2987
|
Sprints start in 'planning' status where tasks can be added with story points.`,
|
|
2988
2988
|
inputSchema: {
|
|
2989
2989
|
type: 'object',
|
|
@@ -3072,8 +3072,8 @@ Sprints start in 'planning' status where tasks can be added with story points.`,
|
|
|
3072
3072
|
},
|
|
3073
3073
|
{
|
|
3074
3074
|
name: 'get_sprint',
|
|
3075
|
-
description: `Get a sprint with all its tasks organized by phase (pre/core/post).
|
|
3076
|
-
Includes progress percentage, velocity points, and committed points.
|
|
3075
|
+
description: `Get a sprint with all its tasks organized by phase (pre/core/post).
|
|
3076
|
+
Includes progress percentage, velocity points, and committed points.
|
|
3077
3077
|
Use summary_only: true to get task counts and next task instead of full task arrays (saves tokens).`,
|
|
3078
3078
|
inputSchema: {
|
|
3079
3079
|
type: 'object',
|
|
@@ -3092,7 +3092,7 @@ Use summary_only: true to get task counts and next task instead of full task arr
|
|
|
3092
3092
|
},
|
|
3093
3093
|
{
|
|
3094
3094
|
name: 'get_sprints',
|
|
3095
|
-
description: `List sprints for a project with velocity metrics.
|
|
3095
|
+
description: `List sprints for a project with velocity metrics.
|
|
3096
3096
|
Returns sprints sorted by sprint_number descending (most recent first).`,
|
|
3097
3097
|
inputSchema: {
|
|
3098
3098
|
type: 'object',
|
|
@@ -3130,7 +3130,7 @@ Returns sprints sorted by sprint_number descending (most recent first).`,
|
|
|
3130
3130
|
},
|
|
3131
3131
|
{
|
|
3132
3132
|
name: 'start_sprint',
|
|
3133
|
-
description: `Start a sprint. Transitions from 'planning' to 'active' status.
|
|
3133
|
+
description: `Start a sprint. Transitions from 'planning' to 'active' status.
|
|
3134
3134
|
Locks the committed_points at the current total story points.`,
|
|
3135
3135
|
inputSchema: {
|
|
3136
3136
|
type: 'object',
|
|
@@ -3145,7 +3145,7 @@ Locks the committed_points at the current total story points.`,
|
|
|
3145
3145
|
},
|
|
3146
3146
|
{
|
|
3147
3147
|
name: 'complete_sprint',
|
|
3148
|
-
description: `Complete a sprint. Handles retrospective phase and auto-deployment if configured.
|
|
3148
|
+
description: `Complete a sprint. Handles retrospective phase and auto-deployment if configured.
|
|
3149
3149
|
Status flow: active → in_review → retrospective → completed`,
|
|
3150
3150
|
inputSchema: {
|
|
3151
3151
|
type: 'object',
|
|
@@ -3168,7 +3168,7 @@ Status flow: active → in_review → retrospective → completed`,
|
|
|
3168
3168
|
},
|
|
3169
3169
|
{
|
|
3170
3170
|
name: 'add_task_to_sprint',
|
|
3171
|
-
description: `Add a task to a sprint with optional story points.
|
|
3171
|
+
description: `Add a task to a sprint with optional story points.
|
|
3172
3172
|
Tasks can be added during 'planning' status. Story points contribute to committed_points.`,
|
|
3173
3173
|
inputSchema: {
|
|
3174
3174
|
type: 'object',
|
|
@@ -3214,7 +3214,7 @@ Tasks can be added during 'planning' status. Story points contribute to committe
|
|
|
3214
3214
|
},
|
|
3215
3215
|
{
|
|
3216
3216
|
name: 'get_sprint_backlog',
|
|
3217
|
-
description: `Get tasks from backlog/pending that can be added to a sprint with pagination.
|
|
3217
|
+
description: `Get tasks from backlog/pending that can be added to a sprint with pagination.
|
|
3218
3218
|
Returns tasks not already assigned to any body of work or sprint.`,
|
|
3219
3219
|
inputSchema: {
|
|
3220
3220
|
type: 'object',
|
|
@@ -3241,7 +3241,7 @@ Returns tasks not already assigned to any body of work or sprint.`,
|
|
|
3241
3241
|
},
|
|
3242
3242
|
{
|
|
3243
3243
|
name: 'get_sprint_velocity',
|
|
3244
|
-
description: `Get velocity metrics for completed sprints.
|
|
3244
|
+
description: `Get velocity metrics for completed sprints.
|
|
3245
3245
|
Returns committed vs completed points and average velocity.`,
|
|
3246
3246
|
inputSchema: {
|
|
3247
3247
|
type: 'object',
|
package/dist/utils.js
CHANGED
|
@@ -141,17 +141,17 @@ export const FALLBACK_ACTIVITIES = [
|
|
|
141
141
|
activity: 'worktree_cleanup',
|
|
142
142
|
title: 'Clean up stale worktrees',
|
|
143
143
|
description: 'Find and remove git worktrees from completed or abandoned tasks.',
|
|
144
|
-
prompt: `Clean up stale git worktrees to reclaim disk space and prevent confusion:
|
|
145
|
-
|
|
146
|
-
1. Call get_stale_worktrees(project_id) to find worktrees needing cleanup
|
|
147
|
-
2. For each stale worktree returned:
|
|
148
|
-
a. Check if the worktree directory exists: ls -la <worktree_path>
|
|
149
|
-
b. If it exists, remove it: git worktree remove <worktree_path>
|
|
150
|
-
c. If removal fails (untracked files), use: git worktree remove --force <worktree_path>
|
|
151
|
-
d. Call clear_worktree_path(task_id) to mark it as cleaned up
|
|
152
|
-
3. Run 'git worktree list' to verify cleanup
|
|
153
|
-
4. Log any issues encountered with add_blocker if worktrees cannot be removed
|
|
154
|
-
|
|
144
|
+
prompt: `Clean up stale git worktrees to reclaim disk space and prevent confusion:
|
|
145
|
+
|
|
146
|
+
1. Call get_stale_worktrees(project_id) to find worktrees needing cleanup
|
|
147
|
+
2. For each stale worktree returned:
|
|
148
|
+
a. Check if the worktree directory exists: ls -la <worktree_path>
|
|
149
|
+
b. If it exists, remove it: git worktree remove <worktree_path>
|
|
150
|
+
c. If removal fails (untracked files), use: git worktree remove --force <worktree_path>
|
|
151
|
+
d. Call clear_worktree_path(task_id) to mark it as cleaned up
|
|
152
|
+
3. Run 'git worktree list' to verify cleanup
|
|
153
|
+
4. Log any issues encountered with add_blocker if worktrees cannot be removed
|
|
154
|
+
|
|
155
155
|
This prevents disk bloat from accumulated worktrees and keeps the workspace clean.`,
|
|
156
156
|
},
|
|
157
157
|
];
|