@decaf-ts/mcp-server 0.4.9 → 0.4.16

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 (650) hide show
  1. package/dist/assets/code/patterns/builder.json +10 -0
  2. package/dist/assets/prompts/documentation/class.json +10 -0
  3. package/dist/assets/prompts/documentation/constant.json +10 -0
  4. package/dist/assets/prompts/documentation/decorator.json +10 -0
  5. package/dist/assets/prompts/documentation/file.json +10 -0
  6. package/dist/assets/prompts/documentation/function.json +10 -0
  7. package/dist/assets/prompts/documentation/interface.json +10 -0
  8. package/dist/assets/prompts/documentation/iterate.json +10 -0
  9. package/dist/assets/prompts/documentation/module.json +10 -0
  10. package/dist/assets/prompts/documentation/prefix.json +10 -0
  11. package/dist/assets/prompts/documentation/repo.json +10 -0
  12. package/dist/assets/prompts/documentation/suffix.json +10 -0
  13. package/dist/assets/prompts/repository/readme.json +10 -0
  14. package/dist/assets/prompts/repository/release_notes.json +10 -0
  15. package/dist/assets/prompts/repository/setup.json +10 -0
  16. package/dist/assets/prompts/tests/coverage.json +10 -0
  17. package/dist/mcp-server.cjs +1 -1
  18. package/dist/mcp-server.cjs.map +1 -1
  19. package/dist/mcp-server.js +1 -1
  20. package/dist/mcp-server.js.map +1 -1
  21. package/lib/assets/code/patterns/builder.json +10 -0
  22. package/lib/assets/prompts/documentation/class.json +10 -0
  23. package/lib/assets/prompts/documentation/constant.json +10 -0
  24. package/lib/assets/prompts/documentation/decorator.json +10 -0
  25. package/lib/assets/prompts/documentation/file.json +10 -0
  26. package/lib/assets/prompts/documentation/function.json +10 -0
  27. package/lib/assets/prompts/documentation/interface.json +10 -0
  28. package/lib/assets/prompts/documentation/iterate.json +10 -0
  29. package/lib/assets/prompts/documentation/module.json +10 -0
  30. package/lib/assets/prompts/documentation/prefix.json +10 -0
  31. package/lib/assets/prompts/documentation/repo.json +10 -0
  32. package/lib/assets/prompts/documentation/suffix.json +10 -0
  33. package/lib/assets/prompts/repository/readme.json +10 -0
  34. package/lib/assets/prompts/repository/release_notes.json +10 -0
  35. package/lib/assets/prompts/repository/setup.json +10 -0
  36. package/lib/assets/prompts/tests/coverage.json +10 -0
  37. package/lib/builders/builder.cjs +19 -4
  38. package/lib/builders/builder.d.ts +14 -4
  39. package/lib/builders/builder.js.map +1 -1
  40. package/lib/builders/index.cjs +3 -2
  41. package/lib/builders/index.d.ts +1 -2
  42. package/lib/builders/index.js.map +1 -1
  43. package/lib/builders/prompt-builder.cjs +172 -12
  44. package/lib/builders/prompt-builder.d.ts +29 -5
  45. package/lib/builders/prompt-builder.js.map +1 -1
  46. package/lib/builders/resource-builder.cjs +4 -4
  47. package/lib/builders/resource-builder.d.ts +2 -2
  48. package/lib/builders/resource-builder.js.map +1 -1
  49. package/lib/builders/tool-builder.cjs +27 -9
  50. package/lib/builders/tool-builder.d.ts +7 -6
  51. package/lib/builders/tool-builder.js.map +1 -1
  52. package/lib/builders/types.cjs +3 -0
  53. package/lib/builders/types.d.ts +17 -0
  54. package/lib/builders/types.js.map +1 -0
  55. package/lib/esm/builders/builder.d.ts +14 -4
  56. package/lib/esm/builders/builder.js +19 -4
  57. package/lib/esm/builders/builder.js.map +1 -1
  58. package/lib/esm/builders/index.d.ts +1 -2
  59. package/lib/esm/builders/index.js +3 -2
  60. package/lib/esm/builders/index.js.map +1 -1
  61. package/lib/esm/builders/prompt-builder.d.ts +29 -5
  62. package/lib/esm/builders/prompt-builder.js +172 -13
  63. package/lib/esm/builders/prompt-builder.js.map +1 -1
  64. package/lib/esm/builders/resource-builder.d.ts +2 -2
  65. package/lib/esm/builders/resource-builder.js +3 -3
  66. package/lib/esm/builders/resource-builder.js.map +1 -1
  67. package/lib/esm/builders/tool-builder.d.ts +7 -6
  68. package/lib/esm/builders/tool-builder.js +28 -10
  69. package/lib/esm/builders/tool-builder.js.map +1 -1
  70. package/lib/esm/builders/types.d.ts +17 -0
  71. package/lib/esm/builders/types.js +2 -0
  72. package/lib/esm/builders/types.js.map +1 -0
  73. package/lib/esm/index.d.ts +0 -2
  74. package/lib/esm/index.js +3 -2
  75. package/lib/esm/index.js.map +1 -1
  76. package/lib/esm/jira/errors.d.ts +0 -0
  77. package/lib/esm/jira/errors.js +42 -0
  78. package/lib/esm/jira/errors.js.map +1 -0
  79. package/lib/esm/jira/jira-client-factory.d.ts +0 -0
  80. package/lib/esm/jira/jira-client-factory.js +74 -0
  81. package/lib/esm/jira/jira-client-factory.js.map +1 -0
  82. package/lib/esm/jira/schema-utils.d.ts +5 -0
  83. package/lib/esm/jira/schema-utils.js +52 -0
  84. package/lib/esm/jira/schema-utils.js.map +1 -0
  85. package/lib/esm/jira/tool-utils.d.ts +0 -0
  86. package/lib/esm/jira/tool-utils.js +65 -0
  87. package/lib/esm/jira/tool-utils.js.map +1 -0
  88. package/lib/esm/mcp-server.d.ts +2 -2
  89. package/lib/esm/mcp-server.js +132 -170
  90. package/lib/esm/mcp-server.js.map +1 -1
  91. package/lib/esm/modules/jira/auth-providers.d.ts +0 -0
  92. package/lib/esm/modules/jira/auth-providers.js +33 -0
  93. package/lib/esm/modules/jira/auth-providers.js.map +1 -0
  94. package/lib/esm/modules/jira/error-normalizer.d.ts +0 -0
  95. package/lib/esm/modules/jira/error-normalizer.js +13 -0
  96. package/lib/esm/modules/jira/error-normalizer.js.map +1 -0
  97. package/lib/esm/modules/jira/index.d.ts +1 -0
  98. package/lib/esm/modules/jira/index.js +17 -0
  99. package/lib/esm/modules/jira/index.js.map +1 -0
  100. package/lib/esm/modules/jira/makeJiraClient.d.ts +10 -0
  101. package/lib/esm/modules/jira/makeJiraClient.js +44 -0
  102. package/lib/esm/modules/jira/makeJiraClient.js.map +1 -0
  103. package/lib/esm/modules/jira/prompts/create-issue-prompt.d.ts +0 -0
  104. package/lib/esm/modules/jira/prompts/create-issue-prompt.js +33 -0
  105. package/lib/esm/modules/jira/prompts/create-issue-prompt.js.map +1 -0
  106. package/lib/esm/modules/jira/register.d.ts +0 -0
  107. package/lib/esm/modules/jira/register.js +244 -0
  108. package/lib/esm/modules/jira/register.js.map +1 -0
  109. package/lib/esm/modules/jira/schemas/create-issue-input.d.ts +0 -0
  110. package/lib/esm/modules/jira/schemas/create-issue-input.js +13 -0
  111. package/lib/esm/modules/jira/schemas/create-issue-input.js.map +1 -0
  112. package/lib/esm/modules/jira/schemas/issue-schema.d.ts +0 -0
  113. package/lib/esm/modules/jira/schemas/issue-schema.js +13 -0
  114. package/lib/esm/modules/jira/schemas/issue-schema.js.map +1 -0
  115. package/lib/esm/modules/jira/tools/agile-board-list.d.ts +0 -0
  116. package/lib/esm/modules/jira/tools/agile-board-list.js +27 -0
  117. package/lib/esm/modules/jira/tools/agile-board-list.js.map +1 -0
  118. package/lib/esm/modules/jira/tools/issue-create.d.ts +0 -0
  119. package/lib/esm/modules/jira/tools/issue-create.js +69 -0
  120. package/lib/esm/modules/jira/tools/issue-create.js.map +1 -0
  121. package/lib/esm/modules/jira/tools/issue-transition.d.ts +0 -0
  122. package/lib/esm/modules/jira/tools/issue-transition.js +27 -0
  123. package/lib/esm/modules/jira/tools/issue-transition.js.map +1 -0
  124. package/lib/esm/modules/jira/tools/project-list.d.ts +0 -0
  125. package/lib/esm/modules/jira/tools/project-list.js +27 -0
  126. package/lib/esm/modules/jira/tools/project-list.js.map +1 -0
  127. package/lib/esm/modules/jira/tools/search-jql.d.ts +0 -0
  128. package/lib/esm/modules/jira/tools/search-jql.js +27 -0
  129. package/lib/esm/modules/jira/tools/search-jql.js.map +1 -0
  130. package/lib/esm/modules/jira/types.d.ts +13 -0
  131. package/lib/esm/modules/jira/types.js +2 -0
  132. package/lib/esm/modules/jira/types.js.map +1 -0
  133. package/lib/esm/prompts/code/design-patterns/builder.js +1 -3
  134. package/lib/esm/prompts/code/design-patterns/builder.js.map +1 -1
  135. package/lib/esm/prompts/contants.d.ts +4 -0
  136. package/lib/esm/prompts/contants.js +6 -0
  137. package/lib/esm/prompts/contants.js.map +1 -0
  138. package/lib/esm/prompts/index.js +16 -22
  139. package/lib/esm/prompts/index.js.map +1 -1
  140. package/lib/esm/prompts/issue/create-prompt.d.ts +3 -0
  141. package/lib/esm/prompts/issue/create-prompt.js +31 -0
  142. package/lib/esm/prompts/issue/create-prompt.js.map +1 -0
  143. package/lib/esm/prompts/jsdocs-prompts.d.ts +2 -0
  144. package/lib/esm/prompts/jsdocs-prompts.js +27 -0
  145. package/lib/esm/prompts/jsdocs-prompts.js.map +1 -0
  146. package/lib/esm/prompts/sprint/plan-sprint-prompt.d.ts +2 -0
  147. package/lib/esm/prompts/sprint/plan-sprint-prompt.js +26 -0
  148. package/lib/esm/prompts/sprint/plan-sprint-prompt.js.map +1 -0
  149. package/lib/esm/resources/decoration-schematics/index.d.ts +0 -0
  150. package/lib/esm/resources/decoration-schematics/index.js +72 -0
  151. package/lib/esm/resources/decoration-schematics/index.js.map +1 -0
  152. package/lib/esm/resources/example-resource/index.d.ts +0 -2
  153. package/lib/esm/resources/example-resource/index.js +27 -18
  154. package/lib/esm/resources/example-resource/index.js.map +1 -1
  155. package/lib/esm/resources/fields-resource.d.ts +0 -0
  156. package/lib/esm/resources/fields-resource.js +50 -0
  157. package/lib/esm/resources/fields-resource.js.map +1 -0
  158. package/lib/esm/resources/golden-overrides/index.d.ts +0 -0
  159. package/lib/esm/resources/golden-overrides/index.js +57 -0
  160. package/lib/esm/resources/golden-overrides/index.js.map +1 -0
  161. package/lib/esm/resources/index.d.ts +0 -2
  162. package/lib/esm/resources/index.js +8 -3
  163. package/lib/esm/resources/index.js.map +1 -1
  164. package/lib/esm/resources/projects-resource.d.ts +0 -0
  165. package/lib/esm/resources/projects-resource.js +59 -0
  166. package/lib/esm/resources/projects-resource.js.map +1 -0
  167. package/lib/esm/resources/repo-metadata/index.d.ts +0 -2
  168. package/lib/esm/resources/repo-metadata/index.js +33 -24
  169. package/lib/esm/resources/repo-metadata/index.js.map +1 -1
  170. package/lib/esm/tools/agile/board-list-tool.d.ts +0 -0
  171. package/lib/esm/tools/agile/board-list-tool.js +49 -0
  172. package/lib/esm/tools/agile/board-list-tool.js.map +1 -0
  173. package/lib/esm/tools/ast/ts-ast-tool.d.ts +0 -2
  174. package/lib/esm/tools/ast/ts-ast-tool.js +79 -66
  175. package/lib/esm/tools/ast/ts-ast-tool.js.map +1 -1
  176. package/lib/esm/tools/ast/types.d.ts +0 -105
  177. package/lib/esm/tools/ast/types.js +69 -32
  178. package/lib/esm/tools/ast/types.js.map +1 -1
  179. package/lib/esm/tools/ast/utils.d.ts +0 -5
  180. package/lib/esm/tools/ast/utils.js +69 -57
  181. package/lib/esm/tools/ast/utils.js.map +1 -1
  182. package/lib/esm/tools/ast-jsdoc-tools/apply.d.ts +0 -6
  183. package/lib/esm/tools/ast-jsdoc-tools/apply.js +32 -28
  184. package/lib/esm/tools/ast-jsdoc-tools/apply.js.map +1 -1
  185. package/lib/esm/tools/ast-jsdoc-tools/cli.d.ts +0 -2
  186. package/lib/esm/tools/ast-jsdoc-tools/cli.js +17 -32
  187. package/lib/esm/tools/ast-jsdoc-tools/cli.js.map +1 -1
  188. package/lib/esm/tools/ast-jsdoc-tools/contracts/validator.d.ts +0 -0
  189. package/lib/esm/tools/ast-jsdoc-tools/contracts/validator.js +8 -0
  190. package/lib/esm/tools/ast-jsdoc-tools/contracts/validator.js.map +1 -0
  191. package/lib/esm/tools/ast-jsdoc-tools/enumerator.d.ts +0 -1
  192. package/lib/esm/tools/ast-jsdoc-tools/enumerator.js +25 -24
  193. package/lib/esm/tools/ast-jsdoc-tools/enumerator.js.map +1 -1
  194. package/lib/esm/tools/ast-jsdoc-tools/fileRunner.d.ts +0 -11
  195. package/lib/esm/tools/ast-jsdoc-tools/fileRunner.js +38 -28
  196. package/lib/esm/tools/ast-jsdoc-tools/fileRunner.js.map +1 -1
  197. package/lib/esm/tools/ast-jsdoc-tools/formatter.d.ts +0 -6
  198. package/lib/esm/tools/ast-jsdoc-tools/formatter.js +21 -17
  199. package/lib/esm/tools/ast-jsdoc-tools/formatter.js.map +1 -1
  200. package/lib/esm/tools/ast-jsdoc-tools/generator.d.ts +0 -12
  201. package/lib/esm/tools/ast-jsdoc-tools/generator.js +68 -54
  202. package/lib/esm/tools/ast-jsdoc-tools/generator.js.map +1 -1
  203. package/lib/esm/tools/ast-jsdoc-tools/index.d.ts +0 -7
  204. package/lib/esm/tools/ast-jsdoc-tools/index.js +43 -28
  205. package/lib/esm/tools/ast-jsdoc-tools/index.js.map +1 -1
  206. package/lib/esm/tools/ast-jsdoc-tools/interactive.d.ts +0 -1
  207. package/lib/esm/tools/ast-jsdoc-tools/interactive.js +8 -6
  208. package/lib/esm/tools/ast-jsdoc-tools/interactive.js.map +1 -1
  209. package/lib/esm/tools/ast-jsdoc-tools/parser.d.ts +0 -13
  210. package/lib/esm/tools/ast-jsdoc-tools/parser.js +88 -70
  211. package/lib/esm/tools/ast-jsdoc-tools/parser.js.map +1 -1
  212. package/lib/esm/tools/ast-jsdoc-tools/patch.d.ts +0 -2
  213. package/lib/esm/tools/ast-jsdoc-tools/patch.js +25 -22
  214. package/lib/esm/tools/ast-jsdoc-tools/patch.js.map +1 -1
  215. package/lib/esm/tools/ast-jsdoc-tools/promptRunner.d.ts +0 -0
  216. package/lib/esm/tools/ast-jsdoc-tools/promptRunner.js +40 -0
  217. package/lib/esm/tools/ast-jsdoc-tools/promptRunner.js.map +1 -0
  218. package/lib/esm/tools/ast-jsdoc-tools/prompts/loader.d.ts +0 -10
  219. package/lib/esm/tools/ast-jsdoc-tools/prompts/loader.js +33 -25
  220. package/lib/esm/tools/ast-jsdoc-tools/prompts/loader.js.map +1 -1
  221. package/lib/esm/tools/ast-jsdoc-tools/repoRunner.d.ts +0 -16
  222. package/lib/esm/tools/ast-jsdoc-tools/repoRunner.js +123 -60
  223. package/lib/esm/tools/ast-jsdoc-tools/repoRunner.js.map +1 -1
  224. package/lib/esm/tools/ast-jsdoc-tools/tool0/generator-tool.d.ts +0 -0
  225. package/lib/esm/tools/ast-jsdoc-tools/tool0/generator-tool.js +34 -0
  226. package/lib/esm/tools/ast-jsdoc-tools/tool0/generator-tool.js.map +1 -0
  227. package/lib/esm/tools/ast-jsdoc-tools/tool1/extractor.d.ts +0 -0
  228. package/lib/esm/tools/ast-jsdoc-tools/tool1/extractor.js +196 -0
  229. package/lib/esm/tools/ast-jsdoc-tools/tool1/extractor.js.map +1 -0
  230. package/lib/esm/tools/ast-jsdoc-tools/tool2/suggester.d.ts +0 -0
  231. package/lib/esm/tools/ast-jsdoc-tools/tool2/suggester.js +67 -0
  232. package/lib/esm/tools/ast-jsdoc-tools/tool2/suggester.js.map +1 -0
  233. package/lib/esm/tools/ast-jsdoc-tools/tool3/fileProcessor.d.ts +0 -0
  234. package/lib/esm/tools/ast-jsdoc-tools/tool3/fileProcessor.js +35 -0
  235. package/lib/esm/tools/ast-jsdoc-tools/tool3/fileProcessor.js.map +1 -0
  236. package/lib/esm/tools/ast-jsdoc-tools/tool4/repoRunner.d.ts +0 -0
  237. package/lib/esm/tools/ast-jsdoc-tools/tool4/repoRunner.js +116 -0
  238. package/lib/esm/tools/ast-jsdoc-tools/tool4/repoRunner.js.map +1 -0
  239. package/lib/esm/tools/ast-jsdoc-tools/tools/jsdoc-generator.d.ts +0 -5
  240. package/lib/esm/tools/ast-jsdoc-tools/tools/jsdoc-generator.js +79 -77
  241. package/lib/esm/tools/ast-jsdoc-tools/tools/jsdoc-generator.js.map +1 -1
  242. package/lib/esm/tools/ast-jsdoc-tools/utils/backups.d.ts +0 -0
  243. package/lib/esm/tools/ast-jsdoc-tools/utils/backups.js +14 -0
  244. package/lib/esm/tools/ast-jsdoc-tools/utils/backups.js.map +1 -0
  245. package/lib/esm/tools/ast-jsdoc-tools/utils/conflict-detector.d.ts +0 -5
  246. package/lib/esm/tools/ast-jsdoc-tools/utils/conflict-detector.js +29 -29
  247. package/lib/esm/tools/ast-jsdoc-tools/utils/conflict-detector.js.map +1 -1
  248. package/lib/esm/tools/ast-jsdoc-tools/utils/context-schema.d.ts +0 -7
  249. package/lib/esm/tools/ast-jsdoc-tools/utils/context-schema.js +29 -28
  250. package/lib/esm/tools/ast-jsdoc-tools/utils/context-schema.js.map +1 -1
  251. package/lib/esm/tools/ast-jsdoc-tools/utils/heuristics.d.ts +0 -2
  252. package/lib/esm/tools/ast-jsdoc-tools/utils/heuristics.js +27 -30
  253. package/lib/esm/tools/ast-jsdoc-tools/utils/heuristics.js.map +1 -1
  254. package/lib/esm/tools/ast-jsdoc-tools/utils/logging.d.ts +0 -0
  255. package/lib/esm/tools/ast-jsdoc-tools/utils/logging.js +18 -0
  256. package/lib/esm/tools/ast-jsdoc-tools/utils/logging.js.map +1 -0
  257. package/lib/esm/tools/ast-jsdoc-tools/utils/ts-project.d.ts +0 -12
  258. package/lib/esm/tools/ast-jsdoc-tools/utils/ts-project.js +22 -20
  259. package/lib/esm/tools/ast-jsdoc-tools/utils/ts-project.js.map +1 -1
  260. package/lib/esm/tools/decoration/builder.d.ts +0 -0
  261. package/lib/esm/tools/decoration/builder.js +81 -0
  262. package/lib/esm/tools/decoration/builder.js.map +1 -0
  263. package/lib/esm/tools/decoration/decorators.d.ts +0 -0
  264. package/lib/esm/tools/decoration/decorators.js +37 -0
  265. package/lib/esm/tools/decoration/decorators.js.map +1 -0
  266. package/lib/esm/tools/decoration/index.d.ts +0 -0
  267. package/lib/esm/tools/decoration/index.js +49 -0
  268. package/lib/esm/tools/decoration/index.js.map +1 -0
  269. package/lib/esm/tools/file-summarizer/index.d.ts +0 -2
  270. package/lib/esm/tools/file-summarizer/index.js +41 -28
  271. package/lib/esm/tools/file-summarizer/index.js.map +1 -1
  272. package/lib/esm/tools/index.d.ts +0 -2
  273. package/lib/esm/tools/index.js +30 -5
  274. package/lib/esm/tools/index.js.map +1 -1
  275. package/lib/esm/tools/issue/create-tool.d.ts +0 -0
  276. package/lib/esm/tools/issue/create-tool.js +132 -0
  277. package/lib/esm/tools/issue/create-tool.js.map +1 -0
  278. package/lib/esm/tools/issue/transition-tool.d.ts +0 -0
  279. package/lib/esm/tools/issue/transition-tool.js +41 -0
  280. package/lib/esm/tools/issue/transition-tool.js.map +1 -0
  281. package/lib/esm/tools/jsdoc/ts-jsdoc-element-tool.d.ts +0 -2
  282. package/lib/esm/tools/jsdoc/ts-jsdoc-element-tool.js +110 -83
  283. package/lib/esm/tools/jsdoc/ts-jsdoc-element-tool.js.map +1 -1
  284. package/lib/esm/tools/jsdoc/utils.d.ts +0 -5
  285. package/lib/esm/tools/jsdoc/utils.js +59 -52
  286. package/lib/esm/tools/jsdoc/utils.js.map +1 -1
  287. package/lib/esm/tools/project/list-tool.d.ts +0 -0
  288. package/lib/esm/tools/project/list-tool.js +47 -0
  289. package/lib/esm/tools/project/list-tool.js.map +1 -0
  290. package/lib/esm/tools/search/jql-tool.d.ts +0 -0
  291. package/lib/esm/tools/search/jql-tool.js +49 -0
  292. package/lib/esm/tools/search/jql-tool.js.map +1 -0
  293. package/lib/esm/tools/testing/ts-jest-list-tests.d.ts +0 -2
  294. package/lib/esm/tools/testing/ts-jest-list-tests.js +70 -52
  295. package/lib/esm/tools/testing/ts-jest-list-tests.js.map +1 -1
  296. package/lib/esm/types.d.ts +7 -11
  297. package/lib/esm/utils/assets.d.ts +13 -0
  298. package/lib/esm/utils/assets.js +78 -0
  299. package/lib/esm/utils/assets.js.map +1 -0
  300. package/lib/esm/utils/banner.js +3 -3
  301. package/lib/esm/utils/banner.js.map +1 -1
  302. package/lib/esm/utils/constants.d.ts +8 -0
  303. package/lib/esm/utils/constants.js +11 -0
  304. package/lib/esm/utils/constants.js.map +1 -0
  305. package/lib/esm/utils/conversions.d.ts +2 -0
  306. package/lib/esm/utils/conversions.js +23 -0
  307. package/lib/esm/utils/conversions.js.map +1 -0
  308. package/lib/esm/utils/environment.d.ts +32 -0
  309. package/lib/esm/utils/environment.js +43 -0
  310. package/lib/esm/utils/environment.js.map +1 -0
  311. package/lib/esm/utils/icons.d.ts +0 -0
  312. package/lib/esm/utils/icons.js +2 -0
  313. package/lib/esm/utils/icons.js.map +1 -0
  314. package/lib/esm/utils/initialization.d.ts +1 -0
  315. package/lib/esm/utils/initialization.js +20 -0
  316. package/lib/esm/utils/initialization.js.map +1 -0
  317. package/lib/esm/utils/normalization.d.ts +0 -0
  318. package/lib/esm/utils/normalization.js +2 -0
  319. package/lib/esm/utils/normalization.js.map +1 -0
  320. package/lib/esm/utils/utils.d.ts +1 -0
  321. package/lib/esm/utils/utils.js +8 -0
  322. package/lib/esm/utils/utils.js.map +1 -0
  323. package/lib/esm/version.d.ts +1 -1
  324. package/lib/esm/version.js +1 -1
  325. package/lib/index.cjs +3 -2
  326. package/lib/index.d.ts +0 -2
  327. package/lib/index.js.map +1 -1
  328. package/lib/jira/errors.cjs +42 -0
  329. package/lib/jira/errors.d.ts +0 -0
  330. package/lib/jira/errors.js.map +1 -0
  331. package/lib/jira/jira-client-factory.cjs +74 -0
  332. package/lib/jira/jira-client-factory.d.ts +0 -0
  333. package/lib/jira/jira-client-factory.js.map +1 -0
  334. package/lib/jira/schema-utils.cjs +58 -0
  335. package/lib/jira/schema-utils.d.ts +5 -0
  336. package/lib/jira/schema-utils.js.map +1 -0
  337. package/lib/jira/tool-utils.cjs +65 -0
  338. package/lib/jira/tool-utils.d.ts +0 -0
  339. package/lib/jira/tool-utils.js.map +1 -0
  340. package/lib/mcp-server.cjs +133 -204
  341. package/lib/mcp-server.d.ts +2 -2
  342. package/lib/mcp-server.js.map +1 -1
  343. package/lib/modules/jira/auth-providers.cjs +33 -0
  344. package/lib/modules/jira/auth-providers.d.ts +0 -0
  345. package/lib/modules/jira/auth-providers.js.map +1 -0
  346. package/lib/modules/jira/error-normalizer.cjs +13 -0
  347. package/lib/modules/jira/error-normalizer.d.ts +0 -0
  348. package/lib/modules/jira/error-normalizer.js.map +1 -0
  349. package/lib/modules/jira/index.cjs +33 -0
  350. package/lib/modules/jira/index.d.ts +1 -0
  351. package/lib/modules/jira/index.js.map +1 -0
  352. package/lib/modules/jira/makeJiraClient.cjs +47 -0
  353. package/lib/modules/jira/makeJiraClient.d.ts +10 -0
  354. package/lib/modules/jira/makeJiraClient.js.map +1 -0
  355. package/lib/modules/jira/prompts/create-issue-prompt.cjs +33 -0
  356. package/lib/modules/jira/prompts/create-issue-prompt.d.ts +0 -0
  357. package/lib/modules/jira/prompts/create-issue-prompt.js.map +1 -0
  358. package/lib/modules/jira/register.cjs +244 -0
  359. package/lib/modules/jira/register.d.ts +0 -0
  360. package/lib/modules/jira/register.js.map +1 -0
  361. package/lib/modules/jira/schemas/create-issue-input.cjs +13 -0
  362. package/lib/modules/jira/schemas/create-issue-input.d.ts +0 -0
  363. package/lib/modules/jira/schemas/create-issue-input.js.map +1 -0
  364. package/lib/modules/jira/schemas/issue-schema.cjs +13 -0
  365. package/lib/modules/jira/schemas/issue-schema.d.ts +0 -0
  366. package/lib/modules/jira/schemas/issue-schema.js.map +1 -0
  367. package/lib/modules/jira/tools/agile-board-list.cjs +27 -0
  368. package/lib/modules/jira/tools/agile-board-list.d.ts +0 -0
  369. package/lib/modules/jira/tools/agile-board-list.js.map +1 -0
  370. package/lib/modules/jira/tools/issue-create.cjs +69 -0
  371. package/lib/modules/jira/tools/issue-create.d.ts +0 -0
  372. package/lib/modules/jira/tools/issue-create.js.map +1 -0
  373. package/lib/modules/jira/tools/issue-transition.cjs +27 -0
  374. package/lib/modules/jira/tools/issue-transition.d.ts +0 -0
  375. package/lib/modules/jira/tools/issue-transition.js.map +1 -0
  376. package/lib/modules/jira/tools/project-list.cjs +27 -0
  377. package/lib/modules/jira/tools/project-list.d.ts +0 -0
  378. package/lib/modules/jira/tools/project-list.js.map +1 -0
  379. package/lib/modules/jira/tools/search-jql.cjs +27 -0
  380. package/lib/modules/jira/tools/search-jql.d.ts +0 -0
  381. package/lib/modules/jira/tools/search-jql.js.map +1 -0
  382. package/lib/modules/jira/types.cjs +3 -0
  383. package/lib/modules/jira/types.d.ts +13 -0
  384. package/lib/modules/jira/types.js.map +1 -0
  385. package/lib/prompts/code/design-patterns/builder.cjs +1 -3
  386. package/lib/prompts/code/design-patterns/builder.js.map +1 -1
  387. package/lib/prompts/contants.cjs +9 -0
  388. package/lib/prompts/contants.d.ts +4 -0
  389. package/lib/prompts/contants.js.map +1 -0
  390. package/lib/prompts/index.cjs +16 -22
  391. package/lib/prompts/index.js.map +1 -1
  392. package/lib/prompts/issue/create-prompt.cjs +34 -0
  393. package/lib/prompts/issue/create-prompt.d.ts +3 -0
  394. package/lib/prompts/issue/create-prompt.js.map +1 -0
  395. package/lib/prompts/jsdocs-prompts.cjs +30 -0
  396. package/lib/prompts/jsdocs-prompts.d.ts +2 -0
  397. package/lib/prompts/jsdocs-prompts.js.map +1 -0
  398. package/lib/prompts/sprint/plan-sprint-prompt.cjs +29 -0
  399. package/lib/prompts/sprint/plan-sprint-prompt.d.ts +2 -0
  400. package/lib/prompts/sprint/plan-sprint-prompt.js.map +1 -0
  401. package/lib/resources/decoration-schematics/index.cjs +72 -0
  402. package/lib/resources/decoration-schematics/index.d.ts +0 -0
  403. package/lib/resources/decoration-schematics/index.js.map +1 -0
  404. package/lib/resources/example-resource/index.cjs +26 -20
  405. package/lib/resources/example-resource/index.d.ts +0 -2
  406. package/lib/resources/example-resource/index.js.map +1 -1
  407. package/lib/resources/fields-resource.cjs +50 -0
  408. package/lib/resources/fields-resource.d.ts +0 -0
  409. package/lib/resources/fields-resource.js.map +1 -0
  410. package/lib/resources/golden-overrides/index.cjs +57 -0
  411. package/lib/resources/golden-overrides/index.d.ts +0 -0
  412. package/lib/resources/golden-overrides/index.js.map +1 -0
  413. package/lib/resources/index.cjs +7 -5
  414. package/lib/resources/index.d.ts +0 -2
  415. package/lib/resources/index.js.map +1 -1
  416. package/lib/resources/projects-resource.cjs +59 -0
  417. package/lib/resources/projects-resource.d.ts +0 -0
  418. package/lib/resources/projects-resource.js.map +1 -0
  419. package/lib/resources/repo-metadata/index.cjs +32 -26
  420. package/lib/resources/repo-metadata/index.d.ts +0 -2
  421. package/lib/resources/repo-metadata/index.js.map +1 -1
  422. package/lib/tools/agile/board-list-tool.cjs +49 -0
  423. package/lib/tools/agile/board-list-tool.d.ts +0 -0
  424. package/lib/tools/agile/board-list-tool.js.map +1 -0
  425. package/lib/tools/ast/ts-ast-tool.cjs +78 -68
  426. package/lib/tools/ast/ts-ast-tool.d.ts +0 -2
  427. package/lib/tools/ast/ts-ast-tool.js.map +1 -1
  428. package/lib/tools/ast/types.cjs +68 -34
  429. package/lib/tools/ast/types.d.ts +0 -105
  430. package/lib/tools/ast/types.js.map +1 -1
  431. package/lib/tools/ast/utils.cjs +68 -63
  432. package/lib/tools/ast/utils.d.ts +0 -5
  433. package/lib/tools/ast/utils.js.map +1 -1
  434. package/lib/tools/ast-jsdoc-tools/apply.cjs +31 -34
  435. package/lib/tools/ast-jsdoc-tools/apply.d.ts +0 -6
  436. package/lib/tools/ast-jsdoc-tools/apply.js.map +1 -1
  437. package/lib/tools/ast-jsdoc-tools/cli.cjs +16 -36
  438. package/lib/tools/ast-jsdoc-tools/cli.d.ts +0 -2
  439. package/lib/tools/ast-jsdoc-tools/cli.js.map +1 -1
  440. package/lib/tools/ast-jsdoc-tools/contracts/validator.cjs +8 -0
  441. package/lib/tools/ast-jsdoc-tools/contracts/validator.d.ts +0 -0
  442. package/lib/tools/ast-jsdoc-tools/contracts/validator.js.map +1 -0
  443. package/lib/tools/ast-jsdoc-tools/enumerator.cjs +24 -29
  444. package/lib/tools/ast-jsdoc-tools/enumerator.d.ts +0 -1
  445. package/lib/tools/ast-jsdoc-tools/enumerator.js.map +1 -1
  446. package/lib/tools/ast-jsdoc-tools/fileRunner.cjs +37 -33
  447. package/lib/tools/ast-jsdoc-tools/fileRunner.d.ts +0 -11
  448. package/lib/tools/ast-jsdoc-tools/fileRunner.js.map +1 -1
  449. package/lib/tools/ast-jsdoc-tools/formatter.cjs +20 -19
  450. package/lib/tools/ast-jsdoc-tools/formatter.d.ts +0 -6
  451. package/lib/tools/ast-jsdoc-tools/formatter.js.map +1 -1
  452. package/lib/tools/ast-jsdoc-tools/generator.cjs +67 -56
  453. package/lib/tools/ast-jsdoc-tools/generator.d.ts +0 -12
  454. package/lib/tools/ast-jsdoc-tools/generator.js.map +1 -1
  455. package/lib/tools/ast-jsdoc-tools/index.cjs +42 -31
  456. package/lib/tools/ast-jsdoc-tools/index.d.ts +0 -7
  457. package/lib/tools/ast-jsdoc-tools/index.js.map +1 -1
  458. package/lib/tools/ast-jsdoc-tools/interactive.cjs +7 -8
  459. package/lib/tools/ast-jsdoc-tools/interactive.d.ts +0 -1
  460. package/lib/tools/ast-jsdoc-tools/interactive.js.map +1 -1
  461. package/lib/tools/ast-jsdoc-tools/parser.cjs +87 -75
  462. package/lib/tools/ast-jsdoc-tools/parser.d.ts +0 -13
  463. package/lib/tools/ast-jsdoc-tools/parser.js.map +1 -1
  464. package/lib/tools/ast-jsdoc-tools/patch.cjs +24 -27
  465. package/lib/tools/ast-jsdoc-tools/patch.d.ts +0 -2
  466. package/lib/tools/ast-jsdoc-tools/patch.js.map +1 -1
  467. package/lib/tools/ast-jsdoc-tools/promptRunner.cjs +40 -0
  468. package/lib/tools/ast-jsdoc-tools/promptRunner.d.ts +0 -0
  469. package/lib/tools/ast-jsdoc-tools/promptRunner.js.map +1 -0
  470. package/lib/tools/ast-jsdoc-tools/prompts/loader.cjs +32 -30
  471. package/lib/tools/ast-jsdoc-tools/prompts/loader.d.ts +0 -10
  472. package/lib/tools/ast-jsdoc-tools/prompts/loader.js.map +1 -1
  473. package/lib/tools/ast-jsdoc-tools/repoRunner.cjs +122 -65
  474. package/lib/tools/ast-jsdoc-tools/repoRunner.d.ts +0 -16
  475. package/lib/tools/ast-jsdoc-tools/repoRunner.js.map +1 -1
  476. package/lib/tools/ast-jsdoc-tools/tool0/generator-tool.cjs +34 -0
  477. package/lib/tools/ast-jsdoc-tools/tool0/generator-tool.d.ts +0 -0
  478. package/lib/tools/ast-jsdoc-tools/tool0/generator-tool.js.map +1 -0
  479. package/lib/tools/ast-jsdoc-tools/tool1/extractor.cjs +196 -0
  480. package/lib/tools/ast-jsdoc-tools/tool1/extractor.d.ts +0 -0
  481. package/lib/tools/ast-jsdoc-tools/tool1/extractor.js.map +1 -0
  482. package/lib/tools/ast-jsdoc-tools/tool2/suggester.cjs +67 -0
  483. package/lib/tools/ast-jsdoc-tools/tool2/suggester.d.ts +0 -0
  484. package/lib/tools/ast-jsdoc-tools/tool2/suggester.js.map +1 -0
  485. package/lib/tools/ast-jsdoc-tools/tool3/fileProcessor.cjs +35 -0
  486. package/lib/tools/ast-jsdoc-tools/tool3/fileProcessor.d.ts +0 -0
  487. package/lib/tools/ast-jsdoc-tools/tool3/fileProcessor.js.map +1 -0
  488. package/lib/tools/ast-jsdoc-tools/tool4/repoRunner.cjs +116 -0
  489. package/lib/tools/ast-jsdoc-tools/tool4/repoRunner.d.ts +0 -0
  490. package/lib/tools/ast-jsdoc-tools/tool4/repoRunner.js.map +1 -0
  491. package/lib/tools/ast-jsdoc-tools/tools/jsdoc-generator.cjs +78 -79
  492. package/lib/tools/ast-jsdoc-tools/tools/jsdoc-generator.d.ts +0 -5
  493. package/lib/tools/ast-jsdoc-tools/tools/jsdoc-generator.js.map +1 -1
  494. package/lib/tools/ast-jsdoc-tools/utils/backups.cjs +14 -0
  495. package/lib/tools/ast-jsdoc-tools/utils/backups.d.ts +0 -0
  496. package/lib/tools/ast-jsdoc-tools/utils/backups.js.map +1 -0
  497. package/lib/tools/ast-jsdoc-tools/utils/conflict-detector.cjs +28 -31
  498. package/lib/tools/ast-jsdoc-tools/utils/conflict-detector.d.ts +0 -5
  499. package/lib/tools/ast-jsdoc-tools/utils/conflict-detector.js.map +1 -1
  500. package/lib/tools/ast-jsdoc-tools/utils/context-schema.cjs +28 -30
  501. package/lib/tools/ast-jsdoc-tools/utils/context-schema.d.ts +0 -7
  502. package/lib/tools/ast-jsdoc-tools/utils/context-schema.js.map +1 -1
  503. package/lib/tools/ast-jsdoc-tools/utils/heuristics.cjs +26 -32
  504. package/lib/tools/ast-jsdoc-tools/utils/heuristics.d.ts +0 -2
  505. package/lib/tools/ast-jsdoc-tools/utils/heuristics.js.map +1 -1
  506. package/lib/tools/ast-jsdoc-tools/utils/logging.cjs +18 -0
  507. package/lib/tools/ast-jsdoc-tools/utils/logging.d.ts +0 -0
  508. package/lib/tools/ast-jsdoc-tools/utils/logging.js.map +1 -0
  509. package/lib/tools/ast-jsdoc-tools/utils/ts-project.cjs +21 -55
  510. package/lib/tools/ast-jsdoc-tools/utils/ts-project.d.ts +0 -12
  511. package/lib/tools/ast-jsdoc-tools/utils/ts-project.js.map +1 -1
  512. package/lib/tools/decoration/builder.cjs +81 -0
  513. package/lib/tools/decoration/builder.d.ts +0 -0
  514. package/lib/tools/decoration/builder.js.map +1 -0
  515. package/lib/tools/decoration/decorators.cjs +37 -0
  516. package/lib/tools/decoration/decorators.d.ts +0 -0
  517. package/lib/tools/decoration/decorators.js.map +1 -0
  518. package/lib/tools/decoration/index.cjs +49 -0
  519. package/lib/tools/decoration/index.d.ts +0 -0
  520. package/lib/tools/decoration/index.js.map +1 -0
  521. package/lib/tools/file-summarizer/index.cjs +40 -30
  522. package/lib/tools/file-summarizer/index.d.ts +0 -2
  523. package/lib/tools/file-summarizer/index.js.map +1 -1
  524. package/lib/tools/index.cjs +29 -7
  525. package/lib/tools/index.d.ts +0 -2
  526. package/lib/tools/index.js.map +1 -1
  527. package/lib/tools/issue/create-tool.cjs +132 -0
  528. package/lib/tools/issue/create-tool.d.ts +0 -0
  529. package/lib/tools/issue/create-tool.js.map +1 -0
  530. package/lib/tools/issue/transition-tool.cjs +41 -0
  531. package/lib/tools/issue/transition-tool.d.ts +0 -0
  532. package/lib/tools/issue/transition-tool.js.map +1 -0
  533. package/lib/tools/jsdoc/ts-jsdoc-element-tool.cjs +109 -85
  534. package/lib/tools/jsdoc/ts-jsdoc-element-tool.d.ts +0 -2
  535. package/lib/tools/jsdoc/ts-jsdoc-element-tool.js.map +1 -1
  536. package/lib/tools/jsdoc/utils.cjs +58 -58
  537. package/lib/tools/jsdoc/utils.d.ts +0 -5
  538. package/lib/tools/jsdoc/utils.js.map +1 -1
  539. package/lib/tools/project/list-tool.cjs +47 -0
  540. package/lib/tools/project/list-tool.d.ts +0 -0
  541. package/lib/tools/project/list-tool.js.map +1 -0
  542. package/lib/tools/search/jql-tool.cjs +49 -0
  543. package/lib/tools/search/jql-tool.d.ts +0 -0
  544. package/lib/tools/search/jql-tool.js.map +1 -0
  545. package/lib/tools/testing/ts-jest-list-tests.cjs +69 -54
  546. package/lib/tools/testing/ts-jest-list-tests.d.ts +0 -2
  547. package/lib/tools/testing/ts-jest-list-tests.js.map +1 -1
  548. package/lib/types.d.ts +7 -11
  549. package/lib/utils/assets.cjs +114 -0
  550. package/lib/utils/assets.d.ts +13 -0
  551. package/lib/utils/assets.js.map +1 -0
  552. package/lib/utils/banner.cjs +48 -18
  553. package/lib/utils/banner.js.map +1 -1
  554. package/lib/utils/constants.cjs +14 -0
  555. package/lib/utils/constants.d.ts +8 -0
  556. package/lib/utils/constants.js.map +1 -0
  557. package/lib/utils/conversions.cjs +26 -0
  558. package/lib/utils/conversions.d.ts +2 -0
  559. package/lib/utils/conversions.js.map +1 -0
  560. package/lib/utils/environment.cjs +49 -0
  561. package/lib/utils/environment.d.ts +32 -0
  562. package/lib/utils/environment.js.map +1 -0
  563. package/lib/utils/icons.cjs +2 -0
  564. package/lib/utils/icons.d.ts +0 -0
  565. package/lib/utils/icons.js.map +1 -0
  566. package/lib/utils/initialization.cjs +23 -0
  567. package/lib/utils/initialization.d.ts +1 -0
  568. package/lib/utils/initialization.js.map +1 -0
  569. package/lib/utils/normalization.cjs +2 -0
  570. package/lib/utils/normalization.d.ts +0 -0
  571. package/lib/utils/normalization.js.map +1 -0
  572. package/lib/utils/utils.cjs +11 -0
  573. package/lib/utils/utils.d.ts +1 -0
  574. package/lib/utils/utils.js.map +1 -0
  575. package/lib/version.cjs +1 -1
  576. package/lib/version.d.ts +1 -1
  577. package/package.json +27 -23
  578. package/workdocs/assets/slogans.json +198 -0
  579. package/lib/environment.cjs +0 -32
  580. package/lib/environment.d.ts +0 -71
  581. package/lib/environment.js.map +0 -1
  582. package/lib/esm/environment.d.ts +0 -71
  583. package/lib/esm/environment.js +0 -29
  584. package/lib/esm/environment.js.map +0 -1
  585. package/lib/esm/prompts/example-prompt/index.d.ts +0 -2
  586. package/lib/esm/prompts/example-prompt/index.js +0 -18
  587. package/lib/esm/prompts/example-prompt/index.js.map +0 -1
  588. package/lib/esm/prompts/interactive-jsdoc/index.d.ts +0 -2
  589. package/lib/esm/prompts/interactive-jsdoc/index.js +0 -18
  590. package/lib/esm/prompts/interactive-jsdoc/index.js.map +0 -1
  591. package/lib/esm/prompts/jsdocs/class-prompt.d.ts +0 -2
  592. package/lib/esm/prompts/jsdocs/class-prompt.js +0 -52
  593. package/lib/esm/prompts/jsdocs/class-prompt.js.map +0 -1
  594. package/lib/esm/prompts/jsdocs/const-prompt.d.ts +0 -2
  595. package/lib/esm/prompts/jsdocs/const-prompt.js +0 -24
  596. package/lib/esm/prompts/jsdocs/const-prompt.js.map +0 -1
  597. package/lib/esm/prompts/jsdocs/constants.d.ts +0 -4
  598. package/lib/esm/prompts/jsdocs/constants.js +0 -46
  599. package/lib/esm/prompts/jsdocs/constants.js.map +0 -1
  600. package/lib/esm/prompts/jsdocs/decorator-prompt.d.ts +0 -2
  601. package/lib/esm/prompts/jsdocs/decorator-prompt.js +0 -42
  602. package/lib/esm/prompts/jsdocs/decorator-prompt.js.map +0 -1
  603. package/lib/esm/prompts/jsdocs/enum-prompt.d.ts +0 -2
  604. package/lib/esm/prompts/jsdocs/enum-prompt.js +0 -24
  605. package/lib/esm/prompts/jsdocs/enum-prompt.js.map +0 -1
  606. package/lib/esm/prompts/jsdocs/function-prompt.d.ts +0 -2
  607. package/lib/esm/prompts/jsdocs/function-prompt.js +0 -43
  608. package/lib/esm/prompts/jsdocs/function-prompt.js.map +0 -1
  609. package/lib/esm/prompts/jsdocs/interface-prompt.d.ts +0 -2
  610. package/lib/esm/prompts/jsdocs/interface-prompt.js +0 -24
  611. package/lib/esm/prompts/jsdocs/interface-prompt.js.map +0 -1
  612. package/lib/esm/prompts/jsdocs/types-prompt.d.ts +0 -2
  613. package/lib/esm/prompts/jsdocs/types-prompt.js +0 -24
  614. package/lib/esm/prompts/jsdocs/types-prompt.js.map +0 -1
  615. package/lib/esm/tools/example-tool/index.d.ts +0 -2
  616. package/lib/esm/tools/example-tool/index.js +0 -29
  617. package/lib/esm/tools/example-tool/index.js.map +0 -1
  618. package/lib/prompts/example-prompt/index.cjs +0 -21
  619. package/lib/prompts/example-prompt/index.d.ts +0 -2
  620. package/lib/prompts/example-prompt/index.js.map +0 -1
  621. package/lib/prompts/interactive-jsdoc/index.cjs +0 -21
  622. package/lib/prompts/interactive-jsdoc/index.d.ts +0 -2
  623. package/lib/prompts/interactive-jsdoc/index.js.map +0 -1
  624. package/lib/prompts/jsdocs/class-prompt.cjs +0 -55
  625. package/lib/prompts/jsdocs/class-prompt.d.ts +0 -2
  626. package/lib/prompts/jsdocs/class-prompt.js.map +0 -1
  627. package/lib/prompts/jsdocs/const-prompt.cjs +0 -27
  628. package/lib/prompts/jsdocs/const-prompt.d.ts +0 -2
  629. package/lib/prompts/jsdocs/const-prompt.js.map +0 -1
  630. package/lib/prompts/jsdocs/constants.cjs +0 -49
  631. package/lib/prompts/jsdocs/constants.d.ts +0 -4
  632. package/lib/prompts/jsdocs/constants.js.map +0 -1
  633. package/lib/prompts/jsdocs/decorator-prompt.cjs +0 -45
  634. package/lib/prompts/jsdocs/decorator-prompt.d.ts +0 -2
  635. package/lib/prompts/jsdocs/decorator-prompt.js.map +0 -1
  636. package/lib/prompts/jsdocs/enum-prompt.cjs +0 -27
  637. package/lib/prompts/jsdocs/enum-prompt.d.ts +0 -2
  638. package/lib/prompts/jsdocs/enum-prompt.js.map +0 -1
  639. package/lib/prompts/jsdocs/function-prompt.cjs +0 -46
  640. package/lib/prompts/jsdocs/function-prompt.d.ts +0 -2
  641. package/lib/prompts/jsdocs/function-prompt.js.map +0 -1
  642. package/lib/prompts/jsdocs/interface-prompt.cjs +0 -27
  643. package/lib/prompts/jsdocs/interface-prompt.d.ts +0 -2
  644. package/lib/prompts/jsdocs/interface-prompt.js.map +0 -1
  645. package/lib/prompts/jsdocs/types-prompt.cjs +0 -27
  646. package/lib/prompts/jsdocs/types-prompt.d.ts +0 -2
  647. package/lib/prompts/jsdocs/types-prompt.js.map +0 -1
  648. package/lib/tools/example-tool/index.cjs +0 -32
  649. package/lib/tools/example-tool/index.d.ts +0 -2
  650. package/lib/tools/example-tool/index.js.map +0 -1
