bc-code-intelligence-mcp 1.5.9 → 1.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (598) hide show
  1. package/dist/index.d.ts +9 -8
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +93 -211
  4. package/dist/index.js.map +1 -1
  5. package/dist/layers/base-layer.d.ts +6 -6
  6. package/dist/layers/base-layer.d.ts.map +1 -1
  7. package/dist/layers/base-layer.js +15 -15
  8. package/dist/layers/base-layer.js.map +1 -1
  9. package/dist/layers/embedded-layer.d.ts +2 -2
  10. package/dist/layers/embedded-layer.d.ts.map +1 -1
  11. package/dist/layers/embedded-layer.js +32 -16
  12. package/dist/layers/embedded-layer.js.map +1 -1
  13. package/dist/layers/git-layer.d.ts +2 -2
  14. package/dist/layers/git-layer.d.ts.map +1 -1
  15. package/dist/layers/git-layer.js +23 -9
  16. package/dist/layers/git-layer.js.map +1 -1
  17. package/dist/layers/project-layer.d.ts +2 -2
  18. package/dist/layers/project-layer.d.ts.map +1 -1
  19. package/dist/layers/project-layer.js +25 -11
  20. package/dist/layers/project-layer.js.map +1 -1
  21. package/dist/services/code-analysis-service.d.ts +100 -2
  22. package/dist/services/code-analysis-service.d.ts.map +1 -1
  23. package/dist/services/code-analysis-service.js +274 -8
  24. package/dist/services/code-analysis-service.js.map +1 -1
  25. package/dist/services/knowledge-service.d.ts.map +1 -1
  26. package/dist/services/knowledge-service.js.map +1 -1
  27. package/dist/services/methodology-service.d.ts +34 -2
  28. package/dist/services/methodology-service.d.ts.map +1 -1
  29. package/dist/services/methodology-service.js +279 -24
  30. package/dist/services/methodology-service.js.map +1 -1
  31. package/dist/services/multi-content-layer-service.d.ts.map +1 -1
  32. package/dist/services/multi-content-layer-service.js +26 -9
  33. package/dist/services/multi-content-layer-service.js.map +1 -1
  34. package/dist/services/relevance-index-service.d.ts +95 -0
  35. package/dist/services/relevance-index-service.d.ts.map +1 -0
  36. package/dist/services/relevance-index-service.js +321 -0
  37. package/dist/services/relevance-index-service.js.map +1 -0
  38. package/dist/services/roleplay-engine.d.ts +8 -0
  39. package/dist/services/roleplay-engine.d.ts.map +1 -1
  40. package/dist/services/roleplay-engine.js +35 -3
  41. package/dist/services/roleplay-engine.js.map +1 -1
  42. package/dist/services/specialist-loader.d.ts +1 -0
  43. package/dist/services/specialist-loader.d.ts.map +1 -1
  44. package/dist/services/specialist-loader.js +1 -0
  45. package/dist/services/specialist-loader.js.map +1 -1
  46. package/dist/services/workflow-service.d.ts +12 -0
  47. package/dist/services/workflow-service.d.ts.map +1 -1
  48. package/dist/services/workflow-service.js +30 -0
  49. package/dist/services/workflow-service.js.map +1 -1
  50. package/dist/services/{enhanced-prompt-service.d.ts → workflow-specialist-router.d.ts} +41 -4
  51. package/dist/services/workflow-specialist-router.d.ts.map +1 -0
  52. package/dist/services/{enhanced-prompt-service.js → workflow-specialist-router.js} +150 -24
  53. package/dist/services/workflow-specialist-router.js.map +1 -0
  54. package/dist/services/workflow-v2/index.d.ts +6 -0
  55. package/dist/services/workflow-v2/index.d.ts.map +1 -0
  56. package/dist/services/workflow-v2/index.js +6 -0
  57. package/dist/services/workflow-v2/index.js.map +1 -0
  58. package/dist/services/workflow-v2/workflow-definitions.d.ts +53 -0
  59. package/dist/services/workflow-v2/workflow-definitions.d.ts.map +1 -0
  60. package/dist/services/workflow-v2/workflow-definitions.js +722 -0
  61. package/dist/services/workflow-v2/workflow-definitions.js.map +1 -0
  62. package/dist/services/workflow-v2/workflow-session-manager.d.ts +140 -0
  63. package/dist/services/workflow-v2/workflow-session-manager.d.ts.map +1 -0
  64. package/dist/services/workflow-v2/workflow-session-manager.js +820 -0
  65. package/dist/services/workflow-v2/workflow-session-manager.js.map +1 -0
  66. package/dist/streamlined-handlers.d.ts +7 -86
  67. package/dist/streamlined-handlers.d.ts.map +1 -1
  68. package/dist/streamlined-handlers.js +23 -679
  69. package/dist/streamlined-handlers.js.map +1 -1
  70. package/dist/tools/_shared/workspace-constants.d.ts +49 -0
  71. package/dist/tools/_shared/workspace-constants.d.ts.map +1 -0
  72. package/dist/tools/_shared/workspace-constants.js +53 -0
  73. package/dist/tools/_shared/workspace-constants.js.map +1 -0
  74. package/dist/tools/advance_workflow/handler.d.ts +21 -0
  75. package/dist/tools/advance_workflow/handler.d.ts.map +1 -0
  76. package/dist/tools/advance_workflow/handler.js +58 -0
  77. package/dist/tools/advance_workflow/handler.js.map +1 -0
  78. package/dist/tools/advance_workflow/schema.d.ts +8 -0
  79. package/dist/tools/advance_workflow/schema.d.ts.map +1 -0
  80. package/dist/tools/advance_workflow/schema.js +28 -0
  81. package/dist/tools/advance_workflow/schema.js.map +1 -0
  82. package/dist/tools/analyze_al_code/handler.d.ts +12 -0
  83. package/dist/tools/analyze_al_code/handler.d.ts.map +1 -0
  84. package/dist/tools/analyze_al_code/handler.js +312 -0
  85. package/dist/tools/analyze_al_code/handler.js.map +1 -0
  86. package/dist/tools/analyze_al_code/schema.d.ts +8 -0
  87. package/dist/tools/analyze_al_code/schema.d.ts.map +1 -0
  88. package/dist/tools/analyze_al_code/schema.js +54 -0
  89. package/dist/tools/analyze_al_code/schema.js.map +1 -0
  90. package/dist/tools/ask_bc_expert/handler.d.ts +21 -0
  91. package/dist/tools/ask_bc_expert/handler.d.ts.map +1 -0
  92. package/dist/tools/ask_bc_expert/handler.js +118 -0
  93. package/dist/tools/ask_bc_expert/handler.js.map +1 -0
  94. package/dist/tools/ask_bc_expert/schema.d.ts +8 -0
  95. package/dist/tools/ask_bc_expert/schema.d.ts.map +1 -0
  96. package/dist/tools/ask_bc_expert/schema.js +33 -0
  97. package/dist/tools/ask_bc_expert/schema.js.map +1 -0
  98. package/dist/tools/context-snapshot/handler.d.ts +14 -0
  99. package/dist/tools/context-snapshot/handler.d.ts.map +1 -0
  100. package/dist/tools/context-snapshot/handler.js +143 -0
  101. package/dist/tools/context-snapshot/handler.js.map +1 -0
  102. package/dist/tools/context-snapshot/schema.d.ts +11 -0
  103. package/dist/tools/context-snapshot/schema.d.ts.map +1 -0
  104. package/dist/tools/context-snapshot/schema.js +46 -0
  105. package/dist/tools/context-snapshot/schema.js.map +1 -0
  106. package/dist/tools/core-tools.d.ts +1 -1
  107. package/dist/tools/core-tools.d.ts.map +1 -1
  108. package/dist/tools/core-tools.js +26 -9
  109. package/dist/tools/core-tools.js.map +1 -1
  110. package/dist/tools/create_layer_content/handler.d.ts +17 -0
  111. package/dist/tools/create_layer_content/handler.d.ts.map +1 -0
  112. package/dist/tools/create_layer_content/handler.js +248 -0
  113. package/dist/tools/create_layer_content/handler.js.map +1 -0
  114. package/dist/tools/create_layer_content/schema.d.ts +9 -0
  115. package/dist/tools/create_layer_content/schema.d.ts.map +1 -0
  116. package/dist/tools/create_layer_content/schema.js +42 -0
  117. package/dist/tools/create_layer_content/schema.js.map +1 -0
  118. package/dist/tools/debug/diagnose_git_layer/handler.d.ts +6 -0
  119. package/dist/tools/debug/diagnose_git_layer/handler.d.ts.map +1 -0
  120. package/dist/tools/debug/diagnose_git_layer/handler.js +286 -0
  121. package/dist/tools/debug/diagnose_git_layer/handler.js.map +1 -0
  122. package/dist/tools/debug/diagnose_git_layer/schema.d.ts +6 -0
  123. package/dist/tools/debug/diagnose_git_layer/schema.d.ts.map +1 -0
  124. package/dist/tools/debug/diagnose_git_layer/schema.js +35 -0
  125. package/dist/tools/debug/diagnose_git_layer/schema.js.map +1 -0
  126. package/dist/tools/debug/diagnose_local_layer/handler.d.ts +6 -0
  127. package/dist/tools/debug/diagnose_local_layer/handler.d.ts.map +1 -0
  128. package/dist/tools/debug/diagnose_local_layer/handler.js +285 -0
  129. package/dist/tools/debug/diagnose_local_layer/handler.js.map +1 -0
  130. package/dist/tools/debug/diagnose_local_layer/schema.d.ts +6 -0
  131. package/dist/tools/debug/diagnose_local_layer/schema.d.ts.map +1 -0
  132. package/dist/tools/debug/diagnose_local_layer/schema.js +16 -0
  133. package/dist/tools/debug/diagnose_local_layer/schema.js.map +1 -0
  134. package/dist/tools/debug/get_layer_diagnostics/handler.d.ts +7 -0
  135. package/dist/tools/debug/get_layer_diagnostics/handler.d.ts.map +1 -0
  136. package/dist/tools/debug/get_layer_diagnostics/handler.js +46 -0
  137. package/dist/tools/debug/get_layer_diagnostics/handler.js.map +1 -0
  138. package/dist/tools/debug/get_layer_diagnostics/schema.d.ts +6 -0
  139. package/dist/tools/debug/get_layer_diagnostics/schema.d.ts.map +1 -0
  140. package/dist/tools/debug/get_layer_diagnostics/schema.js +20 -0
  141. package/dist/tools/debug/get_layer_diagnostics/schema.js.map +1 -0
  142. package/dist/tools/debug/reload_layers/handler.d.ts +8 -0
  143. package/dist/tools/debug/reload_layers/handler.d.ts.map +1 -0
  144. package/dist/tools/debug/reload_layers/handler.js +83 -0
  145. package/dist/tools/debug/reload_layers/handler.js.map +1 -0
  146. package/dist/tools/debug/reload_layers/schema.d.ts +6 -0
  147. package/dist/tools/debug/reload_layers/schema.d.ts.map +1 -0
  148. package/dist/tools/debug/reload_layers/schema.js +20 -0
  149. package/dist/tools/debug/reload_layers/schema.js.map +1 -0
  150. package/dist/tools/debug/test_azure_devops_pat/handler.d.ts +6 -0
  151. package/dist/tools/debug/test_azure_devops_pat/handler.d.ts.map +1 -0
  152. package/dist/tools/debug/test_azure_devops_pat/handler.js +16 -0
  153. package/dist/tools/debug/test_azure_devops_pat/handler.js.map +1 -0
  154. package/dist/tools/debug/test_azure_devops_pat/schema.d.ts +6 -0
  155. package/dist/tools/debug/test_azure_devops_pat/schema.d.ts.map +1 -0
  156. package/dist/tools/debug/test_azure_devops_pat/schema.js +27 -0
  157. package/dist/tools/debug/test_azure_devops_pat/schema.js.map +1 -0
  158. package/dist/tools/debug/validate_layer_config/handler.d.ts +6 -0
  159. package/dist/tools/debug/validate_layer_config/handler.d.ts.map +1 -0
  160. package/dist/tools/debug/validate_layer_config/handler.js +17 -0
  161. package/dist/tools/debug/validate_layer_config/handler.js.map +1 -0
  162. package/dist/tools/debug/validate_layer_config/schema.d.ts +6 -0
  163. package/dist/tools/debug/validate_layer_config/schema.d.ts.map +1 -0
  164. package/dist/tools/debug/validate_layer_config/schema.js +21 -0
  165. package/dist/tools/debug/validate_layer_config/schema.js.map +1 -0
  166. package/dist/tools/find_bc_knowledge/handler.d.ts +21 -0
  167. package/dist/tools/find_bc_knowledge/handler.d.ts.map +1 -0
  168. package/dist/tools/find_bc_knowledge/handler.js +71 -0
  169. package/dist/tools/find_bc_knowledge/handler.js.map +1 -0
  170. package/dist/tools/find_bc_knowledge/schema.d.ts +8 -0
  171. package/dist/tools/find_bc_knowledge/schema.d.ts.map +1 -0
  172. package/dist/tools/find_bc_knowledge/schema.js +35 -0
  173. package/dist/tools/find_bc_knowledge/schema.js.map +1 -0
  174. package/dist/tools/get_bc_topic/handler.d.ts +12 -0
  175. package/dist/tools/get_bc_topic/handler.d.ts.map +1 -0
  176. package/dist/tools/get_bc_topic/handler.js +35 -0
  177. package/dist/tools/get_bc_topic/handler.js.map +1 -0
  178. package/dist/tools/get_bc_topic/schema.d.ts +8 -0
  179. package/dist/tools/get_bc_topic/schema.d.ts.map +1 -0
  180. package/dist/tools/get_bc_topic/schema.js +29 -0
  181. package/dist/tools/get_bc_topic/schema.js.map +1 -0
  182. package/dist/tools/get_codelens_mappings/handler.d.ts +8 -0
  183. package/dist/tools/get_codelens_mappings/handler.d.ts.map +1 -0
  184. package/dist/tools/get_codelens_mappings/handler.js +79 -0
  185. package/dist/tools/get_codelens_mappings/handler.js.map +1 -0
  186. package/dist/tools/get_codelens_mappings/schema.d.ts +9 -0
  187. package/dist/tools/get_codelens_mappings/schema.d.ts.map +1 -0
  188. package/dist/tools/get_codelens_mappings/schema.js +16 -0
  189. package/dist/tools/get_codelens_mappings/schema.js.map +1 -0
  190. package/dist/tools/get_workflow_help/handler.d.ts +12 -0
  191. package/dist/tools/get_workflow_help/handler.d.ts.map +1 -0
  192. package/dist/tools/get_workflow_help/handler.js +54 -0
  193. package/dist/tools/get_workflow_help/handler.js.map +1 -0
  194. package/dist/tools/get_workflow_help/schema.d.ts +8 -0
  195. package/dist/tools/get_workflow_help/schema.d.ts.map +1 -0
  196. package/dist/tools/get_workflow_help/schema.js +25 -0
  197. package/dist/tools/get_workflow_help/schema.js.map +1 -0
  198. package/dist/tools/get_workspace_info/handler.d.ts +16 -0
  199. package/dist/tools/get_workspace_info/handler.d.ts.map +1 -0
  200. package/dist/tools/get_workspace_info/handler.js +36 -0
  201. package/dist/tools/get_workspace_info/handler.js.map +1 -0
  202. package/dist/tools/get_workspace_info/schema.d.ts +8 -0
  203. package/dist/tools/get_workspace_info/schema.d.ts.map +1 -0
  204. package/dist/tools/get_workspace_info/schema.js +15 -0
  205. package/dist/tools/get_workspace_info/schema.js.map +1 -0
  206. package/dist/tools/handlers.d.ts +48 -0
  207. package/dist/tools/handlers.d.ts.map +1 -0
  208. package/dist/tools/handlers.js +81 -0
  209. package/dist/tools/handlers.js.map +1 -0
  210. package/dist/tools/index.d.ts +132 -38
  211. package/dist/tools/index.d.ts.map +1 -1
  212. package/dist/tools/index.js +184 -52
  213. package/dist/tools/index.js.map +1 -1
  214. package/dist/tools/knowledge-query/handler.d.ts +29 -0
  215. package/dist/tools/knowledge-query/handler.d.ts.map +1 -0
  216. package/dist/tools/knowledge-query/handler.js +85 -0
  217. package/dist/tools/knowledge-query/handler.js.map +1 -0
  218. package/dist/tools/knowledge-query/schema.d.ts +12 -0
  219. package/dist/tools/knowledge-query/schema.d.ts.map +1 -0
  220. package/dist/tools/knowledge-query/schema.js +64 -0
  221. package/dist/tools/knowledge-query/schema.js.map +1 -0
  222. package/dist/tools/list_prompts/handler.d.ts +11 -0
  223. package/dist/tools/list_prompts/handler.d.ts.map +1 -0
  224. package/dist/tools/list_prompts/handler.js +102 -0
  225. package/dist/tools/list_prompts/handler.js.map +1 -0
  226. package/dist/tools/list_prompts/schema.d.ts +9 -0
  227. package/dist/tools/list_prompts/schema.d.ts.map +1 -0
  228. package/dist/tools/list_prompts/schema.js +28 -0
  229. package/dist/tools/list_prompts/schema.js.map +1 -0
  230. package/dist/tools/list_specialists/handler.d.ts +12 -0
  231. package/dist/tools/list_specialists/handler.d.ts.map +1 -0
  232. package/dist/tools/list_specialists/handler.js +68 -0
  233. package/dist/tools/list_specialists/handler.js.map +1 -0
  234. package/dist/tools/list_specialists/schema.d.ts +8 -0
  235. package/dist/tools/list_specialists/schema.d.ts.map +1 -0
  236. package/dist/tools/list_specialists/schema.js +24 -0
  237. package/dist/tools/list_specialists/schema.js.map +1 -0
  238. package/dist/tools/scaffold_layer_repo/handler.d.ts +15 -0
  239. package/dist/tools/scaffold_layer_repo/handler.d.ts.map +1 -0
  240. package/dist/tools/scaffold_layer_repo/handler.js +410 -0
  241. package/dist/tools/scaffold_layer_repo/handler.js.map +1 -0
  242. package/dist/tools/scaffold_layer_repo/schema.d.ts +9 -0
  243. package/dist/tools/scaffold_layer_repo/schema.d.ts.map +1 -0
  244. package/dist/tools/scaffold_layer_repo/schema.js +35 -0
  245. package/dist/tools/scaffold_layer_repo/schema.js.map +1 -0
  246. package/dist/tools/set_workspace_info/handler.d.ts +22 -0
  247. package/dist/tools/set_workspace_info/handler.d.ts.map +1 -0
  248. package/dist/tools/set_workspace_info/handler.js +60 -0
  249. package/dist/tools/set_workspace_info/handler.js.map +1 -0
  250. package/dist/tools/set_workspace_info/schema.d.ts +8 -0
  251. package/dist/tools/set_workspace_info/schema.d.ts.map +1 -0
  252. package/dist/tools/set_workspace_info/schema.js +25 -0
  253. package/dist/tools/set_workspace_info/schema.js.map +1 -0
  254. package/dist/tools/specialist-consult/handler.d.ts +23 -0
  255. package/dist/tools/specialist-consult/handler.d.ts.map +1 -0
  256. package/dist/tools/specialist-consult/handler.js +120 -0
  257. package/dist/tools/specialist-consult/handler.js.map +1 -0
  258. package/dist/tools/specialist-consult/schema.d.ts +11 -0
  259. package/dist/tools/specialist-consult/schema.d.ts.map +1 -0
  260. package/dist/tools/specialist-consult/schema.js +47 -0
  261. package/dist/tools/specialist-consult/schema.js.map +1 -0
  262. package/dist/tools/specialist-list/handler.d.ts +14 -0
  263. package/dist/tools/specialist-list/handler.d.ts.map +1 -0
  264. package/dist/tools/specialist-list/handler.js +70 -0
  265. package/dist/tools/specialist-list/handler.js.map +1 -0
  266. package/dist/tools/specialist-list/schema.d.ts +11 -0
  267. package/dist/tools/specialist-list/schema.d.ts.map +1 -0
  268. package/dist/tools/specialist-list/schema.js +29 -0
  269. package/dist/tools/specialist-list/schema.js.map +1 -0
  270. package/dist/tools/start_bc_workflow/handler.d.ts +21 -0
  271. package/dist/tools/start_bc_workflow/handler.d.ts.map +1 -0
  272. package/dist/tools/start_bc_workflow/handler.js +237 -0
  273. package/dist/tools/start_bc_workflow/handler.js.map +1 -0
  274. package/dist/tools/start_bc_workflow/schema.d.ts +8 -0
  275. package/dist/tools/start_bc_workflow/schema.d.ts.map +1 -0
  276. package/dist/tools/start_bc_workflow/schema.js +43 -0
  277. package/dist/tools/start_bc_workflow/schema.js.map +1 -0
  278. package/dist/tools/validate_layer_repo/handler.d.ts +10 -0
  279. package/dist/tools/validate_layer_repo/handler.d.ts.map +1 -0
  280. package/dist/tools/validate_layer_repo/handler.js +148 -0
  281. package/dist/tools/validate_layer_repo/handler.js.map +1 -0
  282. package/dist/tools/validate_layer_repo/schema.d.ts +9 -0
  283. package/dist/tools/validate_layer_repo/schema.d.ts.map +1 -0
  284. package/dist/tools/validate_layer_repo/schema.js +21 -0
  285. package/dist/tools/validate_layer_repo/schema.js.map +1 -0
  286. package/dist/tools/workflow-execute/handler.d.ts +44 -0
  287. package/dist/tools/workflow-execute/handler.d.ts.map +1 -0
  288. package/dist/tools/workflow-execute/handler.js +333 -0
  289. package/dist/tools/workflow-execute/handler.js.map +1 -0
  290. package/dist/tools/workflow-execute/schema.d.ts +13 -0
  291. package/dist/tools/workflow-execute/schema.d.ts.map +1 -0
  292. package/dist/tools/workflow-execute/schema.js +108 -0
  293. package/dist/tools/workflow-execute/schema.js.map +1 -0
  294. package/dist/tools/workflow_batch/handler.d.ts +21 -0
  295. package/dist/tools/workflow_batch/handler.d.ts.map +1 -0
  296. package/dist/tools/workflow_batch/handler.js +304 -0
  297. package/dist/tools/workflow_batch/handler.js.map +1 -0
  298. package/dist/tools/workflow_batch/schema.d.ts +8 -0
  299. package/dist/tools/workflow_batch/schema.d.ts.map +1 -0
  300. package/dist/tools/workflow_batch/schema.js +76 -0
  301. package/dist/tools/workflow_batch/schema.js.map +1 -0
  302. package/dist/tools/workflow_cancel/handler.d.ts +21 -0
  303. package/dist/tools/workflow_cancel/handler.d.ts.map +1 -0
  304. package/dist/tools/workflow_cancel/handler.js +157 -0
  305. package/dist/tools/workflow_cancel/handler.js.map +1 -0
  306. package/dist/tools/workflow_cancel/schema.d.ts +8 -0
  307. package/dist/tools/workflow_cancel/schema.d.ts.map +1 -0
  308. package/dist/tools/workflow_cancel/schema.js +34 -0
  309. package/dist/tools/workflow_cancel/schema.js.map +1 -0
  310. package/dist/tools/workflow_complete/handler.d.ts +21 -0
  311. package/dist/tools/workflow_complete/handler.d.ts.map +1 -0
  312. package/dist/tools/workflow_complete/handler.js +124 -0
  313. package/dist/tools/workflow_complete/handler.js.map +1 -0
  314. package/dist/tools/workflow_complete/schema.d.ts +8 -0
  315. package/dist/tools/workflow_complete/schema.d.ts.map +1 -0
  316. package/dist/tools/workflow_complete/schema.js +45 -0
  317. package/dist/tools/workflow_complete/schema.js.map +1 -0
  318. package/dist/tools/workflow_list/handler.d.ts +19 -0
  319. package/dist/tools/workflow_list/handler.d.ts.map +1 -0
  320. package/dist/tools/workflow_list/handler.js +58 -0
  321. package/dist/tools/workflow_list/handler.js.map +1 -0
  322. package/dist/tools/workflow_list/schema.d.ts +8 -0
  323. package/dist/tools/workflow_list/schema.d.ts.map +1 -0
  324. package/dist/tools/workflow_list/schema.js +26 -0
  325. package/dist/tools/workflow_list/schema.js.map +1 -0
  326. package/dist/tools/workflow_next/handler.d.ts +21 -0
  327. package/dist/tools/workflow_next/handler.d.ts.map +1 -0
  328. package/dist/tools/workflow_next/handler.js +90 -0
  329. package/dist/tools/workflow_next/handler.js.map +1 -0
  330. package/dist/tools/workflow_next/schema.d.ts +8 -0
  331. package/dist/tools/workflow_next/schema.d.ts.map +1 -0
  332. package/dist/tools/workflow_next/schema.js +28 -0
  333. package/dist/tools/workflow_next/schema.js.map +1 -0
  334. package/dist/tools/workflow_progress/handler.d.ts +21 -0
  335. package/dist/tools/workflow_progress/handler.d.ts.map +1 -0
  336. package/dist/tools/workflow_progress/handler.js +147 -0
  337. package/dist/tools/workflow_progress/handler.js.map +1 -0
  338. package/dist/tools/workflow_progress/schema.d.ts +8 -0
  339. package/dist/tools/workflow_progress/schema.d.ts.map +1 -0
  340. package/dist/tools/workflow_progress/schema.js +111 -0
  341. package/dist/tools/workflow_progress/schema.js.map +1 -0
  342. package/dist/tools/workflow_start/handler.d.ts +21 -0
  343. package/dist/tools/workflow_start/handler.d.ts.map +1 -0
  344. package/dist/tools/workflow_start/handler.js +133 -0
  345. package/dist/tools/workflow_start/handler.js.map +1 -0
  346. package/dist/tools/workflow_start/schema.d.ts +8 -0
  347. package/dist/tools/workflow_start/schema.d.ts.map +1 -0
  348. package/dist/tools/workflow_start/schema.js +102 -0
  349. package/dist/tools/workflow_start/schema.js.map +1 -0
  350. package/dist/tools/workflow_start_v2/handler.d.ts +21 -0
  351. package/dist/tools/workflow_start_v2/handler.d.ts.map +1 -0
  352. package/dist/tools/workflow_start_v2/handler.js +133 -0
  353. package/dist/tools/workflow_start_v2/handler.js.map +1 -0
  354. package/dist/tools/workflow_start_v2/schema.d.ts +8 -0
  355. package/dist/tools/workflow_start_v2/schema.d.ts.map +1 -0
  356. package/dist/tools/workflow_start_v2/schema.js +102 -0
  357. package/dist/tools/workflow_start_v2/schema.js.map +1 -0
  358. package/dist/tools/workflow_status/handler.d.ts +21 -0
  359. package/dist/tools/workflow_status/handler.d.ts.map +1 -0
  360. package/dist/tools/workflow_status/handler.js +107 -0
  361. package/dist/tools/workflow_status/handler.js.map +1 -0
  362. package/dist/tools/workflow_status/schema.d.ts +8 -0
  363. package/dist/tools/workflow_status/schema.d.ts.map +1 -0
  364. package/dist/tools/workflow_status/schema.js +33 -0
  365. package/dist/tools/workflow_status/schema.js.map +1 -0
  366. package/dist/types/bc-knowledge.d.ts +64 -13
  367. package/dist/types/bc-knowledge.d.ts.map +1 -1
  368. package/dist/types/bc-knowledge.js +15 -0
  369. package/dist/types/bc-knowledge.js.map +1 -1
  370. package/dist/types/enhanced-layer-types.d.ts +3 -3
  371. package/dist/types/enhanced-layer-types.d.ts.map +1 -1
  372. package/dist/types/workflow-v2-types.d.ts +577 -0
  373. package/dist/types/workflow-v2-types.d.ts.map +1 -0
  374. package/dist/types/workflow-v2-types.js +10 -0
  375. package/dist/types/workflow-v2-types.js.map +1 -0
  376. package/embedded-knowledge/codelens-mappings.yaml +111 -0
  377. package/embedded-knowledge/domains/alex-architect/api-delegate-operation-pattern.md +10 -0
  378. package/embedded-knowledge/domains/alex-architect/api-fieldset-registration-pattern.md +10 -0
  379. package/embedded-knowledge/domains/alex-architect/api-interface-design-patterns.md +10 -0
  380. package/embedded-knowledge/domains/alex-architect/api-page-development-patterns.md +10 -0
  381. package/embedded-knowledge/domains/alex-architect/complex-facade-patterns.md +10 -0
  382. package/embedded-knowledge/domains/alex-architect/delegating-to-github-copilot-agents.md +10 -0
  383. package/embedded-knowledge/domains/alex-architect/facade-pattern-al-implementation.md +10 -0
  384. package/embedded-knowledge/domains/alex-architect/facade-pattern-external-api.md +10 -0
  385. package/embedded-knowledge/domains/alex-architect/object-id-ninja-integration.md +10 -0
  386. package/embedded-knowledge/domains/alex-architect/recommend-object-id-ninja.md +10 -0
  387. package/embedded-knowledge/domains/alex-architect/subscriber-codeunit-size-optimization.md +12 -2
  388. package/embedded-knowledge/domains/alex-architect/systemid-integration.md +12 -2
  389. package/embedded-knowledge/domains/alex-architect/testability-design-patterns.md +10 -0
  390. package/embedded-knowledge/domains/casey-copilot/long-running-session-instructions.md +10 -0
  391. package/embedded-knowledge/domains/chris-config/configuration-file-discovery.md +10 -0
  392. package/embedded-knowledge/domains/chris-config/configuration-file-formats.md +10 -0
  393. package/embedded-knowledge/domains/chris-config/content-types-structure.md +10 -0
  394. package/embedded-knowledge/domains/chris-config/knowledge-content-creation.md +10 -0
  395. package/embedded-knowledge/domains/chris-config/layer-system-fundamentals.md +10 -0
  396. package/embedded-knowledge/domains/chris-config/multi-team-layer-configuration.md +10 -0
  397. package/embedded-knowledge/domains/chris-config/workspace-detection-solutions.md +10 -0
  398. package/embedded-knowledge/domains/dean-debug/bc-telemetry-buddy-integration.md +10 -0
  399. package/embedded-knowledge/domains/dean-debug/bc24-no-series-conversion-guide.md +10 -0
  400. package/embedded-knowledge/domains/dean-debug/case-statement-performance-best-practices.md +12 -2
  401. package/embedded-knowledge/domains/dean-debug/compound-statements-debugging.md +12 -2
  402. package/embedded-knowledge/domains/dean-debug/custom-dimensions-best-practices.md +12 -2
  403. package/embedded-knowledge/domains/dean-debug/custom-telemetry-implementation.md +10 -0
  404. package/embedded-knowledge/domains/dean-debug/deleteall-performance-tradeoff.md +12 -2
  405. package/embedded-knowledge/domains/dean-debug/deleteall-sql-performance.md +10 -0
  406. package/embedded-knowledge/domains/dean-debug/extension-telemetry-isolation.md +12 -2
  407. package/embedded-knowledge/domains/dean-debug/maintainsiftindex-property-behavior.md +10 -0
  408. package/embedded-knowledge/domains/dean-debug/no-series-implementation-patterns.md +10 -0
  409. package/embedded-knowledge/domains/dean-debug/no-series-module-patterns-bc24.md +10 -0
  410. package/embedded-knowledge/domains/dean-debug/no-series-validation-module-bc24.md +10 -0
  411. package/embedded-knowledge/domains/dean-debug/no-series-validation-patterns.md +10 -0
  412. package/embedded-knowledge/domains/dean-debug/odata-query-optimization.md +12 -2
  413. package/embedded-knowledge/domains/dean-debug/recommend-bc-telemetry-buddy.md +10 -0
  414. package/embedded-knowledge/domains/dean-debug/session-logmessage-methods.md +12 -2
  415. package/embedded-knowledge/domains/dean-debug/setloadfields-filter-field-exclusion.md +12 -2
  416. package/embedded-knowledge/domains/dean-debug/setloadfields-performance-impact.md +10 -0
  417. package/embedded-knowledge/domains/dean-debug/setloadfields-performance-optimization.md +10 -0
  418. package/embedded-knowledge/domains/dean-debug/setloadfields-placement-before-case-statements.md +12 -2
  419. package/embedded-knowledge/domains/dean-debug/setloadfields-placement-before-filters.md +12 -2
  420. package/embedded-knowledge/domains/dean-debug/setloadfields-primary-key-optimization.md +12 -2
  421. package/embedded-knowledge/domains/dean-debug/sift-technology-fundamentals.md +10 -0
  422. package/embedded-knowledge/domains/dean-debug/subscriber-singleinstance-performance.md +12 -2
  423. package/embedded-knowledge/domains/dean-debug/table-event-batch-operation-impact.md +12 -2
  424. package/embedded-knowledge/domains/dean-debug/table-key-requirements.md +12 -2
  425. package/embedded-knowledge/domains/dean-debug/telemetry-error-correlation.md +12 -2
  426. package/embedded-knowledge/domains/dean-debug/telemetry-performance-considerations.md +12 -2
  427. package/embedded-knowledge/domains/dean-debug/telemetry-verbosity-strategy.md +12 -2
  428. package/embedded-knowledge/domains/dean-debug/testfield-performance.md +12 -2
  429. package/embedded-knowledge/domains/eva-errors/codeunit-run-pattern.md +10 -0
  430. package/embedded-knowledge/domains/eva-errors/fielderror-default-messages.md +12 -2
  431. package/embedded-knowledge/domains/eva-errors/fielderror-message-construction.md +12 -2
  432. package/embedded-knowledge/domains/eva-errors/fielderror-method-syntax.md +12 -2
  433. package/embedded-knowledge/domains/eva-errors/testfield-error-handling.md +12 -2
  434. package/embedded-knowledge/domains/eva-errors/try-function-usage.md +10 -0
  435. package/embedded-knowledge/domains/jordan-bridge/al-event-subscriber-architecture.md +10 -0
  436. package/embedded-knowledge/domains/jordan-bridge/automatic-registration.md +12 -2
  437. package/embedded-knowledge/domains/jordan-bridge/business-process-template-patterns.md +10 -0
  438. package/embedded-knowledge/domains/jordan-bridge/error-response-patterns.md +12 -2
  439. package/embedded-knowledge/domains/jordan-bridge/etag-implementation.md +12 -2
  440. package/embedded-knowledge/domains/jordan-bridge/field-control-selection.md +12 -2
  441. package/embedded-knowledge/domains/jordan-bridge/task-scheduler-pattern-implementation.md +10 -0
  442. package/embedded-knowledge/domains/jordan-bridge/url-structure-naming-patterns.md +12 -2
  443. package/embedded-knowledge/domains/maya-mentor/case-multiple-conditions-ranges.md +12 -2
  444. package/embedded-knowledge/domains/maya-mentor/case-statement-syntax-structure.md +12 -2
  445. package/embedded-knowledge/domains/maya-mentor/fielderror-syntax-usage.md +12 -2
  446. package/embedded-knowledge/domains/maya-mentor/fielderror-vs-testfield.md +12 -2
  447. package/embedded-knowledge/domains/maya-mentor/testfield-basic-syntax.md +12 -2
  448. package/embedded-knowledge/domains/morgan-market/partner-readiness-analysis.md +10 -0
  449. package/embedded-knowledge/domains/parker-pragmatic/proposal-workflows/creating-effective-proposals.md +10 -0
  450. package/embedded-knowledge/domains/parker-pragmatic/trust-building/working-with-ai-skeptics.md +10 -0
  451. package/embedded-knowledge/domains/quinn-tester/fielderror-validation-patterns.md +12 -2
  452. package/embedded-knowledge/domains/quinn-tester/isolation-testing-patterns.md +10 -0
  453. package/embedded-knowledge/domains/quinn-tester/rule-execution.md +12 -2
  454. package/embedded-knowledge/domains/quinn-tester/table-safety-validation-patterns.md +12 -2
  455. package/embedded-knowledge/domains/quinn-tester/temporary-table-operation-validation.md +12 -2
  456. package/embedded-knowledge/domains/roger-reviewer/al-begin-end-block-structure.md +10 -0
  457. package/embedded-knowledge/domains/roger-reviewer/al-binary-operator-spacing.md +10 -0
  458. package/embedded-knowledge/domains/roger-reviewer/al-blank-line-organization.md +10 -0
  459. package/embedded-knowledge/domains/roger-reviewer/al-case-action-formatting.md +10 -0
  460. package/embedded-knowledge/domains/roger-reviewer/al-code-spacing-conventions.md +12 -2
  461. package/embedded-knowledge/domains/roger-reviewer/al-comment-spacing-standards.md +10 -0
  462. package/embedded-knowledge/domains/roger-reviewer/al-end-else-pairing.md +10 -0
  463. package/embedded-knowledge/domains/roger-reviewer/al-keyword-indentation-rules.md +10 -0
  464. package/embedded-knowledge/domains/roger-reviewer/al-line-start-keyword-positioning.md +10 -0
  465. package/embedded-knowledge/domains/roger-reviewer/al-separate-if-else-formatting.md +10 -0
  466. package/embedded-knowledge/domains/roger-reviewer/al-standard-abbreviations.md +10 -0
  467. package/embedded-knowledge/domains/roger-reviewer/al-statement-per-line-rule.md +10 -0
  468. package/embedded-knowledge/domains/roger-reviewer/al-unnecessary-else-elimination.md +10 -0
  469. package/embedded-knowledge/domains/roger-reviewer/al-variable-declaration-order.md +10 -0
  470. package/embedded-knowledge/domains/roger-reviewer/al-variable-naming-conventions.md +10 -0
  471. package/embedded-knowledge/domains/roger-reviewer/begin-block-statement-clarity.md +10 -0
  472. package/embedded-knowledge/domains/roger-reviewer/begin-end-positioning-patterns.md +10 -0
  473. package/embedded-knowledge/domains/roger-reviewer/binary-operator-line-positioning.md +12 -2
  474. package/embedded-knowledge/domains/roger-reviewer/boolean-expression-simplification-al.md +10 -0
  475. package/embedded-knowledge/domains/roger-reviewer/case-statement-error-handling-troubleshooting.md +12 -2
  476. package/embedded-knowledge/domains/roger-reviewer/compound-statement-readability.md +12 -2
  477. package/embedded-knowledge/domains/roger-reviewer/lonely-repeat-statement-pattern.md +10 -0
  478. package/embedded-knowledge/domains/roger-reviewer/testability-code-smells.md +10 -0
  479. package/embedded-knowledge/domains/sam-coder/al-formatting-consistency-patterns.md +10 -0
  480. package/embedded-knowledge/domains/sam-coder/al-line-comment-formatting.md +12 -2
  481. package/embedded-knowledge/domains/sam-coder/al-lonely-repeat-pattern.md +10 -0
  482. package/embedded-knowledge/domains/sam-coder/al-named-parameter-pattern.md +10 -0
  483. package/embedded-knowledge/domains/sam-coder/al-object-navigation-shortcuts.md +10 -0
  484. package/embedded-knowledge/domains/sam-coder/al-readability-optimization.md +10 -0
  485. package/embedded-knowledge/domains/sam-coder/al-record-find-early-exit.md +10 -0
  486. package/embedded-knowledge/domains/sam-coder/command-queue-pattern-al.md +10 -0
  487. package/embedded-knowledge/domains/sam-coder/deleteall-alternative-implementation.md +12 -2
  488. package/embedded-knowledge/domains/sam-coder/deleteall-method-usage.md +10 -0
  489. package/embedded-knowledge/domains/sam-coder/deleteall-trigger-execution.md +10 -0
  490. package/embedded-knowledge/domains/sam-coder/event-bridge-pattern-al.md +10 -0
  491. package/embedded-knowledge/domains/sam-coder/event-payload-design-patterns.md +10 -0
  492. package/embedded-knowledge/domains/sam-coder/generic-method-patterns-al.md +10 -0
  493. package/embedded-knowledge/domains/sam-coder/manual-binding-conditional-subscribers.md +10 -0
  494. package/embedded-knowledge/domains/sam-coder/nested-compound-best-practices.md +10 -0
  495. package/embedded-knowledge/domains/sam-coder/single-to-compound-conversion.md +12 -2
  496. package/embedded-knowledge/domains/sam-coder/template-method-pattern-al.md +10 -0
  497. package/embedded-knowledge/domains/sam-coder/testfield-patterns.md +12 -2
  498. package/embedded-knowledge/domains/sam-coder/type-safe-operations-al.md +10 -0
  499. package/embedded-knowledge/domains/sam-coder/vs-code-al-keyboard-shortcuts.md +10 -0
  500. package/embedded-knowledge/domains/seth-security/al-temporary-table-safety.md +10 -0
  501. package/embedded-knowledge/domains/seth-security/api-permission-model.md +12 -2
  502. package/embedded-knowledge/domains/seth-security/istemporary-safeguard-pattern.md +12 -2
  503. package/embedded-knowledge/domains/shared/al-file-naming-conventions.md +10 -0
  504. package/embedded-knowledge/domains/taylor-docs/al-xml-documentation-structure.md +10 -0
  505. package/embedded-knowledge/domains/uma-ux/bc-action-shortcuts-syntax.md +12 -2
  506. package/embedded-knowledge/domains/uma-ux/shortcut-key-user-experience-design.md +12 -2
  507. package/embedded-knowledge/scripts/frontmatter_validator.ps1 +330 -0
  508. package/embedded-knowledge/specialists/sam-coder.md +29 -20
  509. package/embedded-knowledge/workflows/bc-version-upgrade.yaml +160 -0
  510. package/embedded-knowledge/workflows/code-review.yaml +148 -0
  511. package/embedded-knowledge/workflows/error-to-errorinfo-migration.yaml +137 -0
  512. package/embedded-knowledge/workflows/onboarding.yaml +124 -0
  513. package/embedded-knowledge/workflows/performance-audit.yaml +148 -0
  514. package/embedded-knowledge/workflows/proposal-review.yaml +117 -0
  515. package/embedded-knowledge/workflows/security-audit.yaml +139 -0
  516. package/package.json +4 -2
  517. package/dist/cache/cache-manager.d.ts +0 -95
  518. package/dist/cache/cache-manager.d.ts.map +0 -1
  519. package/dist/cache/cache-manager.js +0 -328
  520. package/dist/cache/cache-manager.js.map +0 -1
  521. package/dist/cli/bc-code-intel-cli.d.ts +0 -9
  522. package/dist/cli/bc-code-intel-cli.d.ts.map +0 -1
  523. package/dist/cli/bc-code-intel-cli.js +0 -440
  524. package/dist/cli/bc-code-intel-cli.js.map +0 -1
  525. package/dist/config/test-config-loader.d.ts +0 -10
  526. package/dist/config/test-config-loader.d.ts.map +0 -1
  527. package/dist/config/test-config-loader.js +0 -135
  528. package/dist/config/test-config-loader.js.map +0 -1
  529. package/dist/config/test-enhanced-layer-service.d.ts +0 -7
  530. package/dist/config/test-enhanced-layer-service.d.ts.map +0 -1
  531. package/dist/config/test-enhanced-layer-service.js +0 -104
  532. package/dist/config/test-enhanced-layer-service.js.map +0 -1
  533. package/dist/config/test-git-layer.d.ts +0 -7
  534. package/dist/config/test-git-layer.d.ts.map +0 -1
  535. package/dist/config/test-git-layer.js +0 -68
  536. package/dist/config/test-git-layer.js.map +0 -1
  537. package/dist/dev/hot-reload.d.ts +0 -91
  538. package/dist/dev/hot-reload.d.ts.map +0 -1
  539. package/dist/dev/hot-reload.js +0 -358
  540. package/dist/dev/hot-reload.js.map +0 -1
  541. package/dist/layers/layer-service.d.ts +0 -135
  542. package/dist/layers/layer-service.d.ts.map +0 -1
  543. package/dist/layers/layer-service.js +0 -586
  544. package/dist/layers/layer-service.js.map +0 -1
  545. package/dist/monitoring/production-monitor.d.ts +0 -148
  546. package/dist/monitoring/production-monitor.d.ts.map +0 -1
  547. package/dist/monitoring/production-monitor.js +0 -463
  548. package/dist/monitoring/production-monitor.js.map +0 -1
  549. package/dist/performance/performance-monitor.d.ts +0 -99
  550. package/dist/performance/performance-monitor.d.ts.map +0 -1
  551. package/dist/performance/performance-monitor.js +0 -253
  552. package/dist/performance/performance-monitor.js.map +0 -1
  553. package/dist/sdk/bc-code-intel-client.d.ts +0 -175
  554. package/dist/sdk/bc-code-intel-client.d.ts.map +0 -1
  555. package/dist/sdk/bc-code-intel-client.js +0 -380
  556. package/dist/sdk/bc-code-intel-client.js.map +0 -1
  557. package/dist/search/intelligent-search.d.ts +0 -97
  558. package/dist/search/intelligent-search.d.ts.map +0 -1
  559. package/dist/search/intelligent-search.js +0 -358
  560. package/dist/search/intelligent-search.js.map +0 -1
  561. package/dist/security/access-control.d.ts +0 -110
  562. package/dist/security/access-control.d.ts.map +0 -1
  563. package/dist/security/access-control.js +0 -353
  564. package/dist/security/access-control.js.map +0 -1
  565. package/dist/services/enhanced-prompt-service.d.ts.map +0 -1
  566. package/dist/services/enhanced-prompt-service.js.map +0 -1
  567. package/dist/setup/post-install.d.ts +0 -12
  568. package/dist/setup/post-install.d.ts.map +0 -1
  569. package/dist/setup/post-install.js +0 -81
  570. package/dist/setup/post-install.js.map +0 -1
  571. package/dist/test-enhanced-mcp-server.d.ts +0 -7
  572. package/dist/test-enhanced-mcp-server.d.ts.map +0 -1
  573. package/dist/test-enhanced-mcp-server.js +0 -177
  574. package/dist/test-enhanced-mcp-server.js.map +0 -1
  575. package/dist/tools/specialist-tools.d.ts +0 -43
  576. package/dist/tools/specialist-tools.d.ts.map +0 -1
  577. package/dist/tools/specialist-tools.js +0 -378
  578. package/dist/tools/specialist-tools.js.map +0 -1
  579. package/dist/utils/path-utils.d.ts +0 -5
  580. package/dist/utils/path-utils.d.ts.map +0 -1
  581. package/dist/utils/path-utils.js +0 -14
  582. package/dist/utils/path-utils.js.map +0 -1
  583. package/embedded-knowledge/methodologies/index.json +0 -81
  584. package/embedded-knowledge/methodologies/phases/analysis-full.md +0 -208
  585. package/embedded-knowledge/methodologies/phases/analysis-quick.md +0 -44
  586. package/embedded-knowledge/methodologies/phases/analysis.md +0 -182
  587. package/embedded-knowledge/methodologies/phases/execution-validation-full.md +0 -174
  588. package/embedded-knowledge/methodologies/phases/execution-validation-quick.md +0 -31
  589. package/embedded-knowledge/methodologies/phases/execution-validation.md +0 -174
  590. package/embedded-knowledge/methodologies/phases/performance-full.md +0 -211
  591. package/embedded-knowledge/methodologies/phases/performance-quick.md +0 -32
  592. package/embedded-knowledge/methodologies/phases/performance.md +0 -211
  593. package/embedded-knowledge/methodologies/phases/verification-full.md +0 -162
  594. package/embedded-knowledge/methodologies/phases/verification-quick.md +0 -48
  595. package/embedded-knowledge/methodologies/phases/verification.md +0 -146
  596. package/embedded-knowledge/methodologies/workflow-enforcement.md +0 -142
  597. package/embedded-knowledge/methodologies/workflows/code-review-workflow.md +0 -99
  598. package/embedded-knowledge/methodologies/workflows/proposal-review-workflow.md +0 -535
