@aexol/spectral 0.8.2 → 0.8.6

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 (588) hide show
  1. package/CHANGELOG.md +82 -55
  2. package/README.md +80 -82
  3. package/dist/agent/agents.d.ts +37 -0
  4. package/dist/agent/agents.d.ts.map +1 -0
  5. package/dist/agent/index.d.ts +29 -0
  6. package/dist/agent/index.d.ts.map +1 -0
  7. package/dist/agent/index.js +11 -11
  8. package/dist/cli.d.ts +17 -0
  9. package/dist/cli.d.ts.map +1 -0
  10. package/dist/cli.js +1 -1
  11. package/dist/commands/bind.d.ts +12 -0
  12. package/dist/commands/bind.d.ts.map +1 -0
  13. package/dist/commands/login-oauth.d.ts +15 -0
  14. package/dist/commands/login-oauth.d.ts.map +1 -0
  15. package/dist/commands/login.d.ts +37 -0
  16. package/dist/commands/login.d.ts.map +1 -0
  17. package/dist/commands/logout.d.ts +8 -0
  18. package/dist/commands/logout.d.ts.map +1 -0
  19. package/dist/commands/serve.d.ts +112 -0
  20. package/dist/commands/serve.d.ts.map +1 -0
  21. package/dist/commands/serve.js +5 -2
  22. package/dist/commands/unbind.d.ts +8 -0
  23. package/dist/commands/unbind.d.ts.map +1 -0
  24. package/dist/config.d.ts +49 -0
  25. package/dist/config.d.ts.map +1 -0
  26. package/dist/config.js +1 -1
  27. package/dist/designer/guidelines.d.ts +23 -0
  28. package/dist/designer/guidelines.d.ts.map +1 -0
  29. package/dist/designer/index.d.ts +26 -0
  30. package/dist/designer/index.d.ts.map +1 -0
  31. package/dist/designer/index.js +9 -9
  32. package/dist/designer/philosophies.d.ts +33 -0
  33. package/dist/designer/philosophies.d.ts.map +1 -0
  34. package/dist/designer/skills.d.ts +27 -0
  35. package/dist/designer/skills.d.ts.map +1 -0
  36. package/dist/designer/systems.d.ts +36 -0
  37. package/dist/designer/systems.d.ts.map +1 -0
  38. package/dist/extensions/aexol-mcp.d.ts +25 -0
  39. package/dist/extensions/aexol-mcp.d.ts.map +1 -0
  40. package/dist/extensions/aexol-mcp.js +12 -12
  41. package/dist/extensions/kanban-bridge.d.ts +24 -0
  42. package/dist/extensions/kanban-bridge.d.ts.map +1 -0
  43. package/dist/extensions/kanban-bridge.js +3 -3
  44. package/dist/extensions/openrouter-attribution.d.ts +12 -0
  45. package/dist/extensions/openrouter-attribution.d.ts.map +1 -0
  46. package/dist/extensions/openrouter-attribution.js +2 -2
  47. package/dist/extensions/spectral-vision-fallback.d.ts +23 -0
  48. package/dist/extensions/spectral-vision-fallback.d.ts.map +1 -0
  49. package/dist/extensions/spectral-vision-fallback.js +32 -23
  50. package/dist/index.d.ts +46 -0
  51. package/dist/index.d.ts.map +1 -0
  52. package/dist/index.js +44 -0
  53. package/dist/mcp/agent-dir.d.ts +3 -0
  54. package/dist/mcp/agent-dir.d.ts.map +1 -0
  55. package/dist/mcp/commands.d.ts +9 -0
  56. package/dist/mcp/commands.d.ts.map +1 -0
  57. package/dist/mcp/commands.js +1 -1
  58. package/dist/mcp/config.d.ts +78 -0
  59. package/dist/mcp/config.d.ts.map +1 -0
  60. package/dist/mcp/config.js +15 -15
  61. package/dist/mcp/consent-manager.d.ts +14 -0
  62. package/dist/mcp/consent-manager.d.ts.map +1 -0
  63. package/dist/mcp/direct-tools.d.ts +11 -0
  64. package/dist/mcp/direct-tools.d.ts.map +1 -0
  65. package/dist/mcp/errors.d.ts +100 -0
  66. package/dist/mcp/errors.d.ts.map +1 -0
  67. package/dist/mcp/glimpse-ui.d.ts +10 -0
  68. package/dist/mcp/glimpse-ui.d.ts.map +1 -0
  69. package/dist/mcp/host-html-template.d.ts +17 -0
  70. package/dist/mcp/host-html-template.d.ts.map +1 -0
  71. package/dist/mcp/host-html-template.js +3 -3
  72. package/dist/mcp/index.d.ts +3 -0
  73. package/dist/mcp/index.d.ts.map +1 -0
  74. package/dist/mcp/index.js +15 -13
  75. package/dist/mcp/init.d.ts +10 -0
  76. package/dist/mcp/init.d.ts.map +1 -0
  77. package/dist/mcp/init.js +4 -4
  78. package/dist/mcp/lifecycle.d.ts +30 -0
  79. package/dist/mcp/lifecycle.d.ts.map +1 -0
  80. package/dist/mcp/logger.d.ts +52 -0
  81. package/dist/mcp/logger.d.ts.map +1 -0
  82. package/dist/mcp/mcp-auth-flow.d.ts +69 -0
  83. package/dist/mcp/mcp-auth-flow.d.ts.map +1 -0
  84. package/dist/mcp/mcp-auth.d.ts +100 -0
  85. package/dist/mcp/mcp-auth.d.ts.map +1 -0
  86. package/dist/mcp/mcp-callback-server.d.ts +40 -0
  87. package/dist/mcp/mcp-callback-server.d.ts.map +1 -0
  88. package/dist/mcp/mcp-oauth-provider.d.ts +101 -0
  89. package/dist/mcp/mcp-oauth-provider.d.ts.map +1 -0
  90. package/dist/mcp/mcp-oauth-provider.js +1 -1
  91. package/dist/mcp/metadata-cache.d.ts +32 -0
  92. package/dist/mcp/metadata-cache.d.ts.map +1 -0
  93. package/dist/mcp/npx-resolver.d.ts +7 -0
  94. package/dist/mcp/npx-resolver.d.ts.map +1 -0
  95. package/dist/mcp/oauth-handler.d.ts +19 -0
  96. package/dist/mcp/oauth-handler.d.ts.map +1 -0
  97. package/dist/mcp/onboarding-state.d.ts +13 -0
  98. package/dist/mcp/onboarding-state.d.ts.map +1 -0
  99. package/dist/mcp/proxy-modes.d.ts +12 -0
  100. package/dist/mcp/proxy-modes.d.ts.map +1 -0
  101. package/dist/mcp/proxy-modes.js +2 -2
  102. package/dist/mcp/resource-tools.d.ts +2 -0
  103. package/dist/mcp/resource-tools.d.ts.map +1 -0
  104. package/dist/mcp/sampling-handler.d.ts +16 -0
  105. package/dist/mcp/sampling-handler.d.ts.map +1 -0
  106. package/dist/mcp/server-manager.d.ts +42 -0
  107. package/dist/mcp/server-manager.d.ts.map +1 -0
  108. package/dist/mcp/server-manager.js +2 -2
  109. package/dist/mcp/state-getter.d.ts +14 -0
  110. package/dist/mcp/state-getter.d.ts.map +1 -0
  111. package/dist/mcp/state-getter.js +21 -0
  112. package/dist/mcp/state.d.ts +41 -0
  113. package/dist/mcp/state.d.ts.map +1 -0
  114. package/dist/mcp/tool-metadata.d.ts +11 -0
  115. package/dist/mcp/tool-metadata.d.ts.map +1 -0
  116. package/dist/mcp/tool-registrar.d.ts +9 -0
  117. package/dist/mcp/tool-registrar.d.ts.map +1 -0
  118. package/dist/mcp/tool-registrar.js +1 -1
  119. package/dist/mcp/types.d.ts +263 -0
  120. package/dist/mcp/types.d.ts.map +1 -0
  121. package/dist/mcp/ui-resource-handler.d.ts +10 -0
  122. package/dist/mcp/ui-resource-handler.d.ts.map +1 -0
  123. package/dist/mcp/ui-server.d.ts +37 -0
  124. package/dist/mcp/ui-server.d.ts.map +1 -0
  125. package/dist/mcp/ui-server.js +1 -1
  126. package/dist/mcp/ui-session.d.ts +27 -0
  127. package/dist/mcp/ui-session.d.ts.map +1 -0
  128. package/dist/mcp/ui-stream-types.d.ts +197 -0
  129. package/dist/mcp/ui-stream-types.d.ts.map +1 -0
  130. package/dist/mcp/ui-stream-types.js +5 -5
  131. package/dist/mcp/utils.d.ts +17 -0
  132. package/dist/mcp/utils.d.ts.map +1 -0
  133. package/dist/mcp/utils.js +10 -10
  134. package/dist/mcp/vitest.config.d.ts +3 -0
  135. package/dist/mcp/vitest.config.d.ts.map +1 -0
  136. package/dist/mcp-client.d.ts +58 -0
  137. package/dist/mcp-client.d.ts.map +1 -0
  138. package/dist/mcp-client.js +3 -2
  139. package/dist/memory/branch.d.ts +124 -0
  140. package/dist/memory/branch.d.ts.map +1 -0
  141. package/dist/memory/commands/status.d.ts +4 -0
  142. package/dist/memory/commands/status.d.ts.map +1 -0
  143. package/dist/memory/commands/status.js +2 -2
  144. package/dist/memory/commands/view.d.ts +4 -0
  145. package/dist/memory/commands/view.d.ts.map +1 -0
  146. package/dist/memory/commands/view.js +2 -2
  147. package/dist/memory/compaction.d.ts +113 -0
  148. package/dist/memory/compaction.d.ts.map +1 -0
  149. package/dist/memory/config.d.ts +27 -0
  150. package/dist/memory/config.d.ts.map +1 -0
  151. package/dist/memory/debug-log.d.ts +12 -0
  152. package/dist/memory/debug-log.d.ts.map +1 -0
  153. package/dist/memory/hooks/compaction-hook.d.ts +4 -0
  154. package/dist/memory/hooks/compaction-hook.d.ts.map +1 -0
  155. package/dist/memory/hooks/compaction-hook.js +5 -5
  156. package/dist/memory/hooks/compaction-trigger.d.ts +4 -0
  157. package/dist/memory/hooks/compaction-trigger.d.ts.map +1 -0
  158. package/dist/memory/hooks/compaction-trigger.js +3 -3
  159. package/dist/memory/hooks/observer-trigger.d.ts +4 -0
  160. package/dist/memory/hooks/observer-trigger.d.ts.map +1 -0
  161. package/dist/memory/hooks/observer-trigger.js +4 -4
  162. package/dist/memory/ids.d.ts +2 -0
  163. package/dist/memory/ids.d.ts.map +1 -0
  164. package/dist/memory/index.d.ts +3 -0
  165. package/dist/memory/index.d.ts.map +1 -0
  166. package/dist/memory/index.js +9 -9
  167. package/dist/memory/model-budget.d.ts +4 -0
  168. package/dist/memory/model-budget.d.ts.map +1 -0
  169. package/dist/memory/observer.d.ts +21 -0
  170. package/dist/memory/observer.d.ts.map +1 -0
  171. package/dist/memory/project-observations-store.d.ts +24 -0
  172. package/dist/memory/project-observations-store.d.ts.map +1 -0
  173. package/dist/memory/prompts.d.ts +11 -0
  174. package/dist/memory/prompts.d.ts.map +1 -0
  175. package/dist/memory/relevance.d.ts +4 -0
  176. package/dist/memory/relevance.d.ts.map +1 -0
  177. package/dist/memory/runtime.d.ts +40 -0
  178. package/dist/memory/runtime.d.ts.map +1 -0
  179. package/dist/memory/serialize.d.ts +26 -0
  180. package/dist/memory/serialize.d.ts.map +1 -0
  181. package/dist/memory/tokens.d.ts +8 -0
  182. package/dist/memory/tokens.d.ts.map +1 -0
  183. package/dist/memory/tools/read-project-observations.d.ts +8 -0
  184. package/dist/memory/tools/read-project-observations.d.ts.map +1 -0
  185. package/dist/memory/tools/read-project-observations.js +2 -2
  186. package/dist/memory/tools/recall-observation.d.ts +63 -0
  187. package/dist/memory/tools/recall-observation.d.ts.map +1 -0
  188. package/dist/memory/tools/recall-observation.js +2 -2
  189. package/dist/memory/tools/write-project-observation.d.ts +9 -0
  190. package/dist/memory/tools/write-project-observation.d.ts.map +1 -0
  191. package/dist/memory/tools/write-project-observation.js +2 -2
  192. package/dist/memory/types.d.ts +65 -0
  193. package/dist/memory/types.d.ts.map +1 -0
  194. package/dist/preflight.d.ts +27 -0
  195. package/dist/preflight.d.ts.map +1 -0
  196. package/dist/preflight.js +4 -2
  197. package/dist/relay/auto-research.d.ts +64 -0
  198. package/dist/relay/auto-research.d.ts.map +1 -0
  199. package/dist/relay/auto-research.js +184 -79
  200. package/dist/relay/client.d.ts +126 -0
  201. package/dist/relay/client.d.ts.map +1 -0
  202. package/dist/relay/dispatcher.d.ts +216 -0
  203. package/dist/relay/dispatcher.d.ts.map +1 -0
  204. package/dist/relay/dispatcher.js +33 -6
  205. package/dist/relay/machine-store.d.ts +68 -0
  206. package/dist/relay/machine-store.d.ts.map +1 -0
  207. package/dist/relay/models-fetch.d.ts +75 -0
  208. package/dist/relay/models-fetch.d.ts.map +1 -0
  209. package/dist/relay/registration.d.ts +81 -0
  210. package/dist/relay/registration.d.ts.map +1 -0
  211. package/dist/sdk/agent-core/agent-loop.d.ts +24 -0
  212. package/dist/sdk/agent-core/agent-loop.d.ts.map +1 -0
  213. package/dist/sdk/agent-core/agent.d.ts +125 -0
  214. package/dist/sdk/agent-core/agent.d.ts.map +1 -0
  215. package/dist/sdk/agent-core/harness/agent-harness.d.ts +92 -0
  216. package/dist/sdk/agent-core/harness/agent-harness.d.ts.map +1 -0
  217. package/dist/sdk/agent-core/harness/compaction/branch-summarization.d.ts +53 -0
  218. package/dist/sdk/agent-core/harness/compaction/branch-summarization.d.ts.map +1 -0
  219. package/dist/sdk/agent-core/harness/compaction/compaction.d.ts +95 -0
  220. package/dist/sdk/agent-core/harness/compaction/compaction.d.ts.map +1 -0
  221. package/dist/sdk/agent-core/harness/compaction/utils.d.ts +25 -0
  222. package/dist/sdk/agent-core/harness/compaction/utils.d.ts.map +1 -0
  223. package/dist/sdk/agent-core/harness/env/nodejs.d.ts +51 -0
  224. package/dist/sdk/agent-core/harness/env/nodejs.d.ts.map +1 -0
  225. package/dist/sdk/agent-core/harness/messages.d.ts +51 -0
  226. package/dist/sdk/agent-core/harness/messages.d.ts.map +1 -0
  227. package/dist/sdk/agent-core/harness/prompt-templates.d.ts +48 -0
  228. package/dist/sdk/agent-core/harness/prompt-templates.d.ts.map +1 -0
  229. package/dist/sdk/agent-core/harness/session/jsonl-repo.d.ts +26 -0
  230. package/dist/sdk/agent-core/harness/session/jsonl-repo.d.ts.map +1 -0
  231. package/dist/sdk/agent-core/harness/session/jsonl-storage.d.ts +33 -0
  232. package/dist/sdk/agent-core/harness/session/jsonl-storage.d.ts.map +1 -0
  233. package/dist/sdk/agent-core/harness/session/memory-repo.d.ts +18 -0
  234. package/dist/sdk/agent-core/harness/session/memory-repo.d.ts.map +1 -0
  235. package/dist/sdk/agent-core/harness/session/memory-storage.d.ts +25 -0
  236. package/dist/sdk/agent-core/harness/session/memory-storage.d.ts.map +1 -0
  237. package/dist/sdk/agent-core/harness/session/repo-utils.d.ts +11 -0
  238. package/dist/sdk/agent-core/harness/session/repo-utils.d.ts.map +1 -0
  239. package/dist/sdk/agent-core/harness/session/session.d.ts +32 -0
  240. package/dist/sdk/agent-core/harness/session/session.d.ts.map +1 -0
  241. package/dist/sdk/agent-core/harness/session/uuid.d.ts +2 -0
  242. package/dist/sdk/agent-core/harness/session/uuid.d.ts.map +1 -0
  243. package/dist/sdk/agent-core/harness/skills.d.ts +44 -0
  244. package/dist/sdk/agent-core/harness/skills.d.ts.map +1 -0
  245. package/dist/sdk/agent-core/harness/system-prompt.d.ts +3 -0
  246. package/dist/sdk/agent-core/harness/system-prompt.d.ts.map +1 -0
  247. package/dist/sdk/agent-core/harness/types.d.ts +601 -0
  248. package/dist/sdk/agent-core/harness/types.d.ts.map +1 -0
  249. package/dist/sdk/agent-core/harness/utils/shell-output.d.ts +14 -0
  250. package/dist/sdk/agent-core/harness/utils/shell-output.d.ts.map +1 -0
  251. package/dist/sdk/agent-core/harness/utils/truncate.d.ts +70 -0
  252. package/dist/sdk/agent-core/harness/utils/truncate.d.ts.map +1 -0
  253. package/dist/sdk/agent-core/index.d.ts +20 -0
  254. package/dist/sdk/agent-core/index.d.ts.map +1 -0
  255. package/dist/sdk/agent-core/node.d.ts +3 -0
  256. package/dist/sdk/agent-core/node.d.ts.map +1 -0
  257. package/dist/sdk/agent-core/proxy.d.ts +69 -0
  258. package/dist/sdk/agent-core/proxy.d.ts.map +1 -0
  259. package/dist/sdk/agent-core/types.d.ts +393 -0
  260. package/dist/sdk/agent-core/types.d.ts.map +1 -0
  261. package/dist/sdk/ai/api-registry.d.ts +20 -0
  262. package/dist/sdk/ai/api-registry.d.ts.map +1 -0
  263. package/dist/sdk/ai/cli.d.ts +3 -0
  264. package/dist/sdk/ai/cli.d.ts.map +1 -0
  265. package/dist/sdk/ai/env-api-keys.d.ts +18 -0
  266. package/dist/sdk/ai/env-api-keys.d.ts.map +1 -0
  267. package/dist/sdk/ai/image-models.d.ts +10 -0
  268. package/dist/sdk/ai/image-models.d.ts.map +1 -0
  269. package/dist/sdk/ai/image-models.generated.d.ts +440 -0
  270. package/dist/sdk/ai/image-models.generated.d.ts.map +1 -0
  271. package/dist/sdk/ai/images-api-registry.d.ts +14 -0
  272. package/dist/sdk/ai/images-api-registry.d.ts.map +1 -0
  273. package/dist/sdk/ai/images.d.ts +4 -0
  274. package/dist/sdk/ai/images.d.ts.map +1 -0
  275. package/dist/sdk/ai/index.d.ts +21 -0
  276. package/dist/sdk/ai/index.d.ts.map +1 -0
  277. package/dist/sdk/ai/models.d.ts +18 -0
  278. package/dist/sdk/ai/models.d.ts.map +1 -0
  279. package/dist/sdk/ai/models.generated.d.ts +17349 -0
  280. package/dist/sdk/ai/models.generated.d.ts.map +1 -0
  281. package/dist/sdk/ai/oauth.d.ts +2 -0
  282. package/dist/sdk/ai/oauth.d.ts.map +1 -0
  283. package/dist/sdk/ai/providers/anthropic.d.ts +54 -0
  284. package/dist/sdk/ai/providers/anthropic.d.ts.map +1 -0
  285. package/dist/sdk/ai/providers/faux.d.ts +56 -0
  286. package/dist/sdk/ai/providers/faux.d.ts.map +1 -0
  287. package/dist/sdk/ai/providers/github-copilot-headers.d.ts +8 -0
  288. package/dist/sdk/ai/providers/github-copilot-headers.d.ts.map +1 -0
  289. package/dist/sdk/ai/providers/openai-completions.d.ts +19 -0
  290. package/dist/sdk/ai/providers/openai-completions.d.ts.map +1 -0
  291. package/dist/sdk/ai/providers/openai-prompt-cache.d.ts +3 -0
  292. package/dist/sdk/ai/providers/openai-prompt-cache.d.ts.map +1 -0
  293. package/dist/sdk/ai/providers/register-builtins.d.ts +15 -0
  294. package/dist/sdk/ai/providers/register-builtins.d.ts.map +1 -0
  295. package/dist/sdk/ai/providers/simple-options.d.ts +8 -0
  296. package/dist/sdk/ai/providers/simple-options.d.ts.map +1 -0
  297. package/dist/sdk/ai/providers/transform-messages.d.ts +8 -0
  298. package/dist/sdk/ai/providers/transform-messages.d.ts.map +1 -0
  299. package/dist/sdk/ai/session-resources.d.ts +4 -0
  300. package/dist/sdk/ai/session-resources.d.ts.map +1 -0
  301. package/dist/sdk/ai/stream.d.ts +8 -0
  302. package/dist/sdk/ai/stream.d.ts.map +1 -0
  303. package/dist/sdk/ai/types.d.ts +488 -0
  304. package/dist/sdk/ai/types.d.ts.map +1 -0
  305. package/dist/sdk/ai/utils/diagnostics.d.ts +19 -0
  306. package/dist/sdk/ai/utils/diagnostics.d.ts.map +1 -0
  307. package/dist/sdk/ai/utils/event-stream.d.ts +21 -0
  308. package/dist/sdk/ai/utils/event-stream.d.ts.map +1 -0
  309. package/dist/sdk/ai/utils/hash.d.ts +3 -0
  310. package/dist/sdk/ai/utils/hash.d.ts.map +1 -0
  311. package/dist/sdk/ai/utils/headers.d.ts +2 -0
  312. package/dist/sdk/ai/utils/headers.d.ts.map +1 -0
  313. package/dist/sdk/ai/utils/json-parse.d.ts +16 -0
  314. package/dist/sdk/ai/utils/json-parse.d.ts.map +1 -0
  315. package/dist/sdk/ai/utils/node-http-proxy.d.ts +10 -0
  316. package/dist/sdk/ai/utils/node-http-proxy.d.ts.map +1 -0
  317. package/dist/sdk/ai/utils/oauth/anthropic.d.ts +25 -0
  318. package/dist/sdk/ai/utils/oauth/anthropic.d.ts.map +1 -0
  319. package/dist/sdk/ai/utils/oauth/device-code.d.ts +19 -0
  320. package/dist/sdk/ai/utils/oauth/device-code.d.ts.map +1 -0
  321. package/dist/sdk/ai/utils/oauth/github-copilot.d.ts +30 -0
  322. package/dist/sdk/ai/utils/oauth/github-copilot.d.ts.map +1 -0
  323. package/dist/sdk/ai/utils/oauth/index.d.ts +58 -0
  324. package/dist/sdk/ai/utils/oauth/index.d.ts.map +1 -0
  325. package/dist/sdk/ai/utils/oauth/oauth-page.d.ts +3 -0
  326. package/dist/sdk/ai/utils/oauth/oauth-page.d.ts.map +1 -0
  327. package/dist/sdk/ai/utils/oauth/openai-codex.d.ts +34 -0
  328. package/dist/sdk/ai/utils/oauth/openai-codex.d.ts.map +1 -0
  329. package/dist/sdk/ai/utils/oauth/openai-codex.js +2 -2
  330. package/dist/sdk/ai/utils/oauth/pkce.d.ts +13 -0
  331. package/dist/sdk/ai/utils/oauth/pkce.d.ts.map +1 -0
  332. package/dist/sdk/ai/utils/oauth/types.d.ts +64 -0
  333. package/dist/sdk/ai/utils/oauth/types.d.ts.map +1 -0
  334. package/dist/sdk/ai/utils/overflow.d.ts +56 -0
  335. package/dist/sdk/ai/utils/overflow.d.ts.map +1 -0
  336. package/dist/sdk/ai/utils/sanitize-unicode.d.ts +22 -0
  337. package/dist/sdk/ai/utils/sanitize-unicode.d.ts.map +1 -0
  338. package/dist/sdk/ai/utils/typebox-helpers.d.ts +17 -0
  339. package/dist/sdk/ai/utils/typebox-helpers.d.ts.map +1 -0
  340. package/dist/sdk/ai/utils/validation.d.ts +18 -0
  341. package/dist/sdk/ai/utils/validation.d.ts.map +1 -0
  342. package/dist/sdk/coding-agent/cli.d.ts +3 -0
  343. package/dist/sdk/coding-agent/cli.d.ts.map +1 -0
  344. package/dist/sdk/coding-agent/config.d.ts +71 -0
  345. package/dist/sdk/coding-agent/config.d.ts.map +1 -0
  346. package/dist/sdk/coding-agent/core/agent-session-runtime.d.ts +117 -0
  347. package/dist/sdk/coding-agent/core/agent-session-runtime.d.ts.map +1 -0
  348. package/dist/sdk/coding-agent/core/agent-session-services.d.ts +86 -0
  349. package/dist/sdk/coding-agent/core/agent-session-services.d.ts.map +1 -0
  350. package/dist/sdk/coding-agent/core/agent-session.d.ts +626 -0
  351. package/dist/sdk/coding-agent/core/agent-session.d.ts.map +1 -0
  352. package/dist/sdk/coding-agent/core/agent-session.js +3 -3
  353. package/dist/sdk/coding-agent/core/auth-guidance.d.ts +5 -0
  354. package/dist/sdk/coding-agent/core/auth-guidance.d.ts.map +1 -0
  355. package/dist/sdk/coding-agent/core/auth-storage.d.ts +145 -0
  356. package/dist/sdk/coding-agent/core/auth-storage.d.ts.map +1 -0
  357. package/dist/sdk/coding-agent/core/auth-storage.js +2 -2
  358. package/dist/sdk/coding-agent/core/bash-executor.d.ts +32 -0
  359. package/dist/sdk/coding-agent/core/bash-executor.d.ts.map +1 -0
  360. package/dist/sdk/coding-agent/core/bash-executor.js +1 -1
  361. package/dist/sdk/coding-agent/core/compaction/branch-summarization.d.ts +88 -0
  362. package/dist/sdk/coding-agent/core/compaction/branch-summarization.d.ts.map +1 -0
  363. package/dist/sdk/coding-agent/core/compaction/branch-summarization.js +1 -1
  364. package/dist/sdk/coding-agent/core/compaction/compaction.d.ts +142 -0
  365. package/dist/sdk/coding-agent/core/compaction/compaction.d.ts.map +1 -0
  366. package/dist/sdk/coding-agent/core/compaction/compaction.js +1 -1
  367. package/dist/sdk/coding-agent/core/compaction/index.d.ts +7 -0
  368. package/dist/sdk/coding-agent/core/compaction/index.d.ts.map +1 -0
  369. package/dist/sdk/coding-agent/core/compaction/utils.d.ts +38 -0
  370. package/dist/sdk/coding-agent/core/compaction/utils.d.ts.map +1 -0
  371. package/dist/sdk/coding-agent/core/defaults.d.ts +3 -0
  372. package/dist/sdk/coding-agent/core/defaults.d.ts.map +1 -0
  373. package/dist/sdk/coding-agent/core/diagnostics.d.ts +15 -0
  374. package/dist/sdk/coding-agent/core/diagnostics.d.ts.map +1 -0
  375. package/dist/sdk/coding-agent/core/event-bus.d.ts +9 -0
  376. package/dist/sdk/coding-agent/core/event-bus.d.ts.map +1 -0
  377. package/dist/sdk/coding-agent/core/exec.d.ts +29 -0
  378. package/dist/sdk/coding-agent/core/exec.d.ts.map +1 -0
  379. package/dist/sdk/coding-agent/core/extensions/index.d.ts +12 -0
  380. package/dist/sdk/coding-agent/core/extensions/index.d.ts.map +1 -0
  381. package/dist/sdk/coding-agent/core/extensions/loader.d.ts +24 -0
  382. package/dist/sdk/coding-agent/core/extensions/loader.d.ts.map +1 -0
  383. package/dist/sdk/coding-agent/core/extensions/loader.js +18 -21
  384. package/dist/sdk/coding-agent/core/extensions/runner.d.ts +161 -0
  385. package/dist/sdk/coding-agent/core/extensions/runner.d.ts.map +1 -0
  386. package/dist/sdk/coding-agent/core/extensions/runner.js +1 -1
  387. package/dist/sdk/coding-agent/core/extensions/types.d.ts +1181 -0
  388. package/dist/sdk/coding-agent/core/extensions/types.d.ts.map +1 -0
  389. package/dist/sdk/coding-agent/core/extensions/wrapper.d.ts +20 -0
  390. package/dist/sdk/coding-agent/core/extensions/wrapper.d.ts.map +1 -0
  391. package/dist/sdk/coding-agent/core/http-dispatcher.d.ts +21 -0
  392. package/dist/sdk/coding-agent/core/http-dispatcher.d.ts.map +1 -0
  393. package/dist/sdk/coding-agent/core/index.d.ts +12 -0
  394. package/dist/sdk/coding-agent/core/index.d.ts.map +1 -0
  395. package/dist/sdk/coding-agent/core/keybindings.d.ts +371 -0
  396. package/dist/sdk/coding-agent/core/keybindings.d.ts.map +1 -0
  397. package/dist/sdk/coding-agent/core/messages.d.ts +77 -0
  398. package/dist/sdk/coding-agent/core/messages.d.ts.map +1 -0
  399. package/dist/sdk/coding-agent/core/model-registry.d.ts +150 -0
  400. package/dist/sdk/coding-agent/core/model-registry.d.ts.map +1 -0
  401. package/dist/sdk/coding-agent/core/model-resolver-utils.d.ts +7 -0
  402. package/dist/sdk/coding-agent/core/model-resolver-utils.d.ts.map +1 -0
  403. package/dist/sdk/coding-agent/core/model-resolver.d.ts +110 -0
  404. package/dist/sdk/coding-agent/core/model-resolver.d.ts.map +1 -0
  405. package/dist/sdk/coding-agent/core/output-guard.d.ts +6 -0
  406. package/dist/sdk/coding-agent/core/output-guard.d.ts.map +1 -0
  407. package/dist/sdk/coding-agent/core/package-manager.d.ts +204 -0
  408. package/dist/sdk/coding-agent/core/package-manager.d.ts.map +1 -0
  409. package/dist/sdk/coding-agent/core/package-manager.js +14 -14
  410. package/dist/sdk/coding-agent/core/prompt-templates.d.ts +52 -0
  411. package/dist/sdk/coding-agent/core/prompt-templates.d.ts.map +1 -0
  412. package/dist/sdk/coding-agent/core/provider-display-names.d.ts +2 -0
  413. package/dist/sdk/coding-agent/core/provider-display-names.d.ts.map +1 -0
  414. package/dist/sdk/coding-agent/core/resolve-config-value.d.ts +23 -0
  415. package/dist/sdk/coding-agent/core/resolve-config-value.d.ts.map +1 -0
  416. package/dist/sdk/coding-agent/core/resource-loader.d.ts +194 -0
  417. package/dist/sdk/coding-agent/core/resource-loader.d.ts.map +1 -0
  418. package/dist/sdk/coding-agent/core/sdk.d.ts +107 -0
  419. package/dist/sdk/coding-agent/core/sdk.d.ts.map +1 -0
  420. package/dist/sdk/coding-agent/core/sdk.js +2 -2
  421. package/dist/sdk/coding-agent/core/session-cwd.d.ts +19 -0
  422. package/dist/sdk/coding-agent/core/session-cwd.d.ts.map +1 -0
  423. package/dist/sdk/coding-agent/core/session-manager.d.ts +333 -0
  424. package/dist/sdk/coding-agent/core/session-manager.d.ts.map +1 -0
  425. package/dist/sdk/coding-agent/core/settings-manager.d.ts +209 -0
  426. package/dist/sdk/coding-agent/core/settings-manager.d.ts.map +1 -0
  427. package/dist/sdk/coding-agent/core/skills.d.ts +60 -0
  428. package/dist/sdk/coding-agent/core/skills.d.ts.map +1 -0
  429. package/dist/sdk/coding-agent/core/slash-commands.d.ts +14 -0
  430. package/dist/sdk/coding-agent/core/slash-commands.d.ts.map +1 -0
  431. package/dist/sdk/coding-agent/core/source-info.d.ts +18 -0
  432. package/dist/sdk/coding-agent/core/source-info.d.ts.map +1 -0
  433. package/dist/sdk/coding-agent/core/system-prompt.d.ts +28 -0
  434. package/dist/sdk/coding-agent/core/system-prompt.d.ts.map +1 -0
  435. package/dist/sdk/coding-agent/core/system-prompt.js +7 -7
  436. package/dist/sdk/coding-agent/core/telemetry.d.ts +3 -0
  437. package/dist/sdk/coding-agent/core/telemetry.d.ts.map +1 -0
  438. package/dist/sdk/coding-agent/core/theme.d.ts +28 -0
  439. package/dist/sdk/coding-agent/core/theme.d.ts.map +1 -0
  440. package/dist/sdk/coding-agent/core/timings.d.ts +8 -0
  441. package/dist/sdk/coding-agent/core/timings.d.ts.map +1 -0
  442. package/dist/sdk/coding-agent/core/tools/bash.d.ts +63 -0
  443. package/dist/sdk/coding-agent/core/tools/bash.d.ts.map +1 -0
  444. package/dist/sdk/coding-agent/core/tools/bash.js +3 -3
  445. package/dist/sdk/coding-agent/core/tools/edit-diff.d.ts +87 -0
  446. package/dist/sdk/coding-agent/core/tools/edit-diff.d.ts.map +1 -0
  447. package/dist/sdk/coding-agent/core/tools/edit.d.ts +39 -0
  448. package/dist/sdk/coding-agent/core/tools/edit.d.ts.map +1 -0
  449. package/dist/sdk/coding-agent/core/tools/file-mutation-queue.d.ts +6 -0
  450. package/dist/sdk/coding-agent/core/tools/file-mutation-queue.d.ts.map +1 -0
  451. package/dist/sdk/coding-agent/core/tools/find.d.ts +35 -0
  452. package/dist/sdk/coding-agent/core/tools/find.d.ts.map +1 -0
  453. package/dist/sdk/coding-agent/core/tools/grep.d.ts +37 -0
  454. package/dist/sdk/coding-agent/core/tools/grep.d.ts.map +1 -0
  455. package/dist/sdk/coding-agent/core/tools/index.d.ts +40 -0
  456. package/dist/sdk/coding-agent/core/tools/index.d.ts.map +1 -0
  457. package/dist/sdk/coding-agent/core/tools/ls.d.ts +37 -0
  458. package/dist/sdk/coding-agent/core/tools/ls.d.ts.map +1 -0
  459. package/dist/sdk/coding-agent/core/tools/output-accumulator.d.ts +52 -0
  460. package/dist/sdk/coding-agent/core/tools/output-accumulator.d.ts.map +1 -0
  461. package/dist/sdk/coding-agent/core/tools/output-accumulator.js +1 -1
  462. package/dist/sdk/coding-agent/core/tools/path-utils.d.ts +8 -0
  463. package/dist/sdk/coding-agent/core/tools/path-utils.d.ts.map +1 -0
  464. package/dist/sdk/coding-agent/core/tools/read.d.ts +35 -0
  465. package/dist/sdk/coding-agent/core/tools/read.d.ts.map +1 -0
  466. package/dist/sdk/coding-agent/core/tools/read.js +18 -10
  467. package/dist/sdk/coding-agent/core/tools/render-diff.d.ts +17 -0
  468. package/dist/sdk/coding-agent/core/tools/render-diff.d.ts.map +1 -0
  469. package/dist/sdk/coding-agent/core/tools/render-utils.d.ts +21 -0
  470. package/dist/sdk/coding-agent/core/tools/render-utils.d.ts.map +1 -0
  471. package/dist/sdk/coding-agent/core/tools/tool-definition-wrapper.d.ts +14 -0
  472. package/dist/sdk/coding-agent/core/tools/tool-definition-wrapper.d.ts.map +1 -0
  473. package/dist/sdk/coding-agent/core/tools/truncate.d.ts +70 -0
  474. package/dist/sdk/coding-agent/core/tools/truncate.d.ts.map +1 -0
  475. package/dist/sdk/coding-agent/core/tools/write.d.ts +26 -0
  476. package/dist/sdk/coding-agent/core/tools/write.d.ts.map +1 -0
  477. package/dist/sdk/coding-agent/index.d.ts +29 -0
  478. package/dist/sdk/coding-agent/index.d.ts.map +1 -0
  479. package/dist/sdk/coding-agent/main.d.ts +2 -0
  480. package/dist/sdk/coding-agent/main.d.ts.map +1 -0
  481. package/dist/sdk/coding-agent/migrations.d.ts +33 -0
  482. package/dist/sdk/coding-agent/migrations.d.ts.map +1 -0
  483. package/dist/sdk/coding-agent/migrations.js +4 -4
  484. package/dist/sdk/coding-agent/modes/index.d.ts +8 -0
  485. package/dist/sdk/coding-agent/modes/index.d.ts.map +1 -0
  486. package/dist/sdk/coding-agent/modes/print-mode.d.ts +28 -0
  487. package/dist/sdk/coding-agent/modes/print-mode.d.ts.map +1 -0
  488. package/dist/sdk/coding-agent/modes/print-mode.js +2 -2
  489. package/dist/sdk/coding-agent/modes/rpc/jsonl.d.ts +17 -0
  490. package/dist/sdk/coding-agent/modes/rpc/jsonl.d.ts.map +1 -0
  491. package/dist/sdk/coding-agent/modes/rpc/rpc-client.d.ts +224 -0
  492. package/dist/sdk/coding-agent/modes/rpc/rpc-client.d.ts.map +1 -0
  493. package/dist/sdk/coding-agent/modes/rpc/rpc-mode.d.ts +20 -0
  494. package/dist/sdk/coding-agent/modes/rpc/rpc-mode.d.ts.map +1 -0
  495. package/dist/sdk/coding-agent/modes/rpc/rpc-types.d.ts +419 -0
  496. package/dist/sdk/coding-agent/modes/rpc/rpc-types.d.ts.map +1 -0
  497. package/dist/sdk/coding-agent/utils/ansi.d.ts +2 -0
  498. package/dist/sdk/coding-agent/utils/ansi.d.ts.map +1 -0
  499. package/dist/sdk/coding-agent/utils/changelog.d.ts +21 -0
  500. package/dist/sdk/coding-agent/utils/changelog.d.ts.map +1 -0
  501. package/dist/sdk/coding-agent/utils/child-process.d.ts +15 -0
  502. package/dist/sdk/coding-agent/utils/child-process.d.ts.map +1 -0
  503. package/dist/sdk/coding-agent/utils/clipboard-image.d.ts +11 -0
  504. package/dist/sdk/coding-agent/utils/clipboard-image.d.ts.map +1 -0
  505. package/dist/sdk/coding-agent/utils/clipboard-image.js +1 -1
  506. package/dist/sdk/coding-agent/utils/clipboard-native.d.ts +8 -0
  507. package/dist/sdk/coding-agent/utils/clipboard-native.d.ts.map +1 -0
  508. package/dist/sdk/coding-agent/utils/clipboard.d.ts +2 -0
  509. package/dist/sdk/coding-agent/utils/clipboard.d.ts.map +1 -0
  510. package/dist/sdk/coding-agent/utils/exif-orientation.d.ts +5 -0
  511. package/dist/sdk/coding-agent/utils/exif-orientation.d.ts.map +1 -0
  512. package/dist/sdk/coding-agent/utils/frontmatter.d.ts +8 -0
  513. package/dist/sdk/coding-agent/utils/frontmatter.d.ts.map +1 -0
  514. package/dist/sdk/coding-agent/utils/fs-watch.d.ts +5 -0
  515. package/dist/sdk/coding-agent/utils/fs-watch.d.ts.map +1 -0
  516. package/dist/sdk/coding-agent/utils/git.d.ts +26 -0
  517. package/dist/sdk/coding-agent/utils/git.d.ts.map +1 -0
  518. package/dist/sdk/coding-agent/utils/html.d.ts +7 -0
  519. package/dist/sdk/coding-agent/utils/html.d.ts.map +1 -0
  520. package/dist/sdk/coding-agent/utils/image-convert.d.ts +9 -0
  521. package/dist/sdk/coding-agent/utils/image-convert.d.ts.map +1 -0
  522. package/dist/sdk/coding-agent/utils/image-resize.d.ts +36 -0
  523. package/dist/sdk/coding-agent/utils/image-resize.d.ts.map +1 -0
  524. package/dist/sdk/coding-agent/utils/mime.d.ts +3 -0
  525. package/dist/sdk/coding-agent/utils/mime.d.ts.map +1 -0
  526. package/dist/sdk/coding-agent/utils/paths.d.ts +31 -0
  527. package/dist/sdk/coding-agent/utils/paths.d.ts.map +1 -0
  528. package/dist/sdk/coding-agent/utils/photon.d.ts +13 -0
  529. package/dist/sdk/coding-agent/utils/photon.d.ts.map +1 -0
  530. package/dist/sdk/coding-agent/utils/shell.d.ts +30 -0
  531. package/dist/sdk/coding-agent/utils/shell.d.ts.map +1 -0
  532. package/dist/sdk/coding-agent/utils/sleep.d.ts +5 -0
  533. package/dist/sdk/coding-agent/utils/sleep.d.ts.map +1 -0
  534. package/dist/sdk/coding-agent/utils/spectral-user-agent.d.ts +2 -0
  535. package/dist/sdk/coding-agent/utils/spectral-user-agent.d.ts.map +1 -0
  536. package/dist/sdk/coding-agent/utils/spectral-user-agent.js +3 -0
  537. package/dist/sdk/coding-agent/utils/syntax-highlight.d.ts +12 -0
  538. package/dist/sdk/coding-agent/utils/syntax-highlight.d.ts.map +1 -0
  539. package/dist/sdk/coding-agent/utils/tools-manager.d.ts +3 -0
  540. package/dist/sdk/coding-agent/utils/tools-manager.d.ts.map +1 -0
  541. package/dist/sdk/coding-agent/utils/version-check.d.ts +15 -0
  542. package/dist/sdk/coding-agent/utils/version-check.d.ts.map +1 -0
  543. package/dist/sdk/coding-agent/utils/version-check.js +7 -7
  544. package/dist/sdk/coding-agent/utils/windows-self-update.d.ts +3 -0
  545. package/dist/sdk/coding-agent/utils/windows-self-update.d.ts.map +1 -0
  546. package/dist/sdk/coding-agent/utils/windows-self-update.js +1 -1
  547. package/dist/server/agent-bridge.d.ts +308 -0
  548. package/dist/server/agent-bridge.d.ts.map +1 -0
  549. package/dist/server/agent-bridge.js +58 -58
  550. package/dist/server/handlers/errors.d.ts +26 -0
  551. package/dist/server/handlers/errors.d.ts.map +1 -0
  552. package/dist/server/handlers/mcp-status.d.ts +21 -0
  553. package/dist/server/handlers/mcp-status.d.ts.map +1 -0
  554. package/dist/server/handlers/mcp-status.js +52 -0
  555. package/dist/server/handlers/paths-autocomplete.d.ts +45 -0
  556. package/dist/server/handlers/paths-autocomplete.d.ts.map +1 -0
  557. package/dist/server/handlers/projects.d.ts +58 -0
  558. package/dist/server/handlers/projects.d.ts.map +1 -0
  559. package/dist/server/handlers/queue.d.ts +27 -0
  560. package/dist/server/handlers/queue.d.ts.map +1 -0
  561. package/dist/server/handlers/sessions.d.ts +50 -0
  562. package/dist/server/handlers/sessions.d.ts.map +1 -0
  563. package/dist/server/handlers/sessions.js +1 -1
  564. package/dist/server/handlers/settings.d.ts +30 -0
  565. package/dist/server/handlers/settings.d.ts.map +1 -0
  566. package/dist/server/handlers/settings.js +123 -0
  567. package/dist/server/paths.d.ts +51 -0
  568. package/dist/server/paths.d.ts.map +1 -0
  569. package/dist/server/paths.js +2 -2
  570. package/dist/server/session-stream.d.ts +379 -0
  571. package/dist/server/session-stream.d.ts.map +1 -0
  572. package/dist/server/session-stream.js +43 -34
  573. package/dist/server/shutdown.d.ts +102 -0
  574. package/dist/server/shutdown.d.ts.map +1 -0
  575. package/dist/server/shutdown.js +3 -3
  576. package/dist/server/storage.d.ts +287 -0
  577. package/dist/server/storage.d.ts.map +1 -0
  578. package/dist/server/storage.js +6 -6
  579. package/dist/server/title-generator.d.ts +25 -0
  580. package/dist/server/title-generator.d.ts.map +1 -0
  581. package/dist/server/wire.d.ts +448 -0
  582. package/dist/server/wire.d.ts.map +1 -0
  583. package/dist/server/wire.js +1 -1
  584. package/dist/studio-binding.d.ts +44 -0
  585. package/dist/studio-binding.d.ts.map +1 -0
  586. package/dist/studio-binding.js +1 -1
  587. package/package.json +11 -1
  588. package/dist/sdk/coding-agent/utils/pi-user-agent.js +0 -3