@@ -1,84 +1,111 @@
1
- import { z } from "zod";
2
- import { zAstObject } from "./../ast/types.js";
3
- import { TsDocConstPrompt } from "./../../prompts/jsdocs/const-prompt.js";
4
- import { TsDocClassPrompt } from "./../../prompts/jsdocs/class-prompt.js";
5
- import { TsDocFunctionPrompt } from "./../../prompts/jsdocs/function-prompt.js";
6
- import { TsDocInterfacePrompt } from "./../../prompts/jsdocs/interface-prompt.js";
7
- import { TsDocTypeePrompt } from "./../../prompts/jsdocs/types-prompt.js";
8
- import { TsDocEnumPrompt } from "./../../prompts/jsdocs/enum-prompt.js";
9
- import { TsDocDecoratorPrompt } from "./../../prompts/jsdocs/decorator-prompt.js";
10
- import { ToolBuilder } from "./../../builders/tool-builder.js";
11
- import { Cost, EffortLevel, ReasoningLevel } from "./../../constants.js";
12
- const toolName = "ts.jsdoc.element";
13
- const inputSchema = z
14
- .object({
15
- astElement: zAstObject.describe("The AST TypeScript object to document"),
16
- previewLength: z.number().min(50).max(500).default(100),
17
- })
18
- .describe(`the input schema for the ${toolName} tool`);
19
- const outputSchema = z
20
- .object({})
21
- .describe(`the output schema for the ${toolName} tool`);
22
- export const TsDocumentElementTool = ToolBuilder.builder
23
- .setName(toolName)
24
- .setTitle("Tool to generate jsdocs for a javascript element (class, interface, function etc)")
25
- .setDescription("Generate JSDoc comments for a specific element in a TypeScript file according to a curated template and prompt.")
26
- .setInputSchema(inputSchema)
27
- .setOutputSchema(outputSchema)
28
- .setAnnotations({
29
- title: "Tool to generate jsdocs for a javascript element (class, interface, function etc)",
30
- readOnlyHint: false,
31
- destructiveHint: false,
32
- idempotentHint: true,
33
- openWorldHint: false,
34
- })
35
- .setReasoning(ReasoningLevel.HIGH)
36
- .setEffort(EffortLevel.MEDIUM)
37
- .setCost(Cost.LOW)
38
- .setCb(async (input, extra) => {
39
- const elType = input.astElement.kind;
40
- const filePath = input.astElement.location.filePath;
41
- if (!filePath) {
42
- throw new Error("AST element is missing filePath in location");
43
- }
44
- function getPrompt() {
45
- switch (elType) {
46
- case "class":
47
- return TsDocClassPrompt;
48
- case "function":
49
- return TsDocFunctionPrompt;
50
- case "interface":
51
- return TsDocInterfacePrompt;
52
- case "type":
53
- return TsDocTypeePrompt;
54
- case "enum":
55
- return TsDocEnumPrompt;
56
- case "constant":
57
- return TsDocConstPrompt;
58
- case "decorator":
59
- return TsDocDecoratorPrompt;
60
- case "namespace":
61
- case "cli-module":
62
- case "module":
63
- default:
64
- throw new Error(`Invalid element type: ${elType}`);
65
- }
66
- }
67
- const prompt = (await getPrompt()["cb"]({}, extra)).messages
68
- .map((m) => m.content)
69
- .join("\n");
70
- const preview = prompt.substring(0, input.previewLength);
71
- return {
72
- // TEXT content so the model sees a readable version in chat
73
- content: [{ type: "text", text: prompt }],
74
- // small metadata so hosts can inspect provenance
75
- _meta: { filePath },
76
- // STRUCTURED for hosts/clients that inspect tool results
77
- structuredContent: {
78
- kind: "messages",
79
- preview,
80
- messages: input.astElement,
81
- },
82
- };
83
- });
1
+ "use strict";
2
+ // import { z } from "zod";
3
+ // import { zAstObject } from "../ast/types";
4
+ // import { TsDocConstPrompt } from "../../prompts/jsdocs/const-prompt";
5
+ // import { TsDocClassPrompt } from "../../prompts/jsdocs/class-prompt";
6
+ // import { TsDocFunctionPrompt } from "../../prompts/jsdocs/function-prompt";
7
+ // import { TsDocInterfacePrompt } from "../../prompts/jsdocs/interface-prompt";
8
+ // import { TsDocTypeePrompt } from "../../prompts/jsdocs/types-prompt";
9
+ // import { TsDocEnumPrompt } from "../../prompts/jsdocs/enum-prompt";
10
+ // import { TsDocDecoratorPrompt } from "../../prompts/jsdocs/decorator-prompt";
11
+ // import { RequestHandlerExtra } from "@modelcontextprotocol/sdk/shared/protocol";
12
+ // import {
13
+ // ServerNotification,
14
+ // ServerRequest,
15
+ // } from "@modelcontextprotocol/sdk/types";
16
+ // import { ToolBuilder } from "../../builders/tool-builder";
17
+ // import { Cost, EffortLevel, ReasoningLevel } from "../../constants";
18
+ //
19
+ // const toolName = "ts.jsdoc.element";
20
+ //
21
+ // const inputSchema = z
22
+ // .object({
23
+ // astElement: zAstObject.describe("The AST TypeScript object to document"),
24
+ // previewLength: z.number().min(50).max(500).default(100),
25
+ // })
26
+ // .describe(`the input schema for the ${toolName} tool`);
27
+ //
28
+ // const outputSchema = z
29
+ // .object({})
30
+ // .describe(`the output schema for the ${toolName} tool`);
31
+ //
32
+ // export const TsDocumentElementTool: ToolBuilder = ToolBuilder.builder
33
+ // .setName(toolName)
34
+ // .setTitle(
35
+ // "Tool to generate jsdocs for a javascript element (class, interface, function etc)"
36
+ // )
37
+ // .setDescription(
38
+ // "Generate JSDoc comments for a specific element in a TypeScript file according to a curated template and prompt."
39
+ // )
40
+ // .setInputSchema(inputSchema)
41
+ // .setOutputSchema(outputSchema)
42
+ // .setAnnotations({
43
+ // title:
44
+ // "Tool to generate jsdocs for a javascript element (class, interface, function etc)",
45
+ // readOnlyHint: false,
46
+ // destructiveHint: false,
47
+ // idempotentHint: true,
48
+ // openWorldHint: false,
49
+ // })
50
+ // .setReasoning(ReasoningLevel.HIGH)
51
+ // .setEffort(EffortLevel.MEDIUM)
52
+ // .setCost(Cost.LOW)
53
+ // .setCb(
54
+ // async (
55
+ // input: any,
56
+ //
57
+ // extra: RequestHandlerExtra<ServerRequest, ServerNotification>
58
+ // ) => {
59
+ // const elType = input.astElement.kind;
60
+ // const filePath = input.astElement.location.filePath;
61
+ // if (!filePath) {
62
+ // throw new Error("AST element is missing filePath in location");
63
+ // }
64
+ //
65
+ // function getPrompt() {
66
+ // switch (elType) {
67
+ // case "class":
68
+ // return TsDocClassPrompt;
69
+ // case "function":
70
+ // return TsDocFunctionPrompt;
71
+ // case "interface":
72
+ // return TsDocInterfacePrompt;
73
+ // case "type":
74
+ // return TsDocTypeePrompt;
75
+ // case "enum":
76
+ // return TsDocEnumPrompt;
77
+ // case "constant":
78
+ // return TsDocConstPrompt;
79
+ // case "decorator":
80
+ // return TsDocDecoratorPrompt;
81
+ // case "namespace":
82
+ // case "cli-module":
83
+ // case "module":
84
+ // default:
85
+ // throw new Error(`Invalid element type: ${elType}`);
86
+ // }
87
+ // }
88
+ //
89
+ // const prompt: string = (
90
+ // await getPrompt()["cb"]({} as any, extra)
91
+ // ).messages
92
+ // .map((m) => m.content)
93
+ // .join("\n");
94
+ //
95
+ // const preview = prompt.substring(0, input.previewLength);
96
+ //
97
+ // return {
98
+ // // TEXT content so the model sees a readable version in chat
99
+ // content: [{ type: "text", text: prompt }],
100
+ // // small metadata so hosts can inspect provenance
101
+ // _meta: { filePath },
102
+ // // STRUCTURED for hosts/clients that inspect tool results
103
+ // structuredContent: {
104
+ // kind: "messages",
105
+ // preview,
106
+ // messages: input.astElement,
107
+ // },
108
+ // };
109
+ // }
110
+ // );
84
111
  //# sourceMappingURL=ts-jsdoc-element-tool.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ts-jsdoc-element-tool.js","sourceRoot":"","sources":["../../../../src/tools/jsdoc/ts-jsdoc-element-tool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ts-jsdoc-element-tool.js","sourceRoot":"","sources":["../../../../src/tools/jsdoc/ts-jsdoc-element-tool.ts"],"names":[],"mappings":";AAAA,2BAA2B;AAC3B,6CAA6C;AAC7C,wEAAwE;AACxE,wEAAwE;AACxE,8EAA8E;AAC9E,gFAAgF;AAChF,wEAAwE;AACxE,sEAAsE;AACtE,gFAAgF;AAChF,mFAAmF;AACnF,WAAW;AACX,wBAAwB;AACxB,mBAAmB;AACnB,4CAA4C;AAC5C,6DAA6D;AAC7D,uEAAuE;AACvE,EAAE;AACF,uCAAuC;AACvC,EAAE;AACF,wBAAwB;AACxB,cAAc;AACd,gFAAgF;AAChF,+DAA+D;AAC/D,OAAO;AACP,4DAA4D;AAC5D,EAAE;AACF,yBAAyB;AACzB,gBAAgB;AAChB,6DAA6D;AAC7D,EAAE;AACF,wEAAwE;AACxE,uBAAuB;AACvB,eAAe;AACf,0FAA0F;AAC1F,MAAM;AACN,qBAAqB;AACrB,wHAAwH;AACxH,MAAM;AACN,iCAAiC;AACjC,mCAAmC;AACnC,sBAAsB;AACtB,aAAa;AACb,6FAA6F;AAC7F,2BAA2B;AAC3B,8BAA8B;AAC9B,4BAA4B;AAC5B,4BAA4B;AAC5B,OAAO;AACP,uCAAuC;AACvC,mCAAmC;AACnC,uBAAuB;AACvB,YAAY;AACZ,cAAc;AACd,oBAAoB;AACpB,EAAE;AACF,sEAAsE;AACtE,aAAa;AACb,8CAA8C;AAC9C,6DAA6D;AAC7D,yBAAyB;AACzB,0EAA0E;AAC1E,UAAU;AACV,EAAE;AACF,+BAA+B;AAC/B,4BAA4B;AAC5B,0BAA0B;AAC1B,uCAAuC;AACvC,6BAA6B;AAC7B,0CAA0C;AAC1C,8BAA8B;AAC9B,2CAA2C;AAC3C,yBAAyB;AACzB,uCAAuC;AACvC,yBAAyB;AACzB,sCAAsC;AACtC,6BAA6B;AAC7B,uCAAuC;AACvC,8BAA8B;AAC9B,2CAA2C;AAC3C,8BAA8B;AAC9B,+BAA+B;AAC/B,2BAA2B;AAC3B,qBAAqB;AACrB,kEAAkE;AAClE,YAAY;AACZ,UAAU;AACV,EAAE;AACF,iCAAiC;AACjC,oDAAoD;AACpD,mBAAmB;AACnB,iCAAiC;AACjC,uBAAuB;AACvB,EAAE;AACF,kEAAkE;AAClE,EAAE;AACF,iBAAiB;AACjB,uEAAuE;AACvE,qDAAqD;AACrD,4DAA4D;AAC5D,+BAA+B;AAC/B,oEAAoE;AACpE,+BAA+B;AAC/B,8BAA8B;AAC9B,qBAAqB;AACrB,wCAAwC;AACxC,aAAa;AACb,WAAW;AACX,QAAQ;AACR,OAAO"}
