@mrclrchtr/supi-code-intelligence 1.7.0 → 1.9.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 (431) hide show
  1. package/README.md +30 -3
  2. package/node_modules/@mrclrchtr/supi-code-runtime/README.md +13 -0
  3. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/README.md +97 -0
  4. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/package.json +53 -0
  5. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/api.ts +30 -0
  6. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/config/config-settings.ts +76 -0
  7. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/config/config.ts +186 -0
  8. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/config.ts +11 -0
  9. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/context/context-messages.ts +119 -0
  10. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/context/context-provider-registry.ts +36 -0
  11. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/context/context-tag.ts +31 -0
  12. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/context.ts +16 -0
  13. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/debug-registry.ts +255 -0
  14. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/index.ts +30 -0
  15. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/path-utils.ts +40 -0
  16. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/path.ts +2 -0
  17. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/project-roots.ts +170 -0
  18. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/project.ts +15 -0
  19. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/registry-utils.ts +86 -0
  20. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/session-utils.ts +29 -0
  21. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/session.ts +4 -0
  22. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/settings/settings-command.ts +15 -0
  23. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/settings/settings-registry.ts +41 -0
  24. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/settings/settings-ui.ts +226 -0
  25. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/settings-ui.ts +2 -0
  26. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/settings.ts +9 -0
  27. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/substrate-types.ts +11 -0
  28. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/terminal.ts +60 -0
  29. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/tool-framework.ts +116 -0
  30. package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/types.ts +2 -0
  31. package/node_modules/@mrclrchtr/supi-code-runtime/package.json +40 -0
  32. package/node_modules/@mrclrchtr/supi-code-runtime/src/api.ts +35 -0
  33. package/node_modules/@mrclrchtr/supi-code-runtime/src/capability/types.ts +68 -0
  34. package/node_modules/@mrclrchtr/supi-code-runtime/src/index.ts +31 -0
  35. package/node_modules/@mrclrchtr/supi-code-runtime/src/types.ts +110 -0
  36. package/node_modules/@mrclrchtr/supi-code-runtime/src/workspace/context.ts +41 -0
  37. package/node_modules/@mrclrchtr/supi-code-runtime/src/workspace/runtime.ts +170 -0
  38. package/node_modules/@mrclrchtr/supi-core/README.md +3 -13
  39. package/node_modules/@mrclrchtr/supi-core/package.json +13 -8
  40. package/node_modules/@mrclrchtr/supi-core/src/api.ts +26 -92
  41. package/node_modules/@mrclrchtr/supi-core/src/config.ts +11 -0
  42. package/node_modules/@mrclrchtr/supi-core/src/context.ts +16 -0
  43. package/node_modules/@mrclrchtr/supi-core/src/index.ts +26 -92
  44. package/node_modules/@mrclrchtr/supi-core/src/path.ts +2 -0
  45. package/node_modules/@mrclrchtr/supi-core/src/project.ts +15 -0
  46. package/node_modules/@mrclrchtr/supi-core/src/session.ts +4 -0
  47. package/node_modules/@mrclrchtr/supi-core/src/settings-ui.ts +2 -0
  48. package/node_modules/@mrclrchtr/supi-core/src/settings.ts +9 -0
  49. package/node_modules/@mrclrchtr/supi-core/src/substrate-types.ts +11 -0
  50. package/node_modules/@mrclrchtr/supi-core/src/types.ts +2 -0
  51. package/node_modules/@mrclrchtr/supi-lsp/README.md +33 -10
  52. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/README.md +13 -0
  53. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/README.md +97 -0
  54. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/package.json +57 -0
  55. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/api.ts +30 -0
  56. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/config/config-settings.ts +76 -0
  57. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/config/config.ts +186 -0
  58. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/config.ts +11 -0
  59. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/context/context-messages.ts +119 -0
  60. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/context/context-provider-registry.ts +36 -0
  61. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/context/context-tag.ts +31 -0
  62. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/context.ts +16 -0
  63. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/debug-registry.ts +255 -0
  64. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/index.ts +30 -0
  65. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/path-utils.ts +40 -0
  66. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/path.ts +2 -0
  67. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/project-roots.ts +170 -0
  68. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/project.ts +15 -0
  69. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/registry-utils.ts +86 -0
  70. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/session-utils.ts +29 -0
  71. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/session.ts +4 -0
  72. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/settings/settings-command.ts +15 -0
  73. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/settings/settings-registry.ts +41 -0
  74. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/settings/settings-ui.ts +226 -0
  75. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/settings-ui.ts +2 -0
  76. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/settings.ts +9 -0
  77. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/substrate-types.ts +11 -0
  78. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/terminal.ts +60 -0
  79. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/tool-framework.ts +116 -0
  80. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/types.ts +2 -0
  81. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/package.json +40 -0
  82. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/src/api.ts +35 -0
  83. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/src/capability/types.ts +68 -0
  84. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/src/index.ts +31 -0
  85. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/src/types.ts +110 -0
  86. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/src/workspace/context.ts +41 -0
  87. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/src/workspace/runtime.ts +170 -0
  88. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-core/README.md +3 -13
  89. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-core/package.json +13 -8
  90. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-core/src/api.ts +26 -92
  91. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-core/src/config.ts +11 -0
  92. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-core/src/context.ts +16 -0
  93. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-core/src/index.ts +26 -92
  94. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-core/src/path.ts +2 -0
  95. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-core/src/project.ts +15 -0
  96. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-core/src/session.ts +4 -0
  97. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-core/src/settings-ui.ts +2 -0
  98. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-core/src/settings.ts +9 -0
  99. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-core/src/substrate-types.ts +11 -0
  100. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-core/src/types.ts +2 -0
  101. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-jsonrpc/License.txt +11 -0
  102. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-jsonrpc/README.md +69 -0
  103. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-jsonrpc/browser.d.ts +6 -0
  104. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-jsonrpc/browser.js +7 -0
  105. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-jsonrpc/lib/browser/main.d.ts +17 -0
  106. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-jsonrpc/lib/browser/main.js +76 -0
  107. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-jsonrpc/lib/browser/ril.d.ts +12 -0
  108. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-jsonrpc/lib/browser/ril.js +156 -0
  109. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-jsonrpc/lib/common/api.d.ts +14 -0
  110. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-jsonrpc/lib/common/api.js +81 -0
  111. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-jsonrpc/lib/common/cancellation.d.ts +32 -0
  112. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-jsonrpc/lib/common/cancellation.js +96 -0
  113. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-jsonrpc/lib/common/connection.d.ts +358 -0
  114. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-jsonrpc/lib/common/connection.js +1214 -0
  115. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-jsonrpc/lib/common/disposable.d.ts +9 -0
  116. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-jsonrpc/lib/common/disposable.js +16 -0
  117. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-jsonrpc/lib/common/encoding.d.ts +52 -0
  118. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-jsonrpc/lib/common/encoding.js +70 -0
  119. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-jsonrpc/lib/common/events.d.ts +39 -0
  120. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-jsonrpc/lib/common/events.js +128 -0
  121. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-jsonrpc/lib/common/is.d.ts +7 -0
  122. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-jsonrpc/lib/common/is.js +35 -0
  123. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-jsonrpc/lib/common/linkedMap.d.ts +53 -0
  124. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-jsonrpc/lib/common/linkedMap.js +398 -0
  125. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-jsonrpc/lib/common/messageBuffer.d.ts +18 -0
  126. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-jsonrpc/lib/common/messageBuffer.js +152 -0
  127. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-jsonrpc/lib/common/messageReader.d.ts +77 -0
  128. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-jsonrpc/lib/common/messageReader.js +197 -0
  129. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-jsonrpc/lib/common/messageWriter.d.ts +60 -0
  130. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-jsonrpc/lib/common/messageWriter.js +115 -0
  131. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-jsonrpc/lib/common/messages.d.ts +369 -0
  132. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-jsonrpc/lib/common/messages.js +306 -0
  133. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-jsonrpc/lib/common/ral.d.ts +74 -0
  134. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-jsonrpc/lib/common/ral.js +23 -0
  135. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-jsonrpc/lib/common/semaphore.d.ts +10 -0
  136. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-jsonrpc/lib/common/semaphore.js +68 -0
  137. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-jsonrpc/lib/common/sharedArrayCancellation.d.ts +15 -0
  138. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-jsonrpc/lib/common/sharedArrayCancellation.js +76 -0
  139. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-jsonrpc/lib/node/main.d.ts +63 -0
  140. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-jsonrpc/lib/node/main.js +257 -0
  141. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-jsonrpc/lib/node/ril.d.ts +13 -0
  142. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-jsonrpc/lib/node/ril.js +161 -0
  143. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-jsonrpc/node.cmd +5 -0
  144. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-jsonrpc/node.d.ts +6 -0
  145. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-jsonrpc/node.js +7 -0
  146. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-jsonrpc/package.json +45 -0
  147. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-jsonrpc/thirdpartynotices.txt +16 -0
  148. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-jsonrpc/typings/thenable.d.ts +5 -0
  149. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/License.txt +11 -0
  150. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/README.md +16 -0
  151. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/browser.d.ts +6 -0
  152. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/browser.js +7 -0
  153. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/browser/main.d.ts +4 -0
  154. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/browser/main.js +28 -0
  155. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/api.d.ts +58 -0
  156. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/api.js +77 -0
  157. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/connection.d.ts +187 -0
  158. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/connection.js +15 -0
  159. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/messages.d.ts +51 -0
  160. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/messages.js +44 -0
  161. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/protocol.$.d.ts +1 -0
  162. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/protocol.$.js +43 -0
  163. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/protocol.callHierarchy.d.ts +86 -0
  164. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/protocol.callHierarchy.js +42 -0
  165. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/protocol.colorProvider.d.ts +66 -0
  166. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/protocol.colorProvider.js +32 -0
  167. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/protocol.configuration.d.ts +35 -0
  168. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/protocol.configuration.js +24 -0
  169. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/protocol.d.ts +3252 -0
  170. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/protocol.declaration.d.ts +37 -0
  171. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/protocol.declaration.js +22 -0
  172. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/protocol.diagnostic.d.ts +341 -0
  173. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/protocol.diagnostic.js +74 -0
  174. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/protocol.fileOperations.d.ts +306 -0
  175. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/protocol.fileOperations.js +101 -0
  176. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/protocol.foldingRange.d.ts +109 -0
  177. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/protocol.foldingRange.js +30 -0
  178. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/protocol.implementation.d.ts +38 -0
  179. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/protocol.implementation.js +21 -0
  180. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlayHint.d.ts +110 -0
  181. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlayHint.js +43 -0
  182. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlineCompletion.d.ts +57 -0
  183. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlineCompletion.js +22 -0
  184. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlineValue.d.ts +86 -0
  185. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlineValue.js +30 -0
  186. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/protocol.js +943 -0
  187. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/protocol.linkedEditingRange.d.ts +52 -0
  188. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/protocol.linkedEditingRange.js +19 -0
  189. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/protocol.moniker.d.ts +106 -0
  190. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/protocol.moniker.js +68 -0
  191. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/protocol.notebook.d.ts +400 -0
  192. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/protocol.notebook.js +214 -0
  193. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/protocol.progress.d.ts +107 -0
  194. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/protocol.progress.js +37 -0
  195. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/protocol.selectionRange.d.ts +41 -0
  196. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/protocol.selectionRange.js +20 -0
  197. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/protocol.semanticTokens.d.ts +223 -0
  198. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/protocol.semanticTokens.js +57 -0
  199. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/protocol.showDocument.d.ts +72 -0
  200. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/protocol.showDocument.js +22 -0
  201. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/protocol.typeDefinition.d.ts +38 -0
  202. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/protocol.typeDefinition.js +21 -0
  203. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/protocol.typeHierarchy.d.ts +83 -0
  204. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/protocol.typeHierarchy.js +42 -0
  205. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/protocol.workspaceFolder.d.ts +74 -0
  206. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/protocol.workspaceFolder.js +27 -0
  207. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/utils/is.d.ts +9 -0
  208. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/common/utils/is.js +46 -0
  209. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/node/main.d.ts +6 -0
  210. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/lib/node/main.js +28 -0
  211. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/metaModel.schema.json +783 -0
  212. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/node.cmd +5 -0
  213. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/node.d.ts +6 -0
  214. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/node.js +7 -0
  215. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/License.txt +11 -0
  216. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/README.md +69 -0
  217. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/browser.d.ts +6 -0
  218. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/browser.js +7 -0
  219. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/browser/main.d.ts +17 -0
  220. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/browser/main.js +76 -0
  221. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/browser/ril.d.ts +12 -0
  222. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/browser/ril.js +156 -0
  223. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/api.d.ts +14 -0
  224. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/api.js +81 -0
  225. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/cancellation.d.ts +32 -0
  226. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/cancellation.js +96 -0
  227. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/connection.d.ts +358 -0
  228. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/connection.js +1212 -0
  229. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/disposable.d.ts +9 -0
  230. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/disposable.js +16 -0
  231. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/encoding.d.ts +52 -0
  232. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/encoding.js +70 -0
  233. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/events.d.ts +39 -0
  234. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/events.js +128 -0
  235. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/is.d.ts +7 -0
  236. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/is.js +35 -0
  237. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/linkedMap.d.ts +53 -0
  238. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/linkedMap.js +398 -0
  239. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/messageBuffer.d.ts +18 -0
  240. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/messageBuffer.js +152 -0
  241. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/messageReader.d.ts +77 -0
  242. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/messageReader.js +197 -0
  243. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/messageWriter.d.ts +60 -0
  244. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/messageWriter.js +115 -0
  245. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/messages.d.ts +369 -0
  246. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/messages.js +306 -0
  247. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/ral.d.ts +74 -0
  248. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/ral.js +23 -0
  249. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/semaphore.d.ts +10 -0
  250. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/semaphore.js +68 -0
  251. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/sharedArrayCancellation.d.ts +15 -0
  252. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/common/sharedArrayCancellation.js +76 -0
  253. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/node/main.d.ts +63 -0
  254. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/node/main.js +257 -0
  255. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/node/ril.d.ts +13 -0
  256. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/lib/node/ril.js +161 -0
  257. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/node.cmd +5 -0
  258. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/node.d.ts +6 -0
  259. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/node.js +7 -0
  260. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/package.json +45 -0
  261. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/thirdpartynotices.txt +16 -0
  262. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/node_modules/vscode-jsonrpc/typings/thenable.d.ts +5 -0
  263. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-protocol/package.json +45 -0
  264. package/node_modules/@mrclrchtr/{supi-tree-sitter/node_modules/web-tree-sitter/LICENSE → supi-lsp/node_modules/vscode-languageserver-protocol/thirdpartynotices.txt} +16 -6
  265. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-types/License.txt +11 -0
  266. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-types/README.md +17 -0
  267. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-types/lib/esm/main.d.ts +3139 -0
  268. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-types/lib/esm/main.js +2222 -0
  269. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-types/lib/esm/package.json +3 -0
  270. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-types/lib/umd/main.d.ts +3139 -0
  271. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-types/lib/umd/main.js +2272 -0
  272. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-types/package.json +38 -0
  273. package/node_modules/@mrclrchtr/supi-lsp/node_modules/vscode-languageserver-types/thirdpartynotices.txt +16 -0
  274. package/node_modules/@mrclrchtr/supi-lsp/package.json +9 -6
  275. package/node_modules/@mrclrchtr/supi-lsp/src/config/config.ts +1 -1
  276. package/node_modules/@mrclrchtr/supi-lsp/src/handlers/diagnostic-injection.ts +182 -0
  277. package/node_modules/@mrclrchtr/supi-lsp/src/handlers/session-lifecycle.ts +149 -0
  278. package/node_modules/@mrclrchtr/supi-lsp/src/handlers/status-command.ts +38 -0
  279. package/node_modules/@mrclrchtr/supi-lsp/src/handlers/workspace-recovery.ts +92 -0
  280. package/node_modules/@mrclrchtr/supi-lsp/src/lsp.ts +18 -414
  281. package/node_modules/@mrclrchtr/supi-lsp/src/manager/capability-index.ts +24 -0
  282. package/node_modules/@mrclrchtr/supi-lsp/src/manager/client-pool.ts +33 -0
  283. package/node_modules/@mrclrchtr/supi-lsp/src/manager/diagnostic-store.ts +51 -0
  284. package/node_modules/@mrclrchtr/supi-lsp/src/manager/manager-helpers.ts +1 -1
  285. package/node_modules/@mrclrchtr/supi-lsp/src/manager/manager-workspace-symbol.ts +1 -1
  286. package/node_modules/@mrclrchtr/supi-lsp/src/manager/manager.ts +1 -1
  287. package/node_modules/@mrclrchtr/supi-lsp/src/manager/recovery-coordinator.ts +37 -0
  288. package/node_modules/@mrclrchtr/supi-lsp/src/manager/workspace-router.ts +44 -0
  289. package/node_modules/@mrclrchtr/supi-lsp/src/provider/lsp-semantic-provider.ts +156 -0
  290. package/node_modules/@mrclrchtr/supi-lsp/src/session/runtime-registration.ts +39 -0
  291. package/node_modules/@mrclrchtr/supi-lsp/src/session/scanner.ts +1 -1
  292. package/node_modules/@mrclrchtr/supi-lsp/src/session/service-registry.ts +1 -1
  293. package/node_modules/@mrclrchtr/supi-lsp/src/session/settings-registration.ts +1 -1
  294. package/node_modules/@mrclrchtr/supi-lsp/src/tool/guidance.ts +5 -14
  295. package/node_modules/@mrclrchtr/supi-lsp/src/tool/names.ts +12 -4
  296. package/node_modules/@mrclrchtr/supi-lsp/src/tool/register-tools.ts +2 -4
  297. package/node_modules/@mrclrchtr/supi-lsp/src/tool/service-actions.ts +141 -0
  298. package/node_modules/@mrclrchtr/supi-lsp/src/tool/tool-specs.ts +93 -93
  299. package/node_modules/@mrclrchtr/supi-lsp/src/utils.ts +1 -1
  300. package/node_modules/@mrclrchtr/supi-lsp/src/workspace-change.ts +40 -0
  301. package/node_modules/@mrclrchtr/supi-tree-sitter/README.md +44 -16
  302. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/README.md +13 -0
  303. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/README.md +97 -0
  304. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/package.json +57 -0
  305. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/api.ts +30 -0
  306. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/config/config-settings.ts +76 -0
  307. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/config/config.ts +186 -0
  308. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/config.ts +11 -0
  309. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/context/context-messages.ts +119 -0
  310. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/context/context-provider-registry.ts +36 -0
  311. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/context/context-tag.ts +31 -0
  312. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/context.ts +16 -0
  313. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/debug-registry.ts +255 -0
  314. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/index.ts +30 -0
  315. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/path-utils.ts +40 -0
  316. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/path.ts +2 -0
  317. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/project-roots.ts +170 -0
  318. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/project.ts +15 -0
  319. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/registry-utils.ts +86 -0
  320. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/session-utils.ts +29 -0
  321. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/session.ts +4 -0
  322. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/settings/settings-command.ts +15 -0
  323. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/settings/settings-registry.ts +41 -0
  324. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/settings/settings-ui.ts +226 -0
  325. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/settings-ui.ts +2 -0
  326. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/settings.ts +9 -0
  327. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/substrate-types.ts +11 -0
  328. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/terminal.ts +60 -0
  329. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/tool-framework.ts +116 -0
  330. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/src/types.ts +2 -0
  331. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/package.json +40 -0
  332. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/src/api.ts +35 -0
  333. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/src/capability/types.ts +68 -0
  334. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/src/index.ts +31 -0
  335. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/src/types.ts +110 -0
  336. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/src/workspace/context.ts +41 -0
  337. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/src/workspace/runtime.ts +170 -0
  338. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-core/README.md +3 -13
  339. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-core/package.json +13 -8
  340. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-core/src/api.ts +26 -92
  341. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-core/src/config.ts +11 -0
  342. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-core/src/context.ts +16 -0
  343. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-core/src/index.ts +26 -92
  344. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-core/src/path.ts +2 -0
  345. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-core/src/project.ts +15 -0
  346. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-core/src/session.ts +4 -0
  347. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-core/src/settings-ui.ts +2 -0
  348. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-core/src/settings.ts +9 -0
  349. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-core/src/substrate-types.ts +11 -0
  350. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-core/src/types.ts +2 -0
  351. package/node_modules/@mrclrchtr/supi-tree-sitter/package.json +9 -6
  352. package/node_modules/@mrclrchtr/supi-tree-sitter/src/provider/tree-sitter-provider.ts +144 -0
  353. package/node_modules/@mrclrchtr/supi-tree-sitter/src/session/runtime-registration.ts +37 -0
  354. package/node_modules/@mrclrchtr/supi-tree-sitter/src/session/runtime.ts +1 -1
  355. package/node_modules/@mrclrchtr/supi-tree-sitter/src/session/service-registry.ts +1 -1
  356. package/node_modules/@mrclrchtr/supi-tree-sitter/src/tool/guidance.ts +29 -25
  357. package/node_modules/@mrclrchtr/supi-tree-sitter/src/tool/handlers.ts +196 -0
  358. package/node_modules/@mrclrchtr/supi-tree-sitter/src/tool/register-tools.ts +107 -0
  359. package/node_modules/@mrclrchtr/supi-tree-sitter/src/tool/tool-specs.ts +117 -0
  360. package/node_modules/@mrclrchtr/supi-tree-sitter/src/tree-sitter.ts +21 -307
  361. package/package.json +8 -6
  362. package/src/api.ts +35 -5
  363. package/src/brief-focused.ts +2 -2
  364. package/src/brief.ts +11 -55
  365. package/src/code-intelligence.ts +19 -3
  366. package/src/index.ts +33 -5
  367. package/src/{architecture.ts → model.ts} +21 -62
  368. package/src/pattern-structured.ts +26 -26
  369. package/src/presentation/markdown/affected.ts +170 -0
  370. package/src/presentation/markdown/brief.ts +174 -0
  371. package/src/presentation/markdown/map.ts +54 -0
  372. package/src/presentation/markdown/overview.ts +59 -0
  373. package/src/presentation/markdown/pattern.ts +239 -0
  374. package/src/presentation/markdown/relations.ts +121 -0
  375. package/src/prioritization-signals.ts +1 -1
  376. package/src/resolve-target.ts +58 -40
  377. package/src/search-helpers.ts +17 -4
  378. package/src/substrates/types.ts +30 -0
  379. package/src/target-resolution.ts +35 -416
  380. package/src/targeting/query.ts +60 -0
  381. package/src/targeting/resolve-anchored.ts +80 -0
  382. package/src/targeting/resolve-file.ts +194 -0
  383. package/src/targeting/resolve-symbol.ts +110 -0
  384. package/src/targeting/types.ts +111 -0
  385. package/src/tool/execute-affected.ts +27 -3
  386. package/src/tool/execute-brief.ts +30 -3
  387. package/src/tool/execute-map.ts +5 -2
  388. package/src/tool/execute-pattern.ts +6 -3
  389. package/src/tool/execute-relations.ts +36 -23
  390. package/src/tool/guidance.ts +30 -1
  391. package/src/tool/tool-specs.ts +29 -48
  392. package/src/types.ts +101 -3
  393. package/src/use-case/build-overview.ts +36 -0
  394. package/src/use-case/generate-affected.ts +297 -0
  395. package/src/use-case/generate-brief.ts +341 -0
  396. package/src/{actions/map-action.ts → use-case/generate-map.ts} +30 -60
  397. package/src/use-case/generate-pattern.ts +270 -0
  398. package/src/use-case/generate-relations.ts +438 -0
  399. package/src/use-case/support/semantic-references.ts +114 -0
  400. package/src/use-case/types.ts +43 -0
  401. package/src/workspace/request-context.ts +139 -0
  402. package/node_modules/@mrclrchtr/supi-core/src/extension.ts +0 -1
  403. package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-core/src/extension.ts +0 -1
  404. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-core/src/extension.ts +0 -1
  405. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/web-tree-sitter/README.md +0 -265
  406. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/web-tree-sitter/debug/web-tree-sitter.cjs +0 -4661
  407. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/web-tree-sitter/debug/web-tree-sitter.cjs.map +0 -7
  408. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/web-tree-sitter/debug/web-tree-sitter.js +0 -4605
  409. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/web-tree-sitter/debug/web-tree-sitter.js.map +0 -7
  410. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/web-tree-sitter/debug/web-tree-sitter.wasm +0 -0
  411. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/web-tree-sitter/debug/web-tree-sitter.wasm.map +0 -57
  412. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/web-tree-sitter/package.json +0 -100
  413. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/web-tree-sitter/web-tree-sitter.cjs +0 -4063
  414. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/web-tree-sitter/web-tree-sitter.cjs.map +0 -7
  415. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/web-tree-sitter/web-tree-sitter.d.cts +0 -1025
  416. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/web-tree-sitter/web-tree-sitter.d.cts.map +0 -58
  417. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/web-tree-sitter/web-tree-sitter.d.ts +0 -1025
  418. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/web-tree-sitter/web-tree-sitter.d.ts.map +0 -58
  419. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/web-tree-sitter/web-tree-sitter.js +0 -4007
  420. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/web-tree-sitter/web-tree-sitter.js.map +0 -7
  421. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/web-tree-sitter/web-tree-sitter.wasm +0 -0
  422. package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/web-tree-sitter/web-tree-sitter.wasm.map +0 -55
  423. package/node_modules/@mrclrchtr/supi-tree-sitter/src/tool/action-specs.ts +0 -92
  424. package/src/actions/affected-action.ts +0 -452
  425. package/src/actions/brief-action.ts +0 -378
  426. package/src/actions/callees-action.ts +0 -155
  427. package/src/actions/callers-action.ts +0 -253
  428. package/src/actions/implementations-action.ts +0 -172
  429. package/src/actions/pattern-action.ts +0 -392
  430. package/src/providers/semantic-provider.ts +0 -34
  431. package/src/providers/structural-provider.ts +0 -26
