managed-deepagents 0.4.2 → 0.4.3-dev.95

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 (449) hide show
  1. package/README.md +78 -35
  2. package/dist/channels/assistant-text.js +1 -1
  3. package/dist/channels/assistant-text.js.map +1 -1
  4. package/dist/channels/binding.d.ts.map +1 -1
  5. package/dist/channels/binding.js +3 -1
  6. package/dist/channels/binding.js.map +1 -1
  7. package/dist/channels/index.d.ts +7 -8
  8. package/dist/channels/index.d.ts.map +1 -1
  9. package/dist/channels/index.js +6 -5
  10. package/dist/channels/index.js.map +1 -1
  11. package/dist/channels/manifest.d.ts +7 -4
  12. package/dist/channels/manifest.d.ts.map +1 -1
  13. package/dist/channels/messaging-registry.d.ts +21 -0
  14. package/dist/channels/messaging-registry.d.ts.map +1 -0
  15. package/dist/channels/messaging-registry.js +50 -0
  16. package/dist/channels/messaging-registry.js.map +1 -0
  17. package/dist/channels/registry-types.d.ts +1 -1
  18. package/dist/channels/registry.d.ts +4 -3
  19. package/dist/channels/registry.d.ts.map +1 -1
  20. package/dist/channels/registry.js +5 -6
  21. package/dist/channels/registry.js.map +1 -1
  22. package/dist/channels/schedule-delivery.d.ts +4 -1
  23. package/dist/channels/schedule-delivery.d.ts.map +1 -1
  24. package/dist/channels/schedule-delivery.js +3 -1
  25. package/dist/channels/schedule-delivery.js.map +1 -1
  26. package/dist/channels/slack/adapter.d.ts +1 -2
  27. package/dist/channels/slack/adapter.d.ts.map +1 -1
  28. package/dist/channels/slack/adapter.js +0 -2
  29. package/dist/channels/slack/adapter.js.map +1 -1
  30. package/dist/channels/slack/http.d.ts +7 -39
  31. package/dist/channels/slack/http.d.ts.map +1 -1
  32. package/dist/channels/slack/http.js +64 -122
  33. package/dist/channels/slack/http.js.map +1 -1
  34. package/dist/channels/slack/index.d.ts +94 -8
  35. package/dist/channels/slack/index.d.ts.map +1 -1
  36. package/dist/channels/slack/index.js +144 -6
  37. package/dist/channels/slack/index.js.map +1 -1
  38. package/dist/channels/slack/normalize.d.ts +6 -4
  39. package/dist/channels/slack/normalize.d.ts.map +1 -1
  40. package/dist/channels/slack/normalize.js +61 -28
  41. package/dist/channels/slack/normalize.js.map +1 -1
  42. package/dist/channels/slack/transport.d.ts.map +1 -1
  43. package/dist/channels/slack/transport.js +3 -2
  44. package/dist/channels/slack/transport.js.map +1 -1
  45. package/dist/channels/store.d.ts +14 -0
  46. package/dist/channels/store.d.ts.map +1 -1
  47. package/dist/channels/store.js +41 -27
  48. package/dist/channels/store.js.map +1 -1
  49. package/dist/connectors/marketplace/catalog.d.ts +96 -0
  50. package/dist/connectors/marketplace/catalog.d.ts.map +1 -0
  51. package/dist/connectors/marketplace/catalog.js +213 -0
  52. package/dist/connectors/marketplace/catalog.js.map +1 -0
  53. package/dist/connectors/marketplace/fleet-mcp.d.ts +62 -0
  54. package/dist/connectors/marketplace/fleet-mcp.d.ts.map +1 -0
  55. package/dist/connectors/marketplace/fleet-mcp.js +215 -0
  56. package/dist/connectors/marketplace/fleet-mcp.js.map +1 -0
  57. package/dist/connectors/marketplace/index.d.ts +31 -0
  58. package/dist/connectors/marketplace/index.d.ts.map +1 -0
  59. package/dist/connectors/marketplace/index.js +39 -0
  60. package/dist/connectors/marketplace/index.js.map +1 -0
  61. package/dist/connectors/marketplace/load.d.ts +14 -0
  62. package/dist/connectors/marketplace/load.d.ts.map +1 -0
  63. package/dist/connectors/marketplace/load.js +206 -0
  64. package/dist/connectors/marketplace/load.js.map +1 -0
  65. package/dist/connectors/mcp/index.d.ts +13 -20
  66. package/dist/connectors/mcp/index.d.ts.map +1 -1
  67. package/dist/connectors/mcp/index.js +92 -112
  68. package/dist/connectors/mcp/index.js.map +1 -1
  69. package/dist/connectors/mcp/load.d.ts.map +1 -1
  70. package/dist/connectors/mcp/load.js +16 -40
  71. package/dist/connectors/mcp/load.js.map +1 -1
  72. package/dist/connectors/slack/index.d.ts +24 -0
  73. package/dist/connectors/slack/index.d.ts.map +1 -0
  74. package/dist/connectors/slack/index.js +64 -0
  75. package/dist/connectors/slack/index.js.map +1 -0
  76. package/dist/connectors/tool-selection.d.ts +55 -0
  77. package/dist/connectors/tool-selection.d.ts.map +1 -0
  78. package/dist/connectors/tool-selection.js +112 -0
  79. package/dist/connectors/tool-selection.js.map +1 -0
  80. package/dist/connectors/toolserver/catalog.d.ts +326 -0
  81. package/dist/connectors/toolserver/catalog.d.ts.map +1 -0
  82. package/dist/connectors/toolserver/catalog.js +415 -0
  83. package/dist/connectors/toolserver/catalog.js.map +1 -0
  84. package/dist/connectors/toolserver/connectors.d.ts +698 -0
  85. package/dist/connectors/toolserver/connectors.d.ts.map +1 -0
  86. package/dist/connectors/toolserver/connectors.js +13 -0
  87. package/dist/connectors/toolserver/connectors.js.map +1 -0
  88. package/dist/connectors/toolserver/index.d.ts +142 -0
  89. package/dist/connectors/toolserver/index.d.ts.map +1 -0
  90. package/dist/connectors/toolserver/index.js +105 -0
  91. package/dist/connectors/toolserver/index.js.map +1 -0
  92. package/dist/connectors/toolserver/integrations.d.ts +103 -0
  93. package/dist/connectors/toolserver/integrations.d.ts.map +1 -0
  94. package/dist/connectors/toolserver/integrations.js +288 -0
  95. package/dist/connectors/toolserver/integrations.js.map +1 -0
  96. package/dist/connectors/toolserver/load.d.ts +55 -0
  97. package/dist/connectors/toolserver/load.d.ts.map +1 -0
  98. package/dist/connectors/toolserver/load.js +289 -0
  99. package/dist/connectors/toolserver/load.js.map +1 -0
  100. package/dist/define-deep-agent.d.ts.map +1 -1
  101. package/dist/define-deep-agent.js +9 -3
  102. package/dist/define-deep-agent.js.map +1 -1
  103. package/dist/extension.d.ts +69 -0
  104. package/dist/extension.d.ts.map +1 -0
  105. package/dist/extension.js +108 -0
  106. package/dist/extension.js.map +1 -0
  107. package/dist/identity/actor-subject.d.ts +60 -0
  108. package/dist/identity/actor-subject.d.ts.map +1 -0
  109. package/dist/identity/actor-subject.js +107 -0
  110. package/dist/identity/actor-subject.js.map +1 -0
  111. package/dist/identity/byo-oauth.d.ts +105 -0
  112. package/dist/identity/byo-oauth.d.ts.map +1 -0
  113. package/dist/identity/byo-oauth.js +190 -0
  114. package/dist/identity/byo-oauth.js.map +1 -0
  115. package/dist/identity/claims.d.ts +16 -0
  116. package/dist/identity/claims.d.ts.map +1 -0
  117. package/dist/identity/claims.js +33 -0
  118. package/dist/identity/claims.js.map +1 -0
  119. package/dist/identity/connect-inference.d.ts +37 -0
  120. package/dist/identity/connect-inference.d.ts.map +1 -0
  121. package/dist/identity/connect-inference.js +53 -0
  122. package/dist/identity/connect-inference.js.map +1 -0
  123. package/dist/identity/connect-provider-types.d.ts +35 -6
  124. package/dist/identity/connect-provider-types.d.ts.map +1 -1
  125. package/dist/identity/connect-provider-types.js +3 -1
  126. package/dist/identity/connect-provider-types.js.map +1 -1
  127. package/dist/identity/connect-provider.d.ts +9 -4
  128. package/dist/identity/connect-provider.d.ts.map +1 -1
  129. package/dist/identity/connect-provider.js +39 -13
  130. package/dist/identity/connect-provider.js.map +1 -1
  131. package/dist/identity/credential-resolvers.d.ts +33 -0
  132. package/dist/identity/credential-resolvers.d.ts.map +1 -0
  133. package/dist/identity/credential-resolvers.js +62 -0
  134. package/dist/identity/credential-resolvers.js.map +1 -0
  135. package/dist/identity/define-fleet-connect.d.ts +53 -0
  136. package/dist/identity/define-fleet-connect.d.ts.map +1 -0
  137. package/dist/identity/define-fleet-connect.js +76 -0
  138. package/dist/identity/define-fleet-connect.js.map +1 -0
  139. package/dist/identity/fleet-connect-hint.d.ts +41 -0
  140. package/dist/identity/fleet-connect-hint.d.ts.map +1 -0
  141. package/dist/identity/fleet-connect-hint.js +190 -0
  142. package/dist/identity/fleet-connect-hint.js.map +1 -0
  143. package/dist/identity/fleet-connect.d.ts +93 -0
  144. package/dist/identity/fleet-connect.d.ts.map +1 -0
  145. package/dist/identity/fleet-connect.js +256 -0
  146. package/dist/identity/fleet-connect.js.map +1 -0
  147. package/dist/identity/fleet-integration-connect.d.ts +32 -0
  148. package/dist/identity/fleet-integration-connect.d.ts.map +1 -0
  149. package/dist/identity/fleet-integration-connect.js +35 -0
  150. package/dist/identity/fleet-integration-connect.js.map +1 -0
  151. package/dist/identity/fleet.d.ts +56 -0
  152. package/dist/identity/fleet.d.ts.map +1 -0
  153. package/dist/identity/fleet.js +131 -0
  154. package/dist/identity/fleet.js.map +1 -0
  155. package/dist/identity/github/connect-http.d.ts +8 -4
  156. package/dist/identity/github/connect-http.d.ts.map +1 -1
  157. package/dist/identity/github/connect-http.js +32 -15
  158. package/dist/identity/github/connect-http.js.map +1 -1
  159. package/dist/identity/github/credentials-store.d.ts +10 -10
  160. package/dist/identity/github/credentials-store.d.ts.map +1 -1
  161. package/dist/identity/github/credentials-store.js +62 -49
  162. package/dist/identity/github/credentials-store.js.map +1 -1
  163. package/dist/identity/github/credentials.d.ts +16 -13
  164. package/dist/identity/github/credentials.d.ts.map +1 -1
  165. package/dist/identity/github/credentials.js +43 -23
  166. package/dist/identity/github/credentials.js.map +1 -1
  167. package/dist/identity/github/index.d.ts +1 -4
  168. package/dist/identity/github/index.d.ts.map +1 -1
  169. package/dist/identity/github/index.js +0 -3
  170. package/dist/identity/github/index.js.map +1 -1
  171. package/dist/identity/github/oauth.d.ts +18 -20
  172. package/dist/identity/github/oauth.d.ts.map +1 -1
  173. package/dist/identity/github/oauth.js +90 -109
  174. package/dist/identity/github/oauth.js.map +1 -1
  175. package/dist/identity/google/connect-http.d.ts +37 -0
  176. package/dist/identity/google/connect-http.d.ts.map +1 -0
  177. package/dist/identity/google/connect-http.js +42 -0
  178. package/dist/identity/google/connect-http.js.map +1 -0
  179. package/dist/identity/google/index.d.ts +7 -0
  180. package/dist/identity/google/index.d.ts.map +1 -0
  181. package/dist/identity/google/index.js +6 -0
  182. package/dist/identity/google/index.js.map +1 -0
  183. package/dist/identity/google/oauth.d.ts +22 -0
  184. package/dist/identity/google/oauth.d.ts.map +1 -0
  185. package/dist/identity/google/oauth.js +48 -0
  186. package/dist/identity/google/oauth.js.map +1 -0
  187. package/dist/identity/index.d.ts +40 -64
  188. package/dist/identity/index.d.ts.map +1 -1
  189. package/dist/identity/index.js +104 -243
  190. package/dist/identity/index.js.map +1 -1
  191. package/dist/identity/linkedin/connect-http.d.ts +37 -0
  192. package/dist/identity/linkedin/connect-http.d.ts.map +1 -0
  193. package/dist/identity/linkedin/connect-http.js +41 -0
  194. package/dist/identity/linkedin/connect-http.js.map +1 -0
  195. package/dist/identity/linkedin/index.d.ts +7 -0
  196. package/dist/identity/linkedin/index.d.ts.map +1 -0
  197. package/dist/identity/linkedin/index.js +6 -0
  198. package/dist/identity/linkedin/index.js.map +1 -0
  199. package/dist/identity/linkedin/oauth.d.ts +22 -0
  200. package/dist/identity/linkedin/oauth.d.ts.map +1 -0
  201. package/dist/identity/linkedin/oauth.js +47 -0
  202. package/dist/identity/linkedin/oauth.js.map +1 -0
  203. package/dist/identity/loopback.d.ts +27 -2
  204. package/dist/identity/loopback.d.ts.map +1 -1
  205. package/dist/identity/loopback.js +61 -8
  206. package/dist/identity/loopback.js.map +1 -1
  207. package/dist/identity/marketplace/connect-hint.d.ts +31 -0
  208. package/dist/identity/marketplace/connect-hint.d.ts.map +1 -0
  209. package/dist/identity/marketplace/connect-hint.js +59 -0
  210. package/dist/identity/marketplace/connect-hint.js.map +1 -0
  211. package/dist/identity/marketplace/connect.d.ts +51 -0
  212. package/dist/identity/marketplace/connect.d.ts.map +1 -0
  213. package/dist/identity/marketplace/connect.js +88 -0
  214. package/dist/identity/marketplace/connect.js.map +1 -0
  215. package/dist/identity/marketplace/index.d.ts +9 -0
  216. package/dist/identity/marketplace/index.d.ts.map +1 -0
  217. package/dist/identity/marketplace/index.js +9 -0
  218. package/dist/identity/marketplace/index.js.map +1 -0
  219. package/dist/identity/microsoft/connect-http.d.ts +38 -0
  220. package/dist/identity/microsoft/connect-http.d.ts.map +1 -0
  221. package/dist/identity/microsoft/connect-http.js +42 -0
  222. package/dist/identity/microsoft/connect-http.js.map +1 -0
  223. package/dist/identity/microsoft/index.d.ts +7 -0
  224. package/dist/identity/microsoft/index.d.ts.map +1 -0
  225. package/dist/identity/microsoft/index.js +6 -0
  226. package/dist/identity/microsoft/index.js.map +1 -0
  227. package/dist/identity/microsoft/oauth.d.ts +24 -0
  228. package/dist/identity/microsoft/oauth.d.ts.map +1 -0
  229. package/dist/identity/microsoft/oauth.js +65 -0
  230. package/dist/identity/microsoft/oauth.js.map +1 -0
  231. package/dist/identity/oauth-env.d.ts +43 -0
  232. package/dist/identity/oauth-env.d.ts.map +1 -0
  233. package/dist/identity/oauth-env.js +66 -0
  234. package/dist/identity/oauth-env.js.map +1 -0
  235. package/dist/identity/oauth-tickets.d.ts +37 -0
  236. package/dist/identity/oauth-tickets.d.ts.map +1 -0
  237. package/dist/identity/oauth-tickets.js +114 -0
  238. package/dist/identity/oauth-tickets.js.map +1 -0
  239. package/dist/identity/options.d.ts +35 -0
  240. package/dist/identity/options.d.ts.map +1 -0
  241. package/dist/identity/options.js +80 -0
  242. package/dist/identity/options.js.map +1 -0
  243. package/dist/identity/slack/connect-http.d.ts +6 -4
  244. package/dist/identity/slack/connect-http.d.ts.map +1 -1
  245. package/dist/identity/slack/connect-http.js +27 -17
  246. package/dist/identity/slack/connect-http.js.map +1 -1
  247. package/dist/identity/slack/index.d.ts +1 -2
  248. package/dist/identity/slack/index.d.ts.map +1 -1
  249. package/dist/identity/slack/index.js +1 -2
  250. package/dist/identity/slack/index.js.map +1 -1
  251. package/dist/identity/slack/links.d.ts +18 -17
  252. package/dist/identity/slack/links.d.ts.map +1 -1
  253. package/dist/identity/slack/links.js +75 -61
  254. package/dist/identity/slack/links.js.map +1 -1
  255. package/dist/identity/slack/oauth.d.ts +3 -35
  256. package/dist/identity/slack/oauth.d.ts.map +1 -1
  257. package/dist/identity/slack/oauth.js +9 -115
  258. package/dist/identity/slack/oauth.js.map +1 -1
  259. package/dist/identity/supabase.js +9 -9
  260. package/dist/identity/supabase.js.map +1 -1
  261. package/dist/identity/types.d.ts +91 -54
  262. package/dist/identity/types.d.ts.map +1 -1
  263. package/dist/identity/x/connect-http.d.ts +38 -0
  264. package/dist/identity/x/connect-http.d.ts.map +1 -0
  265. package/dist/identity/x/connect-http.js +41 -0
  266. package/dist/identity/x/connect-http.js.map +1 -0
  267. package/dist/identity/x/index.d.ts +6 -0
  268. package/dist/identity/x/index.d.ts.map +1 -0
  269. package/dist/identity/x/index.js +5 -0
  270. package/dist/identity/x/index.js.map +1 -0
  271. package/dist/index.d.ts +9 -20
  272. package/dist/index.d.ts.map +1 -1
  273. package/dist/index.js +3 -11
  274. package/dist/index.js.map +1 -1
  275. package/dist/ingress/index.d.ts +52 -0
  276. package/dist/ingress/index.d.ts.map +1 -0
  277. package/dist/ingress/index.js +139 -0
  278. package/dist/ingress/index.js.map +1 -0
  279. package/dist/memory/define-memory.d.ts +39 -0
  280. package/dist/memory/define-memory.d.ts.map +1 -0
  281. package/dist/memory/define-memory.js +78 -0
  282. package/dist/memory/define-memory.js.map +1 -0
  283. package/dist/memory/index.d.ts +9 -0
  284. package/dist/memory/index.d.ts.map +1 -0
  285. package/dist/memory/index.js +8 -0
  286. package/dist/memory/index.js.map +1 -0
  287. package/dist/memory/instructions-middleware.d.ts +74 -0
  288. package/dist/memory/instructions-middleware.d.ts.map +1 -0
  289. package/dist/memory/instructions-middleware.js +115 -0
  290. package/dist/memory/instructions-middleware.js.map +1 -0
  291. package/dist/memory/slices.d.ts +21 -0
  292. package/dist/memory/slices.d.ts.map +1 -0
  293. package/dist/memory/slices.js +61 -0
  294. package/dist/memory/slices.js.map +1 -0
  295. package/dist/memory/types.d.ts +71 -0
  296. package/dist/memory/types.d.ts.map +1 -0
  297. package/dist/memory/types.js +10 -0
  298. package/dist/memory/types.js.map +1 -0
  299. package/dist/namespaces.d.ts +262 -0
  300. package/dist/namespaces.d.ts.map +1 -0
  301. package/dist/namespaces.js +101 -0
  302. package/dist/namespaces.js.map +1 -0
  303. package/dist/runtime/auth.d.ts +46 -32
  304. package/dist/runtime/auth.d.ts.map +1 -1
  305. package/dist/runtime/auth.js +234 -125
  306. package/dist/runtime/auth.js.map +1 -1
  307. package/dist/runtime/backend.d.ts +1 -1
  308. package/dist/runtime/backend.d.ts.map +1 -1
  309. package/dist/runtime/backend.js +26 -5
  310. package/dist/runtime/backend.js.map +1 -1
  311. package/dist/runtime/channel.d.ts +91 -0
  312. package/dist/runtime/channel.d.ts.map +1 -0
  313. package/dist/runtime/channel.js +98 -0
  314. package/dist/runtime/channel.js.map +1 -0
  315. package/dist/runtime/connector.d.ts +66 -23
  316. package/dist/runtime/connector.d.ts.map +1 -1
  317. package/dist/runtime/connector.js +67 -27
  318. package/dist/runtime/connector.js.map +1 -1
  319. package/dist/runtime/cors.d.ts +12 -3
  320. package/dist/runtime/cors.d.ts.map +1 -1
  321. package/dist/runtime/cors.js +23 -5
  322. package/dist/runtime/cors.js.map +1 -1
  323. package/dist/runtime/credentials.d.ts +8 -8
  324. package/dist/runtime/credentials.d.ts.map +1 -1
  325. package/dist/runtime/credentials.js +46 -23
  326. package/dist/runtime/credentials.js.map +1 -1
  327. package/dist/runtime/http.d.ts +46 -0
  328. package/dist/runtime/http.d.ts.map +1 -0
  329. package/dist/runtime/http.js +53 -0
  330. package/dist/runtime/http.js.map +1 -0
  331. package/dist/runtime/identity-http.d.ts +13 -20
  332. package/dist/runtime/identity-http.d.ts.map +1 -1
  333. package/dist/runtime/identity-http.js +158 -75
  334. package/dist/runtime/identity-http.js.map +1 -1
  335. package/dist/runtime/identity-runtime.d.ts +12 -28
  336. package/dist/runtime/identity-runtime.d.ts.map +1 -1
  337. package/dist/runtime/identity-runtime.js +35 -72
  338. package/dist/runtime/identity-runtime.js.map +1 -1
  339. package/dist/runtime/index.d.ts +89 -225
  340. package/dist/runtime/index.d.ts.map +1 -1
  341. package/dist/runtime/index.js +92 -61
  342. package/dist/runtime/index.js.map +1 -1
  343. package/dist/runtime/memory/index.d.ts +0 -2
  344. package/dist/runtime/memory/index.d.ts.map +1 -1
  345. package/dist/runtime/memory/index.js +0 -2
  346. package/dist/runtime/memory/index.js.map +1 -1
  347. package/dist/runtime/memory/mounts.d.ts +4 -12
  348. package/dist/runtime/memory/mounts.d.ts.map +1 -1
  349. package/dist/runtime/memory/mounts.js +9 -20
  350. package/dist/runtime/memory/mounts.js.map +1 -1
  351. package/dist/runtime/recursion-limit.d.ts +22 -0
  352. package/dist/runtime/recursion-limit.d.ts.map +1 -0
  353. package/dist/runtime/recursion-limit.js +46 -0
  354. package/dist/runtime/recursion-limit.js.map +1 -0
  355. package/dist/runtime/sandbox-manager.d.ts +60 -3
  356. package/dist/runtime/sandbox-manager.d.ts.map +1 -1
  357. package/dist/runtime/sandbox-manager.js +326 -26
  358. package/dist/runtime/sandbox-manager.js.map +1 -1
  359. package/dist/runtime/sandbox-stream-retry.d.ts +18 -0
  360. package/dist/runtime/sandbox-stream-retry.d.ts.map +1 -0
  361. package/dist/runtime/sandbox-stream-retry.js +90 -0
  362. package/dist/runtime/sandbox-stream-retry.js.map +1 -0
  363. package/dist/runtime/setup-script.d.ts.map +1 -1
  364. package/dist/runtime/setup-script.js +16 -2
  365. package/dist/runtime/setup-script.js.map +1 -1
  366. package/dist/runtime/types.d.ts +16 -0
  367. package/dist/runtime/types.d.ts.map +1 -1
  368. package/dist/runtime/validated-token.d.ts +9 -14
  369. package/dist/runtime/validated-token.d.ts.map +1 -1
  370. package/dist/runtime/validated-token.js +79 -106
  371. package/dist/runtime/validated-token.js.map +1 -1
  372. package/dist/sandbox.d.ts +17 -42
  373. package/dist/sandbox.d.ts.map +1 -1
  374. package/dist/sandbox.js +11 -32
  375. package/dist/sandbox.js.map +1 -1
  376. package/dist/schedules.js +8 -9
  377. package/dist/schedules.js.map +1 -1
  378. package/dist/types.d.ts +4 -3
  379. package/dist/types.d.ts.map +1 -1
  380. package/dist/types.js.map +1 -1
  381. package/package.json +22 -29
  382. package/dist/channels/collect.d.ts +0 -26
  383. package/dist/channels/collect.d.ts.map +0 -1
  384. package/dist/channels/collect.js +0 -42
  385. package/dist/channels/collect.js.map +0 -1
  386. package/dist/channels/github/adapter-core.d.ts +0 -6
  387. package/dist/channels/github/adapter-core.d.ts.map +0 -1
  388. package/dist/channels/github/adapter-core.js +0 -27
  389. package/dist/channels/github/adapter-core.js.map +0 -1
  390. package/dist/channels/github/adapter.d.ts +0 -16
  391. package/dist/channels/github/adapter.d.ts.map +0 -1
  392. package/dist/channels/github/adapter.js +0 -52
  393. package/dist/channels/github/adapter.js.map +0 -1
  394. package/dist/channels/github/define.d.ts +0 -198
  395. package/dist/channels/github/define.d.ts.map +0 -1
  396. package/dist/channels/github/define.js +0 -166
  397. package/dist/channels/github/define.js.map +0 -1
  398. package/dist/channels/github/http.d.ts +0 -25
  399. package/dist/channels/github/http.d.ts.map +0 -1
  400. package/dist/channels/github/http.js +0 -147
  401. package/dist/channels/github/http.js.map +0 -1
  402. package/dist/channels/github/index.d.ts +0 -12
  403. package/dist/channels/github/index.d.ts.map +0 -1
  404. package/dist/channels/github/index.js +0 -10
  405. package/dist/channels/github/index.js.map +0 -1
  406. package/dist/channels/github/normalize.d.ts +0 -32
  407. package/dist/channels/github/normalize.d.ts.map +0 -1
  408. package/dist/channels/github/normalize.js +0 -152
  409. package/dist/channels/github/normalize.js.map +0 -1
  410. package/dist/channels/github/source-thread.d.ts +0 -24
  411. package/dist/channels/github/source-thread.d.ts.map +0 -1
  412. package/dist/channels/github/source-thread.js +0 -54
  413. package/dist/channels/github/source-thread.js.map +0 -1
  414. package/dist/channels/github/transport.d.ts +0 -19
  415. package/dist/channels/github/transport.d.ts.map +0 -1
  416. package/dist/channels/github/transport.js +0 -92
  417. package/dist/channels/github/transport.js.map +0 -1
  418. package/dist/channels/plugin.d.ts +0 -61
  419. package/dist/channels/plugin.d.ts.map +0 -1
  420. package/dist/channels/plugin.js +0 -80
  421. package/dist/channels/plugin.js.map +0 -1
  422. package/dist/channels/slack/define.d.ts +0 -74
  423. package/dist/channels/slack/define.d.ts.map +0 -1
  424. package/dist/channels/slack/define.js +0 -160
  425. package/dist/channels/slack/define.js.map +0 -1
  426. package/dist/connectors/github/index.d.ts +0 -78
  427. package/dist/connectors/github/index.d.ts.map +0 -1
  428. package/dist/connectors/github/index.js +0 -106
  429. package/dist/connectors/github/index.js.map +0 -1
  430. package/dist/connectors/github/sandbox.d.ts +0 -54
  431. package/dist/connectors/github/sandbox.d.ts.map +0 -1
  432. package/dist/connectors/github/sandbox.js +0 -515
  433. package/dist/connectors/github/sandbox.js.map +0 -1
  434. package/dist/connectors/langsmith/index.d.ts +0 -385
  435. package/dist/connectors/langsmith/index.d.ts.map +0 -1
  436. package/dist/connectors/langsmith/index.js +0 -431
  437. package/dist/connectors/langsmith/index.js.map +0 -1
  438. package/dist/connectors/langsmith/routes.d.ts +0 -247
  439. package/dist/connectors/langsmith/routes.d.ts.map +0 -1
  440. package/dist/connectors/langsmith/routes.js +0 -1182
  441. package/dist/connectors/langsmith/routes.js.map +0 -1
  442. package/dist/runtime/memory/seed.d.ts +0 -21
  443. package/dist/runtime/memory/seed.d.ts.map +0 -1
  444. package/dist/runtime/memory/seed.js +0 -160
  445. package/dist/runtime/memory/seed.js.map +0 -1
  446. package/dist/runtime/memory/user-repo.d.ts +0 -19
  447. package/dist/runtime/memory/user-repo.d.ts.map +0 -1
  448. package/dist/runtime/memory/user-repo.js +0 -57
  449. package/dist/runtime/memory/user-repo.js.map +0 -1