@@ -0,0 +1,14 @@
1
+ export type ToolConsentMode = "never" | "once-per-server" | "always";
2
+ export declare class ConsentManager {
3
+ private mode;
4
+ private approvedServers;
5
+ private deniedServers;
6
+ private log;
7
+ constructor(mode?: ToolConsentMode);
8
+ requiresPrompt(serverName: string): boolean;
9
+ shouldCacheConsent(): boolean;
10
+ registerDecision(serverName: string, approved: boolean): void;
11
+ ensureApproved(serverName: string): void;
12
+ clear(serverName?: string): void;
13
+ }
14
+ //# sourceMappingURL=consent-manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"consent-manager.d.ts","sourceRoot":"","sources":["../../src/mcp/consent-manager.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,iBAAiB,GAAG,QAAQ,CAAC;AAErE,qBAAa,cAAc;IAKb,OAAO,CAAC,IAAI;IAJxB,OAAO,CAAC,eAAe,CAAqB;IAC5C,OAAO,CAAC,aAAa,CAAqB;IAC1C,OAAO,CAAC,GAAG,CAAiD;gBAExC,IAAI,GAAE,eAAmC;IAI7D,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;IAO3C,kBAAkB,IAAI,OAAO;IAI7B,gBAAgB,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,GAAG,IAAI;IAc7D,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;IAaxC,KAAK,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI;CAWjC"}
@@ -0,0 +1,11 @@
1
+ import type { ToolDefinition } from "../sdk/coding-agent/index.js";
2
+ import type { McpExtensionState } from "./state.js";
3
+ import type { DirectToolSpec, McpConfig } from "./types.js";
4
+ import type { MetadataCache } from "./metadata-cache.js";
5
+ export declare function resolveDirectTools(config: McpConfig, cache: MetadataCache | null, prefix: "server" | "none" | "short", envOverride?: string[]): DirectToolSpec[];
6
+ export declare function getMissingConfiguredDirectToolServers(config: McpConfig, cache: MetadataCache | null): string[];
7
+ export declare function buildProxyDescription(config: McpConfig, cache: MetadataCache | null, directSpecs: DirectToolSpec[]): string;
8
+ type DirectToolExecute = ToolDefinition["execute"];
9
+ export declare function createDirectToolExecutor(getState: () => McpExtensionState | null, getInitPromise: () => Promise<McpExtensionState> | null, spec: DirectToolSpec): DirectToolExecute;
10
+ export {};
11
+ //# sourceMappingURL=direct-tools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"direct-tools.d.ts","sourceRoot":"","sources":["../../src/mcp/direct-tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AACpD,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAc,MAAM,YAAY,CAAC;AACxE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAwEzD,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,SAAS,EACjB,KAAK,EAAE,aAAa,GAAG,IAAI,EAC3B,MAAM,EAAE,QAAQ,GAAG,MAAM,GAAG,OAAO,EACnC,WAAW,CAAC,EAAE,MAAM,EAAE,GACrB,cAAc,EAAE,CAoGlB;AAED,wBAAgB,qCAAqC,CACnD,MAAM,EAAE,SAAS,EACjB,KAAK,EAAE,aAAa,GAAG,IAAI,GAC1B,MAAM,EAAE,CAkBV;AAED,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,SAAS,EACjB,KAAK,EAAE,aAAa,GAAG,IAAI,EAC3B,WAAW,EAAE,cAAc,EAAE,GAC5B,MAAM,CAoDR;AAED,KAAK,iBAAiB,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;AAEnD,wBAAgB,wBAAwB,CACtC,QAAQ,EAAE,MAAM,iBAAiB,GAAG,IAAI,EACxC,cAAc,EAAE,MAAM,OAAO,CAAC,iBAAiB,CAAC,GAAG,IAAI,EACvD,IAAI,EAAE,cAAc,GACnB,iBAAiB,CAwJnB"}
@@ -0,0 +1,100 @@
1
+ /**
2
+ * Custom error types for MCP UI operations.
3
+ * Provides structured errors with context and recovery hints.
4
+ */
5
+ export interface McpUiErrorContext {
6
+ server?: string;
7
+ tool?: string;
8
+ uri?: string;
9
+ session?: string;
10
+ [key: string]: unknown;
11
+ }
12
+ /**
13
+ * Base error class for MCP UI errors.
14
+ */
15
+ export declare class McpUiError extends Error {
16
+ readonly code: string;
17
+ readonly context: McpUiErrorContext;
18
+ readonly recoveryHint?: string;
19
+ readonly cause?: Error;
20
+ constructor(message: string, options: {
21
+ code: string;
22
+ context?: McpUiErrorContext;
23
+ recoveryHint?: string;
24
+ cause?: Error;
25
+ });
26
+ toJSON(): Record<string, unknown>;
27
+ }
28
+ /**
29
+ * Error fetching a UI resource from the MCP server.
30
+ */
31
+ export declare class ResourceFetchError extends McpUiError {
32
+ constructor(uri: string, reason: string, options?: {
33
+ server?: string;
34
+ cause?: Error;
35
+ });
36
+ }
37
+ /**
38
+ * Error parsing or validating UI resource content.
39
+ */
40
+ export declare class ResourceParseError extends McpUiError {
41
+ constructor(uri: string, reason: string, options?: {
42
+ server?: string;
43
+ mimeType?: string;
44
+ });
45
+ }
46
+ /**
47
+ * Error connecting to the AppBridge.
48
+ */
49
+ export declare class BridgeConnectionError extends McpUiError {
50
+ constructor(reason: string, options?: {
51
+ session?: string;
52
+ cause?: Error;
53
+ });
54
+ }
55
+ /**
56
+ * Error related to user consent for tool calls.
57
+ */
58
+ export declare class ConsentError extends McpUiError {
59
+ readonly denied: boolean;
60
+ constructor(server: string, options: {
61
+ denied?: boolean;
62
+ requiresApproval?: boolean;
63
+ });
64
+ }
65
+ /**
66
+ * Error with UI server session management.
67
+ */
68
+ export declare class SessionError extends McpUiError {
69
+ constructor(reason: string, options?: {
70
+ session?: string;
71
+ cause?: Error;
72
+ });
73
+ }
74
+ /**
75
+ * Error starting or operating the UI server.
76
+ */
77
+ export declare class ServerError extends McpUiError {
78
+ constructor(reason: string, options?: {
79
+ port?: number;
80
+ cause?: Error;
81
+ });
82
+ }
83
+ /**
84
+ * Error communicating with the MCP server.
85
+ */
86
+ export declare class McpServerError extends McpUiError {
87
+ constructor(server: string, reason: string, options?: {
88
+ tool?: string;
89
+ cause?: Error;
90
+ });
91
+ }
92
+ /**
93
+ * Wrap an unknown error into an McpUiError.
94
+ */
95
+ export declare function wrapError(error: unknown, context?: McpUiErrorContext): McpUiError;
96
+ /**
97
+ * Check if an error is a specific MCP UI error type.
98
+ */
99
+ export declare function isErrorCode(error: unknown, code: string): boolean;
100
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/mcp/errors.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,iBAAiB;IAChC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;GAEG;AACH,qBAAa,UAAW,SAAQ,KAAK;IACnC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,iBAAiB,CAAC;IACpC,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC;gBAGrB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE;QACP,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,CAAC,EAAE,iBAAiB,CAAC;QAC5B,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,KAAK,CAAC,EAAE,KAAK,CAAC;KACf;IAeH,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAUlC;AAED;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,UAAU;gBAE9C,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,KAAK,CAAA;KAAE;CAU/C;AAED;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,UAAU;gBAE9C,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE;CASnD;AAED;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,UAAU;gBACvC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,KAAK,CAAA;KAAE;CAS1E;AAED;;GAEG;AACH,qBAAa,YAAa,SAAQ,UAAU;IAC1C,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;gBAGvB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAC;QAAC,gBAAgB,CAAC,EAAE,OAAO,CAAA;KAAE;CAgB5D;AAED;;GAEG;AACH,qBAAa,YAAa,SAAQ,UAAU;gBAExC,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,KAAK,CAAA;KAAE;CAUhD;AAED;;GAEG;AACH,qBAAa,WAAY,SAAQ,UAAU;gBAEvC,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,KAAK,CAAA;KAAE;CAU7C;AAED;;GAEG;AACH,qBAAa,cAAe,SAAQ,UAAU;gBAE1C,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,KAAK,CAAA;KAAE;CAU7C;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,UAAU,CAmBjF;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAEjE"}
@@ -0,0 +1,10 @@
1
+ export declare function isGlimpseAvailable(): boolean;
2
+ export declare function openGlimpseWindow(html: string, options: {
3
+ title: string;
4
+ width?: number;
5
+ height?: number;
6
+ onClosed: () => void;
7
+ }): Promise<{
8
+ close: () => void;
9
+ }>;
10
+ //# sourceMappingURL=glimpse-ui.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"glimpse-ui.d.ts","sourceRoot":"","sources":["../../src/mcp/glimpse-ui.ts"],"names":[],"mappings":"AASA,wBAAgB,kBAAkB,IAAI,OAAO,CAW5C;AAyBD,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE;IACP,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,IAAI,CAAC;CACtB;;GA2BF"}
@@ -0,0 +1,17 @@
1
+ import type { UiHostContext, UiResourceContent, UiResourceCsp } from "./types.js";
2
+ export interface HostHtmlTemplateInput {
3
+ sessionToken: string;
4
+ serverName: string;
5
+ toolName: string;
6
+ toolArgs: Record<string, unknown>;
7
+ resource: UiResourceContent;
8
+ allowAttribute: string;
9
+ requireToolConsent: boolean;
10
+ cacheToolConsent: boolean;
11
+ hostContext?: UiHostContext;
12
+ appBridgeModuleUrl?: string;
13
+ }
14
+ export declare function buildHostHtmlTemplate(input: HostHtmlTemplateInput): string;
15
+ export declare function buildCspMetaContent(csp: UiResourceCsp | undefined): string | undefined;
16
+ export declare function applyCspMeta(html: string, cspContent: string | undefined): string;
17
+ //# sourceMappingURL=host-html-template.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"host-html-template.d.ts","sourceRoot":"","sources":["../../src/mcp/host-html-template.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAKlF,MAAM,WAAW,qBAAqB;IACpC,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,cAAc,EAAE,MAAM,CAAC;IACvB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,gBAAgB,EAAE,OAAO,CAAC;IAC1B,WAAW,CAAC,EAAE,aAAa,CAAC;IAC5B,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,qBAAqB,GAAG,MAAM,CAkV1E;AAED,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,aAAa,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CA2BtF;AAOD,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAQjF"}
@@ -102,8 +102,8 @@ export function buildHostHtmlTemplate(input) {
102
102
  const ALLOW_ATTRIBUTE = ${allowAttribute};
103
103
  const REQUIRE_TOOL_CONSENT = ${requireToolConsent};
104
104
  const CACHE_TOOL_CONSENT = ${cacheToolConsent};
105
- const STREAM_CONTEXT_KEY = "pi-mcp-adapter/stream";
106
- const STREAM_PATCH_METHOD = "notifications/pi-mcp-adapter/ui-result-patch";
105
+ const STREAM_CONTEXT_KEY = "spectral-mcp-adapter/stream";
106
+ const STREAM_PATCH_METHOD = "notifications/spectral-mcp-adapter/ui-result-patch";
107
107
 
108
108
  const iframe = document.getElementById("mcp-app");
109
109
  const statusNode = document.getElementById("status");
@@ -147,7 +147,7 @@ export function buildHostHtmlTemplate(input) {
147
147
 
148
148
  const bridge = new AppBridge(
149
149
  null,
150
- { name: "pi", version: "1.0.0" },
150
+ { name: "spectral", version: "1.0.0" },
151
151
  { serverTools: {}, openLinks: {}, logging: {}, updateModelContext: {}, message: {} },
152
152
  { hostContext: HOST_CONTEXT }
153
153
  );
@@ -0,0 +1,3 @@
1
+ import type { ExtensionAPI } from "../sdk/coding-agent/index.js";
2
+ export default function mcpAdapter(ext: ExtensionAPI): void;
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/mcp/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAY,MAAM,8BAA8B,CAAC;AAa3E,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,GAAG,EAAE,YAAY,QAySnD"}
package/dist/mcp/index.js CHANGED
@@ -1,3 +1,4 @@
1
+ import { setLiveMcpStateGetter } from "./state-getter.js";
1
2
  import { Type } from "typebox";
2
3
  import { showTools, reconnectServers, authenticateServer, showSetupStatus } from "./commands.js";
3
4
  import { loadMcpConfig } from "./config.js";
@@ -7,8 +8,9 @@ import { loadMetadataCache } from "./metadata-cache.js";
7
8
  import { executeCall, executeConnect, executeDescribe, executeList, executeSearch, executeStatus, executeUiMessages } from "./proxy-modes.js";
8
9
  import { getConfigPathFromArgv, truncateAtWord } from "./utils.js";
9
10
  import { initializeOAuth, shutdownOAuth } from "./mcp-auth-flow.js";
10
- export default function mcpAdapter(pi) {
11
+ export default function mcpAdapter(ext) {
11
12
  let state = null;
13
+ setLiveMcpStateGetter(() => state);
12
14
  let initPromise = null;
13
15
  let lifecycleGeneration = 0;
14
16
  async function shutdownState(currentState, reason) {
@@ -53,7 +55,7 @@ export default function mcpAdapter(pi) {
53
55
  || directSpecs.length === 0
54
56
  || missingConfiguredDirectToolServers.length > 0;
55
57
  for (const spec of directSpecs) {
56
- pi.registerTool({
58
+ ext.registerTool({
57
59
  name: spec.prefixedName,
58
60
  label: `MCP: ${spec.originalName}`,
59
61
  description: spec.description || "(no description)",
@@ -62,12 +64,12 @@ export default function mcpAdapter(pi) {
62
64
  execute: createDirectToolExecutor(() => state, () => initPromise, spec),
63
65
  });
64
66
  }
65
- const getPiTools = () => pi.getAllTools();
66
- pi.registerFlag("mcp-config", {
67
+ const getSpectralTools = () => ext.getAllTools();
68
+ ext.registerFlag("mcp-config", {
67
69
  description: "Path to MCP config file",
68
70
  type: "string",
69
71
  });
70
- pi.on("session_start", async (_event, ctx) => {
72
+ ext.on("session_start", async (_event, ctx) => {
71
73
  const generation = ++lifecycleGeneration;
72
74
  const previousState = state;
73
75
  state = null;
@@ -87,7 +89,7 @@ export default function mcpAdapter(pi) {
87
89
  await initializeOAuth().catch(err => {
88
90
  console.error("MCP OAuth initialization failed:", err);
89
91
  });
90
- const promise = initializeMcp(pi, ctx);
92
+ const promise = initializeMcp(ext, ctx);
91
93
  initPromise = promise;
92
94
  promise.then(async (nextState) => {
93
95
  if (generation !== lifecycleGeneration || initPromise !== promise) {
@@ -113,7 +115,7 @@ export default function mcpAdapter(pi) {
113
115
  initPromise = null;
114
116
  });
115
117
  });
116
- pi.on("session_shutdown", async () => {
118
+ ext.on("session_shutdown", async () => {
117
119
  ++lifecycleGeneration;
118
120
  const currentState = state;
119
121
  state = null;
@@ -128,7 +130,7 @@ export default function mcpAdapter(pi) {
128
130
  console.error("MCP: session shutdown cleanup failed", error);
129
131
  }
130
132
  });
131
- pi.registerCommand("mcp", {
133
+ ext.registerCommand("mcp", {
132
134
  description: "Show MCP server status",
133
135
  handler: async (args, ctx) => {
134
136
  if (!state && initPromise) {
@@ -158,17 +160,17 @@ export default function mcpAdapter(pi) {
158
160
  await showTools(state, ctx);
159
161
  break;
160
162
  case "setup":
161
- await showSetupStatus(state, pi, ctx, earlyConfigPath);
163
+ await showSetupStatus(state, ext, ctx, earlyConfigPath);
162
164
  break;
163
165
  case "status":
164
166
  case "":
165
167
  default:
166
- await showSetupStatus(state, pi, ctx, earlyConfigPath);
168
+ await showSetupStatus(state, ext, ctx, earlyConfigPath);
167
169
  break;
168
170
  }
169
171
  },
170
172
  });
171
- pi.registerCommand("mcp-auth", {
173
+ ext.registerCommand("mcp-auth", {
172
174
  description: "Authenticate with an MCP server (OAuth)",
173
175
  handler: async (args, ctx) => {
174
176
  const serverName = args?.trim();
@@ -197,7 +199,7 @@ export default function mcpAdapter(pi) {
197
199
  },
198
200
  });
199
201
  if (shouldRegisterProxyTool) {
200
- pi.registerTool({
202
+ ext.registerTool({
201
203
  name: "mcp",
202
204
  label: "MCP",
203
205
  description: buildProxyDescription(earlyConfig, earlyCache, directSpecs),
@@ -253,7 +255,7 @@ export default function mcpAdapter(pi) {
253
255
  return executeUiMessages(state);
254
256
  }
255
257
  if (params.tool) {
256
- return executeCall(state, params.tool, parsedArgs, params.server, getPiTools);
258
+ return executeCall(state, params.tool, parsedArgs, params.server, getSpectralTools);
257
259
  }
258
260
  if (params.restart) {
259
261
  return executeConnect(state, params.restart);
@@ -0,0 +1,10 @@
1
+ import type { ExtensionAPI, ExtensionContext } from "../sdk/coding-agent/index.js";
2
+ import type { McpExtensionState } from "./state.js";
3
+ export declare function initializeMcp(ext: ExtensionAPI, ctx: ExtensionContext): Promise<McpExtensionState>;
4
+ export declare function updateServerMetadata(state: McpExtensionState, serverName: string): void;
5
+ export declare function updateMetadataCache(state: McpExtensionState, serverName: string): void;
6
+ export declare function flushMetadataCache(state: McpExtensionState): void;
7
+ export declare function updateStatusBar(state: McpExtensionState): void;
8
+ export declare function getFailureAgeSeconds(state: McpExtensionState, serverName: string): number | null;
9
+ export declare function lazyConnect(state: McpExtensionState, serverName: string): Promise<boolean>;
10
+ //# sourceMappingURL=init.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/mcp/init.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AACnF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AA0BpD,wBAAsB,aAAa,CACjC,GAAG,EAAE,YAAY,EACjB,GAAG,EAAE,gBAAgB,GACpB,OAAO,CAAC,iBAAiB,CAAC,CAsL5B;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI,CAWvF;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI,CA+BtF;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,iBAAiB,GAAG,IAAI,CAMjE;AAMD,wBAAgB,eAAe,CAAC,KAAK,EAAE,iBAAiB,GAAG,IAAI,CAU9D;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAMhG;AAED,wBAAsB,WAAW,CAAC,KAAK,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAoChG"}
package/dist/mcp/init.js CHANGED
@@ -10,8 +10,8 @@ import { openUrl, parallelLimit } from "./utils.js";
10
10
  import { logger } from "./logger.js";
11
11
  import { getMissingConfiguredDirectToolServers } from "./direct-tools.js";
12
12
  const FAILURE_BACKOFF_MS = 60 * 1000;
13
- export async function initializeMcp(pi, ctx) {
14
- const configPath = pi.getFlag("mcp-config");
13
+ export async function initializeMcp(ext, ctx) {
14
+ const configPath = ext.getFlag("mcp-config");
15
15
  const config = loadMcpConfig(configPath);
16
16
  const manager = new McpServerManager();
17
17
  const samplingAutoApprove = config.settings?.samplingAutoApprove === true;
@@ -40,9 +40,9 @@ export async function initializeMcp(pi, ctx) {
40
40
  consentManager,
41
41
  uiServer: null,
42
42
  completedUiSessions: [],
43
- openBrowser: (url) => openUrl(pi, url, process.env.BROWSER),
43
+ openBrowser: (url) => openUrl(ext, url, process.env.BROWSER),
44
44
  ui,
45
- sendMessage: (message, options) => pi.sendMessage(message, options),
45
+ sendMessage: (message, options) => ext.sendMessage(message, options),
46
46
  };
47
47
  const serverEntries = Object.entries(config.mcpServers);
48
48
  if (serverEntries.length === 0) {
@@ -0,0 +1,30 @@
1
+ import type { ServerDefinition } from "./types.js";
2
+ import type { McpServerManager } from "./server-manager.js";
3
+ export type ReconnectCallback = (serverName: string) => void;
4
+ export declare class McpLifecycleManager {
5
+ private manager;
6
+ private keepAliveServers;
7
+ private allServers;
8
+ private serverSettings;
9
+ private globalIdleTimeout;
10
+ private healthCheckInterval?;
11
+ private onReconnect?;
12
+ private onIdleShutdown?;
13
+ constructor(manager: McpServerManager);
14
+ /**
15
+ * Set callback to be invoked after a successful auto-reconnect.
16
+ * Use this to update tool metadata when a server reconnects.
17
+ */
18
+ setReconnectCallback(callback: ReconnectCallback): void;
19
+ markKeepAlive(name: string, definition: ServerDefinition): void;
20
+ registerServer(name: string, definition: ServerDefinition, settings?: {
21
+ idleTimeout?: number;
22
+ }): void;
23
+ setGlobalIdleTimeout(minutes: number): void;
24
+ setIdleShutdownCallback(callback: (serverName: string) => void): void;
25
+ startHealthChecks(intervalMs?: number): void;
26
+ private checkConnections;
27
+ private getIdleTimeout;
28
+ gracefulShutdown(): Promise<void>;
29
+ }
30
+ //# sourceMappingURL=lifecycle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lifecycle.d.ts","sourceRoot":"","sources":["../../src/mcp/lifecycle.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AACnD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAG5D,MAAM,MAAM,iBAAiB,GAAG,CAAC,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC;AAE7D,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,OAAO,CAAmB;IAClC,OAAO,CAAC,gBAAgB,CAAuC;IAC/D,OAAO,CAAC,UAAU,CAAuC;IACzD,OAAO,CAAC,cAAc,CAA+C;IACrE,OAAO,CAAC,iBAAiB,CAA0B;IACnD,OAAO,CAAC,mBAAmB,CAAC,CAAiB;IAC7C,OAAO,CAAC,WAAW,CAAC,CAAoB;IACxC,OAAO,CAAC,cAAc,CAAC,CAA+B;gBAE1C,OAAO,EAAE,gBAAgB;IAIrC;;;OAGG;IACH,oBAAoB,CAAC,QAAQ,EAAE,iBAAiB,GAAG,IAAI;IAIvD,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,gBAAgB,GAAG,IAAI;IAI/D,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,gBAAgB,EAAE,QAAQ,CAAC,EAAE;QAAE,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAOrG,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAI3C,uBAAuB,CAAC,QAAQ,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAIrE,iBAAiB,CAAC,UAAU,SAAQ,GAAG,IAAI;YAO7B,gBAAgB;IA0B9B,OAAO,CAAC,cAAc;IAMhB,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;CAMxC"}
@@ -0,0 +1,52 @@
1
+ /**
2
+ * Centralized logging for MCP UI operations.
3
+ * Provides structured, contextual logs with levels.
4
+ */
5
+ export type LogLevel = "debug" | "info" | "warn" | "error";
6
+ export interface LogContext {
7
+ server?: string;
8
+ session?: string;
9
+ tool?: string;
10
+ uri?: string;
11
+ [key: string]: unknown;
12
+ }
13
+ export interface LogEntry {
14
+ level: LogLevel;
15
+ message: string;
16
+ context?: LogContext;
17
+ error?: Error;
18
+ timestamp: Date;
19
+ }
20
+ type LogHandler = (entry: LogEntry) => void;
21
+ declare class Logger {
22
+ private minLevel;
23
+ private handlers;
24
+ private defaultContext;
25
+ setLevel(level: LogLevel): void;
26
+ setDefaultContext(context: LogContext): void;
27
+ addHandler(handler: LogHandler): void;
28
+ clearHandlers(): void;
29
+ private shouldLog;
30
+ private emit;
31
+ debug(message: string, context?: LogContext): void;
32
+ info(message: string, context?: LogContext): void;
33
+ warn(message: string, context?: LogContext): void;
34
+ error(message: string, error?: Error, context?: LogContext): void;
35
+ /**
36
+ * Create a child logger with additional default context.
37
+ */
38
+ child(context: LogContext): ChildLogger;
39
+ }
40
+ declare class ChildLogger {
41
+ private parent;
42
+ private context;
43
+ constructor(parent: Logger, context: LogContext);
44
+ debug(message: string, context?: LogContext): void;
45
+ info(message: string, context?: LogContext): void;
46
+ warn(message: string, context?: LogContext): void;
47
+ error(message: string, error?: Error, context?: LogContext): void;
48
+ child(context: LogContext): ChildLogger;
49
+ }
50
+ export declare const logger: Logger;
51
+ export {};
52
+ //# sourceMappingURL=logger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/mcp/logger.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,MAAM,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AAE3D,MAAM,WAAW,UAAU;IACzB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,QAAQ,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,UAAU,CAAC;IACrB,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,SAAS,EAAE,IAAI,CAAC;CACjB;AAED,KAAK,UAAU,GAAG,CAAC,KAAK,EAAE,QAAQ,KAAK,IAAI,CAAC;AAgB5C,cAAM,MAAM;IACV,OAAO,CAAC,QAAQ,CAAoB;IACpC,OAAO,CAAC,QAAQ,CAAoB;IACpC,OAAO,CAAC,cAAc,CAAkB;IAExC,QAAQ,CAAC,KAAK,EAAE,QAAQ,GAAG,IAAI;IAI/B,iBAAiB,CAAC,OAAO,EAAE,UAAU,GAAG,IAAI;IAI5C,UAAU,CAAC,OAAO,EAAE,UAAU,GAAG,IAAI;IAIrC,aAAa,IAAI,IAAI;IAIrB,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,IAAI;IAoCZ,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,IAAI;IAIlD,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,IAAI;IAIjD,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,IAAI;IAIjD,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,IAAI;IAIjE;;OAEG;IACH,KAAK,CAAC,OAAO,EAAE,UAAU,GAAG,WAAW;CAGxC;AAED,cAAM,WAAW;IAEb,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,OAAO;gBADP,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,UAAU;IAG7B,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,IAAI;IAIlD,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,IAAI;IAIjD,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,IAAI;IAIjD,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,IAAI;IAIjE,KAAK,CAAC,OAAO,EAAE,UAAU,GAAG,WAAW;CAGxC;AAcD,eAAO,MAAM,MAAM,QAAe,CAAC"}
@@ -0,0 +1,69 @@
1
+ /**
2
+ * MCP Auth Flow
3
+ *
4
+ * High-level OAuth flow management using the MCP SDK's built-in auth functions.
5
+ */
6
+ import { type StoredTokens } from "./mcp-auth.js";
7
+ import type { ServerEntry } from "./types.js";
8
+ /** Auth status for a server */
9
+ export type AuthStatus = "authenticated" | "expired" | "not_authenticated";
10
+ /**
11
+ * Start OAuth authentication flow for a server.
12
+ * Returns the authorization URL when browser authorization is required.
13
+ */
14
+ export declare function startAuth(serverName: string, serverUrl: string, definition?: ServerEntry): Promise<{
15
+ authorizationUrl: string;
16
+ }>;
17
+ /**
18
+ * Complete OAuth authentication with the authorization code.
19
+ */
20
+ export declare function completeAuth(serverName: string, authorizationCode: string): Promise<AuthStatus>;
21
+ /**
22
+ * Perform the complete OAuth authentication flow for a server.
23
+ *
24
+ * @param serverName - The name of the MCP server
25
+ * @param serverUrl - The URL of the MCP server
26
+ * @param definition - The server definition (optional)
27
+ * @returns The final auth status
28
+ */
29
+ export declare function authenticate(serverName: string, serverUrl: string, definition?: ServerEntry): Promise<AuthStatus>;
30
+ /**
31
+ * Get a valid access token for a server, refreshing if necessary.
32
+ *
33
+ * @param serverName - The name of the MCP server
34
+ * @param serverUrl - The URL of the MCP server
35
+ * @returns The valid tokens or null if not authenticated
36
+ */
37
+ export declare function getValidToken(serverName: string, serverUrl: string): Promise<StoredTokens | null>;
38
+ /**
39
+ * Check the authentication status for a server.
40
+ *
41
+ * @param serverName - The name of the MCP server
42
+ * @returns The current auth status
43
+ */
44
+ export declare function getAuthStatus(serverName: string): Promise<AuthStatus>;
45
+ /**
46
+ * Remove all OAuth credentials for a server.
47
+ *
48
+ * @param serverName - The name of the MCP server
49
+ */
50
+ export declare function removeAuth(serverName: string): Promise<void>;
51
+ /**
52
+ * Check if OAuth is supported for a server configuration.
53
+ * OAuth is supported for HTTP servers unless explicitly disabled.
54
+ *
55
+ * @param definition - The server definition
56
+ * @returns True if OAuth is supported
57
+ */
58
+ export declare function supportsOAuth(definition: ServerEntry): boolean;
59
+ /**
60
+ * Initialize the OAuth system on startup.
61
+ * Starts the callback server if there are any OAuth servers configured.
62
+ */
63
+ export declare function initializeOAuth(): Promise<void>;
64
+ /**
65
+ * Shutdown the OAuth system.
66
+ * Stops the callback server and cancels pending auths.
67
+ */
68
+ export declare function shutdownOAuth(): Promise<void>;
69
+ //# sourceMappingURL=mcp-auth-flow.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp-auth-flow.d.ts","sourceRoot":"","sources":["../../src/mcp/mcp-auth-flow.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAeH,OAAO,EAQL,KAAK,YAAY,EAClB,MAAM,eAAe,CAAA;AACtB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAE7C,+BAA+B;AAC/B,MAAM,MAAM,UAAU,GAAG,eAAe,GAAG,SAAS,GAAG,mBAAmB,CAAA;AAkD1E;;;GAGG;AACH,wBAAsB,SAAS,CAC7B,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,EACjB,UAAU,CAAC,EAAE,WAAW,GACvB,OAAO,CAAC;IAAE,gBAAgB,EAAE,MAAM,CAAA;CAAE,CAAC,CAyDvC;AAED;;GAEG;AACH,wBAAsB,YAAY,CAChC,UAAU,EAAE,MAAM,EAClB,iBAAiB,EAAE,MAAM,GACxB,OAAO,CAAC,UAAU,CAAC,CAcrB;AAED;;;;;;;GAOG;AACH,wBAAsB,YAAY,CAChC,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,EACjB,UAAU,CAAC,EAAE,WAAW,GACvB,OAAO,CAAC,UAAU,CAAC,CAuErB;AAED;;;;;;GAMG;AACH,wBAAsB,aAAa,CACjC,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CA2C9B;AAED;;;;;GAKG;AACH,wBAAsB,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAM3E;AAED;;;;GAIG;AACH,wBAAsB,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAalE;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,UAAU,EAAE,WAAW,GAAG,OAAO,CAU9D;AAED;;;GAGG;AACH,wBAAsB,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC,CAErD;AAED;;;GAGG;AACH,wBAAsB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAEnD"}
@@ -0,0 +1,100 @@
1
+ /**
2
+ * MCP Auth Storage Module
3
+ *
4
+ * Handles secure storage of OAuth credentials, tokens, client information,
5
+ * and PKCE state for MCP servers. Maintains backward compatibility with
6
+ * per-server directory structure.
7
+ *
8
+ * Token storage location: $MCP_OAUTH_DIR/<server>/tokens.json when set,
9
+ * otherwise <Pi agent dir>/mcp-oauth/<server>/tokens.json
10
+ */
11
+ /** OAuth token storage format */
12
+ export interface StoredTokens {
13
+ accessToken: string;
14
+ refreshToken?: string;
15
+ expiresAt?: number;
16
+ scope?: string;
17
+ }
18
+ /** OAuth client information from dynamic or static registration */
19
+ export interface StoredClientInfo {
20
+ clientId: string;
21
+ clientSecret?: string;
22
+ clientIdIssuedAt?: number;
23
+ clientSecretExpiresAt?: number;
24
+ }
25
+ /** Complete auth entry for a server */
26
+ export interface AuthEntry {
27
+ tokens?: StoredTokens;
28
+ clientInfo?: StoredClientInfo;
29
+ codeVerifier?: string;
30
+ oauthState?: string;
31
+ serverUrl?: string;
32
+ }
33
+ /**
34
+ * Get auth entry for a server.
35
+ */
36
+ export declare function getAuthEntry(serverName: string): AuthEntry | undefined;
37
+ /**
38
+ * Get auth entry and validate it's for the correct URL.
39
+ * Returns undefined if URL has changed (credentials are invalid).
40
+ */
41
+ export declare function getAuthForUrl(serverName: string, serverUrl: string): AuthEntry | undefined;
42
+ /**
43
+ * Save auth entry for a server.
44
+ */
45
+ export declare function saveAuthEntry(serverName: string, entry: AuthEntry, serverUrl?: string): void;
46
+ /**
47
+ * Remove auth entry for a server.
48
+ * Also removes the server directory if empty.
49
+ */
50
+ export declare function removeAuthEntry(serverName: string): void;
51
+ /**
52
+ * Update tokens for a server.
53
+ */
54
+ export declare function updateTokens(serverName: string, tokens: StoredTokens, serverUrl?: string): void;
55
+ /**
56
+ * Update client info for a server.
57
+ */
58
+ export declare function updateClientInfo(serverName: string, clientInfo: StoredClientInfo, serverUrl?: string): void;
59
+ /**
60
+ * Update code verifier for a server.
61
+ */
62
+ export declare function updateCodeVerifier(serverName: string, codeVerifier: string): void;
63
+ /**
64
+ * Clear code verifier for a server.
65
+ */
66
+ export declare function clearCodeVerifier(serverName: string): void;
67
+ /**
68
+ * Update OAuth state for a server.
69
+ */
70
+ export declare function updateOAuthState(serverName: string, state: string): void;
71
+ /**
72
+ * Get OAuth state for a server.
73
+ */
74
+ export declare function getOAuthState(serverName: string): string | undefined;
75
+ /**
76
+ * Clear OAuth state for a server.
77
+ */
78
+ export declare function clearOAuthState(serverName: string): void;
79
+ /**
80
+ * Check if stored tokens are expired.
81
+ * Returns null if no tokens exist, false if no expiry or not expired, true if expired.
82
+ */
83
+ export declare function isTokenExpired(serverName: string): boolean | null;
84
+ /**
85
+ * Check if a server has stored tokens.
86
+ */
87
+ export declare function hasStoredTokens(serverName: string): boolean;
88
+ /**
89
+ * Clear all credentials for a server.
90
+ */
91
+ export declare function clearAllCredentials(serverName: string): void;
92
+ /**
93
+ * Clear only client info for a server.
94
+ */
95
+ export declare function clearClientInfo(serverName: string): void;
96
+ /**
97
+ * Clear only tokens for a server.
98
+ */
99
+ export declare function clearTokens(serverName: string): void;
100
+ //# sourceMappingURL=mcp-auth.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp-auth.d.ts","sourceRoot":"","sources":["../../src/mcp/mcp-auth.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAMH,iCAAiC;AACjC,MAAM,WAAW,YAAY;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,mEAAmE;AACnE,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,qBAAqB,CAAC,EAAE,MAAM,CAAC;CAChC;AAED,uCAAuC;AACvC,MAAM,WAAW,SAAS;IACxB,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AA2DD;;GAEG;AACH,wBAAgB,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAEtE;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAW1F;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAM5F;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAkBxD;AAED;;GAEG;AACH,wBAAgB,YAAY,CAC1B,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,YAAY,EACpB,SAAS,CAAC,EAAE,MAAM,GACjB,IAAI,CAIN;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,gBAAgB,EAC5B,SAAS,CAAC,EAAE,MAAM,GACjB,IAAI,CAIN;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,IAAI,CAIjF;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAM1D;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAIxE;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAGpE;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAMxD;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,GAAG,IAAI,CAKjE;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAG3D;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAE5D;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAMxD;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAMpD"}