@langadventurellc/task-trellis-mcp 1.0.1 → 1.2.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 (331) hide show
  1. package/README.md +52 -263
  2. package/dist/__tests__/e2e/autoPrune.e2e.test.d.ts +2 -0
  3. package/dist/__tests__/e2e/autoPrune.e2e.test.d.ts.map +1 -0
  4. package/dist/__tests__/e2e/autoPrune.e2e.test.js +533 -0
  5. package/dist/__tests__/e2e/autoPrune.e2e.test.js.map +1 -0
  6. package/dist/__tests__/e2e/configuration/activation.e2e.test.js +6 -6
  7. package/dist/__tests__/e2e/configuration/activation.e2e.test.js.map +1 -1
  8. package/dist/__tests__/e2e/configuration/commandLineArgs.e2e.test.js +55 -6
  9. package/dist/__tests__/e2e/configuration/commandLineArgs.e2e.test.js.map +1 -1
  10. package/dist/__tests__/e2e/configuration/directorySetup.e2e.test.js +19 -19
  11. package/dist/__tests__/e2e/configuration/directorySetup.e2e.test.js.map +1 -1
  12. package/dist/__tests__/e2e/configuration/invalidConfig.e2e.test.js +9 -9
  13. package/dist/__tests__/e2e/configuration/invalidConfig.e2e.test.js.map +1 -1
  14. package/dist/__tests__/e2e/configuration/preActivation.e2e.test.js +15 -15
  15. package/dist/__tests__/e2e/configuration/preActivation.e2e.test.js.map +1 -1
  16. package/dist/__tests__/e2e/crud/createObject.e2e.test.js +94 -42
  17. package/dist/__tests__/e2e/crud/createObject.e2e.test.js.map +1 -1
  18. package/dist/__tests__/e2e/crud/deleteObject.e2e.test.js +19 -19
  19. package/dist/__tests__/e2e/crud/deleteObject.e2e.test.js.map +1 -1
  20. package/dist/__tests__/e2e/crud/fileValidation.e2e.test.js +32 -32
  21. package/dist/__tests__/e2e/crud/fileValidation.e2e.test.js.map +1 -1
  22. package/dist/__tests__/e2e/crud/getObject.e2e.test.js +143 -22
  23. package/dist/__tests__/e2e/crud/getObject.e2e.test.js.map +1 -1
  24. package/dist/__tests__/e2e/crud/listObjects.e2e.test.js +810 -121
  25. package/dist/__tests__/e2e/crud/listObjects.e2e.test.js.map +1 -1
  26. package/dist/__tests__/e2e/crud/updateObject.e2e.test.js +497 -25
  27. package/dist/__tests__/e2e/crud/updateObject.e2e.test.js.map +1 -1
  28. package/dist/__tests__/e2e/hierarchicalPrerequisites.e2e.test.d.ts +2 -0
  29. package/dist/__tests__/e2e/hierarchicalPrerequisites.e2e.test.d.ts.map +1 -0
  30. package/dist/__tests__/e2e/hierarchicalPrerequisites.e2e.test.js +319 -0
  31. package/dist/__tests__/e2e/hierarchicalPrerequisites.e2e.test.js.map +1 -0
  32. package/dist/__tests__/e2e/infrastructure/client.e2e.test.js +4 -4
  33. package/dist/__tests__/e2e/infrastructure/client.e2e.test.js.map +1 -1
  34. package/dist/__tests__/e2e/infrastructure/server.e2e.test.js +6 -6
  35. package/dist/__tests__/e2e/infrastructure/server.e2e.test.js.map +1 -1
  36. package/dist/__tests__/e2e/utils/extractObjectIds.d.ts +5 -0
  37. package/dist/__tests__/e2e/utils/extractObjectIds.d.ts.map +1 -0
  38. package/dist/__tests__/e2e/utils/extractObjectIds.js +12 -0
  39. package/dist/__tests__/e2e/utils/extractObjectIds.js.map +1 -0
  40. package/dist/__tests__/e2e/utils/index.d.ts +1 -0
  41. package/dist/__tests__/e2e/utils/index.d.ts.map +1 -1
  42. package/dist/__tests__/e2e/utils/index.js +3 -1
  43. package/dist/__tests__/e2e/utils/index.js.map +1 -1
  44. package/dist/__tests__/e2e/utils/mcpTestClient.d.ts +2 -1
  45. package/dist/__tests__/e2e/utils/mcpTestClient.d.ts.map +1 -1
  46. package/dist/__tests__/e2e/utils/mcpTestClient.js +15 -8
  47. package/dist/__tests__/e2e/utils/mcpTestClient.js.map +1 -1
  48. package/dist/__tests__/e2e/utils/parseListObjectsResponse.d.ts +4 -2
  49. package/dist/__tests__/e2e/utils/parseListObjectsResponse.d.ts.map +1 -1
  50. package/dist/__tests__/e2e/utils/parseListObjectsResponse.js +2 -1
  51. package/dist/__tests__/e2e/utils/parseListObjectsResponse.js.map +1 -1
  52. package/dist/__tests__/e2e/utils/parseUpdateObjectResponse.d.ts +1 -1
  53. package/dist/__tests__/e2e/utils/parseUpdateObjectResponse.js +1 -1
  54. package/dist/__tests__/e2e/workflow/appendLog.e2e.test.js +4 -4
  55. package/dist/__tests__/e2e/workflow/appendLog.e2e.test.js.map +1 -1
  56. package/dist/__tests__/e2e/workflow/appendModifiedFiles.e2e.test.d.ts +2 -0
  57. package/dist/__tests__/e2e/workflow/appendModifiedFiles.e2e.test.d.ts.map +1 -0
  58. package/dist/__tests__/e2e/workflow/appendModifiedFiles.e2e.test.js +597 -0
  59. package/dist/__tests__/e2e/workflow/appendModifiedFiles.e2e.test.js.map +1 -0
  60. package/dist/__tests__/e2e/workflow/claimTask.e2e.test.js +233 -0
  61. package/dist/__tests__/e2e/workflow/claimTask.e2e.test.js.map +1 -1
  62. package/dist/__tests__/e2e/workflow/completeTask.e2e.test.js +447 -1
  63. package/dist/__tests__/e2e/workflow/completeTask.e2e.test.js.map +1 -1
  64. package/dist/__tests__/e2e/workflow/prerequisites.e2e.test.js +43 -43
  65. package/dist/__tests__/e2e/workflow/prerequisites.e2e.test.js.map +1 -1
  66. package/dist/__tests__/e2e/workflow/taskLifecycle.e2e.test.js +22 -26
  67. package/dist/__tests__/e2e/workflow/taskLifecycle.e2e.test.js.map +1 -1
  68. package/dist/__tests__/serverStartup.test.d.ts +2 -0
  69. package/dist/__tests__/serverStartup.test.d.ts.map +1 -0
  70. package/dist/__tests__/serverStartup.test.js +171 -0
  71. package/dist/__tests__/serverStartup.test.js.map +1 -0
  72. package/dist/configuration/ServerConfig.d.ts +2 -0
  73. package/dist/configuration/ServerConfig.d.ts.map +1 -1
  74. package/dist/models/TrellisObjectSummary.d.ts +16 -0
  75. package/dist/models/TrellisObjectSummary.d.ts.map +1 -0
  76. package/dist/{utils/ReplaceStringOptions.js → models/TrellisObjectSummary.js} +1 -1
  77. package/dist/models/TrellisObjectSummary.js.map +1 -0
  78. package/dist/models/index.d.ts +1 -0
  79. package/dist/models/index.d.ts.map +1 -1
  80. package/dist/models/index.js.map +1 -1
  81. package/dist/repositories/Repository.d.ts +2 -1
  82. package/dist/repositories/Repository.d.ts.map +1 -1
  83. package/dist/repositories/local/LocalRepository.d.ts +2 -1
  84. package/dist/repositories/local/LocalRepository.d.ts.map +1 -1
  85. package/dist/repositories/local/LocalRepository.js +4 -0
  86. package/dist/repositories/local/LocalRepository.js.map +1 -1
  87. package/dist/repositories/local/__tests__/getChildrenOf.test.d.ts +2 -0
  88. package/dist/repositories/local/__tests__/getChildrenOf.test.d.ts.map +1 -0
  89. package/dist/repositories/local/__tests__/getChildrenOf.test.js +306 -0
  90. package/dist/repositories/local/__tests__/getChildrenOf.test.js.map +1 -0
  91. package/dist/repositories/local/__tests__/getObjectFilePath.test.js +9 -6
  92. package/dist/repositories/local/__tests__/getObjectFilePath.test.js.map +1 -1
  93. package/dist/repositories/local/__tests__/getObjects.test.js +349 -10
  94. package/dist/repositories/local/__tests__/getObjects.test.js.map +1 -1
  95. package/dist/repositories/local/deleteObjectById.d.ts.map +1 -1
  96. package/dist/repositories/local/deleteObjectById.js +2 -0
  97. package/dist/repositories/local/deleteObjectById.js.map +1 -1
  98. package/dist/repositories/local/getChildrenOf.d.ts +11 -0
  99. package/dist/repositories/local/getChildrenOf.d.ts.map +1 -0
  100. package/dist/repositories/local/getChildrenOf.js +73 -0
  101. package/dist/repositories/local/getChildrenOf.js.map +1 -0
  102. package/dist/repositories/local/getObjectFilePath.d.ts.map +1 -1
  103. package/dist/repositories/local/getObjectFilePath.js +8 -4
  104. package/dist/repositories/local/getObjectFilePath.js.map +1 -1
  105. package/dist/repositories/local/getObjects.d.ts +1 -1
  106. package/dist/repositories/local/getObjects.d.ts.map +1 -1
  107. package/dist/repositories/local/getObjects.js +31 -7
  108. package/dist/repositories/local/getObjects.js.map +1 -1
  109. package/dist/server.js +57 -19
  110. package/dist/server.js.map +1 -1
  111. package/dist/services/TaskTrellisService.d.ts +78 -0
  112. package/dist/services/TaskTrellisService.d.ts.map +1 -0
  113. package/dist/services/TaskTrellisService.js +3 -0
  114. package/dist/services/TaskTrellisService.js.map +1 -0
  115. package/dist/services/local/LocalTaskTrellisService.d.ts +55 -0
  116. package/dist/services/local/LocalTaskTrellisService.d.ts.map +1 -0
  117. package/dist/services/local/LocalTaskTrellisService.js +73 -0
  118. package/dist/services/local/LocalTaskTrellisService.js.map +1 -0
  119. package/dist/services/local/__tests__/appendAffectedFiles.test.d.ts +2 -0
  120. package/dist/services/local/__tests__/appendAffectedFiles.test.d.ts.map +1 -0
  121. package/dist/services/local/__tests__/appendAffectedFiles.test.js +202 -0
  122. package/dist/services/local/__tests__/appendAffectedFiles.test.js.map +1 -0
  123. package/dist/services/local/__tests__/appendModifiedFiles.test.d.ts +2 -0
  124. package/dist/services/local/__tests__/appendModifiedFiles.test.d.ts.map +1 -0
  125. package/dist/services/local/__tests__/appendModifiedFiles.test.js +162 -0
  126. package/dist/services/local/__tests__/appendModifiedFiles.test.js.map +1 -0
  127. package/dist/services/local/__tests__/appendObjectLog.test.d.ts +2 -0
  128. package/dist/services/local/__tests__/appendObjectLog.test.d.ts.map +1 -0
  129. package/dist/services/local/__tests__/appendObjectLog.test.js +105 -0
  130. package/dist/services/local/__tests__/appendObjectLog.test.js.map +1 -0
  131. package/dist/services/local/__tests__/claimTask.test.d.ts +2 -0
  132. package/dist/services/local/__tests__/claimTask.test.d.ts.map +1 -0
  133. package/dist/services/local/__tests__/claimTask.test.js +459 -0
  134. package/dist/services/local/__tests__/claimTask.test.js.map +1 -0
  135. package/dist/services/local/__tests__/completeTask.test.d.ts +2 -0
  136. package/dist/services/local/__tests__/completeTask.test.d.ts.map +1 -0
  137. package/dist/services/local/__tests__/completeTask.test.js +470 -0
  138. package/dist/services/local/__tests__/completeTask.test.js.map +1 -0
  139. package/dist/services/local/__tests__/createObject.test.d.ts +2 -0
  140. package/dist/services/local/__tests__/createObject.test.d.ts.map +1 -0
  141. package/dist/services/local/__tests__/createObject.test.js +333 -0
  142. package/dist/services/local/__tests__/createObject.test.js.map +1 -0
  143. package/dist/services/local/__tests__/listObjects.test.d.ts +2 -0
  144. package/dist/services/local/__tests__/listObjects.test.d.ts.map +1 -0
  145. package/dist/services/local/__tests__/listObjects.test.js +351 -0
  146. package/dist/services/local/__tests__/listObjects.test.js.map +1 -0
  147. package/dist/services/local/__tests__/pruneClosed.test.d.ts +2 -0
  148. package/dist/services/local/__tests__/pruneClosed.test.d.ts.map +1 -0
  149. package/dist/services/local/__tests__/pruneClosed.test.js +473 -0
  150. package/dist/services/local/__tests__/pruneClosed.test.js.map +1 -0
  151. package/dist/services/local/__tests__/updateObject.test.d.ts +2 -0
  152. package/dist/services/local/__tests__/updateObject.test.d.ts.map +1 -0
  153. package/dist/services/local/__tests__/updateObject.test.js +521 -0
  154. package/dist/services/local/__tests__/updateObject.test.js.map +1 -0
  155. package/dist/services/local/appendAffectedFiles.d.ts +12 -0
  156. package/dist/services/local/appendAffectedFiles.d.ts.map +1 -0
  157. package/dist/services/local/appendAffectedFiles.js +34 -0
  158. package/dist/services/local/appendAffectedFiles.js.map +1 -0
  159. package/dist/services/local/appendModifiedFiles.d.ts +15 -0
  160. package/dist/services/local/appendModifiedFiles.d.ts.map +1 -0
  161. package/dist/services/local/appendModifiedFiles.js +39 -0
  162. package/dist/services/local/appendModifiedFiles.js.map +1 -0
  163. package/dist/services/local/appendObjectLog.d.ts +8 -0
  164. package/dist/services/local/appendObjectLog.d.ts.map +1 -0
  165. package/dist/services/local/appendObjectLog.js +45 -0
  166. package/dist/services/local/appendObjectLog.js.map +1 -0
  167. package/dist/services/local/claimTask.d.ts +8 -0
  168. package/dist/services/local/claimTask.d.ts.map +1 -0
  169. package/dist/services/local/claimTask.js +109 -0
  170. package/dist/services/local/claimTask.js.map +1 -0
  171. package/dist/services/local/completeTask.d.ts +9 -0
  172. package/dist/services/local/completeTask.d.ts.map +1 -0
  173. package/dist/services/local/completeTask.js +38 -0
  174. package/dist/services/local/completeTask.js.map +1 -0
  175. package/dist/services/local/createObject.d.ts +9 -0
  176. package/dist/services/local/createObject.d.ts.map +1 -0
  177. package/dist/services/local/createObject.js +44 -0
  178. package/dist/services/local/createObject.js.map +1 -0
  179. package/dist/services/local/listObjects.d.ts +9 -0
  180. package/dist/services/local/listObjects.d.ts.map +1 -0
  181. package/dist/services/local/listObjects.js +52 -0
  182. package/dist/services/local/listObjects.js.map +1 -0
  183. package/dist/services/local/pruneClosed.d.ts +8 -0
  184. package/dist/services/local/pruneClosed.d.ts.map +1 -0
  185. package/dist/services/local/pruneClosed.js +112 -0
  186. package/dist/services/local/pruneClosed.js.map +1 -0
  187. package/dist/services/local/updateObject.d.ts +10 -0
  188. package/dist/services/local/updateObject.d.ts.map +1 -0
  189. package/dist/services/local/updateObject.js +80 -0
  190. package/dist/services/local/updateObject.js.map +1 -0
  191. package/dist/tools/__tests__/appendModifiedFilesTool.test.d.ts +2 -0
  192. package/dist/tools/__tests__/appendModifiedFilesTool.test.d.ts.map +1 -0
  193. package/dist/tools/__tests__/appendModifiedFilesTool.test.js +178 -0
  194. package/dist/tools/__tests__/appendModifiedFilesTool.test.js.map +1 -0
  195. package/dist/tools/__tests__/appendObjectLogTool.test.js +34 -101
  196. package/dist/tools/__tests__/appendObjectLogTool.test.js.map +1 -1
  197. package/dist/tools/__tests__/claimTaskTool.test.js +98 -311
  198. package/dist/tools/__tests__/claimTaskTool.test.js.map +1 -1
  199. package/dist/tools/__tests__/completeTaskTool.test.js +140 -183
  200. package/dist/tools/__tests__/completeTaskTool.test.js.map +1 -1
  201. package/dist/tools/__tests__/createObjectTool.test.js +62 -325
  202. package/dist/tools/__tests__/createObjectTool.test.js.map +1 -1
  203. package/dist/tools/__tests__/deleteObjectTool.test.js +1 -0
  204. package/dist/tools/__tests__/deleteObjectTool.test.js.map +1 -1
  205. package/dist/tools/__tests__/getObjectTool.test.js +1 -0
  206. package/dist/tools/__tests__/getObjectTool.test.js.map +1 -1
  207. package/dist/tools/__tests__/listObjectsTool.test.js +228 -108
  208. package/dist/tools/__tests__/listObjectsTool.test.js.map +1 -1
  209. package/dist/tools/__tests__/updateObjectTool.test.js +78 -167
  210. package/dist/tools/__tests__/updateObjectTool.test.js.map +1 -1
  211. package/dist/tools/appendModifiedFilesTool.d.ts +30 -0
  212. package/dist/tools/appendModifiedFilesTool.d.ts.map +1 -0
  213. package/dist/tools/appendModifiedFilesTool.js +55 -0
  214. package/dist/tools/appendModifiedFilesTool.js.map +1 -0
  215. package/dist/tools/appendObjectLogTool.d.ts +7 -6
  216. package/dist/tools/appendObjectLogTool.d.ts.map +1 -1
  217. package/dist/tools/appendObjectLogTool.js +6 -44
  218. package/dist/tools/appendObjectLogTool.js.map +1 -1
  219. package/dist/tools/claimTaskTool.d.ts +4 -3
  220. package/dist/tools/claimTaskTool.d.ts.map +1 -1
  221. package/dist/tools/claimTaskTool.js +2 -80
  222. package/dist/tools/claimTaskTool.js.map +1 -1
  223. package/dist/tools/completeTaskTool.d.ts +5 -3
  224. package/dist/tools/completeTaskTool.d.ts.map +1 -1
  225. package/dist/tools/completeTaskTool.js +3 -29
  226. package/dist/tools/completeTaskTool.js.map +1 -1
  227. package/dist/tools/createObjectTool.d.ts +13 -12
  228. package/dist/tools/createObjectTool.d.ts.map +1 -1
  229. package/dist/tools/createObjectTool.js +22 -55
  230. package/dist/tools/createObjectTool.js.map +1 -1
  231. package/dist/tools/deleteObjectTool.d.ts +3 -3
  232. package/dist/tools/deleteObjectTool.js +12 -12
  233. package/dist/tools/deleteObjectTool.js.map +1 -1
  234. package/dist/tools/getObjectTool.d.ts +3 -3
  235. package/dist/tools/getObjectTool.d.ts.map +1 -1
  236. package/dist/tools/getObjectTool.js +12 -7
  237. package/dist/tools/getObjectTool.js.map +1 -1
  238. package/dist/tools/index.d.ts +7 -8
  239. package/dist/tools/index.d.ts.map +1 -1
  240. package/dist/tools/index.js +22 -25
  241. package/dist/tools/index.js.map +1 -1
  242. package/dist/tools/listObjectsTool.d.ts +24 -14
  243. package/dist/tools/listObjectsTool.d.ts.map +1 -1
  244. package/dist/tools/listObjectsTool.js +114 -50
  245. package/dist/tools/listObjectsTool.js.map +1 -1
  246. package/dist/tools/updateObjectTool.d.ts +15 -9
  247. package/dist/tools/updateObjectTool.d.ts.map +1 -1
  248. package/dist/tools/updateObjectTool.js +20 -60
  249. package/dist/tools/updateObjectTool.js.map +1 -1
  250. package/dist/utils/__tests__/checkHierarchicalPrerequisitesComplete.test.d.ts +2 -0
  251. package/dist/utils/__tests__/checkHierarchicalPrerequisitesComplete.test.d.ts.map +1 -0
  252. package/dist/utils/__tests__/checkHierarchicalPrerequisitesComplete.test.js +206 -0
  253. package/dist/utils/__tests__/checkHierarchicalPrerequisitesComplete.test.js.map +1 -0
  254. package/dist/utils/__tests__/checkPrerequisitesComplete.test.js +5 -0
  255. package/dist/utils/__tests__/checkPrerequisitesComplete.test.js.map +1 -1
  256. package/dist/utils/__tests__/filterUnavailableObjects.test.js +51 -25
  257. package/dist/utils/__tests__/filterUnavailableObjects.test.js.map +1 -1
  258. package/dist/utils/__tests__/isRequiredForOtherObjects.test.js +5 -0
  259. package/dist/utils/__tests__/isRequiredForOtherObjects.test.js.map +1 -1
  260. package/dist/utils/__tests__/updateParentHierarchy.test.d.ts +2 -0
  261. package/dist/utils/__tests__/updateParentHierarchy.test.d.ts.map +1 -0
  262. package/dist/utils/__tests__/updateParentHierarchy.test.js +137 -0
  263. package/dist/utils/__tests__/updateParentHierarchy.test.js.map +1 -0
  264. package/dist/utils/autoCompleteParentHierarchy.d.ts +11 -0
  265. package/dist/utils/autoCompleteParentHierarchy.d.ts.map +1 -0
  266. package/dist/utils/autoCompleteParentHierarchy.js +49 -0
  267. package/dist/utils/autoCompleteParentHierarchy.js.map +1 -0
  268. package/dist/utils/checkHierarchicalPrerequisitesComplete.d.ts +14 -0
  269. package/dist/utils/checkHierarchicalPrerequisitesComplete.d.ts.map +1 -0
  270. package/dist/utils/checkHierarchicalPrerequisitesComplete.js +47 -0
  271. package/dist/utils/checkHierarchicalPrerequisitesComplete.js.map +1 -0
  272. package/dist/utils/filterUnavailableObjects.d.ts +6 -4
  273. package/dist/utils/filterUnavailableObjects.d.ts.map +1 -1
  274. package/dist/utils/filterUnavailableObjects.js +16 -22
  275. package/dist/utils/filterUnavailableObjects.js.map +1 -1
  276. package/dist/utils/index.d.ts +3 -2
  277. package/dist/utils/index.d.ts.map +1 -1
  278. package/dist/utils/index.js +7 -3
  279. package/dist/utils/index.js.map +1 -1
  280. package/dist/utils/updateParentHierarchy.d.ts +11 -0
  281. package/dist/utils/updateParentHierarchy.d.ts.map +1 -0
  282. package/dist/utils/updateParentHierarchy.js +40 -0
  283. package/dist/utils/updateParentHierarchy.js.map +1 -0
  284. package/dist/validation/__tests__/validateObjectCreation.test.js +1 -0
  285. package/dist/validation/__tests__/validateObjectCreation.test.js.map +1 -1
  286. package/dist/validation/__tests__/validateParentExists.test.js +1 -0
  287. package/dist/validation/__tests__/validateParentExists.test.js.map +1 -1
  288. package/dist/validation/__tests__/validateParentType.test.js +5 -5
  289. package/dist/validation/__tests__/validateParentType.test.js.map +1 -1
  290. package/dist/validation/__tests__/validateStatusTransition.test.js +1 -0
  291. package/dist/validation/__tests__/validateStatusTransition.test.js.map +1 -1
  292. package/dist/validation/validateParentType.d.ts +1 -1
  293. package/dist/validation/validateParentType.d.ts.map +1 -1
  294. package/dist/validation/validateParentType.js +2 -5
  295. package/dist/validation/validateParentType.js.map +1 -1
  296. package/package.json +1 -1
  297. package/dist/__tests__/e2e/crud/replaceObjectBodyRegex.e2e.test.d.ts +0 -2
  298. package/dist/__tests__/e2e/crud/replaceObjectBodyRegex.e2e.test.d.ts.map +0 -1
  299. package/dist/__tests__/e2e/crud/replaceObjectBodyRegex.e2e.test.js +0 -693
  300. package/dist/__tests__/e2e/crud/replaceObjectBodyRegex.e2e.test.js.map +0 -1
  301. package/dist/__tests__/e2e/workflow/pruneClosed.e2e.test.d.ts +0 -2
  302. package/dist/__tests__/e2e/workflow/pruneClosed.e2e.test.d.ts.map +0 -1
  303. package/dist/__tests__/e2e/workflow/pruneClosed.e2e.test.js +0 -352
  304. package/dist/__tests__/e2e/workflow/pruneClosed.e2e.test.js.map +0 -1
  305. package/dist/tools/__tests__/pruneClosedTool.test.d.ts +0 -2
  306. package/dist/tools/__tests__/pruneClosedTool.test.d.ts.map +0 -1
  307. package/dist/tools/__tests__/pruneClosedTool.test.js +0 -171
  308. package/dist/tools/__tests__/pruneClosedTool.test.js.map +0 -1
  309. package/dist/tools/__tests__/replaceObjectBodyRegexTool.test.d.ts +0 -2
  310. package/dist/tools/__tests__/replaceObjectBodyRegexTool.test.d.ts.map +0 -1
  311. package/dist/tools/__tests__/replaceObjectBodyRegexTool.test.js +0 -258
  312. package/dist/tools/__tests__/replaceObjectBodyRegexTool.test.js.map +0 -1
  313. package/dist/tools/pruneClosedTool.d.ts +0 -26
  314. package/dist/tools/pruneClosedTool.d.ts.map +0 -1
  315. package/dist/tools/pruneClosedTool.js +0 -106
  316. package/dist/tools/pruneClosedTool.js.map +0 -1
  317. package/dist/tools/replaceObjectBodyRegexTool.d.ts +0 -35
  318. package/dist/tools/replaceObjectBodyRegexTool.d.ts.map +0 -1
  319. package/dist/tools/replaceObjectBodyRegexTool.js +0 -145
  320. package/dist/tools/replaceObjectBodyRegexTool.js.map +0 -1
  321. package/dist/utils/ReplaceStringOptions.d.ts +0 -12
  322. package/dist/utils/ReplaceStringOptions.d.ts.map +0 -1
  323. package/dist/utils/ReplaceStringOptions.js.map +0 -1
  324. package/dist/utils/__tests__/replaceStringWithRegex.test.d.ts +0 -2
  325. package/dist/utils/__tests__/replaceStringWithRegex.test.d.ts.map +0 -1
  326. package/dist/utils/__tests__/replaceStringWithRegex.test.js +0 -281
  327. package/dist/utils/__tests__/replaceStringWithRegex.test.js.map +0 -1
  328. package/dist/utils/replaceStringWithRegex.d.ts +0 -45
  329. package/dist/utils/replaceStringWithRegex.d.ts.map +0 -1
  330. package/dist/utils/replaceStringWithRegex.js +0 -91
  331. package/dist/utils/replaceStringWithRegex.js.map +0 -1