@@ -1,54 +0,0 @@
1
- /**
2
- * Stable GitHub source-thread keys for trusted channel ingress.
3
- *
4
- * Prefer issue/PR scoped keys when a number is known:
5
- * `github:<installationId>:<owner>/<repo>#<number>`
6
- * Otherwise fall back to delivery-scoped keys:
7
- * `github:<installationId>:<owner>/<repo>:delivery:<deliveryId>`
8
- * `github:<installationId>:delivery:<deliveryId>`
9
- */
10
- export function encodeGitHubSourceThreadKey(input) {
11
- const install = input.installationId || "unknown";
12
- if (input.owner &&
13
- input.repo &&
14
- typeof input.number === "number" &&
15
- Number.isFinite(input.number)) {
16
- return `github:${install}:${input.owner}/${input.repo}#${input.number}`;
17
- }
18
- if (input.owner && input.repo && input.deliveryId) {
19
- return `github:${install}:${input.owner}/${input.repo}:delivery:${input.deliveryId}`;
20
- }
21
- if (input.deliveryId) {
22
- return `github:${install}:delivery:${input.deliveryId}`;
23
- }
24
- return `github:${install}:delivery:unknown`;
25
- }
26
- export function decodeGitHubSourceThreadKey(key) {
27
- const issue = /^github:([^:]+):([^/]+)\/([^#]+)#(\d+)$/.exec(key);
28
- if (issue) {
29
- return {
30
- installationId: issue[1],
31
- owner: issue[2],
32
- repo: issue[3],
33
- number: Number(issue[4]),
34
- };
35
- }
36
- const repoDelivery = /^github:([^:]+):([^/]+)\/([^:]+):delivery:(.+)$/.exec(key);
37
- if (repoDelivery) {
38
- return {
39
- installationId: repoDelivery[1],
40
- owner: repoDelivery[2],
41
- repo: repoDelivery[3],
42
- deliveryId: repoDelivery[4],
43
- };
44
- }
45
- const delivery = /^github:([^:]+):delivery:(.+)$/.exec(key);
46
- if (delivery) {
47
- return {
48
- installationId: delivery[1],
49
- deliveryId: delivery[2],
50
- };
51
- }
52
- return null;
53
- }
54
- //# sourceMappingURL=source-thread.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"source-thread.js","sourceRoot":"","sources":["../../../src/channels/github/source-thread.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,MAAM,UAAU,2BAA2B,CAAC,KAM3C;IACC,MAAM,OAAO,GAAG,KAAK,CAAC,cAAc,IAAI,SAAS,CAAC;IAClD,IACE,KAAK,CAAC,KAAK;QACX,KAAK,CAAC,IAAI;QACV,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ;QAChC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,EAC7B,CAAC;QACD,OAAO,UAAU,OAAO,IAAI,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;IAC1E,CAAC;IACD,IAAI,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;QAClD,OAAO,UAAU,OAAO,IAAI,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,aAAa,KAAK,CAAC,UAAU,EAAE,CAAC;IACvF,CAAC;IACD,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;QACrB,OAAO,UAAU,OAAO,aAAa,KAAK,CAAC,UAAU,EAAE,CAAC;IAC1D,CAAC;IACD,OAAO,UAAU,OAAO,mBAAmB,CAAC;AAC9C,CAAC;AAED,MAAM,UAAU,2BAA2B,CAAC,GAAW;IAOrD,MAAM,KAAK,GAAG,yCAAyC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAClE,IAAI,KAAK,EAAE,CAAC;QACV,OAAO;YACL,cAAc,EAAE,KAAK,CAAC,CAAC,CAAE;YACzB,KAAK,EAAE,KAAK,CAAC,CAAC,CAAE;YAChB,IAAI,EAAE,KAAK,CAAC,CAAC,CAAE;YACf,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;SACzB,CAAC;IACJ,CAAC;IACD,MAAM,YAAY,GAAG,iDAAiD,CAAC,IAAI,CACzE,GAAG,CACJ,CAAC;IACF,IAAI,YAAY,EAAE,CAAC;QACjB,OAAO;YACL,cAAc,EAAE,YAAY,CAAC,CAAC,CAAE;YAChC,KAAK,EAAE,YAAY,CAAC,CAAC,CAAE;YACvB,IAAI,EAAE,YAAY,CAAC,CAAC,CAAE;YACtB,UAAU,EAAE,YAAY,CAAC,CAAC,CAAE;SAC7B,CAAC;IACJ,CAAC;IACD,MAAM,QAAQ,GAAG,gCAAgC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC5D,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO;YACL,cAAc,EAAE,QAAQ,CAAC,CAAC,CAAE;YAC5B,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAE;SACzB,CAAC;IACJ,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -1,19 +0,0 @@
1
- /**
2
- * GitHub App installation transport — PR/issue comments via the REST API.
3
- */
4
- import type { ChannelTransport } from "../runtime.js";
5
- export declare const GITHUB_APP_ID_ENV = "GITHUB_APP_ID";
6
- export declare const GITHUB_APP_PRIVATE_KEY_ENV = "GITHUB_APP_PRIVATE_KEY";
7
- export declare const GITHUB_INSTALLATION_ID_ENV = "GITHUB_INSTALLATION_ID";
8
- export interface GitHubAppTransportOptions {
9
- appId: string;
10
- privateKey: string;
11
- installationId: string;
12
- /** Override fetch (tests). */
13
- fetch?: typeof fetch;
14
- }
15
- /**
16
- * Build a {@link ChannelTransport} that posts/edits issue comments as the App.
17
- */
18
- export declare function createGitHubAppTransport(options: GitHubAppTransportOptions): ChannelTransport;
19
- //# sourceMappingURL=transport.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../../../src/channels/github/transport.ts"],"names":[],"mappings":"AAAA;;GAEG;AAMH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAGtD,eAAO,MAAM,iBAAiB,kBAAkB,CAAC;AACjD,eAAO,MAAM,0BAA0B,2BAA2B,CAAC;AACnE,eAAO,MAAM,0BAA0B,2BAA2B,CAAC;AAEnE,MAAM,WAAW,yBAAyB;IACxC,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,8BAA8B;IAC9B,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;CACtB;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,yBAAyB,GACjC,gBAAgB,CA+DlB"}
@@ -1,92 +0,0 @@
1
- /**
2
- * GitHub App installation transport — PR/issue comments via the REST API.
3
- */
4
- import { createPrivateKey } from "node:crypto";
5
- import { SignJWT } from "jose";
6
- export const GITHUB_APP_ID_ENV = "GITHUB_APP_ID";
7
- export const GITHUB_APP_PRIVATE_KEY_ENV = "GITHUB_APP_PRIVATE_KEY";
8
- export const GITHUB_INSTALLATION_ID_ENV = "GITHUB_INSTALLATION_ID";
9
- /**
10
- * Build a {@link ChannelTransport} that posts/edits issue comments as the App.
11
- */
12
- export function createGitHubAppTransport(options) {
13
- const fetchImpl = options.fetch ?? fetch;
14
- let installationToken;
15
- async function getInstallationToken() {
16
- const now = Date.now();
17
- if (installationToken && installationToken.expiresAt > now + 60_000) {
18
- return installationToken.token;
19
- }
20
- const jwt = await appJwt(options.appId, options.privateKey);
21
- const res = await fetchImpl(`https://api.github.com/app/installations/${options.installationId}/access_tokens`, {
22
- method: "POST",
23
- headers: {
24
- Authorization: `Bearer ${jwt}`,
25
- Accept: "application/vnd.github+json",
26
- "X-GitHub-Api-Version": "2022-11-28",
27
- },
28
- });
29
- if (!res.ok) {
30
- throw new Error(`GitHub installation token failed: ${res.status} ${await res.text()}`);
31
- }
32
- const body = (await res.json());
33
- installationToken = {
34
- token: body.token,
35
- expiresAt: Date.parse(body.expires_at),
36
- };
37
- return body.token;
38
- }
39
- return {
40
- async post(input) {
41
- const target = parseConversationId(input.conversationId);
42
- const token = await getInstallationToken();
43
- const res = await fetchImpl(`https://api.github.com/repos/${target.owner}/${target.repo}/issues/${target.number}/comments`, {
44
- method: "POST",
45
- headers: {
46
- Authorization: `Bearer ${token}`,
47
- Accept: "application/vnd.github+json",
48
- "Content-Type": "application/json",
49
- "X-GitHub-Api-Version": "2022-11-28",
50
- },
51
- body: JSON.stringify({ body: input.text }),
52
- });
53
- if (!res.ok) {
54
- throw new Error(`GitHub create comment failed: ${res.status} ${await res.text()}`);
55
- }
56
- const body = (await res.json());
57
- return {
58
- id: `github-comment:${body.id}`,
59
- providerMessageId: String(body.id),
60
- };
61
- },
62
- };
63
- }
64
- function parseConversationId(conversationId) {
65
- const match = /^([^/]+)\/([^#]+)#(\d+)$/.exec(conversationId);
66
- if (!match) {
67
- throw new Error(`GitHub transport cannot parse conversationId "${conversationId}"`);
68
- }
69
- return {
70
- owner: match[1],
71
- repo: match[2],
72
- number: Number(match[3]),
73
- };
74
- }
75
- /**
76
- * Sign an App JWT. Uses Node `createPrivateKey` so both PKCS#1
77
- * (`BEGIN RSA PRIVATE KEY`, GitHub's download format) and PKCS#8 PEMs work.
78
- */
79
- async function appJwt(appId, privateKeyPem) {
80
- const key = createPrivateKey(normalizePem(privateKeyPem));
81
- const now = Math.floor(Date.now() / 1000);
82
- return new SignJWT({})
83
- .setProtectedHeader({ alg: "RS256" })
84
- .setIssuedAt(now - 60)
85
- .setExpirationTime(now + 9 * 60)
86
- .setIssuer(appId)
87
- .sign(key);
88
- }
89
- function normalizePem(key) {
90
- return key.includes("\\n") ? key.replace(/\\n/g, "\n") : key;
91
- }
92
- //# sourceMappingURL=transport.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"transport.js","sourceRoot":"","sources":["../../../src/channels/github/transport.ts"],"names":[],"mappings":"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"}
@@ -1,61 +0,0 @@
1
- /**
2
- * Channel plugin contract — the return value of any `define*` helper.
3
- *
4
- * Third-party packages export helpers like `defineStripeChannel` that return a
5
- * branded {@link ChannelDefinition}. Helper names are irrelevant; the brand,
6
- * adapter, and `toManifest` are what the CLI and runtime use.
7
- */
8
- import type { ChannelManifest } from "./manifest.js";
9
- import type { ChannelProviderAdapter } from "./registry-types.js";
10
- /**
11
- * Realm-global brand marking a value as a managed channel definition.
12
- * `Symbol.for` keeps identity stable across duplicate package copies.
13
- */
14
- export declare const CHANNEL_BRAND: unique symbol;
15
- /**
16
- * Author-supplied manifest fields. {@link defineChannel} stamps `name` (route)
17
- * and `provider` from the definition so helpers do not repeat them.
18
- */
19
- export type ChannelManifestBody = Omit<ChannelManifest, "name" | "provider">;
20
- /**
21
- * Plugin object returned by `defineSlackChannel`, `defineGitHubChannel`, or any
22
- * third-party `define*Channel` helper.
23
- */
24
- export interface ChannelDefinition<TConfig = unknown> {
25
- readonly [CHANNEL_BRAND]: true;
26
- readonly kind: "channel";
27
- /** Adapter registry key and trusted source-provider stamp. */
28
- readonly provider: string;
29
- /** Provider Events/reply implementation (usually from the same package). */
30
- readonly adapter: ChannelProviderAdapter;
31
- /**
32
- * Deploy/runtime metadata. Must be pure JSON (no functions).
33
- * Live callbacks stay on {@link ChannelDefinition.config}.
34
- * `name` and `provider` are stamped by {@link defineChannel}.
35
- */
36
- toManifest(name: string): ChannelManifest;
37
- /** Provider-specific live config consumed by the adapter. */
38
- readonly config: TConfig;
39
- }
40
- /** Inputs for {@link defineChannel}. */
41
- export interface DefineChannelOptions<TConfig> {
42
- provider: string;
43
- adapter: ChannelProviderAdapter;
44
- config: TConfig;
45
- /** Return deploy fields only — `name` / `provider` are stamped automatically. */
46
- toManifest: (name: string) => ChannelManifestBody;
47
- }
48
- /**
49
- * Build a branded channel definition. First-party and third-party helpers should
50
- * wrap this (or return an equivalent branded object).
51
- */
52
- export declare function defineChannel<TConfig>(options: DefineChannelOptions<TConfig>): ChannelDefinition<TConfig>;
53
- /** Type guard for branded channel definitions. */
54
- export declare function isChannelDefinition(value: unknown): value is ChannelDefinition;
55
- /**
56
- * Build the deploy/runtime manifest map from live channel definitions.
57
- *
58
- * Also registers each definition's adapter so Events routes can dispatch.
59
- */
60
- export declare function manifestsFromChannelDefinitions(definitions: Record<string, unknown>): Record<string, ChannelManifest>;
61
- //# sourceMappingURL=plugin.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../src/channels/plugin.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAErD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAElE;;;GAGG;AACH,eAAO,MAAM,aAAa,EAAE,OAAO,MAAkC,CAAC;AAEtE;;;GAGG;AACH,MAAM,MAAM,mBAAmB,GAAG,IAAI,CAAC,eAAe,EAAE,MAAM,GAAG,UAAU,CAAC,CAAC;AAE7E;;;GAGG;AACH,MAAM,WAAW,iBAAiB,CAAC,OAAO,GAAG,OAAO;IAClD,QAAQ,CAAC,CAAC,aAAa,CAAC,EAAE,IAAI,CAAC;IAC/B,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,8DAA8D;IAC9D,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,4EAA4E;IAC5E,QAAQ,CAAC,OAAO,EAAE,sBAAsB,CAAC;IACzC;;;;OAIG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,CAAC;IAC1C,6DAA6D;IAC7D,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;CAC1B;AAED,wCAAwC;AACxC,MAAM,WAAW,oBAAoB,CAAC,OAAO;IAC3C,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,sBAAsB,CAAC;IAChC,MAAM,EAAE,OAAO,CAAC;IAChB,iFAAiF;IACjF,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,mBAAmB,CAAC;CACnD;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,OAAO,EACnC,OAAO,EAAE,oBAAoB,CAAC,OAAO,CAAC,GACrC,iBAAiB,CAAC,OAAO,CAAC,CA4C5B;AAED,kDAAkD;AAClD,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,OAAO,GACb,KAAK,IAAI,iBAAiB,CAI5B;AAED;;;;GAIG;AACH,wBAAgB,+BAA+B,CAC7C,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACnC,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAcjC"}
@@ -1,80 +0,0 @@
1
- /**
2
- * Channel plugin contract — the return value of any `define*` helper.
3
- *
4
- * Third-party packages export helpers like `defineStripeChannel` that return a
5
- * branded {@link ChannelDefinition}. Helper names are irrelevant; the brand,
6
- * adapter, and `toManifest` are what the CLI and runtime use.
7
- */
8
- import { registerChannelAdapter } from "./registry-store.js";
9
- /**
10
- * Realm-global brand marking a value as a managed channel definition.
11
- * `Symbol.for` keeps identity stable across duplicate package copies.
12
- */
13
- export const CHANNEL_BRAND = Symbol.for("mda.channel");
14
- /**
15
- * Build a branded channel definition. First-party and third-party helpers should
16
- * wrap this (or return an equivalent branded object).
17
- */
18
- export function defineChannel(options) {
19
- if (!options || typeof options !== "object") {
20
- throw new Error("defineChannel(...) requires an options object.");
21
- }
22
- if (typeof options.provider !== "string" || !options.provider.trim()) {
23
- throw new Error("defineChannel(...) requires a non-empty `provider` string.");
24
- }
25
- if (options.adapter === null ||
26
- typeof options.adapter !== "object" ||
27
- typeof options.adapter.handleEventsRequest !== "function") {
28
- throw new Error("defineChannel(...) requires an `adapter` with handleEventsRequest.");
29
- }
30
- if (typeof options.toManifest !== "function") {
31
- throw new Error("defineChannel(...) requires a `toManifest` function.");
32
- }
33
- const provider = options.provider.trim();
34
- if (options.adapter.provider !== provider) {
35
- throw new Error(`defineChannel(...) adapter.provider ("${options.adapter.provider}") ` +
36
- `must match provider ("${provider}").`);
37
- }
38
- const authorToManifest = options.toManifest;
39
- return {
40
- [CHANNEL_BRAND]: true,
41
- kind: "channel",
42
- provider,
43
- adapter: options.adapter,
44
- config: options.config,
45
- toManifest(name) {
46
- const body = authorToManifest(name);
47
- return {
48
- ...body,
49
- name,
50
- provider,
51
- };
52
- },
53
- };
54
- }
55
- /** Type guard for branded channel definitions. */
56
- export function isChannelDefinition(value) {
57
- if (typeof value !== "object" || value === null)
58
- return false;
59
- const record = value;
60
- return record[CHANNEL_BRAND] === true && record.kind === "channel";
61
- }
62
- /**
63
- * Build the deploy/runtime manifest map from live channel definitions.
64
- *
65
- * Also registers each definition's adapter so Events routes can dispatch.
66
- */
67
- export function manifestsFromChannelDefinitions(definitions) {
68
- const out = {};
69
- for (const [name, value] of Object.entries(definitions)) {
70
- if (!isChannelDefinition(value)) {
71
- throw new Error(`channel "${name}" is not a branded ChannelDefinition. ` +
72
- "Export `channel = defineXChannel(...)` (or defineChannel) so the " +
73
- "return value includes CHANNEL_BRAND, adapter, and toManifest.");
74
- }
75
- registerChannelAdapter(value.adapter);
76
- out[name] = value.toManifest(name);
77
- }
78
- return out;
79
- }
80
- //# sourceMappingURL=plugin.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../src/channels/plugin.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAG7D;;;GAGG;AACH,MAAM,CAAC,MAAM,aAAa,GAAkB,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;AAsCtE;;;GAGG;AACH,MAAM,UAAU,aAAa,CAC3B,OAAsC;IAEtC,IAAI,CAAC,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAC5C,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;IACpE,CAAC;IACD,IAAI,OAAO,OAAO,CAAC,QAAQ,KAAK,QAAQ,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC;QACrE,MAAM,IAAI,KAAK,CACb,4DAA4D,CAC7D,CAAC;IACJ,CAAC;IACD,IACE,OAAO,CAAC,OAAO,KAAK,IAAI;QACxB,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ;QACnC,OAAO,OAAO,CAAC,OAAO,CAAC,mBAAmB,KAAK,UAAU,EACzD,CAAC;QACD,MAAM,IAAI,KAAK,CACb,oEAAoE,CACrE,CAAC;IACJ,CAAC;IACD,IAAI,OAAO,OAAO,CAAC,UAAU,KAAK,UAAU,EAAE,CAAC;QAC7C,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;IAC1E,CAAC;IACD,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;IACzC,IAAI,OAAO,CAAC,OAAO,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAC1C,MAAM,IAAI,KAAK,CACb,yCAAyC,OAAO,CAAC,OAAO,CAAC,QAAQ,KAAK;YACpE,yBAAyB,QAAQ,KAAK,CACzC,CAAC;IACJ,CAAC;IACD,MAAM,gBAAgB,GAAG,OAAO,CAAC,UAAU,CAAC;IAC5C,OAAO;QACL,CAAC,aAAa,CAAC,EAAE,IAAI;QACrB,IAAI,EAAE,SAAS;QACf,QAAQ;QACR,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,UAAU,CAAC,IAAY;YACrB,MAAM,IAAI,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC;YACpC,OAAO;gBACL,GAAG,IAAI;gBACP,IAAI;gBACJ,QAAQ;aACT,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC;AAED,kDAAkD;AAClD,MAAM,UAAU,mBAAmB,CACjC,KAAc;IAEd,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAC9D,MAAM,MAAM,GAAG,KAAyC,CAAC;IACzD,OAAO,MAAM,CAAC,aAAa,CAAC,KAAK,IAAI,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,CAAC;AACrE,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,+BAA+B,CAC7C,WAAoC;IAEpC,MAAM,GAAG,GAAoC,EAAE,CAAC;IAChD,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;QACxD,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,CAAC;YAChC,MAAM,IAAI,KAAK,CACb,YAAY,IAAI,wCAAwC;gBACtD,mEAAmE;gBACnE,+DAA+D,CAClE,CAAC;QACJ,CAAC;QACD,sBAAsB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACtC,GAAG,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IACrC,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -1,74 +0,0 @@
1
- /**
2
- * `defineSlackChannel` — declarative Slack channel authoring surface.
3
- *
4
- * Returns a validated declaration. Provider HTTP, OAuth, and Web API clients
5
- * remain managed implementation details.
6
- */
7
- import type { ChannelManifest } from "../manifest.js";
8
- import { type ChannelDefinition } from "../plugin.js";
9
- export type { ChannelManifest } from "../manifest.js";
10
- /** Env vars deploy must ensure for any Slack channel manifest. */
11
- export declare const SLACK_CHANNEL_REQUIRED_ENV: readonly ["SLACK_SIGNING_SECRET", "SLACK_BOT_TOKEN"];
12
- /**
13
- * Managed Slack triggers.
14
- * Later phases may enable `slash_command` / `interaction`.
15
- */
16
- export type SlackChannelTrigger = "app_mention" | "direct_message" | "thread_reply";
17
- export type SlackMentionBehavior = "strip" | "preserve";
18
- export type SlackConversationMapping = "thread" | "conversation" | "message";
19
- export interface SlackChannelFilters {
20
- includeConversations?: readonly string[];
21
- excludeConversations?: readonly string[];
22
- /** Fully-qualified mapped actor IDs such as `slack:T123:U456`. */
23
- includeActors?: readonly string[];
24
- excludeActors?: readonly string[];
25
- /**
26
- * Slack Connect shared conversations. Phase 1 rejects `true`.
27
- * @default false
28
- */
29
- allowSharedConversations?: boolean;
30
- }
31
- export interface SlackConversationPolicy {
32
- /** @default "thread" */
33
- appMention?: SlackConversationMapping;
34
- /** @default "conversation" */
35
- directMessage?: SlackConversationMapping;
36
- }
37
- export interface SlackChannelConfig {
38
- on: readonly SlackChannelTrigger[];
39
- /** @default true */
40
- autoReply?: boolean;
41
- /** @default "strip" */
42
- mentionBehavior?: SlackMentionBehavior;
43
- filters?: SlackChannelFilters;
44
- conversation?: SlackConversationPolicy;
45
- }
46
- /** Object exported from `channels/*.ts`. */
47
- export type SlackChannelDefinition = ChannelDefinition<RequiredSlackChannelConfig>;
48
- /** Normalized config with defaults applied. */
49
- export interface RequiredSlackChannelConfig {
50
- on: readonly SlackChannelTrigger[];
51
- autoReply: boolean;
52
- mentionBehavior: SlackMentionBehavior;
53
- filters: {
54
- includeConversations?: readonly string[];
55
- excludeConversations?: readonly string[];
56
- includeActors?: readonly string[];
57
- excludeActors?: readonly string[];
58
- allowSharedConversations: boolean;
59
- };
60
- conversation: {
61
- appMention: SlackConversationMapping;
62
- directMessage: SlackConversationMapping;
63
- };
64
- }
65
- /**
66
- * Declare a managed Slack channel. Files under `channels/*.ts` export a named
67
- * `channel` created with this helper.
68
- */
69
- export declare function defineSlackChannel(config: SlackChannelConfig): SlackChannelDefinition;
70
- /** Derive Slack OAuth scopes from enabled channel triggers. */
71
- export declare function requiredSlackScopes(config: Pick<RequiredSlackChannelConfig, "on">): string[];
72
- /** Build the compile/deploy channel manifest for a file-derived name. */
73
- export declare function toChannelManifest(name: string, definition: SlackChannelDefinition | RequiredSlackChannelConfig): ChannelManifest;
74
- //# sourceMappingURL=define.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"define.d.ts","sourceRoot":"","sources":["../../../src/channels/slack/define.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,EAAiB,KAAK,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAGrE,YAAY,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEtD,kEAAkE;AAClE,eAAO,MAAM,0BAA0B,YACrC,sBAAsB,oBAEd,CAAC;AAEX;;;GAGG;AACH,MAAM,MAAM,mBAAmB,GAC3B,aAAa,GACb,gBAAgB,GAChB,cAAc,CAAC;AAEnB,MAAM,MAAM,oBAAoB,GAAG,OAAO,GAAG,UAAU,CAAC;AAExD,MAAM,MAAM,wBAAwB,GAAG,QAAQ,GAAG,cAAc,GAAG,SAAS,CAAC;AAE7E,MAAM,WAAW,mBAAmB;IAClC,oBAAoB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACzC,oBAAoB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACzC,kEAAkE;IAClE,aAAa,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,aAAa,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC;;;OAGG;IACH,wBAAwB,CAAC,EAAE,OAAO,CAAC;CACpC;AAED,MAAM,WAAW,uBAAuB;IACtC,wBAAwB;IACxB,UAAU,CAAC,EAAE,wBAAwB,CAAC;IACtC,8BAA8B;IAC9B,aAAa,CAAC,EAAE,wBAAwB,CAAC;CAC1C;AAED,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,SAAS,mBAAmB,EAAE,CAAC;IACnC,oBAAoB;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,uBAAuB;IACvB,eAAe,CAAC,EAAE,oBAAoB,CAAC;IACvC,OAAO,CAAC,EAAE,mBAAmB,CAAC;IAC9B,YAAY,CAAC,EAAE,uBAAuB,CAAC;CACxC;AAED,4CAA4C;AAC5C,MAAM,MAAM,sBAAsB,GAChC,iBAAiB,CAAC,0BAA0B,CAAC,CAAC;AAEhD,+CAA+C;AAC/C,MAAM,WAAW,0BAA0B;IACzC,EAAE,EAAE,SAAS,mBAAmB,EAAE,CAAC;IACnC,SAAS,EAAE,OAAO,CAAC;IACnB,eAAe,EAAE,oBAAoB,CAAC;IACtC,OAAO,EAAE;QACP,oBAAoB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;QACzC,oBAAoB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;QACzC,aAAa,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;QAClC,aAAa,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;QAClC,wBAAwB,EAAE,OAAO,CAAC;KACnC,CAAC;IACF,YAAY,EAAE;QACZ,UAAU,EAAE,wBAAwB,CAAC;QACrC,aAAa,EAAE,wBAAwB,CAAC;KACzC,CAAC;CACH;AAUD;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,kBAAkB,GACzB,sBAAsB,CAexB;AAED,+DAA+D;AAC/D,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,IAAI,CAAC,0BAA0B,EAAE,IAAI,CAAC,GAC7C,MAAM,EAAE,CAeV;AAED,yEAAyE;AACzE,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,sBAAsB,GAAG,0BAA0B,GAC9D,eAAe,CAmBjB"}
@@ -1,160 +0,0 @@
1
- /**
2
- * `defineSlackChannel` — declarative Slack channel authoring surface.
3
- *
4
- * Returns a validated declaration. Provider HTTP, OAuth, and Web API clients
5
- * remain managed implementation details.
6
- */
7
- import { SLACK_BOT_TOKEN_ENV } from "../binding.js";
8
- import { defineChannel } from "../plugin.js";
9
- import { slackChannelAdapter } from "./adapter-core.js";
10
- /** Env vars deploy must ensure for any Slack channel manifest. */
11
- export const SLACK_CHANNEL_REQUIRED_ENV = [
12
- "SLACK_SIGNING_SECRET",
13
- SLACK_BOT_TOKEN_ENV,
14
- ];
15
- const SUPPORTED_TRIGGERS = new Set([
16
- "app_mention",
17
- "direct_message",
18
- "thread_reply",
19
- ]);
20
- const MENTION_BEHAVIORS = new Set(["strip", "preserve"]);
21
- const MAPPINGS = new Set(["thread", "conversation", "message"]);
22
- /**
23
- * Declare a managed Slack channel. Files under `channels/*.ts` export a named
24
- * `channel` created with this helper.
25
- */
26
- export function defineSlackChannel(config) {
27
- const normalized = validateAndNormalize(config);
28
- return defineChannel({
29
- provider: "slack",
30
- adapter: slackChannelAdapter,
31
- config: normalized,
32
- toManifest: (name) => {
33
- const { name: _n, provider: _p, ...body } = toChannelManifest(name, normalized);
34
- return body;
35
- },
36
- });
37
- }
38
- /** Derive Slack OAuth scopes from enabled channel triggers. */
39
- export function requiredSlackScopes(config) {
40
- const scopes = new Set(["chat:write"]);
41
- for (const trigger of config.on) {
42
- if (trigger === "app_mention") {
43
- scopes.add("app_mentions:read");
44
- }
45
- if (trigger === "direct_message") {
46
- scopes.add("im:history");
47
- }
48
- if (trigger === "thread_reply") {
49
- scopes.add("channels:history");
50
- scopes.add("groups:history");
51
- }
52
- }
53
- return [...scopes].sort();
54
- }
55
- /** Build the compile/deploy channel manifest for a file-derived name. */
56
- export function toChannelManifest(name, definition) {
57
- const config = "config" in definition && definition.config
58
- ? definition.config
59
- : definition;
60
- const scopes = requiredSlackScopes(config);
61
- return {
62
- name,
63
- provider: "slack",
64
- autoReply: config.autoReply,
65
- requiredPermissions: scopes,
66
- requiredEnv: [...SLACK_CHANNEL_REQUIRED_ENV],
67
- providerConfig: {
68
- triggers: config.on,
69
- mentionBehavior: config.mentionBehavior,
70
- filters: config.filters,
71
- conversation: config.conversation,
72
- },
73
- };
74
- }
75
- function validateAndNormalize(config) {
76
- if (config === null || typeof config !== "object") {
77
- throw new Error("defineSlackChannel(...) requires a configuration object.");
78
- }
79
- if (!Array.isArray(config.on) || config.on.length === 0) {
80
- throw new Error('defineSlackChannel(...) requires a non-empty `on` array of "app_mention", "direct_message", and/or "thread_reply".');
81
- }
82
- for (const trigger of config.on) {
83
- if (!SUPPORTED_TRIGGERS.has(trigger)) {
84
- throw new Error(`defineSlackChannel(...) does not support trigger "${String(trigger)}".`);
85
- }
86
- }
87
- const uniqueTriggers = [...new Set(config.on)];
88
- const autoReply = config.autoReply ?? true;
89
- if (typeof autoReply !== "boolean") {
90
- throw new Error("defineSlackChannel(...) requires `autoReply` to be a boolean.");
91
- }
92
- const mentionBehavior = config.mentionBehavior ?? "strip";
93
- if (!MENTION_BEHAVIORS.has(mentionBehavior)) {
94
- throw new Error('defineSlackChannel(...) requires `mentionBehavior` to be "strip" or "preserve".');
95
- }
96
- const filters = normalizeFilters(config.filters);
97
- const conversation = {
98
- appMention: config.conversation?.appMention ?? "thread",
99
- directMessage: config.conversation?.directMessage ?? "conversation",
100
- };
101
- if (!MAPPINGS.has(conversation.appMention)) {
102
- throw new Error('defineSlackChannel(...) requires `conversation.appMention` to be "thread", "conversation", or "message".');
103
- }
104
- if (!MAPPINGS.has(conversation.directMessage)) {
105
- throw new Error('defineSlackChannel(...) requires `conversation.directMessage` to be "thread", "conversation", or "message".');
106
- }
107
- return {
108
- on: uniqueTriggers,
109
- autoReply,
110
- mentionBehavior,
111
- filters,
112
- conversation,
113
- };
114
- }
115
- function normalizeFilters(filters) {
116
- if (filters === undefined) {
117
- return { allowSharedConversations: false };
118
- }
119
- if (filters === null || typeof filters !== "object") {
120
- throw new Error("defineSlackChannel(...) requires `filters` to be an object.");
121
- }
122
- const allowShared = filters.allowSharedConversations ?? false;
123
- if (typeof allowShared !== "boolean") {
124
- throw new Error("defineSlackChannel(...) requires `filters.allowSharedConversations` to be a boolean.");
125
- }
126
- // Phase 1 rejects Slack Connect.
127
- if (allowShared) {
128
- throw new Error("defineSlackChannel(...) rejects `filters.allowSharedConversations: true` in Phase 1.");
129
- }
130
- for (const key of [
131
- "includeConversations",
132
- "excludeConversations",
133
- "includeActors",
134
- "excludeActors",
135
- ]) {
136
- const value = filters[key];
137
- if (value === undefined)
138
- continue;
139
- if (!Array.isArray(value) ||
140
- value.some((entry) => typeof entry !== "string" || entry.trim().length === 0)) {
141
- throw new Error(`defineSlackChannel(...) requires \`filters.${key}\` to be an array of non-empty strings.`);
142
- }
143
- }
144
- return {
145
- ...(filters.includeConversations
146
- ? { includeConversations: [...filters.includeConversations] }
147
- : {}),
148
- ...(filters.excludeConversations
149
- ? { excludeConversations: [...filters.excludeConversations] }
150
- : {}),
151
- ...(filters.includeActors
152
- ? { includeActors: [...filters.includeActors] }
153
- : {}),
154
- ...(filters.excludeActors
155
- ? { excludeActors: [...filters.excludeActors] }
156
- : {}),
157
- allowSharedConversations: false,
158
- };
159
- }
160
- //# sourceMappingURL=define.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"define.js","sourceRoot":"","sources":["../../../src/channels/slack/define.ts"],"names":[],"mappings":"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"}