@sudosandwich/limps 0.2.0 → 0.3.0

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.
Files changed (216) hide show
  1. package/README.md +281 -33
  2. package/dist/cli/config-cmd.d.ts +68 -0
  3. package/dist/cli/config-cmd.d.ts.map +1 -0
  4. package/dist/cli/config-cmd.js +206 -0
  5. package/dist/cli/config-cmd.js.map +1 -0
  6. package/dist/cli/index.d.ts +11 -0
  7. package/dist/cli/index.d.ts.map +1 -0
  8. package/dist/cli/index.js +12 -0
  9. package/dist/cli/index.js.map +1 -0
  10. package/dist/cli/init-project.d.ts +12 -0
  11. package/dist/cli/init-project.d.ts.map +1 -0
  12. package/dist/cli/init-project.js +104 -0
  13. package/dist/cli/init-project.js.map +1 -0
  14. package/dist/cli/list-agents.d.ts +66 -0
  15. package/dist/cli/list-agents.d.ts.map +1 -0
  16. package/dist/cli/list-agents.js +147 -0
  17. package/dist/cli/list-agents.js.map +1 -0
  18. package/dist/cli/list-plans.d.ts +63 -0
  19. package/dist/cli/list-plans.d.ts.map +1 -0
  20. package/dist/cli/list-plans.js +218 -0
  21. package/dist/cli/list-plans.js.map +1 -0
  22. package/dist/cli/next-task.d.ts +83 -0
  23. package/dist/cli/next-task.d.ts.map +1 -0
  24. package/dist/cli/next-task.js +201 -0
  25. package/dist/cli/next-task.js.map +1 -0
  26. package/dist/cli/registry.d.ts +94 -0
  27. package/dist/cli/registry.d.ts.map +1 -0
  28. package/dist/cli/registry.js +150 -0
  29. package/dist/cli/registry.js.map +1 -0
  30. package/dist/cli/status.d.ts +35 -0
  31. package/dist/cli/status.d.ts.map +1 -0
  32. package/dist/cli/status.js +110 -0
  33. package/dist/cli/status.js.map +1 -0
  34. package/dist/cli.d.ts +3 -0
  35. package/dist/cli.d.ts.map +1 -0
  36. package/dist/cli.js +10 -0
  37. package/dist/cli.js.map +1 -0
  38. package/dist/commands/config/add.d.ts +9 -0
  39. package/dist/commands/config/add.d.ts.map +1 -0
  40. package/dist/commands/config/add.js +20 -0
  41. package/dist/commands/config/add.js.map +1 -0
  42. package/dist/commands/config/discover.d.ts +3 -0
  43. package/dist/commands/config/discover.d.ts.map +1 -0
  44. package/dist/commands/config/discover.js +9 -0
  45. package/dist/commands/config/discover.js.map +1 -0
  46. package/dist/commands/config/index.d.ts +3 -0
  47. package/dist/commands/config/index.d.ts.map +1 -0
  48. package/dist/commands/config/index.js +7 -0
  49. package/dist/commands/config/index.js.map +1 -0
  50. package/dist/commands/config/list.d.ts +3 -0
  51. package/dist/commands/config/list.d.ts.map +1 -0
  52. package/dist/commands/config/list.js +9 -0
  53. package/dist/commands/config/list.js.map +1 -0
  54. package/dist/commands/config/path.d.ts +3 -0
  55. package/dist/commands/config/path.d.ts.map +1 -0
  56. package/dist/commands/config/path.js +10 -0
  57. package/dist/commands/config/path.js.map +1 -0
  58. package/dist/commands/config/remove.d.ts +9 -0
  59. package/dist/commands/config/remove.d.ts.map +1 -0
  60. package/dist/commands/config/remove.js +17 -0
  61. package/dist/commands/config/remove.js.map +1 -0
  62. package/dist/commands/config/set.d.ts +9 -0
  63. package/dist/commands/config/set.d.ts.map +1 -0
  64. package/dist/commands/config/set.js +17 -0
  65. package/dist/commands/config/set.js.map +1 -0
  66. package/dist/commands/config/show.d.ts +3 -0
  67. package/dist/commands/config/show.d.ts.map +1 -0
  68. package/dist/commands/config/show.js +15 -0
  69. package/dist/commands/config/show.js.map +1 -0
  70. package/dist/commands/config/use.d.ts +9 -0
  71. package/dist/commands/config/use.d.ts.map +1 -0
  72. package/dist/commands/config/use.js +17 -0
  73. package/dist/commands/config/use.js.map +1 -0
  74. package/dist/commands/index.d.ts +3 -0
  75. package/dist/commands/index.d.ts.map +1 -0
  76. package/dist/commands/index.js +7 -0
  77. package/dist/commands/index.js.map +1 -0
  78. package/dist/commands/init.d.ts +13 -0
  79. package/dist/commands/init.d.ts.map +1 -0
  80. package/dist/commands/init.js +20 -0
  81. package/dist/commands/init.js.map +1 -0
  82. package/dist/commands/list-agents.d.ts +13 -0
  83. package/dist/commands/list-agents.d.ts.map +1 -0
  84. package/dist/commands/list-agents.js +31 -0
  85. package/dist/commands/list-agents.js.map +1 -0
  86. package/dist/commands/list-plans.d.ts +11 -0
  87. package/dist/commands/list-plans.d.ts.map +1 -0
  88. package/dist/commands/list-plans.js +21 -0
  89. package/dist/commands/list-plans.js.map +1 -0
  90. package/dist/commands/next-task.d.ts +13 -0
  91. package/dist/commands/next-task.d.ts.map +1 -0
  92. package/dist/commands/next-task.js +46 -0
  93. package/dist/commands/next-task.js.map +1 -0
  94. package/dist/commands/serve.d.ts +11 -0
  95. package/dist/commands/serve.d.ts.map +1 -0
  96. package/dist/commands/serve.js +31 -0
  97. package/dist/commands/serve.js.map +1 -0
  98. package/dist/commands/status.d.ts +13 -0
  99. package/dist/commands/status.d.ts.map +1 -0
  100. package/dist/commands/status.js +28 -0
  101. package/dist/commands/status.js.map +1 -0
  102. package/dist/components/AgentsList.d.ts +19 -0
  103. package/dist/components/AgentsList.d.ts.map +1 -0
  104. package/dist/components/AgentsList.js +29 -0
  105. package/dist/components/AgentsList.js.map +1 -0
  106. package/dist/components/Error.d.ts +6 -0
  107. package/dist/components/Error.d.ts.map +1 -0
  108. package/dist/components/Error.js +6 -0
  109. package/dist/components/Error.js.map +1 -0
  110. package/dist/components/NextTask.d.ts +12 -0
  111. package/dist/components/NextTask.d.ts.map +1 -0
  112. package/dist/components/NextTask.js +11 -0
  113. package/dist/components/NextTask.js.map +1 -0
  114. package/dist/components/PlanStatus.d.ts +11 -0
  115. package/dist/components/PlanStatus.d.ts.map +1 -0
  116. package/dist/components/PlanStatus.js +18 -0
  117. package/dist/components/PlanStatus.js.map +1 -0
  118. package/dist/components/PlansList.d.ts +12 -0
  119. package/dist/components/PlansList.d.ts.map +1 -0
  120. package/dist/components/PlansList.js +23 -0
  121. package/dist/components/PlansList.js.map +1 -0
  122. package/dist/components/Success.d.ts +6 -0
  123. package/dist/components/Success.d.ts.map +1 -0
  124. package/dist/components/Success.js +6 -0
  125. package/dist/components/Success.js.map +1 -0
  126. package/dist/index.d.ts +6 -0
  127. package/dist/index.d.ts.map +1 -1
  128. package/dist/index.js +9 -246
  129. package/dist/index.js.map +1 -1
  130. package/dist/server-main.d.ts +11 -0
  131. package/dist/server-main.d.ts.map +1 -0
  132. package/dist/server-main.js +81 -0
  133. package/dist/server-main.js.map +1 -0
  134. package/dist/server.js +1 -1
  135. package/dist/server.js.map +1 -1
  136. package/dist/theme/colors.d.ts +64 -0
  137. package/dist/theme/colors.d.ts.map +1 -0
  138. package/dist/theme/colors.js +85 -0
  139. package/dist/theme/colors.js.map +1 -0
  140. package/dist/theme/index.d.ts +6 -0
  141. package/dist/theme/index.d.ts.map +1 -0
  142. package/dist/theme/index.js +6 -0
  143. package/dist/theme/index.js.map +1 -0
  144. package/dist/tools/claim-task.d.ts +7 -10
  145. package/dist/tools/claim-task.d.ts.map +1 -1
  146. package/dist/tools/create-doc.d.ts +7 -10
  147. package/dist/tools/create-doc.d.ts.map +1 -1
  148. package/dist/tools/create-plan.d.ts +1 -7
  149. package/dist/tools/create-plan.d.ts.map +1 -1
  150. package/dist/tools/delete-doc.d.ts +1 -9
  151. package/dist/tools/delete-doc.d.ts.map +1 -1
  152. package/dist/tools/get-next-task.d.ts +19 -9
  153. package/dist/tools/get-next-task.d.ts.map +1 -1
  154. package/dist/tools/get-next-task.js +64 -1
  155. package/dist/tools/get-next-task.js.map +1 -1
  156. package/dist/tools/get-plan-status.d.ts +24 -0
  157. package/dist/tools/get-plan-status.d.ts.map +1 -0
  158. package/dist/tools/get-plan-status.js +48 -0
  159. package/dist/tools/get-plan-status.js.map +1 -0
  160. package/dist/tools/index.d.ts.map +1 -1
  161. package/dist/tools/index.js +66 -18
  162. package/dist/tools/index.js.map +1 -1
  163. package/dist/tools/list-agents.d.ts +24 -0
  164. package/dist/tools/list-agents.d.ts.map +1 -0
  165. package/dist/tools/list-agents.js +60 -0
  166. package/dist/tools/list-agents.js.map +1 -0
  167. package/dist/tools/list-docs.d.ts +1 -11
  168. package/dist/tools/list-docs.d.ts.map +1 -1
  169. package/dist/tools/list-plans.d.ts +23 -0
  170. package/dist/tools/list-plans.d.ts.map +1 -0
  171. package/dist/tools/list-plans.js +44 -0
  172. package/dist/tools/list-plans.js.map +1 -0
  173. package/dist/tools/open-document-in-cursor.d.ts +1 -9
  174. package/dist/tools/open-document-in-cursor.d.ts.map +1 -1
  175. package/dist/tools/process-doc.d.ts +43 -0
  176. package/dist/tools/process-doc.d.ts.map +1 -0
  177. package/dist/tools/{rlm-query.js → process-doc.js} +7 -8
  178. package/dist/tools/process-doc.js.map +1 -0
  179. package/dist/tools/process-docs.d.ts +54 -0
  180. package/dist/tools/process-docs.d.ts.map +1 -0
  181. package/dist/tools/{rlm-multi-query.js → process-docs.js} +10 -10
  182. package/dist/tools/process-docs.js.map +1 -0
  183. package/dist/tools/release-task.d.ts +5 -10
  184. package/dist/tools/release-task.d.ts.map +1 -1
  185. package/dist/tools/search-docs.d.ts +1 -7
  186. package/dist/tools/search-docs.d.ts.map +1 -1
  187. package/dist/tools/update-doc.d.ts +6 -90
  188. package/dist/tools/update-doc.d.ts.map +1 -1
  189. package/dist/tools/update-task-status.d.ts +7 -12
  190. package/dist/tools/update-task-status.d.ts.map +1 -1
  191. package/dist/utils/config-resolver.d.ts +19 -0
  192. package/dist/utils/config-resolver.d.ts.map +1 -0
  193. package/dist/utils/config-resolver.js +65 -0
  194. package/dist/utils/config-resolver.js.map +1 -0
  195. package/dist/utils/index.d.ts +1 -0
  196. package/dist/utils/index.d.ts.map +1 -1
  197. package/dist/utils/index.js +1 -0
  198. package/dist/utils/index.js.map +1 -1
  199. package/dist/utils/markdown.d.ts +15 -0
  200. package/dist/utils/markdown.d.ts.map +1 -0
  201. package/dist/utils/markdown.js +20 -0
  202. package/dist/utils/markdown.js.map +1 -0
  203. package/dist/utils/os-paths.d.ts +4 -4
  204. package/dist/utils/os-paths.js +5 -5
  205. package/dist/utils/os-paths.js.map +1 -1
  206. package/package.json +22 -11
  207. package/dist/tools/read-doc.d.ts +0 -44
  208. package/dist/tools/read-doc.d.ts.map +0 -1
  209. package/dist/tools/read-doc.js +0 -174
  210. package/dist/tools/read-doc.js.map +0 -1
  211. package/dist/tools/rlm-multi-query.d.ts +0 -110
  212. package/dist/tools/rlm-multi-query.d.ts.map +0 -1
  213. package/dist/tools/rlm-multi-query.js.map +0 -1
  214. package/dist/tools/rlm-query.d.ts +0 -56
  215. package/dist/tools/rlm-query.d.ts.map +0 -1
  216. package/dist/tools/rlm-query.js.map +0 -1
