mcp-adr-analysis-server 2.1.9 → 2.1.19

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 (408) hide show
  1. package/README.md +55 -8
  2. package/dist/.tsbuildinfo +1 -1
  3. package/dist/src/index.d.ts +78 -2
  4. package/dist/src/index.d.ts.map +1 -1
  5. package/dist/src/index.js +1793 -577
  6. package/dist/src/index.js.map +1 -1
  7. package/dist/src/prompts/index.d.ts.map +1 -1
  8. package/dist/src/prompts/index.js +23 -6
  9. package/dist/src/prompts/index.js.map +1 -1
  10. package/dist/src/prompts/validated-pattern-prompts.d.ts +33 -0
  11. package/dist/src/prompts/validated-pattern-prompts.d.ts.map +1 -0
  12. package/dist/src/prompts/validated-pattern-prompts.js +337 -0
  13. package/dist/src/prompts/validated-pattern-prompts.js.map +1 -0
  14. package/dist/src/resources/adr-by-id-resource.d.ts +116 -0
  15. package/dist/src/resources/adr-by-id-resource.d.ts.map +1 -0
  16. package/dist/src/resources/adr-by-id-resource.js +213 -0
  17. package/dist/src/resources/adr-by-id-resource.js.map +1 -0
  18. package/dist/src/resources/code-quality-resource.d.ts +105 -0
  19. package/dist/src/resources/code-quality-resource.d.ts.map +1 -0
  20. package/dist/src/resources/code-quality-resource.js +282 -0
  21. package/dist/src/resources/code-quality-resource.js.map +1 -0
  22. package/dist/src/resources/deployment-history-resource.d.ts +214 -0
  23. package/dist/src/resources/deployment-history-resource.d.ts.map +1 -0
  24. package/dist/src/resources/deployment-history-resource.js +308 -0
  25. package/dist/src/resources/deployment-history-resource.js.map +1 -0
  26. package/dist/src/resources/deployment-status-resource.d.ts +256 -0
  27. package/dist/src/resources/deployment-status-resource.d.ts.map +1 -0
  28. package/dist/src/resources/deployment-status-resource.js +665 -0
  29. package/dist/src/resources/deployment-status-resource.js.map +1 -0
  30. package/dist/src/resources/environment-analysis-resource.d.ts +237 -0
  31. package/dist/src/resources/environment-analysis-resource.d.ts.map +1 -0
  32. package/dist/src/resources/environment-analysis-resource.js +646 -0
  33. package/dist/src/resources/environment-analysis-resource.js.map +1 -0
  34. package/dist/src/resources/index.d.ts +6 -2
  35. package/dist/src/resources/index.d.ts.map +1 -1
  36. package/dist/src/resources/index.js +247 -492
  37. package/dist/src/resources/index.js.map +1 -1
  38. package/dist/src/resources/memory-snapshots-resource.d.ts +180 -0
  39. package/dist/src/resources/memory-snapshots-resource.d.ts.map +1 -0
  40. package/dist/src/resources/memory-snapshots-resource.js +847 -0
  41. package/dist/src/resources/memory-snapshots-resource.js.map +1 -0
  42. package/dist/src/resources/pattern-base-code-by-platform-resource.d.ts +35 -0
  43. package/dist/src/resources/pattern-base-code-by-platform-resource.d.ts.map +1 -0
  44. package/dist/src/resources/pattern-base-code-by-platform-resource.js +72 -0
  45. package/dist/src/resources/pattern-base-code-by-platform-resource.js.map +1 -0
  46. package/dist/src/resources/pattern-by-name-resource.d.ts +53 -0
  47. package/dist/src/resources/pattern-by-name-resource.d.ts.map +1 -0
  48. package/dist/src/resources/pattern-by-name-resource.js +200 -0
  49. package/dist/src/resources/pattern-by-name-resource.js.map +1 -0
  50. package/dist/src/resources/pattern-sources-by-platform-resource.d.ts +26 -0
  51. package/dist/src/resources/pattern-sources-by-platform-resource.d.ts.map +1 -0
  52. package/dist/src/resources/pattern-sources-by-platform-resource.js +59 -0
  53. package/dist/src/resources/pattern-sources-by-platform-resource.js.map +1 -0
  54. package/dist/src/resources/project-metrics-resource.d.ts +180 -0
  55. package/dist/src/resources/project-metrics-resource.d.ts.map +1 -0
  56. package/dist/src/resources/project-metrics-resource.js +487 -0
  57. package/dist/src/resources/project-metrics-resource.js.map +1 -0
  58. package/dist/src/resources/project-status-resource.d.ts +75 -0
  59. package/dist/src/resources/project-status-resource.d.ts.map +1 -0
  60. package/dist/src/resources/project-status-resource.js +189 -0
  61. package/dist/src/resources/project-status-resource.js.map +1 -0
  62. package/dist/src/resources/research-by-topic-resource.d.ts +21 -0
  63. package/dist/src/resources/research-by-topic-resource.d.ts.map +1 -0
  64. package/dist/src/resources/research-by-topic-resource.js +125 -0
  65. package/dist/src/resources/research-by-topic-resource.js.map +1 -0
  66. package/dist/src/resources/research-index-resource.d.ts +100 -0
  67. package/dist/src/resources/research-index-resource.d.ts.map +1 -0
  68. package/dist/src/resources/research-index-resource.js +200 -0
  69. package/dist/src/resources/research-index-resource.js.map +1 -0
  70. package/dist/src/resources/resource-cache.d.ts +144 -0
  71. package/dist/src/resources/resource-cache.d.ts.map +1 -0
  72. package/dist/src/resources/resource-cache.js +316 -0
  73. package/dist/src/resources/resource-cache.js.map +1 -0
  74. package/dist/src/resources/resource-router.d.ts +45 -0
  75. package/dist/src/resources/resource-router.d.ts.map +1 -0
  76. package/dist/src/resources/resource-router.js +96 -0
  77. package/dist/src/resources/resource-router.js.map +1 -0
  78. package/dist/src/resources/rule-by-id-resource.d.ts +38 -0
  79. package/dist/src/resources/rule-by-id-resource.d.ts.map +1 -0
  80. package/dist/src/resources/rule-by-id-resource.js +104 -0
  81. package/dist/src/resources/rule-by-id-resource.js.map +1 -0
  82. package/dist/src/resources/rule-catalog-resource.d.ts +126 -0
  83. package/dist/src/resources/rule-catalog-resource.d.ts.map +1 -0
  84. package/dist/src/resources/rule-catalog-resource.js +224 -0
  85. package/dist/src/resources/rule-catalog-resource.js.map +1 -0
  86. package/dist/src/resources/rule-generation-resource.d.ts +80 -0
  87. package/dist/src/resources/rule-generation-resource.d.ts.map +1 -0
  88. package/dist/src/resources/rule-generation-resource.js +282 -0
  89. package/dist/src/resources/rule-generation-resource.js.map +1 -0
  90. package/dist/src/resources/technology-by-name-resource.d.ts +43 -0
  91. package/dist/src/resources/technology-by-name-resource.d.ts.map +1 -0
  92. package/dist/src/resources/technology-by-name-resource.js +176 -0
  93. package/dist/src/resources/technology-by-name-resource.js.map +1 -0
  94. package/dist/src/resources/todo-by-id-resource.d.ts +46 -0
  95. package/dist/src/resources/todo-by-id-resource.d.ts.map +1 -0
  96. package/dist/src/resources/todo-by-id-resource.js +192 -0
  97. package/dist/src/resources/todo-by-id-resource.js.map +1 -0
  98. package/dist/src/resources/todo-list-resource.d.ts +96 -0
  99. package/dist/src/resources/todo-list-resource.d.ts.map +1 -0
  100. package/dist/src/resources/todo-list-resource.js +209 -0
  101. package/dist/src/resources/todo-list-resource.js.map +1 -0
  102. package/dist/src/resources/validated-pattern-by-platform-resource.d.ts +14 -0
  103. package/dist/src/resources/validated-pattern-by-platform-resource.d.ts.map +1 -0
  104. package/dist/src/resources/validated-pattern-by-platform-resource.js +45 -0
  105. package/dist/src/resources/validated-pattern-by-platform-resource.js.map +1 -0
  106. package/dist/src/resources/validated-patterns-catalog-resource.d.ts +36 -0
  107. package/dist/src/resources/validated-patterns-catalog-resource.d.ts.map +1 -0
  108. package/dist/src/resources/validated-patterns-catalog-resource.js +57 -0
  109. package/dist/src/resources/validated-patterns-catalog-resource.js.map +1 -0
  110. package/dist/src/templates/domain-knowledge-templates.d.ts.map +1 -1
  111. package/dist/src/templates/domain-knowledge-templates.js +49 -49
  112. package/dist/src/templates/domain-knowledge-templates.js.map +1 -1
  113. package/dist/src/tools/adr-bootstrap-validation-tool.d.ts.map +1 -1
  114. package/dist/src/tools/adr-bootstrap-validation-tool.js +214 -4
  115. package/dist/src/tools/adr-bootstrap-validation-tool.js.map +1 -1
  116. package/dist/src/tools/adr-suggestion-tool.d.ts +2 -2
  117. package/dist/src/tools/adr-suggestion-tool.d.ts.map +1 -1
  118. package/dist/src/tools/adr-suggestion-tool.js +129 -12
  119. package/dist/src/tools/adr-suggestion-tool.js.map +1 -1
  120. package/dist/src/tools/adr-validation-tool.d.ts +98 -0
  121. package/dist/src/tools/adr-validation-tool.d.ts.map +1 -0
  122. package/dist/src/tools/adr-validation-tool.js +372 -0
  123. package/dist/src/tools/adr-validation-tool.js.map +1 -0
  124. package/dist/src/tools/bootstrap-validation-loop-tool.d.ts +262 -0
  125. package/dist/src/tools/bootstrap-validation-loop-tool.d.ts.map +1 -0
  126. package/dist/src/tools/bootstrap-validation-loop-tool.js +1934 -0
  127. package/dist/src/tools/bootstrap-validation-loop-tool.js.map +1 -0
  128. package/dist/src/tools/conversation-memory-tool.d.ts +48 -0
  129. package/dist/src/tools/conversation-memory-tool.d.ts.map +1 -0
  130. package/dist/src/tools/conversation-memory-tool.js +254 -0
  131. package/dist/src/tools/conversation-memory-tool.js.map +1 -0
  132. package/dist/src/tools/deployment-analysis-tool.d.ts.map +1 -1
  133. package/dist/src/tools/deployment-analysis-tool.js +82 -6
  134. package/dist/src/tools/deployment-analysis-tool.js.map +1 -1
  135. package/dist/src/tools/deployment-guidance-tool.d.ts.map +1 -1
  136. package/dist/src/tools/deployment-guidance-tool.js +126 -25
  137. package/dist/src/tools/deployment-guidance-tool.js.map +1 -1
  138. package/dist/src/tools/deployment-readiness-tool.d.ts.map +1 -1
  139. package/dist/src/tools/deployment-readiness-tool.js +166 -5
  140. package/dist/src/tools/deployment-readiness-tool.js.map +1 -1
  141. package/dist/src/tools/environment-analysis-tool.d.ts.map +1 -1
  142. package/dist/src/tools/environment-analysis-tool.js +36 -1
  143. package/dist/src/tools/environment-analysis-tool.js.map +1 -1
  144. package/dist/src/tools/expand-analysis-tool.d.ts +23 -0
  145. package/dist/src/tools/expand-analysis-tool.d.ts.map +1 -0
  146. package/dist/src/tools/expand-analysis-tool.js +107 -0
  147. package/dist/src/tools/expand-analysis-tool.js.map +1 -0
  148. package/dist/src/tools/get-server-context-tool.d.ts +67 -0
  149. package/dist/src/tools/get-server-context-tool.d.ts.map +1 -0
  150. package/dist/src/tools/get-server-context-tool.js +75 -0
  151. package/dist/src/tools/get-server-context-tool.js.map +1 -0
  152. package/dist/src/tools/interactive-adr-planning-tool.d.ts.map +1 -1
  153. package/dist/src/tools/interactive-adr-planning-tool.js +82 -9
  154. package/dist/src/tools/interactive-adr-planning-tool.js.map +1 -1
  155. package/dist/src/tools/llm-cloud-management-tool.d.ts +62 -0
  156. package/dist/src/tools/llm-cloud-management-tool.d.ts.map +1 -0
  157. package/dist/src/tools/llm-cloud-management-tool.js +202 -0
  158. package/dist/src/tools/llm-cloud-management-tool.js.map +1 -0
  159. package/dist/src/tools/llm-database-management-tool.d.ts +62 -0
  160. package/dist/src/tools/llm-database-management-tool.d.ts.map +1 -0
  161. package/dist/src/tools/llm-database-management-tool.js +203 -0
  162. package/dist/src/tools/llm-database-management-tool.js.map +1 -0
  163. package/dist/src/tools/llm-web-search-tool.d.ts +59 -0
  164. package/dist/src/tools/llm-web-search-tool.d.ts.map +1 -0
  165. package/dist/src/tools/llm-web-search-tool.js +165 -0
  166. package/dist/src/tools/llm-web-search-tool.js.map +1 -0
  167. package/dist/src/tools/mcp-planning-tool.d.ts.map +1 -1
  168. package/dist/src/tools/mcp-planning-tool.js +10 -3
  169. package/dist/src/tools/mcp-planning-tool.js.map +1 -1
  170. package/dist/src/tools/memory-loading-tool.d.ts.map +1 -1
  171. package/dist/src/tools/memory-loading-tool.js +4 -2
  172. package/dist/src/tools/memory-loading-tool.js.map +1 -1
  173. package/dist/src/tools/perform-research-tool.d.ts +61 -0
  174. package/dist/src/tools/perform-research-tool.d.ts.map +1 -0
  175. package/dist/src/tools/perform-research-tool.js +324 -0
  176. package/dist/src/tools/perform-research-tool.js.map +1 -0
  177. package/dist/src/tools/research-question-tool.d.ts.map +1 -1
  178. package/dist/src/tools/research-question-tool.js +11 -9
  179. package/dist/src/tools/research-question-tool.js.map +1 -1
  180. package/dist/src/tools/review-existing-adrs-tool.d.ts.map +1 -1
  181. package/dist/src/tools/review-existing-adrs-tool.js +42 -3
  182. package/dist/src/tools/review-existing-adrs-tool.js.map +1 -1
  183. package/dist/src/tools/tool-chain-orchestrator.d.ts +15 -94
  184. package/dist/src/tools/tool-chain-orchestrator.d.ts.map +1 -1
  185. package/dist/src/tools/tool-chain-orchestrator.js +2 -2
  186. package/dist/src/tools/tool-chain-orchestrator.js.map +1 -1
  187. package/dist/src/tools/troubleshoot-guided-workflow-tool.d.ts +25 -120
  188. package/dist/src/tools/troubleshoot-guided-workflow-tool.d.ts.map +1 -1
  189. package/dist/src/tools/troubleshoot-guided-workflow-tool.js +91 -2
  190. package/dist/src/tools/troubleshoot-guided-workflow-tool.js.map +1 -1
  191. package/dist/src/types/ape-framework.d.ts +50 -283
  192. package/dist/src/types/ape-framework.d.ts.map +1 -1
  193. package/dist/src/types/conversation-context.d.ts.map +1 -1
  194. package/dist/src/types/conversation-context.js +12 -12
  195. package/dist/src/types/conversation-context.js.map +1 -1
  196. package/dist/src/types/conversation-memory.d.ts +184 -0
  197. package/dist/src/types/conversation-memory.d.ts.map +1 -0
  198. package/dist/src/types/conversation-memory.js +8 -0
  199. package/dist/src/types/conversation-memory.js.map +1 -0
  200. package/dist/src/types/index.d.ts +112 -339
  201. package/dist/src/types/index.d.ts.map +1 -1
  202. package/dist/src/types/knowledge-generation.d.ts +96 -401
  203. package/dist/src/types/knowledge-generation.d.ts.map +1 -1
  204. package/dist/src/types/knowledge-graph-schemas.d.ts +77 -715
  205. package/dist/src/types/knowledge-graph-schemas.d.ts.map +1 -1
  206. package/dist/src/types/knowledge-graph-schemas.js +8 -8
  207. package/dist/src/types/knowledge-graph-schemas.js.map +1 -1
  208. package/dist/src/types/memory-entities.d.ts +1230 -6164
  209. package/dist/src/types/memory-entities.d.ts.map +1 -1
  210. package/dist/src/types/memory-entities.js +8 -8
  211. package/dist/src/types/memory-entities.js.map +1 -1
  212. package/dist/src/types/reflexion-framework.d.ts +35 -264
  213. package/dist/src/types/reflexion-framework.d.ts.map +1 -1
  214. package/dist/src/types/reflexion-framework.js +1 -1
  215. package/dist/src/types/reflexion-framework.js.map +1 -1
  216. package/dist/src/types/state-reinforcement.d.ts +87 -0
  217. package/dist/src/types/state-reinforcement.d.ts.map +1 -0
  218. package/dist/src/types/state-reinforcement.js +5 -0
  219. package/dist/src/types/state-reinforcement.js.map +1 -0
  220. package/dist/src/types/tiered-response.d.ts +61 -0
  221. package/dist/src/types/tiered-response.d.ts.map +1 -0
  222. package/dist/src/types/tiered-response.js +8 -0
  223. package/dist/src/types/tiered-response.js.map +1 -0
  224. package/dist/src/types/tool-context.d.ts +50 -0
  225. package/dist/src/types/tool-context.d.ts.map +1 -0
  226. package/dist/src/types/tool-context.js +20 -0
  227. package/dist/src/types/tool-context.js.map +1 -0
  228. package/dist/src/utils/adr-action-analyzer.d.ts +23 -0
  229. package/dist/src/utils/adr-action-analyzer.d.ts.map +1 -0
  230. package/dist/src/utils/adr-action-analyzer.js +323 -0
  231. package/dist/src/utils/adr-action-analyzer.js.map +1 -0
  232. package/dist/src/utils/adr-context-detector.d.ts +33 -0
  233. package/dist/src/utils/adr-context-detector.d.ts.map +1 -0
  234. package/dist/src/utils/adr-context-detector.js +279 -0
  235. package/dist/src/utils/adr-context-detector.js.map +1 -0
  236. package/dist/src/utils/adr-discovery.d.ts +28 -2
  237. package/dist/src/utils/adr-discovery.d.ts.map +1 -1
  238. package/dist/src/utils/adr-discovery.js +91 -7
  239. package/dist/src/utils/adr-discovery.js.map +1 -1
  240. package/dist/src/utils/adr-knowledge-initializer.d.ts +54 -0
  241. package/dist/src/utils/adr-knowledge-initializer.d.ts.map +1 -0
  242. package/dist/src/utils/adr-knowledge-initializer.js +240 -0
  243. package/dist/src/utils/adr-knowledge-initializer.js.map +1 -0
  244. package/dist/src/utils/adr-timeline-extractor.d.ts +21 -0
  245. package/dist/src/utils/adr-timeline-extractor.d.ts.map +1 -0
  246. package/dist/src/utils/adr-timeline-extractor.js +294 -0
  247. package/dist/src/utils/adr-timeline-extractor.js.map +1 -0
  248. package/dist/src/utils/adr-timeline-types.d.ts +234 -0
  249. package/dist/src/utils/adr-timeline-types.d.ts.map +1 -0
  250. package/dist/src/utils/adr-timeline-types.js +7 -0
  251. package/dist/src/utils/adr-timeline-types.js.map +1 -0
  252. package/dist/src/utils/ai-executor.d.ts +36 -0
  253. package/dist/src/utils/ai-executor.d.ts.map +1 -1
  254. package/dist/src/utils/ai-executor.js +39 -3
  255. package/dist/src/utils/ai-executor.js.map +1 -1
  256. package/dist/src/utils/apply-cot-enhancement.d.ts.map +1 -1
  257. package/dist/src/utils/apply-cot-enhancement.js +15 -15
  258. package/dist/src/utils/apply-cot-enhancement.js.map +1 -1
  259. package/dist/src/utils/automatic-prompt-engineering.d.ts.map +1 -1
  260. package/dist/src/utils/automatic-prompt-engineering.js +68 -58
  261. package/dist/src/utils/automatic-prompt-engineering.js.map +1 -1
  262. package/dist/src/utils/conditional-request.d.ts +105 -0
  263. package/dist/src/utils/conditional-request.d.ts.map +1 -0
  264. package/dist/src/utils/conditional-request.js +186 -0
  265. package/dist/src/utils/conditional-request.js.map +1 -0
  266. package/dist/src/utils/config.d.ts +72 -18
  267. package/dist/src/utils/config.d.ts.map +1 -1
  268. package/dist/src/utils/config.js +75 -0
  269. package/dist/src/utils/config.js.map +1 -1
  270. package/dist/src/utils/context-document-manager.d.ts +112 -0
  271. package/dist/src/utils/context-document-manager.d.ts.map +1 -0
  272. package/dist/src/utils/context-document-manager.js +351 -0
  273. package/dist/src/utils/context-document-manager.js.map +1 -0
  274. package/dist/src/utils/conversation-memory-manager.d.ts +86 -0
  275. package/dist/src/utils/conversation-memory-manager.d.ts.map +1 -0
  276. package/dist/src/utils/conversation-memory-manager.js +443 -0
  277. package/dist/src/utils/conversation-memory-manager.js.map +1 -0
  278. package/dist/src/utils/dag-executor.d.ts +106 -0
  279. package/dist/src/utils/dag-executor.d.ts.map +1 -0
  280. package/dist/src/utils/dag-executor.js +420 -0
  281. package/dist/src/utils/dag-executor.js.map +1 -0
  282. package/dist/src/utils/deployment-analysis.d.ts.map +1 -1
  283. package/dist/src/utils/deployment-analysis.js +17 -9
  284. package/dist/src/utils/deployment-analysis.js.map +1 -1
  285. package/dist/src/utils/deployment-type-registry.d.ts +52 -0
  286. package/dist/src/utils/deployment-type-registry.d.ts.map +1 -0
  287. package/dist/src/utils/deployment-type-registry.js +543 -0
  288. package/dist/src/utils/deployment-type-registry.js.map +1 -0
  289. package/dist/src/utils/dynamic-deployment-intelligence.d.ts +117 -0
  290. package/dist/src/utils/dynamic-deployment-intelligence.d.ts.map +1 -0
  291. package/dist/src/utils/dynamic-deployment-intelligence.js +445 -0
  292. package/dist/src/utils/dynamic-deployment-intelligence.js.map +1 -0
  293. package/dist/src/utils/environment-analysis.d.ts.map +1 -1
  294. package/dist/src/utils/environment-analysis.js +63 -44
  295. package/dist/src/utils/environment-analysis.js.map +1 -1
  296. package/dist/src/utils/environment-capability-registry.d.ts +101 -0
  297. package/dist/src/utils/environment-capability-registry.d.ts.map +1 -0
  298. package/dist/src/utils/environment-capability-registry.js +489 -0
  299. package/dist/src/utils/environment-capability-registry.js.map +1 -0
  300. package/dist/src/utils/index.d.ts +3 -3
  301. package/dist/src/utils/index.d.ts.map +1 -1
  302. package/dist/src/utils/index.js +3 -3
  303. package/dist/src/utils/index.js.map +1 -1
  304. package/dist/src/utils/knowledge-generation.d.ts.map +1 -1
  305. package/dist/src/utils/knowledge-generation.js +61 -35
  306. package/dist/src/utils/knowledge-generation.js.map +1 -1
  307. package/dist/src/utils/knowledge-graph-manager.d.ts +19 -0
  308. package/dist/src/utils/knowledge-graph-manager.d.ts.map +1 -1
  309. package/dist/src/utils/knowledge-graph-manager.js +165 -1
  310. package/dist/src/utils/knowledge-graph-manager.js.map +1 -1
  311. package/dist/src/utils/llm-artifact-detector.d.ts.map +1 -1
  312. package/dist/src/utils/llm-artifact-detector.js +28 -24
  313. package/dist/src/utils/llm-artifact-detector.js.map +1 -1
  314. package/dist/src/utils/mermaid-diagrams.d.ts +101 -0
  315. package/dist/src/utils/mermaid-diagrams.d.ts.map +1 -0
  316. package/dist/src/utils/mermaid-diagrams.js +445 -0
  317. package/dist/src/utils/mermaid-diagrams.js.map +1 -0
  318. package/dist/src/utils/monitoring.d.ts +249 -0
  319. package/dist/src/utils/monitoring.d.ts.map +1 -0
  320. package/dist/src/utils/monitoring.js +513 -0
  321. package/dist/src/utils/monitoring.js.map +1 -0
  322. package/dist/src/utils/pattern-contribution-helper.d.ts +60 -0
  323. package/dist/src/utils/pattern-contribution-helper.d.ts.map +1 -0
  324. package/dist/src/utils/pattern-contribution-helper.js +308 -0
  325. package/dist/src/utils/pattern-contribution-helper.js.map +1 -0
  326. package/dist/src/utils/pattern-loader.d.ts +183 -0
  327. package/dist/src/utils/pattern-loader.d.ts.map +1 -0
  328. package/dist/src/utils/pattern-loader.js +200 -0
  329. package/dist/src/utils/pattern-loader.js.map +1 -0
  330. package/dist/src/utils/pattern-research-utility.d.ts +107 -0
  331. package/dist/src/utils/pattern-research-utility.d.ts.map +1 -0
  332. package/dist/src/utils/pattern-research-utility.js +360 -0
  333. package/dist/src/utils/pattern-research-utility.js.map +1 -0
  334. package/dist/src/utils/pattern-to-dag-converter.d.ts +62 -0
  335. package/dist/src/utils/pattern-to-dag-converter.d.ts.map +1 -0
  336. package/dist/src/utils/pattern-to-dag-converter.js +265 -0
  337. package/dist/src/utils/pattern-to-dag-converter.js.map +1 -0
  338. package/dist/src/utils/platform-detector.d.ts +86 -0
  339. package/dist/src/utils/platform-detector.d.ts.map +1 -0
  340. package/dist/src/utils/platform-detector.js +509 -0
  341. package/dist/src/utils/platform-detector.js.map +1 -0
  342. package/dist/src/utils/prompt-composition.d.ts.map +1 -1
  343. package/dist/src/utils/prompt-composition.js +1 -4
  344. package/dist/src/utils/prompt-composition.js.map +1 -1
  345. package/dist/src/utils/reflexion.d.ts.map +1 -1
  346. package/dist/src/utils/reflexion.js +51 -42
  347. package/dist/src/utils/reflexion.js.map +1 -1
  348. package/dist/src/utils/research-integration.d.ts.map +1 -1
  349. package/dist/src/utils/research-integration.js +8 -2
  350. package/dist/src/utils/research-integration.js.map +1 -1
  351. package/dist/src/utils/research-orchestrator.d.ts +209 -0
  352. package/dist/src/utils/research-orchestrator.d.ts.map +1 -0
  353. package/dist/src/utils/research-orchestrator.js +863 -0
  354. package/dist/src/utils/research-orchestrator.js.map +1 -0
  355. package/dist/src/utils/research-questions.d.ts.map +1 -1
  356. package/dist/src/utils/research-questions.js +4 -1
  357. package/dist/src/utils/research-questions.js.map +1 -1
  358. package/dist/src/utils/resource-extractor.d.ts +57 -0
  359. package/dist/src/utils/resource-extractor.d.ts.map +1 -0
  360. package/dist/src/utils/resource-extractor.js +323 -0
  361. package/dist/src/utils/resource-extractor.js.map +1 -0
  362. package/dist/src/utils/resource-versioning.d.ts +124 -0
  363. package/dist/src/utils/resource-versioning.d.ts.map +1 -0
  364. package/dist/src/utils/resource-versioning.js +272 -0
  365. package/dist/src/utils/resource-versioning.js.map +1 -0
  366. package/dist/src/utils/root-manager.d.ts +118 -0
  367. package/dist/src/utils/root-manager.d.ts.map +1 -0
  368. package/dist/src/utils/root-manager.js +154 -0
  369. package/dist/src/utils/root-manager.js.map +1 -0
  370. package/dist/src/utils/rule-generation.d.ts.map +1 -1
  371. package/dist/src/utils/rule-generation.js +4 -1
  372. package/dist/src/utils/rule-generation.js.map +1 -1
  373. package/dist/src/utils/server-context-generator.d.ts +47 -0
  374. package/dist/src/utils/server-context-generator.d.ts.map +1 -0
  375. package/dist/src/utils/server-context-generator.js +666 -0
  376. package/dist/src/utils/server-context-generator.js.map +1 -0
  377. package/dist/src/utils/state-reinforcement-manager.d.ts +60 -0
  378. package/dist/src/utils/state-reinforcement-manager.d.ts.map +1 -0
  379. package/dist/src/utils/state-reinforcement-manager.js +200 -0
  380. package/dist/src/utils/state-reinforcement-manager.js.map +1 -0
  381. package/dist/src/utils/system-card-manager.d.ts +194 -0
  382. package/dist/src/utils/system-card-manager.d.ts.map +1 -0
  383. package/dist/src/utils/system-card-manager.js +336 -0
  384. package/dist/src/utils/system-card-manager.js.map +1 -0
  385. package/dist/src/utils/tiered-response-manager.d.ts +40 -0
  386. package/dist/src/utils/tiered-response-manager.d.ts.map +1 -0
  387. package/dist/src/utils/tiered-response-manager.js +243 -0
  388. package/dist/src/utils/tiered-response-manager.js.map +1 -0
  389. package/dist/src/utils/tree-sitter-analyzer.d.ts.map +1 -1
  390. package/dist/src/utils/tree-sitter-analyzer.js +83 -11
  391. package/dist/src/utils/tree-sitter-analyzer.js.map +1 -1
  392. package/dist/src/utils/validated-pattern-definitions.d.ts +219 -0
  393. package/dist/src/utils/validated-pattern-definitions.d.ts.map +1 -0
  394. package/dist/src/utils/validated-pattern-definitions.js +1511 -0
  395. package/dist/src/utils/validated-pattern-definitions.js.map +1 -0
  396. package/package.json +21 -12
  397. package/dist/src/prompts/todo-prompts.d.ts +0 -49
  398. package/dist/src/prompts/todo-prompts.d.ts.map +0 -1
  399. package/dist/src/prompts/todo-prompts.js +0 -824
  400. package/dist/src/prompts/todo-prompts.js.map +0 -1
  401. package/dist/src/types/todo-json-schemas.d.ts +0 -17
  402. package/dist/src/types/todo-json-schemas.d.ts.map +0 -1
  403. package/dist/src/types/todo-json-schemas.js +0 -9
  404. package/dist/src/types/todo-json-schemas.js.map +0 -1
  405. package/dist/src/utils/todo-file-watcher.d.ts +0 -14
  406. package/dist/src/utils/todo-file-watcher.d.ts.map +0 -1
  407. package/dist/src/utils/todo-file-watcher.js +0 -25
  408. package/dist/src/utils/todo-file-watcher.js.map +0 -1