@@ -1,5 +0,0 @@
1
- export declare function hasExistingJsDoc(sourceText: string, nodeStartLine: number): {
2
- has: boolean;
3
- block?: string;
4
- };
5
- export declare function inferContextHints(filePath: string, repoRoot?: string): string[];
@@ -1,53 +1,60 @@
1
- import path from "path";
2
- export function hasExistingJsDoc(sourceText, nodeStartLine) {
3
- // Simple heuristic: look for /** */ block immediately preceding the line
4
- const lines = sourceText.split(/\r?\n/);
5
- const idx = Math.max(0, nodeStartLine - 2); // 0-based
6
- for (let i = idx; i >= 0 && i > idx - 6; i--) {
7
- const line = lines[i].trim();
8
- if (line.startsWith("/**")) {
9
- // collect block
10
- const blockLines = [];
11
- for (let j = i; j < lines.length; j++) {
12
- blockLines.push(lines[j]);
13
- if (lines[j].includes("*/"))
14
- break;
15
- }
16
- return { has: true, block: blockLines.join("\n") };
17
- }
18
- if (line && !line.startsWith("*") && !line.startsWith("//"))
19
- break;
20
- }
21
- return { has: false };
22
- }
23
- export function inferContextHints(filePath, repoRoot) {
24
- const rel = repoRoot ? path.relative(repoRoot, filePath) : filePath;
25
- const parts = rel.split(path.sep);
26
- const hints = new Set();
27
- const p = rel.toLowerCase();
28
- if (p.includes(`${path.sep}cli${path.sep}`) ||
29
- p.endsWith(".cli.ts") ||
30
- p.includes("bin"))
31
- hints.add("cli");
32
- if (p.includes(`${path.sep}api${path.sep}`) || p.includes("/api/"))
33
- hints.add("api");
34
- if (p.includes(`${path.sep}lib${path.sep}`) || p.includes("/lib/"))
35
- hints.add("lib");
36
- if (p.includes("test") || p.includes("__tests__"))
37
- hints.add("test-fixture");
38
- if (p.endsWith("index.ts"))
39
- hints.add("index");
40
- // filename patterns
41
- const file = path.basename(rel);
42
- if (file.endsWith(".controller.ts"))
43
- hints.add("controller");
44
- if (file.endsWith(".service.ts"))
45
- hints.add("service");
46
- if (file.endsWith(".spec.ts") || file.endsWith(".test.ts"))
47
- hints.add("test");
48
- // default: if under src or lib, mark as library
49
- if (parts.includes("src") || parts.includes("lib"))
50
- hints.add("library");
51
- return Array.from(hints);
52
- }
1
+ "use strict";
2
+ // import * as path from "path";
3
+ //
4
+ // export function hasExistingJsDoc(
5
+ // sourceText: string,
6
+ // nodeStartLine: number
7
+ // ): { has: boolean; block?: string } {
8
+ // // Simple heuristic: look for /** */ block immediately preceding the line
9
+ // const lines = sourceText.split(/\r?\n/);
10
+ // const idx = Math.max(0, nodeStartLine - 2); // 0-based
11
+ // for (let i = idx; i >= 0 && i > idx - 6; i--) {
12
+ // const line = lines[i].trim();
13
+ // if (line.startsWith("/**")) {
14
+ // // collect block
15
+ // const blockLines = [];
16
+ // for (let j = i; j < lines.length; j++) {
17
+ // blockLines.push(lines[j]);
18
+ // if (lines[j].includes("*/")) break;
19
+ // }
20
+ // return { has: true, block: blockLines.join("\n") };
21
+ // }
22
+ // if (line && !line.startsWith("*") && !line.startsWith("//")) break;
23
+ // }
24
+ // return { has: false };
25
+ // }
26
+ //
27
+ // export function inferContextHints(
28
+ // filePath: string,
29
+ // repoRoot?: string
30
+ // ): string[] {
31
+ // const rel = repoRoot ? path.relative(repoRoot, filePath) : filePath;
32
+ // const parts = rel.split(path.sep);
33
+ // const hints = new Set<string>();
34
+ //
35
+ // const p = rel.toLowerCase();
36
+ // if (
37
+ // p.includes(`${path.sep}cli${path.sep}`) ||
38
+ // p.endsWith(".cli.ts") ||
39
+ // p.includes("bin")
40
+ // )
41
+ // hints.add("cli");
42
+ // if (p.includes(`${path.sep}api${path.sep}`) || p.includes("/api/"))
43
+ // hints.add("api");
44
+ // if (p.includes(`${path.sep}lib${path.sep}`) || p.includes("/lib/"))
45
+ // hints.add("lib");
46
+ // if (p.includes("test") || p.includes("__tests__")) hints.add("test-fixture");
47
+ // if (p.endsWith("index.ts")) hints.add("index");
48
+ //
49
+ // // filename patterns
50
+ // const file = path.basename(rel);
51
+ // if (file.endsWith(".controller.ts")) hints.add("controller");
52
+ // if (file.endsWith(".service.ts")) hints.add("service");
53
+ // if (file.endsWith(".spec.ts") || file.endsWith(".test.ts")) hints.add("test");
54
+ //
55
+ // // default: if under src or lib, mark as library
56
+ // if (parts.includes("src") || parts.includes("lib")) hints.add("library");
57
+ //
58
+ // return Array.from(hints);
59
+ // }
53
60
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/tools/jsdoc/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/tools/jsdoc/utils.ts"],"names":[],"mappings":";AAAA,gCAAgC;AAChC,EAAE;AACF,oCAAoC;AACpC,wBAAwB;AACxB,0BAA0B;AAC1B,wCAAwC;AACxC,8EAA8E;AAC9E,6CAA6C;AAC7C,2DAA2D;AAC3D,oDAAoD;AACpD,oCAAoC;AACpC,oCAAoC;AACpC,yBAAyB;AACzB,+BAA+B;AAC/B,iDAAiD;AACjD,qCAAqC;AACrC,8CAA8C;AAC9C,UAAU;AACV,4DAA4D;AAC5D,QAAQ;AACR,0EAA0E;AAC1E,MAAM;AACN,2BAA2B;AAC3B,IAAI;AACJ,EAAE;AACF,qCAAqC;AACrC,sBAAsB;AACtB,sBAAsB;AACtB,gBAAgB;AAChB,yEAAyE;AACzE,uCAAuC;AACvC,qCAAqC;AACrC,EAAE;AACF,iCAAiC;AACjC,SAAS;AACT,iDAAiD;AACjD,+BAA+B;AAC/B,wBAAwB;AACxB,MAAM;AACN,wBAAwB;AACxB,wEAAwE;AACxE,wBAAwB;AACxB,wEAAwE;AACxE,wBAAwB;AACxB,kFAAkF;AAClF,oDAAoD;AACpD,EAAE;AACF,yBAAyB;AACzB,qCAAqC;AACrC,kEAAkE;AAClE,4DAA4D;AAC5D,mFAAmF;AACnF,EAAE;AACF,qDAAqD;AACrD,8EAA8E;AAC9E,EAAE;AACF,8BAA8B;AAC9B,IAAI"}
File without changes
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ // /**
3
+ // * Jira Project List Tool (Version3-only)
4
+ // *
5
+ // * Returns a list of projects visible to the authenticated user.
6
+ // * Endpoint: GET /rest/api/3/project/search
7
+ // */
8
+ //
9
+ // import { buildPagination, validateWithSchema } from "../../jira/tool-utils";
10
+ // import { normalizeJiraError } from "../../jira/errors";
11
+ // import { z } from "zod";
12
+ //
13
+ // export const name = "jira.project-list";
14
+ //
15
+ // export const inputSchema = z.object({
16
+ // startAt: z.number().optional(),
17
+ // maxResults: z.number().optional(),
18
+ // query: z.string().optional(),
19
+ // });
20
+ //
21
+ // export async function runTool(client: any, input: any) {
22
+ // const v = validateWithSchema(input, inputSchema as any);
23
+ // if (!v.valid)
24
+ // throw {
25
+ // code: "validation_error",
26
+ // message: "Invalid input",
27
+ // details: v.errors,
28
+ // };
29
+ // try {
30
+ // const { startAt, maxResults, query } = input || {};
31
+ // const page = buildPagination(startAt, maxResults);
32
+ // const res: any = await client.project.search({
33
+ // startAt: page.startAt,
34
+ // maxResults: page.maxResults,
35
+ // query,
36
+ // });
37
+ // return {
38
+ // startAt: res.startAt ?? page.startAt,
39
+ // maxResults: res.maxResults ?? page.maxResults,
40
+ // total: res.total ?? (res.values ? res.values.length : undefined),
41
+ // values: res.values ?? res.projects ?? res,
42
+ // };
43
+ // } catch (err: any) {
44
+ // throw normalizeJiraError(err);
45
+ // }
46
+ // }
47
+ //# sourceMappingURL=list-tool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-tool.js","sourceRoot":"","sources":["../../../../src/tools/project/list-tool.ts"],"names":[],"mappings":";AAAA,MAAM;AACN,4CAA4C;AAC5C,KAAK;AACL,mEAAmE;AACnE,8CAA8C;AAC9C,MAAM;AACN,EAAE;AACF,+EAA+E;AAC/E,0DAA0D;AAC1D,2BAA2B;AAC3B,EAAE;AACF,2CAA2C;AAC3C,EAAE;AACF,wCAAwC;AACxC,oCAAoC;AACpC,uCAAuC;AACvC,kCAAkC;AAClC,MAAM;AACN,EAAE;AACF,2DAA2D;AAC3D,6DAA6D;AAC7D,kBAAkB;AAClB,cAAc;AACd,kCAAkC;AAClC,kCAAkC;AAClC,2BAA2B;AAC3B,SAAS;AACT,UAAU;AACV,0DAA0D;AAC1D,yDAAyD;AACzD,qDAAqD;AACrD,+BAA+B;AAC/B,qCAAqC;AACrC,eAAe;AACf,UAAU;AACV,eAAe;AACf,8CAA8C;AAC9C,uDAAuD;AACvD,0EAA0E;AAC1E,mDAAmD;AACnD,SAAS;AACT,yBAAyB;AACzB,qCAAqC;AACrC,MAAM;AACN,IAAI"}
File without changes
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ // /**
3
+ // * Jira JQL Search Tool (Version3-only)
4
+ // *
5
+ // * Executes a JQL query and returns matching issues.
6
+ // * Endpoint: GET /rest/api/3/search
7
+ // */
8
+ //
9
+ // import { validateWithSchema, buildPagination } from "../../jira/tool-utils";
10
+ // import { normalizeJiraError } from "../../jira/errors";
11
+ // import { z } from "zod";
12
+ //
13
+ // export const name = "jira.search-jql";
14
+ //
15
+ // export const inputSchema = z.object({
16
+ // jql: z.string(),
17
+ // startAt: z.number().optional(),
18
+ // maxResults: z.number().optional(),
19
+ // fields: z.array(z.string()).optional(),
20
+ // });
21
+ //
22
+ // export async function runTool(client: any, input: any) {
23
+ // const v = validateWithSchema(input, inputSchema as any);
24
+ // if (!v.valid)
25
+ // throw {
26
+ // code: "validation_error",
27
+ // message: "Invalid input",
28
+ // details: v.errors,
29
+ // };
30
+ // try {
31
+ // const { jql, startAt, maxResults, fields } = input;
32
+ // const page = buildPagination(startAt, maxResults);
33
+ // const res: any = await client.search.search({
34
+ // jql,
35
+ // startAt: page.startAt,
36
+ // maxResults: page.maxResults,
37
+ // fields,
38
+ // });
39
+ // return {
40
+ // startAt: res.startAt ?? page.startAt,
41
+ // maxResults: res.maxResults ?? page.maxResults,
42
+ // total: res.total,
43
+ // issues: res.issues ?? res.values ?? [],
44
+ // };
45
+ // } catch (err: any) {
46
+ // throw normalizeJiraError(err);
47
+ // }
48
+ // }
49
+ //# sourceMappingURL=jql-tool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jql-tool.js","sourceRoot":"","sources":["../../../../src/tools/search/jql-tool.ts"],"names":[],"mappings":";AAAA,MAAM;AACN,0CAA0C;AAC1C,KAAK;AACL,uDAAuD;AACvD,sCAAsC;AACtC,MAAM;AACN,EAAE;AACF,+EAA+E;AAC/E,0DAA0D;AAC1D,2BAA2B;AAC3B,EAAE;AACF,yCAAyC;AACzC,EAAE;AACF,wCAAwC;AACxC,qBAAqB;AACrB,oCAAoC;AACpC,uCAAuC;AACvC,4CAA4C;AAC5C,MAAM;AACN,EAAE;AACF,2DAA2D;AAC3D,6DAA6D;AAC7D,kBAAkB;AAClB,cAAc;AACd,kCAAkC;AAClC,kCAAkC;AAClC,2BAA2B;AAC3B,SAAS;AACT,UAAU;AACV,0DAA0D;AAC1D,yDAAyD;AACzD,oDAAoD;AACpD,aAAa;AACb,+BAA+B;AAC/B,qCAAqC;AACrC,gBAAgB;AAChB,UAAU;AACV,eAAe;AACf,8CAA8C;AAC9C,uDAAuD;AACvD,0BAA0B;AAC1B,gDAAgD;AAChD,SAAS;AACT,yBAAyB;AACzB,qCAAqC;AACrC,MAAM;AACN,IAAI"}
@@ -1,2 +0,0 @@
1
- import { ToolBuilder } from "../../builders/tool-builder";
2
- export declare const TsDocumentElementTool: ToolBuilder;
@@ -1,53 +1,71 @@
1
- import { z } from "zod";
2
- import { zAstObject } from "./../ast/types.js";
3
- import { ToolBuilder } from "./../../builders/tool-builder.js";
4
- import { Cost, EffortLevel, ReasoningLevel } from "./../../constants.js";
5
- import { runCommand } from "@decaf-ts/utils";
6
- const toolName = "ts.jsdoc.element";
7
- const inputSchema = z
8
- .object({
9
- astElement: zAstObject.describe("The AST TypeScript object to document"),
10
- previewLength: z.number().min(50).max(500).default(100),
11
- })
12
- .describe(`the input schema for the ${toolName} tool`);
13
- const outputSchema = z
14
- .object({})
15
- .describe(`the output schema for the ${toolName} tool`);
16
- export const TsDocumentElementTool = ToolBuilder.builder
17
- .setName(toolName)
18
- .setTitle("Tool to generate jsdocs for a javascript element (class, interface, function etc)")
19
- .setDescription("Generate JSDoc comments for a specific element in a TypeScript file according to a curated template and prompt.")
20
- .setInputSchema(inputSchema)
21
- .setOutputSchema(outputSchema)
22
- .setAnnotations({
23
- title: "Tool to generate jsdocs for a javascript element (class, interface, function etc)",
24
- readOnlyHint: false,
25
- destructiveHint: false,
26
- idempotentHint: true,
27
- openWorldHint: false,
28
- })
29
- .setReasoning(ReasoningLevel.HIGH)
30
- .setEffort(EffortLevel.MEDIUM)
31
- .setCost(Cost.LOW)
32
- .setCb(async (input,
33
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
34
- extra) => {
35
- const cwd = process.cwd();
36
- const tests = await runCommand("npx jest --listTests", {
37
- cwd,
38
- }).promise;
39
- // run npx jest --listTests and capture output
40
- return {
41
- // TEXT content so the model sees a readable version in chat
42
- content: [{ type: "text", text: tests }],
43
- // small metadata so hosts can inspect provenance
44
- _meta: { cwd },
45
- // STRUCTURED for hosts/clients that inspect tool results
46
- structuredContent: {
47
- kind: "messages",
48
- tests,
49
- messages: input.astElement,
50
- },
51
- };
52
- });
1
+ "use strict";
2
+ // import { z } from "zod";
3
+ // import { zAstObject } from "../ast/types";
4
+ // import { RequestHandlerExtra } from "@modelcontextprotocol/sdk/shared/protocol";
5
+ // import {
6
+ // ServerNotification,
7
+ // ServerRequest,
8
+ // } from "@modelcontextprotocol/sdk/types";
9
+ // import { ToolBuilder } from "../../builders/tool-builder";
10
+ // import { Cost, EffortLevel, ReasoningLevel } from "../../constants";
11
+ // import { runCommand } from "@decaf-ts/utils";
12
+ //
13
+ // const toolName = "ts.jsdoc.element";
14
+ //
15
+ // const inputSchema = z
16
+ // .object({
17
+ // astElement: zAstObject.describe("The AST TypeScript object to document"),
18
+ // previewLength: z.number().min(50).max(500).default(100),
19
+ // })
20
+ // .describe(`the input schema for the ${toolName} tool`);
21
+ //
22
+ // const outputSchema = z.object({}).describe(`the output schema for the ${toolName} tool`);
23
+ //
24
+ // export const TsDocumentElementTool: ToolBuilder = ToolBuilder.builder
25
+ // .setName(toolName)
26
+ // .setTitle(
27
+ // "Tool to generate jsdocs for a javascript element (class, interface, function etc)"
28
+ // )
29
+ // .setDescription(
30
+ // "Generate JSDoc comments for a specific element in a TypeScript file according to a curated template and prompt."
31
+ // )
32
+ // .setInputSchema(inputSchema)
33
+ // .setOutputSchema(outputSchema)
34
+ // .setAnnotations({
35
+ // title:
36
+ // "Tool to generate jsdocs for a javascript element (class, interface, function etc)",
37
+ // readOnlyHint: false,
38
+ // destructiveHint: false,
39
+ // idempotentHint: true,
40
+ // openWorldHint: false,
41
+ // })
42
+ // .setReasoning(ReasoningLevel.HIGH)
43
+ // .setEffort(EffortLevel.MEDIUM)
44
+ // .setCost(Cost.LOW)
45
+ // .setCb(
46
+ // async (
47
+ // input: any,
48
+ // // eslint-disable-next-line @typescript-eslint/no-unused-vars
49
+ // extra: RequestHandlerExtra<ServerRequest, ServerNotification>
50
+ // ) => {
51
+ // const cwd = process.cwd();
52
+ // const tests = await runCommand("npx jest --listTests", {
53
+ // cwd,
54
+ // }).promise;
55
+ // // run npx jest --listTests and capture output
56
+ //
57
+ // return {
58
+ // // TEXT content so the model sees a readable version in chat
59
+ // content: [{ type: "text", text: tests }],
60
+ // // small metadata so hosts can inspect provenance
61
+ // _meta: { cwd },
62
+ // // STRUCTURED for hosts/clients that inspect tool results
63
+ // structuredContent: {
64
+ // kind: "messages",
65
+ // tests,
66
+ // messages: input.astElement,
67
+ // },
68
+ // };
69
+ // }
70
+ // );
53
71
  //# sourceMappingURL=ts-jest-list-tests.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ts-jest-list-tests.js","sourceRoot":"","sources":["../../../../src/tools/testing/ts-jest-list-tests.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,0BAAqB;AAM1C,OAAO,EAAE,WAAW,EAAE,yCAAoC;AAC1D,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,cAAc,EAAE,6BAAwB;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,MAAM,QAAQ,GAAG,kBAAkB,CAAC;AAEpC,MAAM,WAAW,GAAG,CAAC;KAClB,MAAM,CAAC;IACN,UAAU,EAAE,UAAU,CAAC,QAAQ,CAAC,uCAAuC,CAAC;IACxE,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC;CACxD,CAAC;KACD,QAAQ,CAAC,4BAA4B,QAAQ,OAAO,CAAC,CAAC;AAEzD,MAAM,YAAY,GAAG,CAAC;KACnB,MAAM,CAAC,EAAE,CAAC;KACV,QAAQ,CAAC,6BAA6B,QAAQ,OAAO,CAAC,CAAC;AAE1D,MAAM,CAAC,MAAM,qBAAqB,GAAgB,WAAW,CAAC,OAAO;KAClE,OAAO,CAAC,QAAQ,CAAC;KACjB,QAAQ,CACP,mFAAmF,CACpF;KACA,cAAc,CACb,iHAAiH,CAClH;KACA,cAAc,CAAC,WAAW,CAAC;KAC3B,eAAe,CAAC,YAAY,CAAC;KAC7B,cAAc,CAAC;IACd,KAAK,EACH,mFAAmF;IACrF,YAAY,EAAE,KAAK;IACnB,eAAe,EAAE,KAAK;IACtB,cAAc,EAAE,IAAI;IACpB,aAAa,EAAE,KAAK;CACrB,CAAC;KACD,YAAY,CAAC,cAAc,CAAC,IAAI,CAAC;KACjC,SAAS,CAAC,WAAW,CAAC,MAAM,CAAC;KAC7B,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC;KACjB,KAAK,CACJ,KAAK,EACH,KAAU;AACV,6DAA6D;AAC7D,KAA6D,EAC7D,EAAE;IACF,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1B,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,sBAAsB,EAAE;QACrD,GAAG;KACJ,CAAC,CAAC,OAAO,CAAC;IACX,8CAA8C;IAE9C,OAAO;QACL,4DAA4D;QAC5D,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;QACxC,iDAAiD;QACjD,KAAK,EAAE,EAAE,GAAG,EAAE;QACd,yDAAyD;QACzD,iBAAiB,EAAE;YACjB,IAAI,EAAE,UAAU;YAChB,KAAK;YACL,QAAQ,EAAE,KAAK,CAAC,UAAU;SAC3B;KACF,CAAC;AACJ,CAAC,CACF,CAAC"}