@@ -10,16 +10,13 @@ import type { ToolContext, ToolResult } from '../types.js';
10
10
  export declare const CreateDocInputSchema: z.ZodObject<{
11
11
  path: z.ZodString;
12
12
  content: z.ZodString;
13
- template: z.ZodDefault<z.ZodEnum<["addendum", "research", "example", "none"]>>;
14
- }, "strip", z.ZodTypeAny, {
15
- path: string;
16
- content: string;
17
- template: "none" | "research" | "addendum" | "example";
18
- }, {
19
- path: string;
20
- content: string;
21
- template?: "none" | "research" | "addendum" | "example" | undefined;
22
- }>;
13
+ template: z.ZodDefault<z.ZodEnum<{
14
+ none: "none";
15
+ research: "research";
16
+ addendum: "addendum";
17
+ example: "example";
18
+ }>>;
19
+ }, z.core.$strip>;
23
20
  export type CreateDocInput = z.infer<typeof CreateDocInputSchema>;
24
21
  /**
25
22
  * Output interface for create_doc tool.
@@ -1 +1 @@
1
- {"version":3,"file":"create-doc.d.ts","sourceRoot":"","sources":["../../src/tools/create-doc.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAgC,KAAK,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAG/E,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE3D;;GAEG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;EAO/B,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,IAAI,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,OAAO,CAAC;CACf;AAED;;;GAGG;AACH,eAAO,MAAM,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAqB5C,CAAC;AAmBF;;;;;;;GAOG;AACH,wBAAsB,eAAe,CACnC,KAAK,EAAE,cAAc,EACrB,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,UAAU,CAAC,CAgFrB"}
1
+ {"version":3,"file":"create-doc.d.ts","sourceRoot":"","sources":["../../src/tools/create-doc.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAgC,KAAK,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAG/E,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE3D;;GAEG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;iBAO/B,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,IAAI,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,OAAO,CAAC;CACf;AAED;;;GAGG;AACH,eAAO,MAAM,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAqB5C,CAAC;AAmBF;;;;;;;GAOG;AACH,wBAAsB,eAAe,CACnC,KAAK,EAAE,cAAc,EACrB,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,UAAU,CAAC,CAgFrB"}
@@ -6,13 +6,7 @@ import type { ToolContext, ToolResult } from '../types.js';
6
6
  export declare const CreatePlanInputSchema: z.ZodObject<{
7
7
  name: z.ZodString;
8
8
  description: z.ZodOptional<z.ZodString>;
9
- }, "strip", z.ZodTypeAny, {
10
- name: string;
11
- description?: string | undefined;
12
- }, {
13
- name: string;
14
- description?: string | undefined;
15
- }>;
9
+ }, z.core.$strip>;
16
10
  /**
17
11
  * Handle create_plan tool request.
18
12
  * Creates a new planning document from template with zero-padded ordering.
@@ -1 +1 @@
1
- {"version":3,"file":"create-plan.d.ts","sourceRoot":"","sources":["../../src/tools/create-plan.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAaxB,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAM3D;;GAEG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;EAGhC,CAAC;AAiHH;;;;;;;GAOG;AACH,wBAAsB,gBAAgB,CACpC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,EAC5C,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,UAAU,CAAC,CAgErB"}
1
+ {"version":3,"file":"create-plan.d.ts","sourceRoot":"","sources":["../../src/tools/create-plan.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAaxB,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAM3D;;GAEG;AACH,eAAO,MAAM,qBAAqB;;;iBAGhC,CAAC;AAiHH;;;;;;;GAOG;AACH,wBAAsB,gBAAgB,CACpC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,EAC5C,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,UAAU,CAAC,CAgErB"}
@@ -18,15 +18,7 @@ export declare const DeleteDocInputSchema: z.ZodObject<{
18
18
  path: z.ZodString;
19
19
  confirm: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
20
20
  permanent: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
21
- }, "strip", z.ZodTypeAny, {
22
- path: string;
23
- confirm: boolean;
24
- permanent: boolean;
25
- }, {
26
- path: string;
27
- confirm?: boolean | undefined;
28
- permanent?: boolean | undefined;
29
- }>;
21
+ }, z.core.$strip>;
30
22
  export type DeleteDocInput = z.infer<typeof DeleteDocInputSchema>;
31
23
  /**
32
24
  * Output interface for delete_doc tool.
@@ -1 +1 @@
1
- {"version":3,"file":"delete-doc.d.ts","sourceRoot":"","sources":["../../src/tools/delete-doc.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAM3D;;GAEG;AACH,eAAO,MAAM,SAAS,WAAW,CAAC;AAElC;;GAEG;AACH,eAAO,MAAM,eAAe,EAAE,SAAS,MAAM,EAO5C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;EAI/B,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAmCD;;;;;;;GAOG;AACH,wBAAsB,eAAe,CACnC,KAAK,EAAE,cAAc,EACrB,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,UAAU,CAAC,CAyIrB"}
1
+ {"version":3,"file":"delete-doc.d.ts","sourceRoot":"","sources":["../../src/tools/delete-doc.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAM3D;;GAEG;AACH,eAAO,MAAM,SAAS,WAAW,CAAC;AAElC;;GAEG;AACH,eAAO,MAAM,eAAe,EAAE,SAAS,MAAM,EAO5C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,oBAAoB;;;;iBAI/B,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAmCD;;;;;;;GAOG;AACH,wBAAsB,eAAe,CACnC,KAAK,EAAE,cAAc,EACrB,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,UAAU,CAAC,CAyIrB"}
@@ -4,17 +4,24 @@ import { type ParsedTask } from '../task-parser.js';
4
4
  import type { ToolContext, ToolResult } from '../types.js';
5
5
  /**
6
6
  * Input schema for get_next_task tool.
7
+ *
8
+ * When planId is provided, uses CLI-aligned scoring algorithm with breakdown:
9
+ * - Dependency Score: 40 points max (all-or-nothing)
10
+ * - Priority Score: 30 points max (based on agent number)
11
+ * - Workload Score: 30 points max (based on file count)
12
+ *
13
+ * When planId is not provided, searches across all plans (legacy behavior).
7
14
  */