package/README.md CHANGED
@@ -1,19 +1,17 @@
1
1
  # Task Trellis MCP
2
2
 
3
- > Transform AI coding chaos into organized productivity
3
+ **Project planning and task management built specifically for AI agents**
4
4
 
5
5
  [![npm version](https://badge.fury.io/js/%40langadventurellc%2Ftask-trellis-mcp.svg)](https://www.npmjs.com/package/@langadventurellc/task-trellis-mcp)
6
6
  [![License: GPL v3](https://img.shields.io/badge/License-GPLv3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0)
7
7
 
8
- An MCP (Model Context Protocol) server that greatly improves how AI coding agents handle complex projects. Task Trellis helps track requirements for projects, breaks them down into smaller manageable parts until you have trackable and assignable tasks with built-in workflow management, dependency handling, and progress tracking.
8
+ Task Trellis is an MCP server for project planning and task management built specifically for AI agents. It helps by breaking down complex projects and tracking their progress with built-in task management, complete with progress tracking, dependency management, and workflow automation. By default, all data is stored locally in Markdown files.
9
9
 
10
- Primarily built as an alternative to managing the creation and use of agent-created requirements, specifications and checklists. This tool will help make that more organized and less chaotic.
11
-
12
- Basically, it's like Jira for coding agents.
10
+ Primarily built as a much better alternative to managing markdown checklists. Task Trellis will make it easier to define requirements, specifications, and tasks in a structured way that the agents can actually use directly.
13
11
 
14
12
  ## Table of Contents
15
13
 
16
- - [At a glance?](#at-a-glance)
14
+ - [At a Glance](#at-a-glance)
17
15
  - [Why Task Trellis?](#why-task-trellis)
18
16
  - [Core Benefits](#core-benefits)
19
17
  - [Usage](#usage)
@@ -21,61 +19,24 @@ Basically, it's like Jira for coding agents.
21
19
  - [Project Hierarchy](#project-hierarchy)
22
20
  - [Prerequisites & Dependencies](#prerequisites--dependencies)
23
21
  - [File Storage](#file-storage)
24
- - [Installation](#installation)
25
- - [Quick Test](#quick-test)
26
- - [Configuration Options](#configuration-options)
22
+ - [Installation and Configuration](#installation-and-configuration)
27
23
  - [Troubleshooting](#troubleshooting)
28
24
 
29
25
  ## At a Glance
30
26
 
31
- ```
32
- // Simple tasks
33
- Task: Auth endpoint
34
- Task: Token refresh
35
-
36
- // Moderate sized feature
37
- Feature: API
38
- ├── Task: Auth endpoint
39
- └── Task: Token refresh
40
-
41
- // Large project
42
- Project
43
- ├── Epic: Login
44
- │ ├── Feature: UI
45
- │ │ ├── Task: Email form validation
46
- │ │ └── Task: Error handling
47
- │ └── Feature: API
48
- │ ├── Task: Auth endpoint
49
- │ └── Task: Token refresh
50
- ```
51
-
52
- **Small tasks (one or several tasks that don't necessarily need the benefit of a unifying context)**
53
-
54
- > **user:** /create-tasks-trellis create some standalone tasks to remove the console.log usage from the app
55
- > _(agent creates and adds the individual tasks that the agent will work on later)_
27
+ Task Trellis works with issues that are projects, epics, features or tasks.
56
28
 
57
- **Moderate sized tasks (most use cases - a feature that gets broken down into a number of workable tasks)**
29
+ **Tasks** are the most important type of issue. This is where the actual work gets done. Each task is a specific piece of work that needs to be completed in order to achieve the project's goals. The other issue types are too big to be a task and they exist to help organize and manage multiple tasks to accomplish a particular goal. Tasks can be standalone or part of a larger feature.
58
30
 
59
- > **user:** /create-features-trellis add posthog analytics to existing web pages
60
- > _(agent creates and adds feature requirements document to Task Trellis)_
61
- > **user:** /create-tasks-trellis (feature-id)
62
- > _(agent creates and adds the individual tasks that the agent will work on later)_
31
+ **Features** are the next level up from tasks. They represent the requirements and functionality needed to deliver a specific aspect of the project. Features can be standalone or a part of a larger epic.
63
32
 
64
- **Large projects (when there's a lot involved that benefits from several layers of refinement)**
33
+ **Epics** are next after features. They represent a significant deliverable or a large body of work that can be broken down into multiple features and tasks. Epics can be standalone or a part of a larger project.
65
34
 
66
- > **user:** /create-project-trellis add user authentication with registration and login pages, using supabase for authentication
67
- > _(agent creates and adds project requirements document to Task Trellis)_
68
- > **user:** /create-epics-trellis (project-id)
69
- > _(agent creates and adds epics that break down the project into distinct, yet still large bodies of work)_
70
- > **user:** /create-features-trellis (epic-id)
71
- > _(agent creates and adds features that further add detail and context to smaller bodies of work)_
72
- > **user:** /create-tasks-trellis (feature-id)
73
- > _(agent creates and adds the individual tasks that the agent will work on later)_
35
+ **Projects** are the highest level of organization. They represent the overall initiative or goal that encompasses multiple epics, features, and tasks. Projects provide a way to group related work and track progress at a high level.
74
36
 
75
- **Now do the thing**
37
+ Depending on the size of the effort, you can choose to create a project with epics, features, and tasks, or you can create standalone tasks as needed. Once you have your tasks defined, you can easily manage and track their progress through the Task Trellis MCP tools.
76
38
 
77
- > **user:** /implement-task-trellis
78
- > _(agent grabs the next available task and does it)_
39
+ Currently, all Task Trellis issues are stored as markdown files in the `.trellis` folder in the root of your project. This makes it unsuitable for projects with multiple developers, but a remote option is in development now and should be available soon.
79
40
 
80
41
  ## Why Task Trellis?
81
42
 
@@ -118,21 +79,22 @@ Project
118
79
  See sample prompts (written as Claude Code slash commands): [Sample Prompts](docs/sample_prompts/index.md)
119
80
 
120
81
  1. **Create Tasks**
121
- - For large projects
122
- - Create a project
123
- - Create epics to group features
124
- - Create features to break down epics
125
- - Create tasks for specific work items
126
- - For medium-sized projects
127
- - Create standalone feature
128
- - Create tasks directly under the feature
129
- - For small tasks
130
- - Create standalone tasks
82
+ - Determine your starting point based on the expected size of your project
83
+ - **Project** - For sprawling initiatives with many moving parts
84
+ - **Epic** - For large feature groupings
85
+ - **Feature** - For specific functionality
86
+ - **Task** - For individual work items
131
87
 
132
88
  2. **Claim & Work on Tasks**
133
89
  - AI agent claims next available task
90
+ - Excludes tasks that have incomplete prerequisites
91
+ - Grabs the next highest priority available task
92
+ - Mark a task as `draft` if you don't want it to be worked on yet - it won't be claimed when the tool looks for the next available task
134
93
  - Works on the specific task requirements
135
94
  - Marks task complete with file changes documented
95
+ - Automatically tracks which files were modified
96
+ - Logs summary of changes made
97
+ - Work done in the future could reference this to better understand the current state of the project
136
98
 
137
99
  3. **Track Progress**
138
100
  - View completed vs. pending work
@@ -141,25 +103,26 @@ See sample prompts (written as Claude Code slash commands): [Sample Prompts](doc
141
103
 
142
104
  ## Available Tools
143
105
 
144
- ### Core Object Management
106
+ ### Core Issue Management
145
107
 
146
- - **create_object** - Create projects, epics, features, or tasks with hierarchical relationships
147
- - **update_object** - Modify object properties, status, priority, or prerequisites
148
- - **get_object** - Retrieve detailed object information with history and relationships
149
- - **list_objects** - Query and filter objects by type, status, priority, or scope
150
- - **delete_object** - Remove objects (with dependency validation)
151
- - **replace_object_body_regex** - Make targeted content edits using regex patterns
108
+ - **create_issue** - Create projects, epics, features, or tasks with hierarchical relationships
109
+ - **update_issue** - Modify issue properties, status, priority, or prerequisites
110
+ - **get_issue** - Retrieve detailed issue information with history and relationships
111
+ - **list_issues** - Query and filter issues by type, status, priority, or scope (returns issue summaries)
112
+ - **delete_issue** - Remove issues (with dependency validation)
113
+ - **replace_issue_body_regex** - Make targeted body content edits using regex patterns
152
114
 
153
115
  ### Task Workflow Management
154
116
 
155
117
  - **claim_task** - Claim available tasks for execution with automatic priority ordering
156
118
  - **complete_task** - Mark tasks complete with file change documentation
157
- - **append_object_log** - Add progress notes and status updates to task history
119
+ - **append_issue_log** - Add progress notes and status updates to task history (occurs automatically on task completion)
120
+ - **append_modified_files** - Record files modified during task execution with change descriptions (occurs automatically on task completion)
158
121
 
159
122
  ### System Management
160
123
 
161
124
  - **activate** - Initialize the task system (if not configured via command line)
162
- - **prune_closed** - Clean up old completed/cancelled objects for maintenance
125
+ - **prune_closed** - Clean up old completed/cancelled issues for maintenance
163
126
 
164
127
  ## Project Hierarchy
165
128
 
@@ -172,12 +135,6 @@ Project (Top-level container)
172
135
  └── Task (Individual work items)
173
136
  ```
174
137
 
175
- **Supported Patterns:**
176
-
177
- - Full hierarchy: `Project → Epic → Feature → Task`
178
- - Simplified: `Feature → Task`
179
- - Standalone: `Task` only
180
-
181
138
  ## Prerequisites & Dependencies
182
139
 
183
140
  Tasks can have prerequisites that must be completed before they become available:
@@ -212,6 +169,22 @@ your-project/
212
169
  └── T-completed-task-id.md
213
170
  ```
214
171
 
172
+ ### Epic-Only Hierarchy
173
+
174
+ ```
175
+ your-project/
176
+ └── .trellis/
177
+ └── e/
178
+ └── E-epic-id/
179
+ └── f/
180
+ └── F-feature-id/
181
+ └── t/
182
+ ├── open/
183
+ │ └── T-task-id.md
184
+ └── closed/
185
+ └── T-completed-task-id.md
186
+ ```
187
+
215
188
  ### Feature-Only Hierarchy
216
189
 
217
190
  ```
@@ -238,195 +211,11 @@ your-project/
238
211
  └── T-completed-task-id.md
239
212
  ```
240
213
 
241
- Each object is stored as a Markdown file with YAML frontmatter metadata and content body.
242
-
243
- ## Installation
244
-
245
- ### Claude Code
246
-
247
- The easiest way to install Task Trellis MCP in Claude Code:
248
-
249
- ```bash
250
- claude mcp add @langadventurellc/task-trellis-mcp --projectRootFolder "$(pwd)"
251
- ```
252
-
253
- Or (you'll be required to call the activate tool once to set the project root folder):
254
-
255
- ```bash
256
- claude mcp add @langadventurellc/task-trellis-mcp
257
- ```
258
-
259
- ### VS Code with GitHub Copilot
260
-
261
- 1. Add Task Trellis to your VS Code settings. Open your settings JSON file and add:
262
-
263
- ```json
264
- {
265
- "github.copilot.chat.mcpServers": {
266
- "task-trellis": {
267
- "command": "npx",
268
- "args": [
269
- "-y",
270
- "@langadventurellc/task-trellis-mcp",
271
- "--projectRootFolder",
272
- "${workspaceFolder}"
273
- ]
274
- }
275
- }
276
- }
277
- ```
278
-
279
- ### Cursor
280
-
281
- Install Task Trellis MCP in Cursor by adding to your Cursor settings:
282
-
283
- **Method 1: Via Settings UI**
284
-
285
- 1. Open Cursor Settings (⌘/Ctrl + ,)
286
- 2. Search for "MCP"
287
- 3. Add new server with:
288
- - **Name**: `task-trellis`
289
- - **Command**: `npx`
290
- - **Args**: `["-y", "@langadventurellc/task-trellis-mcp", "--projectRootFolder", "${workspaceFolder}"]`
291
-
292
- **Method 2: Via Configuration File**
293
- Add to your Cursor configuration:
294
-
295
- ```json
296
- {
297
- "mcpServers": {
298
- "task-trellis": {
299
- "command": "npx",
300
- "args": [
301
- "-y",
302
- "@langadventurellc/task-trellis-mcp",
303
- "--projectRootFolder",
304
- "${workspaceFolder}"
305
- ]
306
- }
307
- }
308
- }
309
- ```
214
+ Each issue is stored as a Markdown file with YAML frontmatter metadata and content body.
310
215
 
311
- ### Windsurf
216
+ ## Installation and Configuration
312
217
 
313
- Add Task Trellis to your Windsurf MCP configuration:
314
-
315
- ```json
316
- {
317
- "mcpServers": {
318
- "task-trellis": {
319
- "command": "npx",
320
- "args": [
321
- "-y",
322
- "@langadventurellc/task-trellis-mcp",
323
- "--projectRootFolder",
324
- "${workspaceRoot}"
325
- ]
326
- }
327
- }
328
- }
329
- ```
330
-
331
- ### Cline (VS Code Extension)
332
-
333
- 1. Add Task Trellis to your Cline MCP servers in VS Code settings:
334
-
335
- ```json
336
- {
337
- "cline.mcpServers": {
338
- "task-trellis": {
339
- "command": "npx",
340
- "args": [
341
- "-y",
342
- "@langadventurellc/task-trellis-mcp",
343
- "--projectRootFolder",
344
- "${workspaceFolder}"
345
- ]
346
- }
347
- }
348
- }
349
- ```
350
-
351
- ### Continue (VS Code Extension)
352
-
353
- 1. Add to your Continue configuration file (`~/.continue/config.json`):
354
-
355
- ```json
356
- {
357
- "mcpServers": {
358
- "task-trellis": {
359
- "command": "npx",
360
- "args": [
361
- "-y",
362
- "@langadventurellc/task-trellis-mcp",
363
- "--projectRootFolder",
364
- "/path/to/your/project"
365
- ]
366
- }
367
- }
368
- }
369
- ```
370
-
371
- ### Other MCP Clients
372
-
373
- For any MCP-compatible client, use this configuration:
374
-
375
- ```json
376
- {
377
- "mcpServers": {
378
- "task-trellis": {
379
- "command": "npx",
380
- "args": [
381
- "-y",
382
- "@langadventurellc/task-trellis-mcp",
383
- "--projectRootFolder",
384
- "/absolute/path/to/project"
385
- ]
386
- }
387
- }
388
- }
389
- ```
390
-
391
- ## Quick Test
392
-
393
- After installation, test that Task Trellis is working by asking your AI assistant:
394
-
395
- > "Create a new project called 'My Test Project'"
396
-
397
- If configured correctly, the AI should respond with a confirmation and create the project structure in your specified project root folder.
398
-
399
- ## Configuration Options
400
-
401
- The Task Trellis MCP server supports these command-line options:
402
-
403
- - `--mode <mode>` - Server mode (default: "local")
404
- - `local` - Use local file-based storage
405
- - `remote` - Use remote repository (planned feature)
406
-
407
- - `--projectRootFolder <path>` - Project root folder path
408
- - Creates a `.trellis` folder inside the project root for task storage
409
- - Example: `--projectRootFolder /path/to/my-project` creates `/path/to/my-project/.trellis/`
410
-
411
- **Advanced Configuration Example:**
412
-
413
- ```json
414
- {
415
- "mcpServers": {
416
- "task-trellis": {
417
- "type": "stdio",
418
- "command": "npx",
419
- "args": [
420
- "@langadventurellc/task-trellis-mcp",
421
- "--mode",
422
- "local",
423
- "--projectRootFolder",
424
- "/path/to/your/project"
425
- ]
426
- }
427
- }
428
- }
429
- ```
218
+ See [installation instructions](docs/installation.md).
430
219
 
431
220
  ## Troubleshooting
432
221
 
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=autoPrune.e2e.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"autoPrune.e2e.test.d.ts","sourceRoot":"","sources":["../../../src/__tests__/e2e/autoPrune.e2e.test.ts"],"names":[],"mappings":""}