@@ -0,0 +1,62 @@
1
+ /**
2
+ * LLM-Managed Database Management Tool
3
+ *
4
+ * Provides LLM-driven database operations with research-driven approach
5
+ */
6
+ import type { ToolContext } from '../types/tool-context.js';
7
+ /**
8
+ * LLM-managed database operations with research-driven approach
9
+ *
10
+ * @description Executes database operations using LLM to research best practices,
11
+ * generate appropriate commands, and execute them. Supports PostgreSQL, MongoDB, Redis, MySQL, and MariaDB.
12
+ *
13
+ * @param {Object} args - Database management configuration parameters
14
+ * @param {string} args.database - Database type (postgresql, mongodb, redis, mysql, mariadb)
15
+ * @param {string} args.action - Action to perform
16
+ * @param {Object} [args.parameters] - Action parameters
17
+ * @param {string} args.llmInstructions - LLM instructions for command generation
18
+ * @param {boolean} [args.researchFirst] - Research best approach first (default: true)
19
+ * @param {string} [args.projectPath] - Path to project root (defaults to cwd)
20
+ * @param {string} [args.adrDirectory] - ADR directory relative to project (defaults to 'docs/adrs')
21
+ *
22
+ * @returns {Promise<any>} Database operation results with LLM analysis
23
+ *
24
+ * @throws {McpAdrError} When required parameters are missing or operation fails
25
+ *
26
+ * @example
27
+ * ```typescript
28
+ * // PostgreSQL database creation
29
+ * const result = await llmDatabaseManagement({
30
+ * database: 'postgresql',
31
+ * action: 'create_database',
32
+ * parameters: { dbName: 'myapp', owner: 'myuser' },
33
+ * llmInstructions: 'Create a secure database with proper permissions'
34
+ * });
35
+ * ```
36
+ *
37
+ * @example
38
+ * ```typescript
39
+ * // MongoDB collection optimization
40
+ * const result = await llmDatabaseManagement({
41
+ * database: 'mongodb',
42
+ * action: 'optimize_collection',
43
+ * parameters: { collection: 'users', indexFields: ['email', 'created_at'] },
44
+ * llmInstructions: 'Optimize for read-heavy workloads with proper indexing'
45
+ * });
46
+ * ```
47
+ *
48
+ * @since 2.1.0
49
+ * @category Database Management
50
+ * @category LLM
51
+ * @mcp-tool
52
+ */
53
+ export declare function llmDatabaseManagement(args: {
54
+ database: 'postgresql' | 'mongodb' | 'redis' | 'mysql' | 'mariadb';
55
+ action: string;
56
+ parameters?: Record<string, any>;
57
+ llmInstructions: string;
58
+ researchFirst?: boolean;
59
+ projectPath?: string;
60
+ adrDirectory?: string;
61
+ }, context?: ToolContext): Promise<any>;
62
+ //# sourceMappingURL=llm-database-management-tool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"llm-database-management-tool.d.ts","sourceRoot":"","sources":["../../../src/tools/llm-database-management-tool.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAG5D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AACH,wBAAsB,qBAAqB,CACzC,IAAI,EAAE;IACJ,QAAQ,EAAE,YAAY,GAAG,SAAS,GAAG,OAAO,GAAG,OAAO,GAAG,SAAS,CAAC;IACnE,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACjC,eAAe,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,EACD,OAAO,CAAC,EAAE,WAAW,GACpB,OAAO,CAAC,GAAG,CAAC,CAmHd"}
@@ -0,0 +1,203 @@
1
+ /**
2
+ * LLM-Managed Database Management Tool
3
+ *
4
+ * Provides LLM-driven database operations with research-driven approach
5
+ */
6
+ import { McpAdrError } from '../types/index.js';
7
+ import { ResearchOrchestrator } from '../utils/research-orchestrator.js';
8
+ /**
9
+ * LLM-managed database operations with research-driven approach
10
+ *
11
+ * @description Executes database operations using LLM to research best practices,
12
+ * generate appropriate commands, and execute them. Supports PostgreSQL, MongoDB, Redis, MySQL, and MariaDB.
13
+ *
14
+ * @param {Object} args - Database management configuration parameters
15
+ * @param {string} args.database - Database type (postgresql, mongodb, redis, mysql, mariadb)
16
+ * @param {string} args.action - Action to perform
17
+ * @param {Object} [args.parameters] - Action parameters
18
+ * @param {string} args.llmInstructions - LLM instructions for command generation
19
+ * @param {boolean} [args.researchFirst] - Research best approach first (default: true)
20
+ * @param {string} [args.projectPath] - Path to project root (defaults to cwd)
21
+ * @param {string} [args.adrDirectory] - ADR directory relative to project (defaults to 'docs/adrs')
22
+ *
23
+ * @returns {Promise<any>} Database operation results with LLM analysis
24
+ *
25
+ * @throws {McpAdrError} When required parameters are missing or operation fails
26
+ *
27
+ * @example
28
+ * ```typescript
29
+ * // PostgreSQL database creation
30
+ * const result = await llmDatabaseManagement({
31
+ * database: 'postgresql',
32
+ * action: 'create_database',
33
+ * parameters: { dbName: 'myapp', owner: 'myuser' },
34
+ * llmInstructions: 'Create a secure database with proper permissions'
35
+ * });
36
+ * ```
37
+ *
38
+ * @example
39
+ * ```typescript
40
+ * // MongoDB collection optimization
41
+ * const result = await llmDatabaseManagement({
42
+ * database: 'mongodb',
43
+ * action: 'optimize_collection',
44
+ * parameters: { collection: 'users', indexFields: ['email', 'created_at'] },
45
+ * llmInstructions: 'Optimize for read-heavy workloads with proper indexing'
46
+ * });
47
+ * ```
48
+ *
49
+ * @since 2.1.0
50
+ * @category Database Management
51
+ * @category LLM
52
+ * @mcp-tool
53
+ */
54
+ export async function llmDatabaseManagement(args, context) {
55
+ const { database, action, parameters = {}, llmInstructions, researchFirst = true, projectPath, adrDirectory, } = args;
56
+ if (!database || !action || !llmInstructions) {
57
+ throw new McpAdrError('Database, action, and llmInstructions are required', 'MISSING_REQUIRED_PARAMS');
58
+ }
59
+ try {
60
+ context?.info(`🗄️ Initializing ${database} database management for: ${action}`);
61
+ context?.report_progress(0, 100);
62
+ // Initialize research orchestrator
63
+ const orchestrator = new ResearchOrchestrator(projectPath, adrDirectory);
64
+ let researchResult = null;
65
+ if (researchFirst) {
66
+ context?.info('📚 Researching best practices and optimization strategies...');
67
+ context?.report_progress(20, 100);
68
+ // Step 1: Research the best approach
69
+ const researchQuery = `
70
+ How to ${action} in ${database}?
71
+ Best practices for ${database} ${action}
72
+ ${database} ${action} documentation and examples
73
+ Performance optimization for ${database} ${action}
74
+ Security considerations for ${database} ${action}
75
+ ${llmInstructions}
76
+ `;
77
+ researchResult = await orchestrator.answerResearchQuestion(researchQuery);
78
+ }
79
+ // Step 2: Generate command using LLM
80
+ context?.info('🤖 Generating database commands with LLM guidance...');
81
+ context?.report_progress(50, 100);
82
+ const command = await generateDatabaseCommand({
83
+ database,
84
+ action,
85
+ parameters,
86
+ research: researchResult,
87
+ instructions: llmInstructions,
88
+ });
89
+ // Step 3: Execute the command (simulated for now)
90
+ context?.info(`🗄️ Executing ${database} operation...`);
91
+ context?.report_progress(80, 100);
92
+ const executionResult = await executeDatabaseCommand(command);
93
+ context?.info('✅ Database operation complete!');
94
+ context?.report_progress(100, 100);
95
+ return {
96
+ content: [
97
+ {
98
+ type: 'text',
99
+ text: `# LLM-Managed Database Operation
100
+
101
+ ## Operation Details
102
+ - **Database**: ${database}
103
+ - **Action**: ${action}
104
+ - **Parameters**: ${JSON.stringify(parameters, null, 2)}
105
+
106
+ ## LLM Instructions
107
+ ${llmInstructions}
108
+
109
+ ${researchResult
110
+ ? `
111
+ ## Research Results
112
+ - **Confidence**: ${(researchResult.confidence * 100).toFixed(1)}%
113
+ - **Sources**: ${researchResult.metadata.sourcesQueried.join(', ')}
114
+ - **Research Summary**: ${researchResult.answer}
115
+
116
+ `
117
+ : ''}
118
+
119
+ ## Generated Command
120
+ \`\`\`sql
121
+ ${command.generated}
122
+ \`\`\`
123
+
124
+ ## Execution Result
125
+ ${executionResult.success ? '✅ Success' : '❌ Failed'}
126
+ ${executionResult.output ? `\n\`\`\`\n${executionResult.output}\n\`\`\`` : ''}
127
+
128
+ ## LLM Analysis
129
+ ${command.analysis || 'No analysis available'}
130
+
131
+ ## Metadata
132
+ - **Command Confidence**: ${(command.confidence * 100).toFixed(1)}%
133
+ - **Timestamp**: ${new Date().toISOString()}
134
+ - **Research-Driven**: ${researchFirst ? 'Yes' : 'No'}
135
+ `,
136
+ },
137
+ ],
138
+ };
139
+ }
140
+ catch (error) {
141
+ throw new McpAdrError(`Database management operation failed: ${error instanceof Error ? error.message : String(error)}`, 'DATABASE_MANAGEMENT_ERROR');
142
+ }
143
+ }
144
+ /**
145
+ * Generate database command using LLM
146
+ */
147
+ async function generateDatabaseCommand(context) {
148
+ // const { loadAIConfig, getAIExecutor } = await import('../config/ai-config.js');
149
+ // const aiConfig = loadAIConfig();
150
+ // const executor = getAIExecutor();
151
+ // const prompt = `
152
+ // Generate a ${context.database} command for the following operation:
153
+ //
154
+ // Action: ${context.action}
155
+ // Parameters: ${JSON.stringify(context.parameters, null, 2)}
156
+ // Instructions: ${context.instructions}
157
+ //
158
+ // ${context.research ? `
159
+ // Research Context:
160
+ // - Confidence: ${(context.research.confidence * 100).toFixed(1)}%
161
+ // - Sources: ${context.research.metadata.sourcesQueried.join(', ')}
162
+ // - Key Findings: ${context.research.answer}
163
+ // ` : ''}
164
+ //
165
+ // Database Context:
166
+ // ${getDatabaseContext(context.database)}
167
+ //
168
+ // Generate the appropriate command (SQL, CLI, or API call) and provide analysis of the approach.
169
+ // `;
170
+ // TODO: Implement LLM command generation when AI executor is available
171
+ // const result = await executor.executeStructuredPrompt(prompt, {
172
+ // type: 'object',
173
+ // properties: {
174
+ // command: { type: 'string' },
175
+ // confidence: { type: 'number' },
176
+ // analysis: { type: 'string' }
177
+ // }
178
+ // });
179
+ // return {
180
+ // generated: result.data.command || '-- Command generation failed',
181
+ // confidence: result.data.confidence || 0.5,
182
+ // analysis: result.data.analysis || 'No analysis available'
183
+ // };
184
+ // Placeholder implementation
185
+ return {
186
+ generated: `-- LLM command generation for ${context.database} ${context.action} not yet implemented`,
187
+ confidence: 0.3,
188
+ analysis: 'LLM command generation is not yet available. This is a placeholder implementation.',
189
+ };
190
+ }
191
+ /**
192
+ * Execute database command (simulated for now)
193
+ */
194
+ async function executeDatabaseCommand(command) {
195
+ // For now, simulate command execution
196
+ // In a real implementation, this would execute the actual database command
197
+ return {
198
+ success: command.confidence > 0.7,
199
+ output: `Simulated execution of: ${command.generated}\n\nThis is a simulation. In production, this would execute the actual database command.`,
200
+ };
201
+ }
202
+ // Database context functions will be used when LLM integration is complete
203
+ //# sourceMappingURL=llm-database-management-tool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"llm-database-management-tool.js","sourceRoot":"","sources":["../../../src/tools/llm-database-management-tool.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,59 @@
1
+ /**
2
+ * LLM-Managed Web Search Tool
3
+ *
4
+ * Uses Firecrawl for cross-platform web search with LLM-driven query optimization
5
+ */
6
+ import type { ToolContext } from '../types/tool-context.js';
7
+ /**
8
+ * LLM-managed web search using Firecrawl for cross-platform support
9
+ *
10
+ * @description Executes intelligent web search using Firecrawl with LLM-driven
11
+ * query optimization and content relevance scoring. Supports RHEL, Ubuntu, and macOS.
12
+ *
13
+ * @param {Object} args - Web search configuration parameters
14
+ * @param {string} args.query - The search query to execute
15
+ * @param {number} [args.maxResults] - Maximum results to return (default: 5)
16
+ * @param {boolean} [args.includeContent] - Include full content (default: true)
17
+ * @param {string} [args.llmInstructions] - LLM instructions for search optimization
18
+ * @param {string} [args.projectPath] - Path to project root (defaults to cwd)
19
+ * @param {string} [args.adrDirectory] - ADR directory relative to project (defaults to 'docs/adrs')
20
+ *
21
+ * @returns {Promise<any>} Web search results with LLM analysis
22
+ *
23
+ * @throws {McpAdrError} When query is empty or search fails
24
+ *
25
+ * @example
26
+ * ```typescript
27
+ * // Basic web search
28
+ * const result = await llmWebSearch({
29
+ * query: 'Red Hat OpenShift best practices'
30
+ * });
31
+ *
32
+ * console.log(result.results); // Array of search results
33
+ * console.log(result.llmAnalysis); // LLM analysis of results
34
+ * ```
35
+ *
36
+ * @example
37
+ * ```typescript
38
+ * // Advanced search with LLM instructions
39
+ * const result = await llmWebSearch({
40
+ * query: 'Kubernetes security hardening',
41
+ * maxResults: 10,
42
+ * llmInstructions: 'Focus on enterprise security practices and compliance requirements'
43
+ * });
44
+ * ```
45
+ *
46
+ * @since 2.1.0
47
+ * @category Web Search
48
+ * @category LLM
49
+ * @mcp-tool
50
+ */
51
+ export declare function llmWebSearch(args: {
52
+ query: string;
53
+ maxResults?: number;
54
+ includeContent?: boolean;
55
+ llmInstructions?: string;
56
+ projectPath?: string;
57
+ adrDirectory?: string;
58
+ }, context?: ToolContext): Promise<any>;
59
+ //# sourceMappingURL=llm-web-search-tool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"llm-web-search-tool.d.ts","sourceRoot":"","sources":["../../../src/tools/llm-web-search-tool.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAG5D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AACH,wBAAsB,YAAY,CAChC,IAAI,EAAE;IACJ,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,EACD,OAAO,CAAC,EAAE,WAAW,GACpB,OAAO,CAAC,GAAG,CAAC,CAiGd"}
@@ -0,0 +1,165 @@
1
+ /**
2
+ * LLM-Managed Web Search Tool
3
+ *
4
+ * Uses Firecrawl for cross-platform web search with LLM-driven query optimization
5
+ */
6
+ import { McpAdrError } from '../types/index.js';
7
+ import { ResearchOrchestrator } from '../utils/research-orchestrator.js';
8
+ /**
9
+ * LLM-managed web search using Firecrawl for cross-platform support
10
+ *
11
+ * @description Executes intelligent web search using Firecrawl with LLM-driven
12
+ * query optimization and content relevance scoring. Supports RHEL, Ubuntu, and macOS.
13
+ *
14
+ * @param {Object} args - Web search configuration parameters
15
+ * @param {string} args.query - The search query to execute
16
+ * @param {number} [args.maxResults] - Maximum results to return (default: 5)
17
+ * @param {boolean} [args.includeContent] - Include full content (default: true)
18
+ * @param {string} [args.llmInstructions] - LLM instructions for search optimization
19
+ * @param {string} [args.projectPath] - Path to project root (defaults to cwd)
20
+ * @param {string} [args.adrDirectory] - ADR directory relative to project (defaults to 'docs/adrs')
21
+ *
22
+ * @returns {Promise<any>} Web search results with LLM analysis
23
+ *
24
+ * @throws {McpAdrError} When query is empty or search fails
25
+ *
26
+ * @example
27
+ * ```typescript
28
+ * // Basic web search
29
+ * const result = await llmWebSearch({
30
+ * query: 'Red Hat OpenShift best practices'
31
+ * });
32
+ *
33
+ * console.log(result.results); // Array of search results
34
+ * console.log(result.llmAnalysis); // LLM analysis of results
35
+ * ```
36
+ *
37
+ * @example
38
+ * ```typescript
39
+ * // Advanced search with LLM instructions
40
+ * const result = await llmWebSearch({
41
+ * query: 'Kubernetes security hardening',
42
+ * maxResults: 10,
43
+ * llmInstructions: 'Focus on enterprise security practices and compliance requirements'
44
+ * });
45
+ * ```
46
+ *
47
+ * @since 2.1.0
48
+ * @category Web Search
49
+ * @category LLM
50
+ * @mcp-tool
51
+ */
52
+ export async function llmWebSearch(args, context) {
53
+ const { query, maxResults = 5, includeContent = true, llmInstructions, projectPath, adrDirectory, } = args;
54
+ if (!query || query.trim().length === 0) {
55
+ throw new McpAdrError('Query parameter is required and cannot be empty', 'INVALID_QUERY');
56
+ }
57
+ try {
58
+ context?.info(`🌐 Initializing web search for: ${query}`);
59
+ context?.report_progress(0, 100);
60
+ // Initialize research orchestrator with Firecrawl
61
+ const orchestrator = new ResearchOrchestrator(projectPath, adrDirectory);
62
+ // Enhance query with LLM instructions if provided
63
+ context?.info('🤖 Optimizing search query with LLM guidance...');
64
+ context?.report_progress(25, 100);
65
+ let enhancedQuery = query;
66
+ if (llmInstructions) {
67
+ enhancedQuery = `${query}\n\nLLM Instructions: ${llmInstructions}`;
68
+ }
69
+ // Perform web search using research orchestrator
70
+ context?.info('🔍 Executing web search with Firecrawl...');
71
+ context?.report_progress(50, 100);
72
+ const researchResult = await orchestrator.answerResearchQuestion(enhancedQuery);
73
+ // Extract web search results
74
+ const webSearchSource = researchResult.sources.find(source => source.type === 'web_search');
75
+ const webResults = webSearchSource?.data?.results || [];
76
+ // Limit results
77
+ const limitedResults = webResults.slice(0, maxResults);
78
+ // Generate LLM analysis of results
79
+ context?.info('📊 Analyzing search results with LLM...');
80
+ context?.report_progress(75, 100);
81
+ const llmAnalysis = await generateLLMAnalysis(query, limitedResults, llmInstructions);
82
+ context?.info('✅ Web search complete!');
83
+ context?.report_progress(100, 100);
84
+ return {
85
+ content: [
86
+ {
87
+ type: 'text',
88
+ text: `# LLM-Managed Web Search Results
89
+
90
+ ## Query
91
+ ${query}
92
+
93
+ ${llmInstructions ? `## LLM Instructions\n${llmInstructions}\n` : ''}
94
+
95
+ ## Search Results (${limitedResults.length} found)
96
+
97
+ ${limitedResults
98
+ .map((result, index) => `
99
+ ### ${index + 1}. ${result.title}
100
+ - **URL**: ${result.url}
101
+ - **Relevance**: ${(result.relevance * 100).toFixed(1)}%
102
+ - **Content**: ${includeContent ? result.content?.substring(0, 500) + '...' : 'Content available'}
103
+
104
+ ---
105
+ `)
106
+ .join('\n')}
107
+
108
+ ## LLM Analysis
109
+ ${llmAnalysis}
110
+
111
+ ## Search Metadata
112
+ - **Provider**: Firecrawl
113
+ - **Total Results**: ${webResults.length}
114
+ - **Returned Results**: ${limitedResults.length}
115
+ - **Confidence**: ${(researchResult.confidence * 100).toFixed(1)}%
116
+ - **Timestamp**: ${new Date().toISOString()}
117
+ `,
118
+ },
119
+ ],
120
+ };
121
+ }
122
+ catch (error) {
123
+ throw new McpAdrError(`Web search failed: ${error instanceof Error ? error.message : String(error)}`, 'WEB_SEARCH_ERROR');
124
+ }
125
+ }
126
+ /**
127
+ * Generate LLM analysis of search results
128
+ */
129
+ async function generateLLMAnalysis(_query, _results, _instructions) {
130
+ // TODO: Implement LLM analysis when AI executor is available
131
+ // const { loadAIConfig, getAIExecutor } = await import('../config/ai-config.js');
132
+ // const aiConfig = loadAIConfig();
133
+ // const executor = getAIExecutor();
134
+ // const prompt = `
135
+ // Analyze these web search results for the query: "${query}"
136
+ //
137
+ // ${instructions ? `Additional Instructions: ${instructions}` : ''}
138
+ //
139
+ // Search Results:
140
+ // ${results.map((result, index) => `
141
+ // ${index + 1}. ${result.title}
142
+ // URL: ${result.url}
143
+ // Relevance: ${(result.relevance * 100).toFixed(1)}%
144
+ // Content Preview: ${result.content?.substring(0, 300)}...
145
+ // `).join('\n')}
146
+ //
147
+ // Provide analysis covering:
148
+ // 1. Overall quality and relevance of results
149
+ // 2. Key insights and findings
150
+ // 3. Gaps or missing information
151
+ // 4. Recommendations for further research
152
+ // 5. Summary of most valuable sources
153
+ //
154
+ // Keep analysis concise but comprehensive.
155
+ // `;
156
+ // const result = await executor.executeStructuredPrompt(prompt, {
157
+ // type: 'object',
158
+ // properties: {
159
+ // analysis: { type: 'string' }
160
+ // }
161
+ // });
162
+ // return result.data.analysis || 'Analysis unavailable';
163
+ return 'LLM analysis is not yet available. Results are available but require manual review.';
164
+ }
165
+ //# sourceMappingURL=llm-web-search-tool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"llm-web-search-tool.js","sourceRoot":"","sources":["../../../src/tools/llm-web-search-tool.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-planning-tool.d.ts","sourceRoot":"","sources":["../../../src/tools/mcp-planning-tool.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAu2CH;;GAEG;AACH,wBAAsB,WAAW,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAgCzD"}
1
+ {"version":3,"file":"mcp-planning-tool.d.ts","sourceRoot":"","sources":["../../../src/tools/mcp-planning-tool.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AA02CH;;GAEG;AACH,wBAAsB,WAAW,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAgCzD"}
@@ -113,7 +113,11 @@ const ProjectPlanSchema = z.object({
113
113
  riskAssessmentInterval: z.string().default('weekly'),
114
114
  progressUpdateFrequency: z.string().default('daily'),
115
115
  })
116
- .default({}),
116
+ .default(() => ({
117
+ autoPhaseTransition: false,
118
+ riskAssessmentInterval: 'weekly',
119
+ progressUpdateFrequency: 'daily',
120
+ })),
117
121
  });
118
122
  // Operation schemas
119
123
  const CreateProjectSchema = z.object({
@@ -334,7 +338,10 @@ async function createProject(args) {
334
338
  if (importFromAdrs) {
335
339
  try {
336
340
  const { discoverAdrsInDirectory } = await import('../utils/adr-discovery.js');
337
- const discoveryResult = await discoverAdrsInDirectory(join(projectPath, 'docs/adrs'), true, projectPath);
341
+ const discoveryResult = await discoverAdrsInDirectory(join(projectPath, 'docs/adrs'), projectPath, {
342
+ includeContent: true,
343
+ includeTimeline: false,
344
+ });
338
345
  // Link relevant ADRs to phases
339
346
  for (const phase of projectPhases) {
340
347
  const relatedAdrs = discoveryResult.adrs.filter((adr) => adr.title.toLowerCase().includes(phase.name.toLowerCase()) ||
@@ -1221,7 +1228,7 @@ export async function mcpPlanning(args) {
1221
1228
  }
1222
1229
  catch (error) {
1223
1230
  if (error instanceof z.ZodError) {
1224
- throw new McpAdrError(`Validation error: ${error.errors.map(e => e.message).join(', ')}`, 'VALIDATION_ERROR');
1231
+ throw new McpAdrError(`Validation error: ${error.issues.map(e => e.message).join(', ')}`, 'VALIDATION_ERROR');
1225
1232
  }
1226
1233
  throw error;
1227
1234
  }