8
15
  export declare const GetNextTaskInputSchema: z.ZodObject<{
9
- agentType: z.ZodEnum<["coder", "reviewer", "pm", "customer"]>;
10
- excludeIds: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
11
- }, "strip", z.ZodTypeAny, {
12
- agentType: "coder" | "reviewer" | "pm" | "customer";
13
- excludeIds?: string[] | undefined;
14
- }, {
15
- agentType: "coder" | "reviewer" | "pm" | "customer";
16
- excludeIds?: string[] | undefined;
17
- }>;
16
+ agentType: z.ZodEnum<{
17
+ coder: "coder";
18
+ reviewer: "reviewer";
19
+ pm: "pm";
20
+ customer: "customer";
21
+ }>;
22
+ excludeIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
23
+ planId: z.ZodOptional<z.ZodString>;
24
+ }, z.core.$strip>;
18
25
  /**
19
26
  * Task score interface.
20
27
  */
@@ -40,6 +47,9 @@ export declare function scoreTask(task: Task, agentType: 'coder' | 'reviewer' |
40
47
  * Handle get_next_task tool request.
41
48
  * Returns the highest-priority available task based on scoring algorithm.
42
49
  *
50
+ * When planId is provided, uses CLI-aligned scoring with detailed breakdown.
51
+ * When planId is not provided, searches across all plans (legacy behavior).
52
+ *
43
53
  * @param input - Tool input
44
54
  * @param context - Tool context
45
55
  * @returns Tool result
@@ -1 +1 @@
1
- {"version":3,"file":"get-next-task.d.ts","sourceRoot":"","sources":["../../src/tools/get-next-task.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAoB,KAAK,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC9E,OAAO,EAAyC,KAAK,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC3F,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE3D;;GAEG;AACH,eAAO,MAAM,sBAAsB;;;;;;;;;EAGjC,CAAC;AAEH;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAED;;GAEG;AACH,KAAK,IAAI,GAAG,UAAU,CAAC;AA8DvB;;;;;;;GAOG;AACH,wBAAgB,SAAS,CACvB,IAAI,EAAE,IAAI,EACV,SAAS,EAAE,OAAO,GAAG,UAAU,GAAG,IAAI,GAAG,UAAU,EACnD,YAAY,EAAE,iBAAiB,GAC9B,SAAS,CAgDX;AAED;;;;;;;GAOG;AACH,wBAAsB,iBAAiB,CACrC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,EAC7C,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,UAAU,CAAC,CA0GrB"}
1
+ {"version":3,"file":"get-next-task.d.ts","sourceRoot":"","sources":["../../src/tools/get-next-task.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAoB,KAAK,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC9E,OAAO,EAAyC,KAAK,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE3F,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE3D;;;;;;;;;GASG;AACH,eAAO,MAAM,sBAAsB;;;;;;;;;iBAOjC,CAAC;AAEH;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAED;;GAEG;AACH,KAAK,IAAI,GAAG,UAAU,CAAC;AA8DvB;;;;;;;GAOG;AACH,wBAAgB,SAAS,CACvB,IAAI,EAAE,IAAI,EACV,SAAS,EAAE,OAAO,GAAG,UAAU,GAAG,IAAI,GAAG,UAAU,EACnD,YAAY,EAAE,iBAAiB,GAC9B,SAAS,CAgDX;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,iBAAiB,CACrC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,EAC7C,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,UAAU,CAAC,CAgHrB"}
@@ -1,12 +1,24 @@
1
1
  import { z } from 'zod';
2
2
  import { readCoordination } from '../coordination.js';
3
3
  import { extractPlanId, parseTasksFromDocument } from '../task-parser.js';
4
+ import { getNextTaskData } from '../cli/next-task.js';
4
5
  /**
5
6
  * Input schema for get_next_task tool.
7
+ *
8
+ * When planId is provided, uses CLI-aligned scoring algorithm with breakdown:
9
+ * - Dependency Score: 40 points max (all-or-nothing)
10
+ * - Priority Score: 30 points max (based on agent number)
11
+ * - Workload Score: 30 points max (based on file count)
12
+ *
13
+ * When planId is not provided, searches across all plans (legacy behavior).
6
14
  */
7
15
  export const GetNextTaskInputSchema = z.object({
8
16
  agentType: z.enum(['coder', 'reviewer', 'pm', 'customer']),
9
17
  excludeIds: z.array(z.string()).optional(),
18
+ planId: z
19
+ .string()
20
+ .optional()
21
+ .describe('Plan number or name to search within (e.g., "4" or "0004-feature")'),
10
22
  });
11
23
  /**
12
24
  * Resolve dependency to task ID.
@@ -115,12 +127,20 @@ export function scoreTask(task, agentType, coordination) {
115
127
  * Handle get_next_task tool request.
116
128
  * Returns the highest-priority available task based on scoring algorithm.
117
129
  *
130
+ * When planId is provided, uses CLI-aligned scoring with detailed breakdown.
131
+ * When planId is not provided, searches across all plans (legacy behavior).
132
+ *
118
133
  * @param input - Tool input
119
134
  * @param context - Tool context
120
135
  * @returns Tool result
121
136
  */
122
137
  export async function handleGetNextTask(input, context) {
123
- const { agentType, excludeIds = [] } = input;
138
+ const { agentType, excludeIds = [], planId } = input;
139
+ // If planId is provided, use CLI-aligned scoring with breakdown
140
+ if (planId) {
141
+ return handleGetNextTaskWithPlan(planId, context);
142
+ }
143
+ // Legacy behavior: search across all plans
124
144
  // Read fresh coordination state (will be used in scoring)
125
145
  const coordination = await readCoordination(context.config.coordinationPath);
126
146
  // Query database for all planning documents
@@ -201,4 +221,47 @@ export async function handleGetNextTask(input, context) {
201
221
  ],
202
222
  };
203
223
  }
224
+ /**
225
+ * Handle get_next_task with planId - uses CLI-aligned scoring algorithm.
226
+ * Provides detailed score breakdown for LLM transparency.
227
+ *
228
+ * @param planId - Plan number or name
229
+ * @param context - Tool context
230
+ * @returns Tool result with detailed score breakdown
231
+ */
232
+ async function handleGetNextTaskWithPlan(planId, context) {
233
+ const result = await getNextTaskData(context.config, planId);
234
+ if ('error' in result) {
235
+ return {
236
+ content: [
237
+ {
238
+ type: 'text',
239
+ text: JSON.stringify({
240
+ taskId: null,
241
+ message: result.error,
242
+ }, null, 2),
243
+ },
244
+ ],
245
+ isError: result.error.includes('not found'),
246
+ };
247
+ }
248
+ const { task, otherAvailableTasks } = result;
249
+ return {
250
+ content: [
251
+ {
252
+ type: 'text',
253
+ text: JSON.stringify({
254
+ taskId: task.taskId,
255
+ title: task.title,
256
+ totalScore: task.totalScore,
257
+ dependencyScore: task.dependencyScore,
258
+ priorityScore: task.priorityScore,
259
+ workloadScore: task.workloadScore,
260
+ reasons: task.reasons,
261
+ otherAvailableTasks,
262
+ }, null, 2),
263
+ },
264
+ ],
265
+ };
266
+ }
204
267
  //# sourceMappingURL=get-next-task.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"get-next-task.js","sourceRoot":"","sources":["../../src/tools/get-next-task.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"get-next-task.js","sourceRoot":"","sources":["../../src/tools/get-next-task.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ /**
2
+ * MCP tool: get_plan_status
3
+ *
4
+ * Gets plan status summary with completion percentage for LLM consumption.
5
+ * Wraps the CLI getPlanStatusSummary() function to provide consistent experience.
6
+ */
7
+ import { z } from 'zod';
8
+ import type { ToolContext, ToolResult } from '../types.js';
9
+ /**
10
+ * Input schema for get_plan_status tool.
11
+ */
12
+ export declare const GetPlanStatusInputSchema: z.ZodObject<{
13
+ planId: z.ZodString;
14
+ }, z.core.$strip>;
15
+ /**
16
+ * Handle get_plan_status tool request.
17
+ * Returns plan status with completion percentage, counts, and blocked/WIP lists.
18
+ *
19
+ * @param input - Tool input with planId
20
+ * @param context - Tool context with config
21
+ * @returns Tool result with status summary or error
22
+ */
23
+ export declare function handleGetPlanStatus(input: z.infer<typeof GetPlanStatusInputSchema>, context: ToolContext): Promise<ToolResult>;
24
+ //# sourceMappingURL=get-plan-status.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-plan-status.d.ts","sourceRoot":"","sources":["../../src/tools/get-plan-status.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE3D;;GAEG;AACH,eAAO,MAAM,wBAAwB;;iBAEnC,CAAC;AAEH;;;;;;;GAOG;AACH,wBAAsB,mBAAmB,CACvC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,EAC/C,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,UAAU,CAAC,CAwBrB"}
@@ -0,0 +1,48 @@
1
+ /**
2
+ * MCP tool: get_plan_status
3
+ *
4
+ * Gets plan status summary with completion percentage for LLM consumption.
5
+ * Wraps the CLI getPlanStatusSummary() function to provide consistent experience.
6
+ */
7
+ import { z } from 'zod';
8
+ import { getPlanStatusSummary } from '../cli/status.js';
9
+ /**
10
+ * Input schema for get_plan_status tool.
11
+ */
12
+ export const GetPlanStatusInputSchema = z.object({
13
+ planId: z.string().describe('Plan number or name (e.g., "4" or "0004-feature-name")'),
14
+ });
15
+ /**
16
+ * Handle get_plan_status tool request.
17
+ * Returns plan status with completion percentage, counts, and blocked/WIP lists.
18
+ *
19
+ * @param input - Tool input with planId
20
+ * @param context - Tool context with config
21
+ * @returns Tool result with status summary or error
22
+ */
23
+ export async function handleGetPlanStatus(input, context) {
24
+ try {
25
+ const summary = getPlanStatusSummary(context.config, input.planId);
26
+ return {
27
+ content: [
28
+ {
29
+ type: 'text',
30
+ text: JSON.stringify(summary, null, 2),
31
+ },
32
+ ],
33
+ };
34
+ }
35
+ catch (error) {
36
+ const message = error instanceof Error ? error.message : 'Unknown error';
37
+ return {
38
+ content: [
39
+ {
40
+ type: 'text',
41
+ text: message,
42
+ },
43
+ ],
44
+ isError: true,
45
+ };
46
+ }
47
+ }
48
+ //# sourceMappingURL=get-plan-status.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-plan-status.js","sourceRoot":"","sources":["../../src/tools/get-plan-status.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAGxD;;GAEG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wDAAwD,CAAC;CACtF,CAAC,CAAC;AAEH;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,KAA+C,EAC/C,OAAoB;IAEpB,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,oBAAoB,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QAEnE,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;iBACvC;aACF;SACF,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;QACzE,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,OAAO;iBACd;aACF;YACD,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAsB/C;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,WAAW,GAAG,IAAI,CAoL3E"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAwB/C;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,WAAW,GAAG,IAAI,CA8O3E"}
@@ -5,14 +5,16 @@ import { ClaimTaskInputSchema, handleClaimTask } from './claim-task.js';
5
5
  import { ReleaseTaskInputSchema, handleReleaseTask } from './release-task.js';
6
6
  import { GetNextTaskInputSchema, handleGetNextTask } from './get-next-task.js';
7
7
  import { SearchDocsInputSchema, handleSearchDocs } from './search-docs.js';
8
- import { ReadDocInputSchema, handleReadDoc } from './read-doc.js';
9
8
  import { ListDocsInputSchema, handleListDocs } from './list-docs.js';
10
9
  import { CreateDocInputSchema, handleCreateDoc } from './create-doc.js';
11
10
  import { UpdateDocInputSchema, UpdateDocInputBaseSchema, handleUpdateDoc } from './update-doc.js';
12
11
  import { DeleteDocInputSchema, handleDeleteDoc } from './delete-doc.js';
13
12
  import { OpenDocumentInputSchema, handleOpenDocumentInCursor } from './open-document-in-cursor.js';
14
- import { RlmQueryInputSchema, handleRlmQuery } from './rlm-query.js';
15
- import { RlmMultiQueryInputBaseSchema, RlmMultiQueryInputSchema, handleRlmMultiQuery, } from './rlm-multi-query.js';
13
+ import { ProcessDocInputSchema, handleProcessDoc } from './process-doc.js';
14
+ import { ProcessDocsInputBaseSchema, ProcessDocsInputSchema, handleProcessDocs, } from './process-docs.js';
15
+ import { ListPlansInputSchema, handleListPlans } from './list-plans.js';
16
+ import { ListAgentsInputSchema, handleListAgents } from './list-agents.js';
17
+ import { GetPlanStatusInputSchema, handleGetPlanStatus } from './get-plan-status.js';
16
18
  /**
17
19
  * Register all MCP tools with the server.
18
20
  *
@@ -39,7 +41,16 @@ export function registerTools(server, context) {
39
41
  return handleReleaseTask(parsed, context);
40
42
  });
41
43
  // Task Selection Tools
42
- server.tool('get_next_task', 'Get highest-priority available task based on dependencies and agent type', GetNextTaskInputSchema.shape, async (input) => {
44
+ server.tool('get_next_task', `Get highest-priority available task based on dependencies and agent type.
45
+
46
+ When planId is provided, returns detailed score breakdown:
47
+ - dependencyScore: 40 points max (all dependencies satisfied)
48
+ - priorityScore: 30 points max (based on agent number, lower = higher priority)
49
+ - workloadScore: 30 points max (based on file count, fewer = higher score)
50
+ - totalScore: sum of all scores (100 max)
51
+ - otherAvailableTasks: count of other eligible tasks
52
+
53
+ Without planId, searches across all plans (legacy behavior).`, GetNextTaskInputSchema.shape, async (input) => {
43
54
  const parsed = GetNextTaskInputSchema.parse(input);
44
55
  return handleGetNextTask(parsed, context);
45
56
  });
@@ -49,10 +60,6 @@ export function registerTools(server, context) {
49
60
  return handleSearchDocs(parsed, context);
50
61
  });
51
62
  // Document CRUD Tools
52
- server.tool('read_doc', 'Read full content of a document in the repository', ReadDocInputSchema.shape, async (input) => {
53
- const parsed = ReadDocInputSchema.parse(input);
54
- return handleReadDoc(parsed, context);
55
- });
56
63
  server.tool('list_docs', 'List files and directories in the repository', ListDocsInputSchema.shape, async (input) => {
57
64
  const parsed = ListDocsInputSchema.parse(input);
58
65
  return handleListDocs(parsed, context);
@@ -77,29 +84,32 @@ export function registerTools(server, context) {
77
84
  const parsed = OpenDocumentInputSchema.parse(input);
78
85
  return handleOpenDocumentInCursor(parsed, context);
79
86
  });
80
- // RLM Query Tools
81
- server.tool('rlm_query', `Execute JavaScript code on a single document for filtered extraction.
87
+ // Document Processing Tools
88
+ server.tool('process_doc', `Process a document with JavaScript code (read, filter, transform, extract). Can do everything read_doc does plus filtering/transformation.
82
89
 
83
90
  Available helpers: extractSections(), extractFrontmatter(), extractCodeBlocks(),
84
91
  extractFeatures(), extractAgents(), findByPattern(), summarize()
85
92
 
86
93
  Example:
87
94
  path: "plans/0009/plan.md"
88
- code: "extractFeatures(doc.content).filter(f => f.status === 'GAP')"`, RlmQueryInputSchema.shape, async (input) => {
89
- const parsed = RlmQueryInputSchema.parse(input);
90
- return handleRlmQuery(parsed, context);
95
+ code: "extractFeatures(doc.content).filter(f => f.status === 'GAP')"
96
+
97
+ To read full content: code: "doc.content"
98
+ To read line range: code: "doc.content.split('\\n').slice(10, 20).join('\\n')"`, ProcessDocInputSchema.shape, async (input) => {
99
+ const parsed = ProcessDocInputSchema.parse(input);
100
+ return handleProcessDoc(parsed, context);
91
101
  });
92
- server.tool('rlm_multi_query', `Execute JavaScript code on multiple documents for cross-document analysis.
102
+ server.tool('process_docs', `Process multiple documents with JavaScript code for cross-document analysis. Use glob patterns or explicit paths.
93
103
 
94
- Available helpers: extractSections(), extractFrontmatter(), extractCodeBlocks(),
104
+ Available helpers: extractSections(), extractFrontmatter(), extractCodeBlocks(),
95
105
  extractFeatures(), extractAgents(), findByPattern(), summarize()
96
106
 
97
107
  Example:
98
108
  pattern: "plans/*/plan.md"
99
- code: "docs.map(d => ({ name: extractFrontmatter(d.content).meta.name, features: extractFeatures(d.content).length }))"`, RlmMultiQueryInputBaseSchema.shape, async (input) => {
109
+ code: "docs.map(d => ({ name: extractFrontmatter(d.content).meta.name, features: extractFeatures(d.content).length }))"`, ProcessDocsInputBaseSchema.shape, async (input) => {
100
110
  try {
101
- const parsed = RlmMultiQueryInputSchema.parse(input);
102
- return handleRlmMultiQuery(parsed, context);
111
+ const parsed = ProcessDocsInputSchema.parse(input);
112
+ return handleProcessDocs(parsed, context);
103
113
  }
104
114
  catch (error) {
105
115
  // Handle Zod validation errors
@@ -118,5 +128,43 @@ Example:
118
128
  throw error;
119
129
  }
120
130
  });
131
+ // Plan Overview Tools (aligned with CLI experience)
132
+ server.tool('list_plans', `List all plans with overview information. Returns structured data including:
133
+ - number: Plan number (e.g., "0001")
134
+ - name: Human-readable name
135
+ - workType: feature | bug | refactor | docs | unknown
136
+ - overview: Brief description (max 100 chars)
137
+ - status: GAP | WIP | PASS | BLOCKED
138
+
139
+ Use this to get an overview of all available plans before diving into a specific one.`, ListPlansInputSchema.shape, async (input) => {
140
+ const parsed = ListPlansInputSchema.parse(input);
141
+ return handleListPlans(parsed, context);
142
+ });
143
+ server.tool('list_agents', `List all agents for a specific plan with status and metadata. Returns:
144
+ - agentNumber: Agent identifier (e.g., "000")
145
+ - taskId: Full task ID (e.g., "0001-plan-name#000")
146
+ - title: Agent/task title
147
+ - status: GAP | WIP | PASS | BLOCKED
148
+ - persona: coder | reviewer | pm | customer
149
+ - dependencyCount: Number of dependencies
150
+ - fileCount: Number of files to modify
151
+
152
+ Also includes statusCounts summary showing how many agents are in each status.`, ListAgentsInputSchema.shape, async (input) => {
153
+ const parsed = ListAgentsInputSchema.parse(input);
154
+ return handleListAgents(parsed, context);
155
+ });
156
+ server.tool('get_plan_status', `Get plan progress summary with completion percentage. Returns:
157
+ - planName: Full plan directory name
158
+ - totalAgents: Total number of agents
159
+ - completionPercentage: % of agents with PASS status
160
+ - statusCounts: Breakdown by status (GAP, WIP, PASS, BLOCKED)
161
+ - personaCounts: Breakdown by persona (coder, reviewer, pm, customer)
162
+ - blockedAgents: List of blocked agents with IDs and titles
163
+ - wipAgents: List of in-progress agents with IDs and titles
164
+
165
+ Use this to understand overall progress and identify blockers.`, GetPlanStatusInputSchema.shape, async (input) => {
166
+ const parsed = GetPlanStatusInputSchema.parse(input);
167
+ return handleGetPlanStatus(parsed, context);
168
+ });
121
169
  }