1
+ {"version":3,"file":"ts-jest-list-tests.js","sourceRoot":"","sources":["../../../../src/tools/testing/ts-jest-list-tests.ts"],"names":[],"mappings":";AAAA,2BAA2B;AAC3B,6CAA6C;AAC7C,mFAAmF;AACnF,WAAW;AACX,wBAAwB;AACxB,mBAAmB;AACnB,4CAA4C;AAC5C,6DAA6D;AAC7D,uEAAuE;AACvE,gDAAgD;AAChD,EAAE;AACF,uCAAuC;AACvC,EAAE;AACF,wBAAwB;AACxB,cAAc;AACd,gFAAgF;AAChF,+DAA+D;AAC/D,OAAO;AACP,4DAA4D;AAC5D,EAAE;AACF,4FAA4F;AAC5F,EAAE;AACF,wEAAwE;AACxE,uBAAuB;AACvB,eAAe;AACf,0FAA0F;AAC1F,MAAM;AACN,qBAAqB;AACrB,wHAAwH;AACxH,MAAM;AACN,iCAAiC;AACjC,mCAAmC;AACnC,sBAAsB;AACtB,aAAa;AACb,6FAA6F;AAC7F,2BAA2B;AAC3B,8BAA8B;AAC9B,4BAA4B;AAC5B,4BAA4B;AAC5B,OAAO;AACP,uCAAuC;AACvC,mCAAmC;AACnC,uBAAuB;AACvB,YAAY;AACZ,cAAc;AACd,oBAAoB;AACpB,sEAAsE;AACtE,sEAAsE;AACtE,aAAa;AACb,mCAAmC;AACnC,iEAAiE;AACjE,eAAe;AACf,oBAAoB;AACpB,uDAAuD;AACvD,EAAE;AACF,iBAAiB;AACjB,uEAAuE;AACvE,oDAAoD;AACpD,4DAA4D;AAC5D,0BAA0B;AAC1B,oEAAoE;AACpE,+BAA+B;AAC/B,8BAA8B;AAC9B,mBAAmB;AACnB,wCAAwC;AACxC,aAAa;AACb,WAAW;AACX,QAAQ;AACR,OAAO"}