@@ -0,0 +1,117 @@
1
+ /**
2
+ * Single source of truth for the split `tree_sitter_*` tool surface.
3
+ *
4
+ * Tool registration, guidance, and parameter validation should derive
5
+ * from these specs so the public surface does not drift from the
6
+ * metadata that drives it.
7
+ */
8
+
9
+ import { Type } from "typebox";
10
+
11
+ // ── Shared parameter fragments ─────────────────────────────────────────
12
+
13
+ const FileParam = Type.String({ description: "File path" });
14
+ const LineParam = Type.Number({ description: "1-based line", minimum: 1 });
15
+ const CharacterParam = Type.Number({
16
+ description: "1-based UTF-16 column",
17
+ minimum: 1,
18
+ });
19
+ const QueryParam = Type.String({ description: "Tree-sitter query" });
20
+
21
+ export const PARAM_SCHEMAS = {
22
+ fileOnly: Type.Object({ file: FileParam }, { additionalProperties: false }),
23
+ fileLineChar: Type.Object(
24
+ { file: FileParam, line: LineParam, character: CharacterParam },
25
+ { additionalProperties: false },
26
+ ),
27
+ fileQuery: Type.Object({ file: FileParam, query: QueryParam }, { additionalProperties: false }),
28
+ } as const;
29
+
30
+ export type ParamSchemaKey = keyof typeof PARAM_SCHEMAS;
31
+
32
+ // ── Tool names ─────────────────────────────────────────────────────────
33
+
34
+ export const TREE_SITTER_TOOL_NAMES = [
35
+ "tree_sitter_outline",
36
+ "tree_sitter_imports",
37
+ "tree_sitter_exports",
38
+ "tree_sitter_node_at",
39
+ "tree_sitter_query",
40
+ "tree_sitter_callees",
41
+ ] as const;
42
+
43
+ export type TreeSitterToolName = (typeof TREE_SITTER_TOOL_NAMES)[number];
44
+
45
+ // ── Per-tool metadata ──────────────────────────────────────────────────
46
+
47
+ export interface TreeSitterToolSpec {
48
+ name: TreeSitterToolName;
49
+ label: string;
50
+ description: string;
51
+ promptSnippet: string;
52
+ promptGuidelines: string[];
53
+ paramSchemaKey: ParamSchemaKey;
54
+ }
55
+
56
+ export const TREE_SITTER_TOOL_SPECS: readonly TreeSitterToolSpec[] = [
57
+ {
58
+ name: "tree_sitter_outline",
59
+ label: "Tree-sitter Outline",
60
+ description: "Shallow JS/TS outline of top-level declarations and supported members.",
61
+ promptSnippet: "tree_sitter_outline — quick JS/TS outline",
62
+ promptGuidelines: ["Use tree_sitter_outline(file) for a quick JS/TS outline."],
63
+ paramSchemaKey: "fileOnly",
64
+ },
65
+ {
66
+ name: "tree_sitter_imports",
67
+ label: "Tree-sitter Imports",
68
+ description: "List imports in a JS/TS file.",
69
+ promptSnippet: "tree_sitter_imports — JS/TS imports",
70
+ promptGuidelines: ["Use tree_sitter_imports(file) to inspect JS/TS dependencies."],
71
+ paramSchemaKey: "fileOnly",
72
+ },
73
+ {
74
+ name: "tree_sitter_exports",
75
+ label: "Tree-sitter Exports",
76
+ description: "List exports in a JS/TS file.",
77
+ promptSnippet: "tree_sitter_exports — JS/TS exports",
78
+ promptGuidelines: ["Use tree_sitter_exports(file) to inspect JS/TS exports."],
79
+ paramSchemaKey: "fileOnly",
80
+ },
81
+ {
82
+ name: "tree_sitter_node_at",
83
+ label: "Tree-sitter Node At",
84
+ description: "Show the syntax node and ancestry at a file position.",
85
+ promptSnippet: "tree_sitter_node_at — syntax node at a position",
86
+ promptGuidelines: ["Use tree_sitter_node_at(file,line,character) for the exact syntax node."],
87
+ paramSchemaKey: "fileLineChar",
88
+ },
89
+ {
90
+ name: "tree_sitter_query",
91
+ label: "Tree-sitter Query",
92
+ description: "Run a custom Tree-sitter query against a file.",
93
+ promptSnippet: "tree_sitter_query — custom AST query",
94
+ promptGuidelines: ["Use tree_sitter_query(file,query) for custom AST matching."],
95
+ paramSchemaKey: "fileQuery",
96
+ },
97
+ {
98
+ name: "tree_sitter_callees",
99
+ label: "Tree-sitter Callees",
100
+ description: "List outgoing callees from the enclosing scope at a file position.",
101
+ promptSnippet: "tree_sitter_callees — outgoing callees",
102
+ promptGuidelines: ["Use tree_sitter_callees(file,line,character) for outgoing calls."],
103
+ paramSchemaKey: "fileLineChar",
104
+ },
105
+ ];
106
+
107
+ // ── Lookup helpers ─────────────────────────────────────────────────────
108
+
109
+ const TREE_SITTER_TOOL_SPEC_MAP = new Map<TreeSitterToolName, TreeSitterToolSpec>(
110
+ TREE_SITTER_TOOL_SPECS.map((spec) => [spec.name, spec]),
111
+ );
112
+
113
+ export function getTreeSitterToolSpec(toolName: TreeSitterToolName): TreeSitterToolSpec {
114
+ const spec = TREE_SITTER_TOOL_SPEC_MAP.get(toolName);
115
+ if (!spec) throw new Error(`Unknown tree_sitter tool: ${toolName}`);
116
+ return spec;
117
+ }
@@ -1,333 +1,47 @@
1
- // Tree-sitter extension entry point — registers the `tree_sitter` tool with pi.
1
+ // Tree-sitter extension entry point — registers 6 focused tree_sitter_* tools.
2
2
 