122
170
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ /**
2
+ * MCP tool: list_agents
3
+ *
4
+ * Lists all agents for a specific plan with structured data for LLM consumption.
5
+ * Wraps the CLI getAgentsData() function to provide consistent experience.
6
+ */
7
+ import { z } from 'zod';
8
+ import type { ToolContext, ToolResult } from '../types.js';
9
+ /**
10
+ * Input schema for list_agents tool.
11
+ */
12
+ export declare const ListAgentsInputSchema: z.ZodObject<{
13
+ planId: z.ZodString;
14
+ }, z.core.$strip>;
15
+ /**
16
+ * Handle list_agents tool request.
17
+ * Returns all agents for a plan with number, title, status, persona, and counts.
18
+ *
19
+ * @param input - Tool input with planId
20
+ * @param context - Tool context with config
21
+ * @returns Tool result with agent list or error
22
+ */
23
+ export declare function handleListAgents(input: z.infer<typeof ListAgentsInputSchema>, context: ToolContext): Promise<ToolResult>;
24
+ //# sourceMappingURL=list-agents.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-agents.d.ts","sourceRoot":"","sources":["../../src/tools/list-agents.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE3D;;GAEG;AACH,eAAO,MAAM,qBAAqB;;iBAEhC,CAAC;AAEH;;;;;;;GAOG;AACH,wBAAsB,gBAAgB,CACpC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,EAC5C,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,UAAU,CAAC,CA2CrB"}
@@ -0,0 +1,60 @@
1
+ /**
2
+ * MCP tool: list_agents
3
+ *
4
+ * Lists all agents for a specific plan with structured data for LLM consumption.
5
+ * Wraps the CLI getAgentsData() function to provide consistent experience.
6
+ */
7
+ import { z } from 'zod';
8
+ import { getAgentsData } from '../cli/list-agents.js';
9
+ /**
10
+ * Input schema for list_agents tool.
11
+ */
12
+ export const ListAgentsInputSchema = z.object({
13
+ planId: z.string().describe('Plan number or name (e.g., "4" or "0004-feature-name")'),
14
+ });
15
+ /**
16
+ * Handle list_agents tool request.
17
+ * Returns all agents for a plan with number, title, status, persona, and counts.
18
+ *
19
+ * @param input - Tool input with planId
20
+ * @param context - Tool context with config
21
+ * @returns Tool result with agent list or error
22
+ */
23
+ export async function handleListAgents(input, context) {
24
+ const result = getAgentsData(context.config, input.planId);
25
+ if ('error' in result) {
26
+ return {
27
+ content: [
28
+ {
29
+ type: 'text',
30
+ text: result.error,
31
+ },
32
+ ],
33
+ isError: true,
34
+ };
35
+ }
36
+ // Transform agents to cleaner format for LLM
37
+ const agents = result.agents.map((agent) => ({
38
+ agentNumber: agent.agentNumber,
39
+ taskId: agent.taskId,
40
+ title: agent.title || `Agent ${agent.agentNumber}`,
41
+ status: agent.frontmatter.status,
42
+ persona: agent.frontmatter.persona,
43
+ dependencyCount: agent.frontmatter.dependencies.length,
44
+ fileCount: agent.frontmatter.files.length,
45
+ }));
46
+ return {
47
+ content: [
48
+ {
49
+ type: 'text',
50
+ text: JSON.stringify({
51
+ planName: result.planName,
52
+ agents,
53
+ statusCounts: result.statusCounts,
54
+ total: result.total,
55
+ }, null, 2),
56
+ },
57
+ ],
58
+ };
59
+ }
60
+ //# sourceMappingURL=list-agents.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-agents.js","sourceRoot":"","sources":["../../src/tools/list-agents.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAGtD;;GAEG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wDAAwD,CAAC;CACtF,CAAC,CAAC;AAEH;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,KAA4C,EAC5C,OAAoB;IAEpB,MAAM,MAAM,GAAG,aAAa,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAE3D,IAAI,OAAO,IAAI,MAAM,EAAE,CAAC;QACtB,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,MAAM,CAAC,KAAK;iBACnB;aACF;YACD,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,6CAA6C;IAC7C,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAC3C,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,SAAS,KAAK,CAAC,WAAW,EAAE;QAClD,MAAM,EAAE,KAAK,CAAC,WAAW,CAAC,MAAM;QAChC,OAAO,EAAE,KAAK,CAAC,WAAW,CAAC,OAAO;QAClC,eAAe,EAAE,KAAK,CAAC,WAAW,CAAC,YAAY,CAAC,MAAM;QACtD,SAAS,EAAE,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,MAAM;KAC1C,CAAC,CAAC,CAAC;IAEJ,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAClB;oBACE,QAAQ,EAAE,MAAM,CAAC,QAAQ;oBACzB,MAAM;oBACN,YAAY,EAAE,MAAM,CAAC,YAAY;oBACjC,KAAK,EAAE,MAAM,CAAC,KAAK;iBACpB,EACD,IAAI,EACJ,CAAC,CACF;aACF;SACF;KACF,CAAC;AACJ,CAAC"}
@@ -11,17 +11,7 @@ export declare const ListDocsInputSchema: z.ZodObject<{
11
11
  pattern: z.ZodOptional<z.ZodString>;
12
12
  depth: z.ZodDefault<z.ZodNumber>;
13
13
  includeHidden: z.ZodDefault<z.ZodBoolean>;
14
- }, "strip", z.ZodTypeAny, {
15
- path: string;
16
- depth: number;
17
- includeHidden: boolean;
18
- pattern?: string | undefined;
19
- }, {
20
- path?: string | undefined;
21
- pattern?: string | undefined;
22
- depth?: number | undefined;
23
- includeHidden?: boolean | undefined;
24
- }>;
14
+ }, z.core.$strip>;
25
15
  export type ListDocsInput = z.infer<typeof ListDocsInputSchema>;
26
16
  /**
27
17
  * Directory entry interface.
@@ -1 +1 @@
1
- {"version":3,"file":"list-docs.d.ts","sourceRoot":"","sources":["../../src/tools/list-docs.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAI3D;;GAEG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;EAK9B,CAAC;AAEH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;IAC3B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,QAAQ,EAAE,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;CACf;AAiID;;;;;;;GAOG;AACH,wBAAsB,cAAc,CAClC,KAAK,EAAE,aAAa,EACpB,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,UAAU,CAAC,CA8GrB"}
1
+ {"version":3,"file":"list-docs.d.ts","sourceRoot":"","sources":["../../src/tools/list-docs.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAI3D;;GAEG;AACH,eAAO,MAAM,mBAAmB;;;;;iBAK9B,CAAC;AAEH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;IAC3B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,QAAQ,EAAE,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;CACf;AAiID;;;;;;;GAOG;AACH,wBAAsB,cAAc,CAClC,KAAK,EAAE,aAAa,EACpB,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,UAAU,CAAC,CA8GrB"}