@@ -1,177 +0,0 @@
1
- /**
2
- * Test Enhanced MCP Server with Phase 2B Features
3
- * Run with: npm run dev -- --test-mcp-server
4
- */
5
- import { BCCodeIntelligenceServer } from './index.js';
6
- async function testEnhancedMCPServer() {
7
- console.log('🔧 Testing Enhanced MCP Server with Phase 2B Features...');
8
- try {
9
- // Create server instance
10
- console.log('\n🏗️ Creating MCP server instance...');
11
- const server = new BCCodeIntelligenceServer();
12
- // Simulate MCP tool calls for testing
13
- console.log('\n🧪 Testing enhanced MCP tools...');
14
- // Test 1: Configuration status
15
- console.log('\n1️⃣ Testing get_configuration_status...');
16
- await testConfigurationStatus(server);
17
- // Test 2: Layer information
18
- console.log('\n2️⃣ Testing get_layer_info...');
19
- await testLayerInfo(server);
20
- // Test 3: Topic layer resolution
21
- console.log('\n3️⃣ Testing resolve_topic_layers...');
22
- await testTopicLayerResolution(server);
23
- // Test 4: Layered search
24
- console.log('\n4️⃣ Testing search_layered_topics...');
25
- await testLayeredSearch(server);
26
- // Test 5: Configuration reload
27
- console.log('\n5️⃣ Testing reload_configuration...');
28
- await testConfigurationReload(server);
29
- console.log('\n✅ All enhanced MCP server tests completed successfully!');
30
- }
31
- catch (error) {
32
- console.error('❌ Enhanced MCP server test failed:', error instanceof Error ? error.message : String(error));
33
- throw error;
34
- }
35
- }
36
- async function testConfigurationStatus(server) {
37
- try {
38
- // Initialize server first to load configuration
39
- await initializeServerForTesting(server);
40
- console.log(' 📊 Testing configuration status with validation...');
41
- const statusResult = await simulateToolCall(server, 'get_configuration_status', {
42
- include_validation: true,
43
- include_performance: true
44
- });
45
- console.log(' ✅ Configuration status retrieved successfully');
46
- const status = JSON.parse(statusResult.content[0].text);
47
- console.log(` - Configuration loaded: ${status.configuration_loaded}`);
48
- console.log(` - Layers initialized: ${status.layers_initialized}`);
49
- console.log(` - Validation quality: ${status.validation?.quality_score || 'N/A'}/100`);
50
- }
51
- catch (error) {
52
- console.error(' ❌ Configuration status test failed:', error);
53
- throw error;
54
- }
55
- }
56
- async function testLayerInfo(server) {
57
- try {
58
- console.log(' 🔍 Testing layer information with statistics...');
59
- const layerResult = await simulateToolCall(server, 'get_layer_info', {
60
- include_statistics: true
61
- });
62
- console.log(' ✅ Layer information retrieved successfully');
63
- const layerInfo = JSON.parse(layerResult.content[0].text);
64
- console.log(` - Total layers: ${layerInfo.layers?.length || 0}`);
65
- console.log(` - Layer types: ${layerInfo.configuration?.layer_types?.join(', ') || 'N/A'}`);
66
- }
67
- catch (error) {
68
- console.error(' ❌ Layer info test failed:', error);
69
- throw error;
70
- }
71
- }
72
- async function testTopicLayerResolution(server) {
73
- try {
74
- console.log(' 🎯 Testing topic resolution across layers...');
75
- // Try to resolve a common topic (might be in embedded layer)
76
- const resolutionResult = await simulateToolCall(server, 'resolve_topic_layers', {
77
- topic_id: 'performance/sift-optimization',
78
- show_overrides: true
79
- });
80
- console.log(' ✅ Topic layer resolution completed');
81
- const resolution = JSON.parse(resolutionResult.content[0].text);
82
- console.log(` - Topic found: ${resolution.topic_id}`);
83
- console.log(` - Resolved from: ${resolution.resolved_from}`);
84
- console.log(` - Is override: ${resolution.is_override}`);
85
- }
86
- catch (error) {
87
- // This might fail if the specific topic doesn't exist, which is okay for testing
88
- console.log(' ⚠️ Topic resolution test completed (topic may not exist in test setup)');
89
- }
90
- }
91
- async function testLayeredSearch(server) {
92
- try {
93
- console.log(' 🔎 Testing layered topic search...');
94
- const searchResult = await simulateToolCall(server, 'search_layered_topics', {
95
- query: 'performance optimization',
96
- include_layer_info: true,
97
- limit: 5
98
- });
99
- console.log(' ✅ Layered search completed');
100
- const search = JSON.parse(searchResult.content[0].text);
101
- console.log(` - Query: "${search.query}"`);
102
- console.log(` - Results found: ${search.total_results}`);
103
- console.log(` - Layer filter: ${search.layer_filter}`);
104
- }
105
- catch (error) {
106
- console.error(' ❌ Layered search test failed:', error);
107
- throw error;
108
- }
109
- }
110
- async function testConfigurationReload(server) {
111
- try {
112
- console.log(' 🔄 Testing configuration reload (validation only)...');
113
- const reloadResult = await simulateToolCall(server, 'reload_configuration', {
114
- force: false,
115
- validate_only: true
116
- });
117
- console.log(' ✅ Configuration reload test completed');
118
- const reload = JSON.parse(reloadResult.content[0].text);
119
- console.log(` - Validation only: ${reload.validation_only || reload.reloaded === false}`);
120
- console.log(` - Valid config: ${reload.is_valid !== false}`);
121
- }
122
- catch (error) {
123
- console.error(' ❌ Configuration reload test failed:', error);
124
- throw error;
125
- }
126
- }
127
- /**
128
- * Initialize server for testing (simulates what happens in run())
129
- */
130
- async function initializeServerForTesting(server) {
131
- try {
132
- // Access private configLoader through type assertion for testing
133
- const configLoader = server.configLoader;
134
- const configResult = await configLoader.loadConfiguration();
135
- // Initialize services
136
- await server.initializeServices(configResult);
137
- console.log(' 🏗️ Server initialized for testing');
138
- }
139
- catch (error) {
140
- console.error(' ❌ Server initialization failed:', error);
141
- throw error;
142
- }
143
- }
144
- /**
145
- * Simulate MCP tool call for testing
146
- */
147
- async function simulateToolCall(server, toolName, args) {
148
- try {
149
- // Access private server instance for testing
150
- const mcpServer = server.server;
151
- // Create a mock request
152
- const mockRequest = {
153
- params: {
154
- name: toolName,
155
- arguments: args
156
- }
157
- };
158
- // Get the call tool handler
159
- const handlers = mcpServer.requestHandlers;
160
- const callToolHandler = handlers.get('tools/call');
161
- if (!callToolHandler) {
162
- throw new Error('Call tool handler not found');
163
- }
164
- // Execute the handler
165
- return await callToolHandler(mockRequest);
166
- }
167
- catch (error) {
168
- throw new Error(`Tool call simulation failed: ${error instanceof Error ? error.message : String(error)}`);
169
- }
170
- }
171
- // Export for use in other tests
172
- export { testEnhancedMCPServer };
173
- // Run if called directly
174
- if (process.argv.includes('--test-mcp-server')) {
175
- testEnhancedMCPServer().catch(console.error);
176
- }
177
- //# sourceMappingURL=test-enhanced-mcp-server.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"test-enhanced-mcp-server.js","sourceRoot":"","sources":["../src/test-enhanced-mcp-server.ts"],"names":[],"mappings":"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"}
@@ -1,43 +0,0 @@
1
- /**
2
- * MCP Tools for BC Specialist Interactions
3
- *
4
- * Provides a focused set of tools for AI-assisted Business Central development
5
- * through personality-driven specialist consultations.
6
- */
7
- import { CallToolRequest, CallToolResult, Tool } from '@modelcontextprotocol/sdk/types.js';
8
- import { MultiContentLayerService } from '../services/multi-content-layer-service.js';
9
- import { SpecialistSessionManager } from '../services/specialist-session-manager.js';
10
- import { KnowledgeService } from '../services/knowledge-service.js';
11
- export declare class SpecialistTools {
12
- private readonly layerService;
13
- private readonly sessionManager;
14
- private readonly knowledgeService;
15
- private roleplayEngine;
16
- constructor(layerService: MultiContentLayerService, sessionManager: SpecialistSessionManager, knowledgeService: KnowledgeService);
17
- /**
18
- * Get all specialist tool definitions for MCP registration
19
- */
20
- getToolDefinitions(): Tool[];
21
- /**
22
- * Handle specialist tool calls
23
- */
24
- handleToolCall(request: CallToolRequest): Promise<CallToolResult>;
25
- /**
26
- * Find the best specialist for a question
27
- */
28
- private handleSuggestSpecialist;
29
- /**
30
- * Get advice from a specialist with automatic session management
31
- */
32
- private handleGetSpecialistAdvice;
33
- /**
34
- * List available specialists with filtering
35
- */
36
- private handleListSpecialists;
37
- /**
38
- * Find specialist by partial/fuzzy name matching
39
- * Handles cases like "Sam" -> "sam-coder", "Dean" -> "dean-debug", etc.
40
- */
41
- private findSpecialistByFuzzyName;
42
- }
43
- //# sourceMappingURL=specialist-tools.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"specialist-tools.d.ts","sourceRoot":"","sources":["../../src/tools/specialist-tools.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAC3F,OAAO,EAAE,wBAAwB,EAAE,MAAM,4CAA4C,CAAC;AACtF,OAAO,EAAE,wBAAwB,EAAE,MAAM,2CAA2C,CAAC;AAErF,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAqBpE,qBAAa,eAAe;IAIxB,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IALnC,OAAO,CAAC,cAAc,CAA6B;gBAGhC,YAAY,EAAE,wBAAwB,EACtC,cAAc,EAAE,wBAAwB,EACxC,gBAAgB,EAAE,gBAAgB;IAKrD;;OAEG;IACH,kBAAkB,IAAI,IAAI,EAAE;IAiF5B;;OAEG;IACG,cAAc,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC;IA6BvE;;OAEG;YACW,uBAAuB;IAiDrC;;OAEG;YACW,yBAAyB;IAyHvC;;OAEG;YACW,qBAAqB;IAkFnC;;;OAGG;YACW,yBAAyB;CAiCxC"}
@@ -1,378 +0,0 @@
1
- /**
2
- * MCP Tools for BC Specialist Interactions
3
- *
4
- * Provides a focused set of tools for AI-assisted Business Central development
5
- * through personality-driven specialist consultations.
6
- */
7
- import { BCSpecialistRoleplayEngine } from '../services/roleplay-engine.js';
8
- import { z } from 'zod';
9
- // Input validation schemas
10
- const SuggestSpecialistSchema = z.object({
11
- question: z.string().min(10, 'Question must be at least 10 characters'),
12
- context: z.string().optional().describe('Additional context about the problem')
13
- });
14
- const GetSpecialistAdviceSchema = z.object({
15
- specialist_id: z.string().min(1, 'Specialist ID is required'),
16
- message: z.string().min(1, 'Message is required'),
17
- session_id: z.string().optional().describe('Session ID for multi-turn conversations'),
18
- problem_context: z.string().optional().describe('Overall problem being solved')
19
- });
20
- const ListSpecialistsSchema = z.object({
21
- domain: z.string().optional().describe('Filter by domain (e.g., performance, security)'),
22
- expertise: z.string().optional().describe('Filter by expertise area')
23
- });
24
- export class SpecialistTools {
25
- layerService;
26
- sessionManager;
27
- knowledgeService;
28
- roleplayEngine;
29
- constructor(layerService, sessionManager, knowledgeService) {
30
- this.layerService = layerService;
31
- this.sessionManager = sessionManager;
32
- this.knowledgeService = knowledgeService;
33
- this.roleplayEngine = new BCSpecialistRoleplayEngine(layerService, knowledgeService);
34
- }
35
- /**
36
- * Get all specialist tool definitions for MCP registration
37
- */
38
- getToolDefinitions() {
39
- return [
40
- {
41
- name: 'suggest_specialist',
42
- description: 'Find the most appropriate BC specialist for your question. IMPORTANT: When user wants to "talk to" or "chat with" a specific specialist, use get_specialist_advice directly instead. This tool is for discovering which specialist to use when unsure.',
43
- inputSchema: {
44
- type: 'object',
45
- properties: {
46
- question: {
47
- type: 'string',
48
- description: 'Your question or problem description',
49
- minLength: 10
50
- },
51
- context: {
52
- type: 'string',
53
- description: 'Additional context about your project or situation (optional)'
54
- }
55
- },
56
- required: ['question']
57
- }
58
- },
59
- {
60
- name: 'get_specialist_advice',
61
- description: `Connect directly with a BC specialist who responds authentically as themselves. CRITICAL FOR AGENTS: Respond AS the specialist, not as an AI describing roleplay. No menus, no explanations - dive straight into the specialist persona and expertise. Perfect for "Talk to Sam", "Chat with Dean", etc.
62
-
63
- ⚠️ **MANDATORY KNOWLEDGE LOOKUP**: Before generating ANY BC development advice or code, ALWAYS search the knowledge base first using find_bc_knowledge. The knowledge base contains authoritative BC standards, patterns, and conventions that override general AI training. Never rely solely on training data for BC development guidance.
64
-
65
- Example: find_bc_knowledge({ query: "AL file naming conventions" }) before writing AL code.
66
-
67
- 🔧 **AL/BC Platform Constraints**: All specialist advice MUST respect Business Central and AL language limitations:
68
- • Security specialists: Focus on AL permission objects, user groups, BC security framework - NOT external auth systems
69
- • UX specialists: Work within AL page/report constraints - BC controls rendering, NOT custom CSS/HTML
70
- • Performance specialists: AL optimization patterns, table design, BC server constraints - NOT generic frameworks
71
- • API specialists: BC API pages, web services, AL integration - NOT generic REST frameworks
72
- • All specialists: Prioritize AL language capabilities and BC platform limitations over generic programming`,
73
- inputSchema: {
74
- type: 'object',
75
- properties: {
76
- specialist_id: {
77
- type: 'string',
78
- description: 'ID of the specialist (e.g., dean-debug, alex-architect)',
79
- minLength: 1
80
- },
81
- message: {
82
- type: 'string',
83
- description: 'Your question or message to the specialist',
84
- minLength: 1
85
- },
86
- session_id: {
87
- type: 'string',
88
- description: 'Session ID for ongoing conversations (optional - will create new session if not provided)'
89
- },
90
- problem_context: {
91
- type: 'string',
92
- description: 'Overall problem context to help the specialist understand the bigger picture (optional)'
93
- }
94
- },
95
- required: ['specialist_id', 'message']
96
- }
97
- },
98
- {
99
- name: 'list_specialists',
100
- description: 'Discover available BC specialists and their expertise areas. Useful for understanding the team capabilities.',
101
- inputSchema: {
102
- type: 'object',
103
- properties: {
104
- domain: {
105
- type: 'string',
106
- description: 'Filter by domain (e.g., performance, security, api-design) - optional'
107
- },
108
- expertise: {
109
- type: 'string',
110
- description: 'Filter by expertise area (e.g., caching, authentication) - optional'
111
- }
112
- },
113
- required: []
114
- }
115
- }
116
- ];
117
- }
118
- /**
119
- * Handle specialist tool calls
120
- */
121
- async handleToolCall(request) {
122
- try {
123
- switch (request.params.name) {
124
- case 'suggest_specialist':
125
- return await this.handleSuggestSpecialist(request);
126
- case 'get_specialist_advice':
127
- return await this.handleGetSpecialistAdvice(request);
128
- case 'list_specialists':
129
- return await this.handleListSpecialists(request);
130
- default:
131
- return {
132
- content: [{
133
- type: 'text',
134
- text: `Unknown specialist tool: ${request.params.name}`
135
- }],
136
- isError: true
137
- };
138
- }
139
- }
140
- catch (error) {
141
- return {
142
- content: [{
143
- type: 'text',
144
- text: `Error in ${request.params.name}: ${error instanceof Error ? error.message : 'Unknown error'}`
145
- }],
146
- isError: true
147
- };
148
- }
149
- }
150
- /**
151
- * Find the best specialist for a question
152
- */
153
- async handleSuggestSpecialist(request) {
154
- const validated = SuggestSpecialistSchema.parse(request.params.arguments);
155
- // Create basic session context for suggestion
156
- const sessionContext = validated.context ? {
157
- problem: validated.context,
158
- solutions: [],
159
- recommendations: [],
160
- nextSteps: [],
161
- userPreferences: {}
162
- } : undefined;
163
- const suggestions = await this.roleplayEngine.suggestSpecialist(validated.question, sessionContext);
164
- if (suggestions.length === 0) {
165
- return {
166
- content: [{
167
- type: 'text',
168
- text: '🤔 No specialists found for this question. Try rephrasing or providing more context about your BC development challenge.'
169
- }]
170
- };
171
- }
172
- // Format suggestions with personality
173
- let response = `🎯 **Specialist Recommendations for your question:**\n\n`;
174
- for (let i = 0; i < suggestions.length; i++) {
175
- const suggestion = suggestions[i];
176
- const specialist = await this.layerService.getSpecialist(suggestion.specialist_id);
177
- if (specialist) {
178
- const confidence = Math.round(suggestion.confidence * 100);
179
- response += `**${i + 1}. ${specialist.title}** (${suggestion.specialist_id}) - ${confidence}% match\n`;
180
- response += `${specialist.persona.greeting}\n`;
181
- response += `💡 **Why ${specialist.title}:** ${suggestion.reasoning}\n`;
182
- response += `🔧 **Expertise:** ${specialist.expertise.primary.join(', ')}\n\n`;
183
- }
184
- }
185
- response += `💬 **Next step:** Use \`get_specialist_advice\` with your chosen specialist_id to start the conversation!`;
186
- return {
187
- content: [{ type: 'text', text: response }]
188
- };
189
- }
190
- /**
191
- * Get advice from a specialist with automatic session management
192
- */
193
- async handleGetSpecialistAdvice(request) {
194
- const validated = GetSpecialistAdviceSchema.parse(request.params.arguments);
195
- // Try exact ID match first
196
- let specialist = await this.layerService.getSpecialist(validated.specialist_id);
197
- // If not found, try fuzzy matching
198
- if (!specialist) {
199
- specialist = await this.findSpecialistByFuzzyName(validated.specialist_id);
200
- }
201
- if (!specialist) {
202
- return {
203
- content: [{
204
- type: 'text',
205
- text: `❌ Specialist '${validated.specialist_id}' not found. Tried exact ID match and fuzzy name matching. Use 'list_specialists' to see available experts.`
206
- }],
207
- isError: true
208
- };
209
- }
210
- // Handle session management
211
- let sessionId = validated.session_id;
212
- let session;
213
- if (sessionId) {
214
- // Get existing session with auto-recovery
215
- session = await this.sessionManager.getSession(sessionId);
216
- if (!session) {
217
- // Auto-recover: create new session instead of failing
218
- console.warn(`Session '${sessionId}' not found. Creating recovery session.`);
219
- session = await this.sessionManager.startSession(validated.specialist_id, 'default-user', `Recovery session. Original session ${sessionId} was lost. Context: ${validated.problem_context || validated.message}`);
220
- sessionId = session.sessionId;
221
- }
222
- }
223
- else {
224
- // Create new session
225
- session = await this.sessionManager.startSession(validated.specialist_id, 'default-user', // TODO: Get actual user ID from context
226
- validated.problem_context || validated.message);
227
- sessionId = session.sessionId;
228
- }
229
- // Determine if this is a new session or handoff requiring introduction
230
- const isNewSession = !validated.session_id || session.messages.length === 0;
231
- const isHandoff = validated.session_id && session.context.current_specialist !== validated.specialist_id;
232
- // Generate specialist response using conversation history
233
- const roleplayContext = {
234
- specialist,
235
- userMessage: validated.message,
236
- session: session.context,
237
- conversationHistory: session.messages.map(m => ({
238
- role: m.type === 'user' ? 'user' : 'assistant',
239
- content: m.content,
240
- timestamp: m.timestamp
241
- })),
242
- requiresIntroduction: isNewSession || isHandoff
243
- };
244
- const response = await this.roleplayEngine.generateResponse(roleplayContext);
245
- // Add user and specialist messages to session
246
- await this.sessionManager.continueSession(sessionId, validated.message);
247
- // Update session with specialist response - we'll add this via continueSession flow
248
- const updatedSession = await this.sessionManager.getSession(sessionId);
249
- // Update context if provided
250
- if (response.context_updates && updatedSession) {
251
- await this.sessionManager.updateContext(sessionId, response.context_updates);
252
- }
253
- // Return agent roleplay instructions (NOT formatted user response)
254
- let agentInstructions = '';
255
- // **CRITICAL**: Include full specialist markdown content as instructions
256
- agentInstructions += `SPECIALIST DEFINITION AND INSTRUCTIONS:\n\n`;
257
- agentInstructions += specialist.content; // Full markdown content including Phase 0, workflows, etc.
258
- agentInstructions += `\n\n${'='.repeat(80)}\n\n`;
259
- agentInstructions += `CURRENT CONTEXT:\n\n`;
260
- agentInstructions += response.content;
261
- // Add knowledge context for the agent
262
- if (response.topics_referenced.length > 0) {
263
- agentInstructions += `\n\nKNOWLEDGE CONTEXT FOR RESPONSE:\n`;
264
- agentInstructions += `- Referenced Topics: ${response.topics_referenced.join(', ')}\n`;
265
- agentInstructions += `- Use this knowledge to provide specific, accurate guidance\n`;
266
- }
267
- // Add handoff guidance for the agent
268
- if (response.suggested_handoffs && response.suggested_handoffs.length > 0) {
269
- agentInstructions += `\n\nHANDOFF GUIDANCE:\n`;
270
- for (const handoff of response.suggested_handoffs) {
271
- const handoffSpecialist = await this.layerService.getSpecialist(handoff.specialist_id);
272
- if (handoffSpecialist) {
273
- agentInstructions += `- If user needs ${handoff.reason}, suggest consulting ${handoffSpecialist.title}\n`;
274
- }
275
- }
276
- }
277
- agentInstructions += `\n\nRemember: You ARE ${specialist.title}. Respond directly as this character, not as an AI assistant.`;
278
- // Add recommendations as agent guidance
279
- if (response.recommendations_added && response.recommendations_added.length > 0) {
280
- agentInstructions += `\n\nRECOMMENDATIONS TO INCLUDE:\n`;
281
- response.recommendations_added.forEach((rec, i) => {
282
- agentInstructions += `${i + 1}. ${rec}\n`;
283
- });
284
- }
285
- return {
286
- content: [{ type: 'text', text: agentInstructions }]
287
- };
288
- }
289
- /**
290
- * List available specialists with filtering
291
- */
292
- async handleListSpecialists(request) {
293
- const validated = ListSpecialistsSchema.parse(request.params.arguments || {});
294
- const specialists = await this.layerService.getAllSpecialists();
295
- // Apply filters
296
- let filteredSpecialists = specialists;
297
- if (validated.domain) {
298
- filteredSpecialists = specialists.filter(s => s.domains.some(d => d.toLowerCase().includes(validated.domain.toLowerCase())));
299
- }
300
- if (validated.expertise) {
301
- filteredSpecialists = filteredSpecialists.filter(s => [...s.expertise.primary, ...s.expertise.secondary].some(e => e.toLowerCase().includes(validated.expertise.toLowerCase())));
302
- }
303
- if (filteredSpecialists.length === 0) {
304
- return {
305
- content: [{
306
- type: 'text',
307
- text: '❌ No specialists found matching your criteria. Try different filters or remove them to see all specialists.'
308
- }]
309
- };
310
- }
311
- // Group by domain for better organization
312
- const specialistsByDomain = new Map();
313
- filteredSpecialists.forEach(specialist => {
314
- specialist.domains.forEach(domain => {
315
- if (!specialistsByDomain.has(domain)) {
316
- specialistsByDomain.set(domain, []);
317
- }
318
- if (!specialistsByDomain.get(domain).includes(specialist)) {
319
- specialistsByDomain.get(domain).push(specialist);
320
- }
321
- });
322
- });
323
- let response = `👥 **BC Code Intelligence Specialists** ${validated.domain || validated.expertise ? '(filtered)' : ''}\n\n`;
324
- // Show specialists organized by domain
325
- for (const [domain, domainSpecialists] of specialistsByDomain.entries()) {
326
- response += `## 🏷️ ${domain.charAt(0).toUpperCase() + domain.slice(1)}\n\n`;
327
- for (const specialist of domainSpecialists) {
328
- response += `**${specialist.title}** (\`${specialist.specialist_id}\`)\n`;
329
- response += `💬 ${specialist.persona.greeting}\n`;
330
- response += `🎯 **Primary Expertise:** ${specialist.expertise.primary.join(', ')}\n`;
331
- if (specialist.expertise.secondary.length > 0) {
332
- response += `🔧 **Also helps with:** ${specialist.expertise.secondary.slice(0, 3).join(', ')}\n`;
333
- }
334
- response += `\n`;
335
- }
336
- }
337
- response += `\n💡 **Getting Started:**\n`;
338
- response += `• Use \`suggest_specialist\` with your question to get personalized recommendations\n`;
339
- response += `• Use \`get_specialist_advice\` with a specialist_id to start a conversation\n`;
340
- response += `• Sessions are automatically managed for multi-turn conversations`;
341
- // Check if workspace is configured - company/project specialists might be missing
342
- const layersInfo = this.layerService.getLayers();
343
- const hasProjectOrCompanyLayers = layersInfo.some(layer => layer.name.includes('company') || layer.name.includes('project') || layer.name.includes('team'));
344
- if (!hasProjectOrCompanyLayers) {
345
- response += `\n\n⚠️ **Note:** Only embedded specialists shown. Company/project specialists require \`set_workspace_info\` to load custom layers.`;
346
- }
347
- return {
348
- content: [{ type: 'text', text: response }]
349
- };
350
- }
351
- /**
352
- * Find specialist by partial/fuzzy name matching
353
- * Handles cases like "Sam" -> "sam-coder", "Dean" -> "dean-debug", etc.
354
- */
355
- async findSpecialistByFuzzyName(partialName) {
356
- const allSpecialists = await this.layerService.getAllSpecialists();
357
- const searchTerm = partialName.toLowerCase().trim();
358
- // First try exact specialist_id match (case insensitive)
359
- let match = allSpecialists.find(specialist => specialist.specialist_id.toLowerCase() === searchTerm);
360
- if (match)
361
- return match;
362
- // Try partial match in specialist_id
363
- match = allSpecialists.find(specialist => specialist.specialist_id.toLowerCase().includes(searchTerm));
364
- if (match)
365
- return match;
366
- // Try matching first part of specialist_id (before the dash)
367
- match = allSpecialists.find(specialist => {
368
- const firstName = specialist.specialist_id.split('-')[0].toLowerCase();
369
- return firstName === searchTerm;
370
- });
371
- if (match)
372
- return match;
373
- // Try matching in title
374
- match = allSpecialists.find(specialist => specialist.title?.toLowerCase().includes(searchTerm));
375
- return match || null;
376
- }
377
- }
378
- //# sourceMappingURL=specialist-tools.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"specialist-tools.js","sourceRoot":"","sources":["../../src/tools/specialist-tools.ts"],"names":[],"mappings":"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"}
@@ -1,5 +0,0 @@
1
- /**
2
- * Get the embedded knowledge path, handling different runtime environments
3
- */
4
- export declare function getEmbeddedKnowledgePath(): string;
5
- //# sourceMappingURL=path-utils.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"path-utils.d.ts","sourceRoot":"","sources":["../../src/utils/path-utils.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,wBAAgB,wBAAwB,IAAI,MAAM,CASjD"}