3
- import { StringEnum } from "@earendil-works/pi-ai";
4
3
  import type { ExtensionAPI } from "@earendil-works/pi-coding-agent";
5
- import { Type } from "typebox";
6
- import { detectGrammar, isJsTsGrammar } from "./language.ts";
4
+ import { getDefaultWorkspaceRuntime } from "@mrclrchtr/supi-code-runtime/api";
7
5
  import { TreeSitterRuntime } from "./session/runtime.ts";
6
+ import {
7
+ registerTreeSitterCapabilities,
8
+ unregisterTreeSitterCapabilities,
9
+ } from "./session/runtime-registration.ts";
8
10
  import {
9
11
  clearSessionTreeSitterService,
10
12
  setSessionTreeSitterService,
11
13
  } from "./session/service-registry.ts";
12
14
  import { createTreeSitterService } from "./session/session.ts";
13
- import {
14
- formatTreeSitterActionList,
15
- getTreeSitterActionSpec,
16
- isTreeSitterAction,
17
- TREE_SITTER_ACTION_NAMES,
18
- type TreeSitterAction,
19
- } from "./tool/action-specs.ts";
20
- import {
21
- formatNonSuccess,
22
- formatOutlineItemsCapped,
23
- MAX_ITEMS,
24
- truncate,
25
- truncatedNotice,
26
- truncateText,
27
- validationError,
28
- } from "./tool/formatting.ts";
29
- import { promptGuidelines, promptSnippet, toolDescription } from "./tool/guidance.ts";
30
- import { collectOutline } from "./tool/outline.ts";
31
- import { extractExports, extractImports, lookupCalleesAt, lookupNodeAt } from "./tool/structure.ts";
32
-
33
- const TreeSitterActionEnum = StringEnum(TREE_SITTER_ACTION_NAMES);
15
+ import { registerFocusedTreeSitterTools } from "./tool/register-tools.ts";
34
16
 
35
17
  export default function treeSitterExtension(pi: ExtensionAPI) {
36
- let runtime: TreeSitterRuntime | undefined;
18
+ let treeSitterRuntime: TreeSitterRuntime | undefined;
37
19
  let activeCwd: string | null = null;
20
+ const workspaceRuntime = getDefaultWorkspaceRuntime();
21
+
22
+ registerFocusedTreeSitterTools(pi, () => treeSitterRuntime);
38
23
 
39
24
  pi.on("session_start", (_event, ctx) => {
40
- if (runtime && activeCwd) {
25
+ if (treeSitterRuntime && activeCwd) {
26
+ unregisterTreeSitterCapabilities(workspaceRuntime, activeCwd);
41
27
  clearSessionTreeSitterService(activeCwd);
42
- runtime.dispose();
28
+ treeSitterRuntime.dispose();
43
29
  }
44
30
 
45
31
  activeCwd = ctx.cwd;
46
- runtime = new TreeSitterRuntime(ctx.cwd);
47
- setSessionTreeSitterService(ctx.cwd, createTreeSitterService(runtime));
32
+ treeSitterRuntime = new TreeSitterRuntime(ctx.cwd);
33
+ const service = createTreeSitterService(treeSitterRuntime);
34
+ setSessionTreeSitterService(ctx.cwd, service);
35
+ registerTreeSitterCapabilities(workspaceRuntime, ctx.cwd, service);
48
36
  });
49
37
 
50
38
  pi.on("session_shutdown", () => {
51
39
  if (activeCwd) {
40
+ unregisterTreeSitterCapabilities(workspaceRuntime, activeCwd);
52
41
  clearSessionTreeSitterService(activeCwd);
53
42
  }
54
- runtime?.dispose();
55
- runtime = undefined;
43
+ treeSitterRuntime?.dispose();
44
+ treeSitterRuntime = undefined;
56
45
  activeCwd = null;
57
46
  });
58
-
59
- pi.registerTool({
60
- name: "tree_sitter",
61
- label: "Tree-sitter",
62
- description: toolDescription,
63
- promptGuidelines,
64
- promptSnippet,
65
- parameters: Type.Object({
66
- action: TreeSitterActionEnum,
67
- file: Type.Optional(Type.String({ description: "File path (relative or absolute)" })),
68
- line: Type.Optional(Type.Number({ description: "1-based line number" })),
69
- character: Type.Optional(Type.Number({ description: "1-based column number (UTF-16)" })),
70
- query: Type.Optional(Type.String({ description: "Tree-sitter query string" })),
71
- }),
72
- // biome-ignore lint/complexity/useMaxParams: pi ToolDefinition.execute signature
73
- async execute(_toolCallId, params, _signal, _onUpdate, _ctx) {
74
- if (!runtime) {
75
- return {
76
- content: [
77
- { type: "text", text: "Tree-sitter not initialized. Start a new session first." },
78
- ],
79
- details: {},
80
- };
81
- }
82
-
83
- const text = await executeToolAction(runtime, params);
84
- return {
85
- content: [{ type: "text", text }],
86
- details: {},
87
- };
88
- },
89
- });
90
- }
91
-
92
- type ToolParams = {
93
- action?: string;
94
- file?: string;
95
- line?: number;
96
- character?: number;
97
- query?: string;
98
- };
99
-
100
- interface ValidatedToolParams {
101
- action: TreeSitterAction;
102
- file: string;
103
- line?: number;
104
- character?: number;
105
- query?: string;
106
- }
107
-
108
- const SUPPORTED_ACTIONS_TEXT = formatTreeSitterActionList();
109
-
110
- const ACTION_HANDLERS: Record<
111
- TreeSitterAction,
112
- (runtime: TreeSitterRuntime, params: ValidatedToolParams) => Promise<string>
113
- > = {
114
- outline: (runtime, params) => handleOutline(runtime, params.file),
115
- imports: (runtime, params) => handleImports(runtime, params.file),
116
- exports: (runtime, params) => handleExports(runtime, params.file),
117
- node_at: (runtime, params) =>
118
- handleNodeAt(runtime, params.file, params.line as number, params.character as number),
119
- query: (runtime, params) => handleQuery(runtime, params.file, params.query as string),
120
- callees: (runtime, params) =>
121
- handleCallees(runtime, params.file, params.line as number, params.character as number),
122
- };
123
-
124
- async function executeToolAction(runtime: TreeSitterRuntime, params: ToolParams): Promise<string> {
125
- const validated = validateToolParams(params);
126
- if (typeof validated === "string") {
127
- return validated;
128
- }
129
-
130
- return ACTION_HANDLERS[validated.action](runtime, validated);
131
- }
132
-
133
- function validateToolParams(params: ToolParams): ValidatedToolParams | string {
134
- if (!params.action) {
135
- return validationError(`\`action\` is required. Supported: ${SUPPORTED_ACTIONS_TEXT}.`);
136
- }
137
-
138
- if (!isTreeSitterAction(params.action)) {
139
- return validationError(
140
- `Unknown action: ${params.action}. Supported: ${SUPPORTED_ACTIONS_TEXT}`,
141
- );
142
- }
143
-
144
- if (!params.file) {
145
- return validationError("`file` is required for all actions.");
146
- }
147
-
148
- const spec = getTreeSitterActionSpec(params.action);
149
- if (spec.requiresPosition) {
150
- const lineError = validatePositiveInteger("line", params.line, params.action);
151
- if (lineError) return lineError;
152
-
153
- const characterError = validatePositiveInteger("character", params.character, params.action);
154
- if (characterError) return characterError;
155
- }
156
-
157
- if (spec.requiresQuery && (!params.query || params.query.trim().length === 0)) {
158
- return validationError("`query` is required and must be non-empty.");
159
- }
160
-
161
- return {
162
- action: params.action,
163
- file: params.file,
164
- line: params.line,
165
- character: params.character,
166
- query: params.query,
167
- };
168
- }
169
-
170
- function validatePositiveInteger(
171
- field: "line" | "character",
172
- value: number | undefined,
173
- action: TreeSitterAction,
174
- ): string | null {
175
- if (value === undefined || !Number.isInteger(value) || value < 1) {
176
- return validationError(`\`${field}\` must be a positive 1-based integer for ${action} action.`);
177
- }
178
- return null;
179
- }
180
-
181
- async function handleOutline(runtime: TreeSitterRuntime, file: string): Promise<string> {
182
- const parseResult = await runtime.parseFile(file);
183
- if (parseResult.kind !== "success") return formatNonSuccess(parseResult);
184
- if (!isJsTsGrammar(parseResult.data.grammarId)) {
185
- return `Unsupported language: outline is only supported for JavaScript and TypeScript files`;
186
- }
187
-
188
- const { tree, source } = parseResult.data;
189
- let items: ReturnType<typeof collectOutline>;
190
- try {
191
- items = collectOutline(tree.rootNode, source);
192
- } finally {
193
- tree.delete();
194
- }
195
-
196
- if (items.length === 0) return `No structural declarations found in ${file}`;
197
-
198
- const lines = [`## Outline: ${file}`, ""];
199
- const { omitted } = formatOutlineItemsCapped(items, lines, MAX_ITEMS);
200
- if (omitted) lines.push("", truncatedNotice(omitted, "outline items"));
201
- return lines.join("\n");
202
- }
203
-
204
- async function handleImports(runtime: TreeSitterRuntime, file: string): Promise<string> {
205
- const grammarId = detectGrammar(file);
206
- if (grammarId && !isJsTsGrammar(grammarId)) {
207
- return `Unsupported language: imports is only supported for JavaScript and TypeScript files`;
208
- }
209
- const result = await extractImports(runtime, file);
210
- if (result.kind !== "success") return formatNonSuccess(result);
211
-
212
- const { data: imports } = result;
213
- if (imports.length === 0) return `No imports found in ${file}`;
214
-
215
- const { included, truncated } = truncate(imports, MAX_ITEMS);
216
- const lines = [`## Imports: ${file}`, ""];
217
- for (const imp of included) {
218
- const r = imp.range;
219
- lines.push(`- "${imp.moduleSpecifier}" (L${r.startLine}:${r.startCharacter})`);
220
- }
221
- if (truncated) lines.push("", truncatedNotice(truncated, "imports"));
222
- return lines.join("\n");
223
- }
224
-
225
- async function handleExports(runtime: TreeSitterRuntime, file: string): Promise<string> {
226
- const grammarId = detectGrammar(file);
227
- if (grammarId && !isJsTsGrammar(grammarId)) {
228
- return `Unsupported language: exports is only supported for JavaScript and TypeScript files`;
229
- }
230
- const result = await extractExports(runtime, file);
231
- if (result.kind !== "success") return formatNonSuccess(result);
232
-
233
- const { data: exports } = result;
234
- if (exports.length === 0) return `No exports found in ${file}`;
235
-
236
- const { included, truncated } = truncate(exports, MAX_ITEMS);
237
- const lines = [`## Exports: ${file}`, ""];
238
- for (const exp of included) {
239
- const r = exp.range;
240
- const from = exp.moduleSpecifier ? ` from "${exp.moduleSpecifier}"` : "";
241
- lines.push(`- ${exp.kind}: ${exp.name}${from} (L${r.startLine}:${r.startCharacter})`);
242
- }
243
- if (truncated) lines.push("", truncatedNotice(truncated, "exports"));
244
- return lines.join("\n");
245
- }
246
-
247
- async function handleNodeAt(
248
- runtime: TreeSitterRuntime,
249
- file: string,
250
- line: number,
251
- character: number,
252
- ): Promise<string> {
253
- const result = await lookupNodeAt(runtime, file, line, character);
254
- if (result.kind !== "success") return formatNonSuccess(result);
255
-
256
- const { data } = result;
257
- const lines = [
258
- `## Node at ${file}:${line}:${character}`,
259
- "",
260
- `**Type:** ${data.type}`,
261
- `**Range:** L${data.range.startLine}:${data.range.startCharacter} — L${data.range.endLine}:${data.range.endCharacter}`,
262
- `**Text:** ${truncateText(data.text, 200)}`,
263
- ];
264
-
265
- if (data.ancestry.length > 0) {
266
- lines.push("", "**Ancestry:**");
267
- const { included, truncated } = truncate(data.ancestry, MAX_ITEMS);
268
- for (const ancestor of included) {
269
- lines.push(
270
- `- ${ancestor.type} (L${ancestor.range.startLine}:${ancestor.range.startCharacter}-L${ancestor.range.endLine}:${ancestor.range.endCharacter})`,
271
- );
272
- }
273
- if (truncated) lines.push("", truncatedNotice(truncated, "ancestry entries"));
274
- }
275
-
276
- return lines.join("\n");
277
- }
278
-
279
- async function handleQuery(
280
- runtime: TreeSitterRuntime,
281
- file: string,
282
- query: string,
283
- ): Promise<string> {
284
- const result = await runtime.queryFile(file, query);
285
- if (result.kind !== "success") return formatNonSuccess(result);
286
-
287
- const { data: captures } = result;
288
- if (captures.length === 0) return `No matches for query in ${file}`;
289
-
290
- const { included, truncated } = truncate(captures, MAX_ITEMS);
291
- const lines = [`## Query results: ${file}`, ""];
292
- for (const capture of included) {
293
- const r = capture.range;
294
- lines.push(
295
- `- ${capture.name}: ${capture.nodeType} (L${r.startLine}:${r.startCharacter}-L${r.endLine}:${r.endCharacter})`,
296
- );
297
- lines.push(` \`${truncateText(capture.text, 120)}\``);
298
- }
299
- if (truncated) lines.push("", truncatedNotice(truncated, "captures"));
300
- return lines.join("\n");
301
- }
302
-
303
- async function handleCallees(
304
- runtime: TreeSitterRuntime,
305
- file: string,
306
- line: number,
307
- character: number,
308
- ): Promise<string> {
309
- const result = await lookupCalleesAt(runtime, file, line, character);
310
- if (result.kind !== "success") return formatNonSuccess(result);
311
-
312
- const { enclosingScope, callees } = result.data;
313
- if (callees.length === 0) {
314
- return `No outgoing calls found in \`${enclosingScope.name}\` at ${file}:${line}:${character}`;
315
- }
316
-
317
- const lines: string[] = [];
318
- lines.push(`## Callees: ${file}:${line}:${character}`);
319
- lines.push("");
320
- lines.push(
321
- `**${callees.length} outgoing call${callees.length > 1 ? "s" : ""}** from \`${enclosingScope.name}\` at L${enclosingScope.range.startLine}-L${enclosingScope.range.endLine}`,
322
- );
323
- lines.push("");
324
-
325
- for (const c of callees.slice(0, MAX_ITEMS)) {
326
- lines.push(`- \`${c.name}\` (L${c.range.startLine})`);
327
- }
328
- if (callees.length > MAX_ITEMS) {
329
- lines.push("", truncatedNotice(callees.length - MAX_ITEMS, "callees"));
330
- }
331
-
332
- return lines.join("\n");
333
47
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mrclrchtr/supi-code-intelligence",
3
- "version": "1.7.0",
3
+ "version": "1.9.0",
4
4
  "description": "SuPi Code Intelligence extension — architecture briefs, caller/callee analysis, impact assessment, and pattern search for pi",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -19,11 +19,13 @@
19
19
  "src/**/*.ts"
20
20
  ],
21
21
  "dependencies": {
22
- "@mrclrchtr/supi-core": "1.7.0",
23
- "@mrclrchtr/supi-tree-sitter": "1.7.0",
24
- "@mrclrchtr/supi-lsp": "1.7.0"
22
+ "@mrclrchtr/supi-code-runtime": "1.9.0",
23
+ "@mrclrchtr/supi-core": "1.9.0",
24
+ "@mrclrchtr/supi-lsp": "1.9.0",
25
+ "@mrclrchtr/supi-tree-sitter": "1.9.0"
25
26
  },
26
27
  "bundledDependencies": [
28
+ "@mrclrchtr/supi-code-runtime",
27
29
  "@mrclrchtr/supi-core",
28
30
  "@mrclrchtr/supi-lsp",
29
31
  "@mrclrchtr/supi-tree-sitter"
@@ -48,9 +50,9 @@
48
50
  "extensions": [
49
51
  "./src/extension.ts",
50
52
  "node_modules/@mrclrchtr/supi-lsp/src/extension.ts",
51
- "node_modules/@mrclrchtr/supi-core/src/extension.ts",
52
53
  "node_modules/@mrclrchtr/supi-tree-sitter/src/extension.ts"
53
- ]
54
+ ],
55
+ "image": "https://raw.githubusercontent.com/mrclrchtr/supi/main/packages/supi-code-intelligence/assets/logo.png"
54
56
  },
55
57
  "main": "src/api.ts",
56
58
  "exports": {
package/src/api.ts CHANGED
@@ -1,14 +1,30 @@
1
1
  // Reusable architecture and target-resolution helpers for peer extensions.
2
+ // Non-provider contracts for the code-understanding stack.
2
3
 
3
- export type { ArchitectureModel, DependencyEdge, ModuleInfo } from "./architecture.ts";
4
+ // Provider contracts re-exported from the shared runtime for convenience.
5
+ export type {
6
+ SemanticProvider,
7
+ StructuralProvider,
8
+ StructuralResult,
9
+ } from "@mrclrchtr/supi-code-runtime/api";
10
+ export { generateFocusedBrief, generateOverview, generateProjectBrief } from "./brief.ts";
11
+ // Architecture model hosted locally in supi-code-intelligence.
12
+ export type {
13
+ ArchitectureModel,
14
+ DependencyEdge,
15
+ ModuleInfo,
16
+ } from "./model.ts";
4
17
  export {
5
18
  buildArchitectureModel,
6
19
  findModuleForPath,
7
20
  getDependencies,
8
21
  getDependents,
9
- } from "./architecture.ts";
10
-
11
- export { generateFocusedBrief, generateOverview, generateProjectBrief } from "./brief.ts";
22
+ } from "./model.ts";
23
+ // Substrate adapters (type aliases for provider contracts)
24
+ export type {
25
+ SemanticSubstrate,
26
+ StructuralSubstrate,
27
+ } from "./substrates/types.ts";
12
28
  export type { ResolvedTarget, TargetResolutionResult } from "./target-resolution.ts";
13
29
  export {
14
30
  normalizePath,
@@ -16,13 +32,27 @@ export {
16
32
  resolveSymbolTarget,
17
33
  toZeroBased,
18
34
  } from "./target-resolution.ts";
19
-
35
+ // Shared canonical types
20
36
  export type {
21
37
  AffectedDetails,
22
38
  BriefDetails,
39
+ CalleesData,
23
40
  CodeIntelResult,
41
+ CodeLocation,
42
+ CodePosition,
43
+ CodeResult,
44
+ CodeSymbol,
24
45
  ConfidenceMode,
25
46
  DisambiguationCandidate,
47
+ ExportData,
48
+ ImportData,
26
49
  MapDetails,
50
+ NodeAtData,
51
+ OutlineData,
52
+ ProviderAvailability,
27
53
  SearchDetails,
54
+ SourceRange,
28
55
  } from "./types.ts";
56
+ // Code provider — reads capabilities from the shared workspace runtime.
57
+ export type { CodeProvider, CodeProviderState } from "./workspace/request-context.ts";
58
+ export { getCodeProvider } from "./workspace/request-context.ts";
@@ -3,9 +3,9 @@
3
3
 
4
4
  import * as fs from "node:fs";
5
5
  import * as path from "node:path";
6
- import type { ArchitectureModel } from "./architecture.ts";
7
- import { findModuleForPath, getDependencies, getDependents } from "./architecture.ts";
8
6
  import { formatGitContext, gatherGitContext } from "./git-context.ts";
7
+ import type { ArchitectureModel } from "./model.ts";
8
+ import { findModuleForPath, getDependencies, getDependents } from "./model.ts";
9
9
  import {
10
10
  appendPrioritySignalsSection,
11
11
  summarizePrioritySignalsForFiles,
package/src/brief.ts CHANGED
@@ -1,9 +1,12 @@
1
- // Brief generationcompact overviews and project briefs from the architecture model.
1
+ // Public facadedelegates to the new use-case and presentation layers.
2
+ // Existing callers (api.ts, index.ts, code-intelligence.ts) remain compatible.
2
3
 
3
- import type { ArchitectureModel } from "./architecture.ts";
4
- import { getDependents } from "./architecture.ts";
5
4
  import { formatGitContext, gatherGitContext } from "./git-context.ts";
5
+ import type { ArchitectureModel } from "./model.ts";
6
+ import { getDependents } from "./model.ts";
7
+ import { renderOverview } from "./presentation/markdown/overview.ts";
6
8
  import type { BriefDetails, ConfidenceMode } from "./types.ts";
9
+ import { buildOverviewData } from "./use-case/build-overview.ts";
7
10
 
8
11
  // Re-export focused brief generation
9
12
  export { generateFocusedBrief } from "./brief-focused.ts";
@@ -13,60 +16,13 @@ export { generateFocusedBrief } from "./brief-focused.ts";
13
16
  /**
14
17
  * Generate a compact architecture overview for first-turn session injection.
15
18
  * Targets roughly 500 tokens or less; prefers dense module-edge format.
19
+ *
20
+ * Delegates to use-case/build-overview + presentation/markdown/overview.
16
21
  */
17
- // biome-ignore lint/complexity/noExcessiveCognitiveComplexity: overview formatting with module/edge budget logic
18
22
  export function generateOverview(model: ArchitectureModel): string | null {
19
- if (model.modules.length === 0) return null;
20
-
21
- const lines: string[] = [];
22
- lines.push("# Project: Code Intelligence Overview");
23
- lines.push("");
24
-
25
- if (model.name) {
26
- lines.push(`**${model.name}**${model.description ? ` — ${model.description}` : ""}`);
27
- lines.push("");
28
- }
29
-
30
- // Dense module-edge format (budget: ~8 modules, ~8 edges)
31
- const modules = model.modules.slice(0, 8);
32
- const dependedOn = new Set(model.edges.map((e) => e.to));
33
-
34
- lines.push("## Modules");
35
- lines.push("");
36
-
37
- for (const mod of modules) {
38
- const isLeaf = !dependedOn.has(mod.name);
39
- const deps = mod.internalDeps.filter((d) => modules.some((m) => m.name === d));
40
- const shortName = mod.name.replace(/^@[^/]+\//, "");
41
-
42
- if (deps.length === 0) {
43
- lines.push(
44
- `- **${shortName}**${isLeaf ? " (leaf)" : ""}${mod.description ? ` — ${mod.description}` : ""}`,
45
- );
46
- } else {
47
- const depNames = deps.slice(0, 4).map((d) => d.replace(/^@[^/]+\//, ""));
48
- const depStr = depNames.join(", ");
49
- const suffix = deps.length > 4 ? ` +${deps.length - 4} more` : "";
50
- lines.push(
51
- `- **${shortName}** → ${depStr}${suffix}${mod.description ? ` — ${mod.description}` : ""}`,
52
- );
53
- }
54
- }
55
-
56
- if (model.modules.length > 8) {
57
- lines.push(`- _+${model.modules.length - 8} more modules omitted_`);
58
- }
59
-
60
- lines.push("");
61
-
62
- const gitCtx = gatherGitContext(model.root);
63
- if (gitCtx) {
64
- lines.push(formatGitContext(gitCtx));
65
- }
66
-
67
- lines.push("_Use `code_brief` for deeper context on any module or file._");
68
-
69
- return lines.join("\n");
23
+ const data = buildOverviewData(model);
24
+ if (!data) return null;
25
+ return renderOverview(data);
70
26
  }
71
27
 
72
28
  // ── Full-project brief ────────────────────────────────────────────────