@agent-native/core 0.15.13 → 0.16.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (411) hide show
  1. package/README.md +37 -0
  2. package/dist/agent/app-model-defaults.d.ts +37 -0
  3. package/dist/agent/app-model-defaults.d.ts.map +1 -0
  4. package/dist/agent/app-model-defaults.js +136 -0
  5. package/dist/agent/app-model-defaults.js.map +1 -0
  6. package/dist/agent/engine/registry.d.ts +12 -7
  7. package/dist/agent/engine/registry.d.ts.map +1 -1
  8. package/dist/agent/engine/registry.js +28 -8
  9. package/dist/agent/engine/registry.js.map +1 -1
  10. package/dist/agent/production-agent.d.ts +2 -0
  11. package/dist/agent/production-agent.d.ts.map +1 -1
  12. package/dist/agent/production-agent.js +3 -1
  13. package/dist/agent/production-agent.js.map +1 -1
  14. package/dist/browser-sessions/actions.d.ts +7 -0
  15. package/dist/browser-sessions/actions.d.ts.map +1 -0
  16. package/dist/browser-sessions/actions.js +223 -0
  17. package/dist/browser-sessions/actions.js.map +1 -0
  18. package/dist/browser-sessions/routes.d.ts +7 -0
  19. package/dist/browser-sessions/routes.d.ts.map +1 -0
  20. package/dist/browser-sessions/routes.js +159 -0
  21. package/dist/browser-sessions/routes.js.map +1 -0
  22. package/dist/browser-sessions/store.d.ts +33 -0
  23. package/dist/browser-sessions/store.d.ts.map +1 -0
  24. package/dist/browser-sessions/store.js +506 -0
  25. package/dist/browser-sessions/store.js.map +1 -0
  26. package/dist/browser-sessions/types.d.ts +68 -0
  27. package/dist/browser-sessions/types.d.ts.map +1 -0
  28. package/dist/browser-sessions/types.js +2 -0
  29. package/dist/browser-sessions/types.js.map +1 -0
  30. package/dist/cli/code-agent-commands.d.ts +36 -0
  31. package/dist/cli/code-agent-commands.d.ts.map +1 -0
  32. package/dist/cli/code-agent-commands.js +192 -0
  33. package/dist/cli/code-agent-commands.js.map +1 -0
  34. package/dist/cli/code-agent-connector.d.ts +17 -0
  35. package/dist/cli/code-agent-connector.d.ts.map +1 -0
  36. package/dist/cli/code-agent-connector.js +724 -0
  37. package/dist/cli/code-agent-connector.js.map +1 -0
  38. package/dist/cli/code-agent-executor.d.ts +31 -0
  39. package/dist/cli/code-agent-executor.d.ts.map +1 -0
  40. package/dist/cli/code-agent-executor.js +921 -0
  41. package/dist/cli/code-agent-executor.js.map +1 -0
  42. package/dist/cli/code-agent-runs.d.ts +102 -0
  43. package/dist/cli/code-agent-runs.d.ts.map +1 -0
  44. package/dist/cli/code-agent-runs.js +277 -0
  45. package/dist/cli/code-agent-runs.js.map +1 -0
  46. package/dist/cli/code.d.ts +66 -0
  47. package/dist/cli/code.d.ts.map +1 -0
  48. package/dist/cli/code.js +1306 -0
  49. package/dist/cli/code.js.map +1 -0
  50. package/dist/cli/create.d.ts +2 -1
  51. package/dist/cli/create.d.ts.map +1 -1
  52. package/dist/cli/create.js +11 -1
  53. package/dist/cli/create.js.map +1 -1
  54. package/dist/cli/index.js +26 -1
  55. package/dist/cli/index.js.map +1 -1
  56. package/dist/cli/migrate.d.ts +27 -0
  57. package/dist/cli/migrate.d.ts.map +1 -1
  58. package/dist/cli/migrate.js +1328 -20
  59. package/dist/cli/migrate.js.map +1 -1
  60. package/dist/cli/templates-meta.d.ts.map +1 -1
  61. package/dist/cli/templates-meta.js +26 -2
  62. package/dist/cli/templates-meta.js.map +1 -1
  63. package/dist/cli/workspacify.d.ts +2 -0
  64. package/dist/cli/workspacify.d.ts.map +1 -1
  65. package/dist/cli/workspacify.js +2 -1
  66. package/dist/cli/workspacify.js.map +1 -1
  67. package/dist/client/AgentNative.d.ts +32 -0
  68. package/dist/client/AgentNative.d.ts.map +1 -0
  69. package/dist/client/AgentNative.js +79 -0
  70. package/dist/client/AgentNative.js.map +1 -0
  71. package/dist/client/AgentNativeEmbedded.d.ts +47 -0
  72. package/dist/client/AgentNativeEmbedded.d.ts.map +1 -0
  73. package/dist/client/AgentNativeEmbedded.js +148 -0
  74. package/dist/client/AgentNativeEmbedded.js.map +1 -0
  75. package/dist/client/AgentNativeFrame.d.ts +25 -0
  76. package/dist/client/AgentNativeFrame.d.ts.map +1 -0
  77. package/dist/client/AgentNativeFrame.js +68 -0
  78. package/dist/client/AgentNativeFrame.js.map +1 -0
  79. package/dist/client/AgentPanel.d.ts +19 -2
  80. package/dist/client/AgentPanel.d.ts.map +1 -1
  81. package/dist/client/AgentPanel.js +15 -4
  82. package/dist/client/AgentPanel.js.map +1 -1
  83. package/dist/client/AssistantChat.d.ts +1 -1
  84. package/dist/client/AssistantChat.d.ts.map +1 -1
  85. package/dist/client/AssistantChat.js +79 -48
  86. package/dist/client/AssistantChat.js.map +1 -1
  87. package/dist/client/MultiTabAssistantChat.d.ts.map +1 -1
  88. package/dist/client/MultiTabAssistantChat.js +2 -1
  89. package/dist/client/MultiTabAssistantChat.js.map +1 -1
  90. package/dist/client/NewWorkspaceAppFlow.d.ts.map +1 -1
  91. package/dist/client/NewWorkspaceAppFlow.js +3 -2
  92. package/dist/client/NewWorkspaceAppFlow.js.map +1 -1
  93. package/dist/client/browser-session-bridge.d.ts +44 -0
  94. package/dist/client/browser-session-bridge.d.ts.map +1 -0
  95. package/dist/client/browser-session-bridge.js +339 -0
  96. package/dist/client/browser-session-bridge.js.map +1 -0
  97. package/dist/client/client-action.d.ts +7 -0
  98. package/dist/client/client-action.d.ts.map +1 -0
  99. package/dist/client/client-action.js +4 -0
  100. package/dist/client/client-action.js.map +1 -0
  101. package/dist/client/components/ui/tooltip.d.ts.map +1 -1
  102. package/dist/client/components/ui/tooltip.js +1 -1
  103. package/dist/client/components/ui/tooltip.js.map +1 -1
  104. package/dist/client/composer/AgentComposerFrame.d.ts +17 -0
  105. package/dist/client/composer/AgentComposerFrame.d.ts.map +1 -0
  106. package/dist/client/composer/AgentComposerFrame.js +14 -0
  107. package/dist/client/composer/AgentComposerFrame.js.map +1 -0
  108. package/dist/client/composer/MentionPopover.d.ts.map +1 -1
  109. package/dist/client/composer/MentionPopover.js +2 -2
  110. package/dist/client/composer/MentionPopover.js.map +1 -1
  111. package/dist/client/composer/PromptComposer.d.ts +35 -2
  112. package/dist/client/composer/PromptComposer.d.ts.map +1 -1
  113. package/dist/client/composer/PromptComposer.js +31 -17
  114. package/dist/client/composer/PromptComposer.js.map +1 -1
  115. package/dist/client/composer/TiptapComposer.d.ts +20 -2
  116. package/dist/client/composer/TiptapComposer.d.ts.map +1 -1
  117. package/dist/client/composer/TiptapComposer.js +112 -22
  118. package/dist/client/composer/TiptapComposer.js.map +1 -1
  119. package/dist/client/composer/index.d.ts +3 -2
  120. package/dist/client/composer/index.d.ts.map +1 -1
  121. package/dist/client/composer/index.js +1 -0
  122. package/dist/client/composer/index.js.map +1 -1
  123. package/dist/client/composer/types.d.ts +1 -0
  124. package/dist/client/composer/types.d.ts.map +1 -1
  125. package/dist/client/composer/types.js.map +1 -1
  126. package/dist/client/extensions/AgentNativeExtensionFrame.d.ts +58 -0
  127. package/dist/client/extensions/AgentNativeExtensionFrame.d.ts.map +1 -0
  128. package/dist/client/extensions/AgentNativeExtensionFrame.e2e-host.d.ts +2 -0
  129. package/dist/client/extensions/AgentNativeExtensionFrame.e2e-host.d.ts.map +1 -0
  130. package/dist/client/extensions/AgentNativeExtensionFrame.e2e-host.js +110 -0
  131. package/dist/client/extensions/AgentNativeExtensionFrame.e2e-host.js.map +1 -0
  132. package/dist/client/extensions/AgentNativeExtensionFrame.js +354 -0
  133. package/dist/client/extensions/AgentNativeExtensionFrame.js.map +1 -0
  134. package/dist/client/extensions/AgentNativeExtensionFrame.spec.d.ts +2 -0
  135. package/dist/client/extensions/AgentNativeExtensionFrame.spec.d.ts.map +1 -0
  136. package/dist/client/extensions/AgentNativeExtensionFrame.spec.js +68 -0
  137. package/dist/client/extensions/AgentNativeExtensionFrame.spec.js.map +1 -0
  138. package/dist/client/extensions/agent-native-extension-runtime.d.ts +69 -0
  139. package/dist/client/extensions/agent-native-extension-runtime.d.ts.map +1 -0
  140. package/dist/client/extensions/agent-native-extension-runtime.js +348 -0
  141. package/dist/client/extensions/agent-native-extension-runtime.js.map +1 -0
  142. package/dist/client/extensions/index.d.ts +2 -0
  143. package/dist/client/extensions/index.d.ts.map +1 -1
  144. package/dist/client/extensions/index.js +2 -0
  145. package/dist/client/extensions/index.js.map +1 -1
  146. package/dist/client/extensions/portable-extension.d.ts +86 -0
  147. package/dist/client/extensions/portable-extension.d.ts.map +1 -0
  148. package/dist/client/extensions/portable-extension.js +480 -0
  149. package/dist/client/extensions/portable-extension.js.map +1 -0
  150. package/dist/client/host-bridge.d.ts +266 -0
  151. package/dist/client/host-bridge.d.ts.map +1 -0
  152. package/dist/client/host-bridge.js +745 -0
  153. package/dist/client/host-bridge.js.map +1 -0
  154. package/dist/client/host-tools.d.ts +40 -0
  155. package/dist/client/host-tools.d.ts.map +1 -0
  156. package/dist/client/host-tools.js +94 -0
  157. package/dist/client/host-tools.js.map +1 -0
  158. package/dist/client/index.d.ts +13 -2
  159. package/dist/client/index.d.ts.map +1 -1
  160. package/dist/client/index.js +11 -2
  161. package/dist/client/index.js.map +1 -1
  162. package/dist/client/resources/BuiltinCapabilityDetail.d.ts +10 -0
  163. package/dist/client/resources/BuiltinCapabilityDetail.d.ts.map +1 -0
  164. package/dist/client/resources/BuiltinCapabilityDetail.js +51 -0
  165. package/dist/client/resources/BuiltinCapabilityDetail.js.map +1 -0
  166. package/dist/client/resources/ResourceEditor.d.ts +3 -1
  167. package/dist/client/resources/ResourceEditor.d.ts.map +1 -1
  168. package/dist/client/resources/ResourceEditor.js +40 -17
  169. package/dist/client/resources/ResourceEditor.js.map +1 -1
  170. package/dist/client/resources/ResourceTree.d.ts.map +1 -1
  171. package/dist/client/resources/ResourceTree.js +23 -2
  172. package/dist/client/resources/ResourceTree.js.map +1 -1
  173. package/dist/client/resources/ResourcesPanel.d.ts.map +1 -1
  174. package/dist/client/resources/ResourcesPanel.js +77 -17
  175. package/dist/client/resources/ResourcesPanel.js.map +1 -1
  176. package/dist/client/resources/index.d.ts +1 -0
  177. package/dist/client/resources/index.d.ts.map +1 -1
  178. package/dist/client/resources/index.js +1 -0
  179. package/dist/client/resources/index.js.map +1 -1
  180. package/dist/client/resources/use-builtin-capabilities.d.ts +62 -0
  181. package/dist/client/resources/use-builtin-capabilities.d.ts.map +1 -0
  182. package/dist/client/resources/use-builtin-capabilities.js +54 -0
  183. package/dist/client/resources/use-builtin-capabilities.js.map +1 -0
  184. package/dist/client/resources/use-resources.d.ts +30 -2
  185. package/dist/client/resources/use-resources.d.ts.map +1 -1
  186. package/dist/client/resources/use-resources.js +42 -1
  187. package/dist/client/resources/use-resources.js.map +1 -1
  188. package/dist/client/settings/SettingsPanel.d.ts.map +1 -1
  189. package/dist/client/settings/SettingsPanel.js +151 -2
  190. package/dist/client/settings/SettingsPanel.js.map +1 -1
  191. package/dist/client/use-chat-models.d.ts.map +1 -1
  192. package/dist/client/use-chat-models.js +20 -0
  193. package/dist/client/use-chat-models.js.map +1 -1
  194. package/dist/client/use-chat-threads.d.ts.map +1 -1
  195. package/dist/client/use-chat-threads.js +46 -2
  196. package/dist/client/use-chat-threads.js.map +1 -1
  197. package/dist/client/use-chat-threads.spec.js +77 -0
  198. package/dist/client/use-chat-threads.spec.js.map +1 -1
  199. package/dist/code-agents/index.d.ts +4 -0
  200. package/dist/code-agents/index.d.ts.map +1 -0
  201. package/dist/code-agents/index.js +4 -0
  202. package/dist/code-agents/index.js.map +1 -0
  203. package/dist/connections/catalog.d.ts +134 -0
  204. package/dist/connections/catalog.d.ts.map +1 -0
  205. package/dist/connections/catalog.js +180 -0
  206. package/dist/connections/catalog.js.map +1 -0
  207. package/dist/connections/index.d.ts +2 -0
  208. package/dist/connections/index.d.ts.map +1 -0
  209. package/dist/connections/index.js +2 -0
  210. package/dist/connections/index.js.map +1 -0
  211. package/dist/extensions/change-marker.d.ts +10 -0
  212. package/dist/extensions/change-marker.d.ts.map +1 -0
  213. package/dist/extensions/change-marker.js +42 -0
  214. package/dist/extensions/change-marker.js.map +1 -0
  215. package/dist/extensions/routes.d.ts.map +1 -1
  216. package/dist/extensions/routes.js +1 -7
  217. package/dist/extensions/routes.js.map +1 -1
  218. package/dist/extensions/schema.d.ts +1 -0
  219. package/dist/extensions/schema.d.ts.map +1 -1
  220. package/dist/extensions/schema.js +1 -0
  221. package/dist/extensions/schema.js.map +1 -1
  222. package/dist/extensions/slots/routes.js +1 -1
  223. package/dist/extensions/slots/routes.js.map +1 -1
  224. package/dist/extensions/store.d.ts +3 -0
  225. package/dist/extensions/store.d.ts.map +1 -1
  226. package/dist/extensions/store.js +112 -4
  227. package/dist/extensions/store.js.map +1 -1
  228. package/dist/index.d.ts +4 -1
  229. package/dist/index.d.ts.map +1 -1
  230. package/dist/index.js +6 -1
  231. package/dist/index.js.map +1 -1
  232. package/dist/integrations/adapters/telegram.d.ts.map +1 -1
  233. package/dist/integrations/adapters/telegram.js +1 -0
  234. package/dist/integrations/adapters/telegram.js.map +1 -1
  235. package/dist/integrations/index.d.ts +5 -1
  236. package/dist/integrations/index.d.ts.map +1 -1
  237. package/dist/integrations/index.js +4 -1
  238. package/dist/integrations/index.js.map +1 -1
  239. package/dist/integrations/plugin.d.ts +8 -0
  240. package/dist/integrations/plugin.d.ts.map +1 -1
  241. package/dist/integrations/plugin.js +760 -32
  242. package/dist/integrations/plugin.js.map +1 -1
  243. package/dist/integrations/remote-commands-store.d.ts +36 -0
  244. package/dist/integrations/remote-commands-store.d.ts.map +1 -0
  245. package/dist/integrations/remote-commands-store.js +273 -0
  246. package/dist/integrations/remote-commands-store.js.map +1 -0
  247. package/dist/integrations/remote-devices-store.d.ts +43 -0
  248. package/dist/integrations/remote-devices-store.d.ts.map +1 -0
  249. package/dist/integrations/remote-devices-store.js +315 -0
  250. package/dist/integrations/remote-devices-store.js.map +1 -0
  251. package/dist/integrations/remote-push-store.d.ts +37 -0
  252. package/dist/integrations/remote-push-store.d.ts.map +1 -0
  253. package/dist/integrations/remote-push-store.js +299 -0
  254. package/dist/integrations/remote-push-store.js.map +1 -0
  255. package/dist/integrations/remote-retry-job.d.ts +7 -0
  256. package/dist/integrations/remote-retry-job.d.ts.map +1 -0
  257. package/dist/integrations/remote-retry-job.js +45 -0
  258. package/dist/integrations/remote-retry-job.js.map +1 -0
  259. package/dist/integrations/remote-run-events-store.d.ts +18 -0
  260. package/dist/integrations/remote-run-events-store.d.ts.map +1 -0
  261. package/dist/integrations/remote-run-events-store.js +82 -0
  262. package/dist/integrations/remote-run-events-store.js.map +1 -0
  263. package/dist/integrations/remote-types.d.ts +101 -0
  264. package/dist/integrations/remote-types.d.ts.map +1 -0
  265. package/dist/integrations/remote-types.js +2 -0
  266. package/dist/integrations/remote-types.js.map +1 -0
  267. package/dist/integrations/webhook-handler.d.ts +2 -0
  268. package/dist/integrations/webhook-handler.d.ts.map +1 -1
  269. package/dist/integrations/webhook-handler.js +4 -1
  270. package/dist/integrations/webhook-handler.js.map +1 -1
  271. package/dist/jobs/scheduler.d.ts +4 -2
  272. package/dist/jobs/scheduler.d.ts.map +1 -1
  273. package/dist/jobs/scheduler.js +9 -3
  274. package/dist/jobs/scheduler.js.map +1 -1
  275. package/dist/mcp-client/builtin-capabilities.d.ts +20 -0
  276. package/dist/mcp-client/builtin-capabilities.d.ts.map +1 -0
  277. package/dist/mcp-client/builtin-capabilities.js +75 -0
  278. package/dist/mcp-client/builtin-capabilities.js.map +1 -0
  279. package/dist/mcp-client/builtin-store.d.ts +10 -0
  280. package/dist/mcp-client/builtin-store.d.ts.map +1 -0
  281. package/dist/mcp-client/builtin-store.js +55 -0
  282. package/dist/mcp-client/builtin-store.js.map +1 -0
  283. package/dist/mcp-client/index.d.ts +3 -1
  284. package/dist/mcp-client/index.d.ts.map +1 -1
  285. package/dist/mcp-client/index.js +3 -1
  286. package/dist/mcp-client/index.js.map +1 -1
  287. package/dist/mcp-client/routes.d.ts +28 -0
  288. package/dist/mcp-client/routes.d.ts.map +1 -1
  289. package/dist/mcp-client/routes.js +195 -1
  290. package/dist/mcp-client/routes.js.map +1 -1
  291. package/dist/org/context.d.ts.map +1 -1
  292. package/dist/org/context.js +34 -0
  293. package/dist/org/context.js.map +1 -1
  294. package/dist/resources/handlers.d.ts +4 -0
  295. package/dist/resources/handlers.d.ts.map +1 -1
  296. package/dist/resources/handlers.js +46 -7
  297. package/dist/resources/handlers.js.map +1 -1
  298. package/dist/resources/script-helpers.d.ts +8 -1
  299. package/dist/resources/script-helpers.d.ts.map +1 -1
  300. package/dist/resources/script-helpers.js +18 -8
  301. package/dist/resources/script-helpers.js.map +1 -1
  302. package/dist/resources/store.d.ts +19 -0
  303. package/dist/resources/store.d.ts.map +1 -1
  304. package/dist/resources/store.js +86 -3
  305. package/dist/resources/store.js.map +1 -1
  306. package/dist/scripts/agent-engines/list-agent-engines.d.ts +1 -1
  307. package/dist/scripts/agent-engines/list-agent-engines.d.ts.map +1 -1
  308. package/dist/scripts/agent-engines/list-agent-engines.js +18 -7
  309. package/dist/scripts/agent-engines/list-agent-engines.js.map +1 -1
  310. package/dist/scripts/agent-engines/manage-agent-engine.d.ts.map +1 -1
  311. package/dist/scripts/agent-engines/manage-agent-engine.js +100 -7
  312. package/dist/scripts/agent-engines/manage-agent-engine.js.map +1 -1
  313. package/dist/scripts/resources/delete.d.ts.map +1 -1
  314. package/dist/scripts/resources/delete.js +4 -1
  315. package/dist/scripts/resources/delete.js.map +1 -1
  316. package/dist/scripts/resources/effective.d.ts +11 -0
  317. package/dist/scripts/resources/effective.d.ts.map +1 -0
  318. package/dist/scripts/resources/effective.js +54 -0
  319. package/dist/scripts/resources/effective.js.map +1 -0
  320. package/dist/scripts/resources/index.d.ts.map +1 -1
  321. package/dist/scripts/resources/index.js +1 -0
  322. package/dist/scripts/resources/index.js.map +1 -1
  323. package/dist/scripts/resources/list.d.ts +1 -1
  324. package/dist/scripts/resources/list.d.ts.map +1 -1
  325. package/dist/scripts/resources/list.js +17 -5
  326. package/dist/scripts/resources/list.js.map +1 -1
  327. package/dist/scripts/resources/read.d.ts +1 -1
  328. package/dist/scripts/resources/read.d.ts.map +1 -1
  329. package/dist/scripts/resources/read.js +20 -5
  330. package/dist/scripts/resources/read.js.map +1 -1
  331. package/dist/scripts/resources/write.d.ts.map +1 -1
  332. package/dist/scripts/resources/write.js +4 -1
  333. package/dist/scripts/resources/write.js.map +1 -1
  334. package/dist/scripts/runner.d.ts +11 -1
  335. package/dist/scripts/runner.d.ts.map +1 -1
  336. package/dist/scripts/runner.js +75 -27
  337. package/dist/scripts/runner.js.map +1 -1
  338. package/dist/server/action-discovery.d.ts.map +1 -1
  339. package/dist/server/action-discovery.js +5 -0
  340. package/dist/server/action-discovery.js.map +1 -1
  341. package/dist/server/agent-chat-plugin.d.ts +24 -0
  342. package/dist/server/agent-chat-plugin.d.ts.map +1 -1
  343. package/dist/server/agent-chat-plugin.js +608 -54
  344. package/dist/server/agent-chat-plugin.js.map +1 -1
  345. package/dist/server/core-routes-plugin.d.ts.map +1 -1
  346. package/dist/server/core-routes-plugin.js +2 -0
  347. package/dist/server/core-routes-plugin.js.map +1 -1
  348. package/dist/server/embedded.d.ts +72 -0
  349. package/dist/server/embedded.d.ts.map +1 -0
  350. package/dist/server/embedded.js +119 -0
  351. package/dist/server/embedded.js.map +1 -0
  352. package/dist/server/index.d.ts +8 -1
  353. package/dist/server/index.d.ts.map +1 -1
  354. package/dist/server/index.js +7 -1
  355. package/dist/server/index.js.map +1 -1
  356. package/dist/server/poll.d.ts.map +1 -1
  357. package/dist/server/poll.js +184 -13
  358. package/dist/server/poll.js.map +1 -1
  359. package/dist/server/resources-plugin.d.ts.map +1 -1
  360. package/dist/server/resources-plugin.js +11 -2
  361. package/dist/server/resources-plugin.js.map +1 -1
  362. package/dist/sharing/actions/extension-change.d.ts +4 -0
  363. package/dist/sharing/actions/extension-change.d.ts.map +1 -0
  364. package/dist/sharing/actions/extension-change.js +13 -0
  365. package/dist/sharing/actions/extension-change.js.map +1 -0
  366. package/dist/sharing/actions/set-resource-visibility.d.ts.map +1 -1
  367. package/dist/sharing/actions/set-resource-visibility.js +3 -0
  368. package/dist/sharing/actions/set-resource-visibility.js.map +1 -1
  369. package/dist/sharing/actions/share-resource.d.ts.map +1 -1
  370. package/dist/sharing/actions/share-resource.js +4 -0
  371. package/dist/sharing/actions/share-resource.js.map +1 -1
  372. package/dist/sharing/actions/unshare-resource.d.ts.map +1 -1
  373. package/dist/sharing/actions/unshare-resource.js +3 -0
  374. package/dist/sharing/actions/unshare-resource.js.map +1 -1
  375. package/dist/templates/default/AGENTS.md +3 -3
  376. package/dist/templates/workspace-core/AGENTS.md +7 -0
  377. package/dist/templates/workspace-root/AGENTS.md +7 -0
  378. package/dist/templates/workspace-root/README.md +25 -0
  379. package/dist/triggers/dispatcher.d.ts +3 -1
  380. package/dist/triggers/dispatcher.d.ts.map +1 -1
  381. package/dist/triggers/dispatcher.js +9 -3
  382. package/dist/triggers/dispatcher.js.map +1 -1
  383. package/dist/workspace-connections/index.d.ts +2 -0
  384. package/dist/workspace-connections/index.d.ts.map +1 -0
  385. package/dist/workspace-connections/index.js +2 -0
  386. package/dist/workspace-connections/index.js.map +1 -0
  387. package/dist/workspace-connections/store.d.ts +229 -0
  388. package/dist/workspace-connections/store.d.ts.map +1 -0
  389. package/dist/workspace-connections/store.js +938 -0
  390. package/dist/workspace-connections/store.js.map +1 -0
  391. package/docs/content/agent-teams.md +6 -0
  392. package/docs/content/cloneable-saas.md +1 -0
  393. package/docs/content/code-agents-ui.md +261 -0
  394. package/docs/content/dispatch.md +40 -3
  395. package/docs/content/embedding-sdk.md +459 -0
  396. package/docs/content/faq.md +1 -0
  397. package/docs/content/getting-started.md +1 -0
  398. package/docs/content/mcp-clients.md +41 -3
  399. package/docs/content/migration-workbench.md +237 -54
  400. package/docs/content/multi-app-workspace.md +41 -0
  401. package/docs/content/multi-tenancy.md +1 -1
  402. package/docs/content/template-brain.md +418 -0
  403. package/docs/content/template-dispatch.md +30 -0
  404. package/docs/content/workspace-connections.md +509 -0
  405. package/docs/content/workspace-management.md +12 -12
  406. package/docs/content/workspace.md +180 -40
  407. package/package.json +7 -2
  408. package/src/templates/default/AGENTS.md +3 -3
  409. package/src/templates/workspace-core/AGENTS.md +7 -0
  410. package/src/templates/workspace-root/AGENTS.md +7 -0
  411. package/src/templates/workspace-root/README.md +25 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"portable-extension.js","sourceRoot":"","sources":["../../../src/client/extensions/portable-extension.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,+BAA+B,EAAE,MAAM,mBAAmB,CAAC;AACpE,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAE3E,MAAM,CAAC,MAAM,oCAAoC,GAAG;IAClD,eAAe,EAAE,+BAA+B;IAChD,gBAAgB,EAAE,qCAAqC;IACvD,MAAM,EAAE,8BAA8B;IACtC,YAAY,EAAE,mCAAmC;CACzC,CAAC;AA+GX,SAAS,SAAS,CAChB,GAAG,MAAuC;IAE1C,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;AACtD,CAAC;AAED,MAAM,UAAU,+BAA+B,CAC7C,SAAyC;IAEzC,OAAO;QACL,KAAK,EAAE,SAAS,CAAC,SAAS,CAAC,QAAQ,EAAE,KAAK,EAAE,SAAS,CAAC,KAAK,CAAC;QAC5D,gBAAgB,EAAE,SAAS,CACzB,SAAS,CAAC,QAAQ,EAAE,gBAAgB,EACpC,SAAS,CAAC,gBAAgB,CAC3B;QACD,iBAAiB,EAAE,SAAS,CAC1B,SAAS,CAAC,QAAQ,EAAE,iBAAiB,EACrC,SAAS,CAAC,iBAAiB,CAC5B;QACD,aAAa,EAAE,SAAS,CACtB,SAAS,CAAC,QAAQ,EAAE,aAAa,EACjC,SAAS,CAAC,aAAa,CACxB;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,mCAAmC,CACjD,SAAyC,EACzC,MAA0B;IAE1B,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IACzB,MAAM,KAAK,GAAG,+BAA+B,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC;IAC/D,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACxB,OAAO,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AAChC,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAa;IACxC,OAAO,KAAK;SACT,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC;SACtB,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC;SACvB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;SACrB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;AAC3B,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACnC,OAAO,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IAC3E,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,MAAM,CAAC;IAChB,CAAC;AACH,CAAC;AAED,SAAS,cAAc,CAAC,KAAa;IACnC,OAAO,kBAAkB,CAAC,KAAK,CAAC,CAAC;AACnC,CAAC;AAED,SAAS,YAAY,CACnB,OAAuD,EACvD,OAA2C;IAE3C,MAAM,KAAK,GAAG,OAAO,EAAE,KAAK,IAAI,OAAO,CAAC,KAAK,IAAI,MAAM,CAAC;IACxD,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;AAC7D,CAAC;AAED,SAAS,eAAe;IACtB,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;QAC1D,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;IAC7D,CAAC;IACD,OAAO,MAAM,CAAC,YAAY,CAAC;AAC7B,CAAC;AAED,SAAS,SAAS,CAChB,SAAiB,EACjB,WAAmB,EACnB,KAAa,EACb,UAAkB;IAElB,OAAO;QACL,cAAc;QACd,gBAAgB;QAChB,cAAc,CAAC,SAAS,CAAC;QACzB,cAAc,CAAC,WAAW,CAAC;QAC3B,cAAc,CAAC,KAAK,CAAC;QACrB,cAAc,CAAC,UAAU,CAAC;KAC3B,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACd,CAAC;AAED,SAAS,UAAU,CACjB,OAAgB,EAChB,GAAW;IAEX,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACjC,IAAI,CAAC,GAAG;QAAE,OAAO,EAAE,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC/B,OAAO,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;YACnE,CAAC,CAAE,MAAyD;YAC5D,CAAC,CAAC,EAAE,CAAC;IACT,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED,SAAS,WAAW,CAClB,OAAgB,EAChB,GAAW,EACX,KAAqD;IAErD,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;AAC9C,CAAC;AAED,SAAS,uBAAuB,CAC9B,OAAgB,EAChB,SAAiB,EACjB,WAAmB,EACnB,UAAkB;IAElB,MAAM,MAAM,GAAG;QACb,cAAc;QACd,gBAAgB;QAChB,cAAc,CAAC,SAAS,CAAC;QACzB,cAAc,CAAC,WAAW,CAAC;QAC3B,EAAE;KACH,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACZ,MAAM,MAAM,GAAG,IAAI,cAAc,CAAC,UAAU,CAAC,EAAE,CAAC;IAChD,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QACvD,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC/B,IAAI,GAAG,EAAE,UAAU,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC;YAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACtE,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,6CAA6C,CAC3D,SAAS,GAAG,SAAS;IAErB,OAAO;QACL,IAAI,CAAC,UAAU,EAAE,OAAO,EAAE,OAAO;YAC/B,MAAM,OAAO,GAAG,eAAe,EAAE,CAAC;YAClC,MAAM,KAAK,GAAG,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAC7C,MAAM,IAAI,GACR,KAAK,KAAK,KAAK;gBACb,CAAC,CAAC,uBAAuB,CACrB,OAAO,EACP,SAAS,EACT,OAAO,CAAC,WAAW,EACnB,UAAU,CACX;gBACH,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,EAAE,OAAO,CAAC,WAAW,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC;YACrE,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAChC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CACxC,CAAC;YACF,MAAM,KAAK,GAAG,OAAO,EAAE,KAAK,IAAI,GAAG,CAAC;YACpC,OAAO,IAAI;iBACR,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;iBACtD,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;QAClC,CAAC;QACD,GAAG,CAAC,UAAU,EAAE,EAAE,EAAE,OAAO,EAAE,OAAO;YAClC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YACrD,IAAI,IAAI,YAAY,OAAO,EAAE,CAAC;gBAC5B,OAAO,IAAI,CAAC,IAAI,CACd,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,IAAI,IAAI,CAC5D,CAAC;YACJ,CAAC;YACD,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,IAAI,IAAI,CAAC;QACnD,CAAC;QACD,GAAG,CAAC,UAAU,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO;YACxC,MAAM,OAAO,GAAG,eAAe,EAAE,CAAC;YAClC,MAAM,KAAK,GAAG,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAC7C,IAAI,KAAK,KAAK,KAAK,EAAE,CAAC;gBACpB,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;YAClE,CAAC;YACD,MAAM,GAAG,GAAG,SAAS,CAAC,SAAS,EAAE,OAAO,CAAC,WAAW,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;YACzE,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;YACxC,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YACrC,MAAM,GAAG,GAAmC;gBAC1C,EAAE;gBACF,WAAW,EAAE,OAAO,CAAC,WAAW;gBAChC,UAAU;gBACV,IAAI;gBACJ,KAAK;gBACL,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC,EAAE,SAAS,IAAI,GAAG;gBACvC,SAAS,EAAE,GAAG;aACf,CAAC;YACF,MAAM,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC;YACjB,WAAW,CAAC,OAAO,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;YAClC,OAAO,GAAG,CAAC;QACb,CAAC;QACD,MAAM,CAAC,UAAU,EAAE,EAAE,EAAE,OAAO,EAAE,OAAO;YACrC,MAAM,OAAO,GAAG,eAAe,EAAE,CAAC;YAClC,MAAM,KAAK,GAAG,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAC7C,IAAI,KAAK,KAAK,KAAK,EAAE,CAAC;gBACpB,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;YACnE,CAAC;YACD,MAAM,GAAG,GAAG,SAAS,CAAC,SAAS,EAAE,OAAO,CAAC,WAAW,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;YACzE,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;YACxC,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;YACpC,OAAO,MAAM,CAAC,EAAE,CAAC,CAAC;YAClB,WAAW,CAAC,OAAO,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;YAClC,OAAO,EAAE,OAAO,EAAE,CAAC;QACrB,CAAC;KACF,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,yBAAyB,CACtC,OAAgE,EAChE,OAA2C;IAE3C,OAAO,OAAO,OAAO,KAAK,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;AACpE,CAAC;AAED,KAAK,UAAU,uBAAuB,CACpC,QAAkB;IAElB,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;IACnC,IAAI,IAAI,GAAY,IAAI,CAAC;IACzB,IAAI,IAAI,EAAE,CAAC;QACT,IAAI,CAAC;YACH,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC1B,CAAC;QAAC,MAAM,CAAC;YACP,IAAI,GAAG,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,OAAO,GACX,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAO,IAAI,IAAI;YACjD,CAAC,CAAC,MAAM,CAAE,IAA2B,CAAC,KAAK,CAAC;YAC5C,CAAC,CAAC,qCAAqC,QAAQ,CAAC,MAAM,EAAE,CAAC;QAC7D,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;IAC3B,CAAC;IAED,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,QAAQ,IAAI,IAAI,EAAE,CAAC;QACzD,OAAQ,IAA4B,CAAC,MAAM,CAAC;IAC9C,CAAC;IACD,OAAO,IAAe,CAAC;AACzB,CAAC;AAED,MAAM,UAAU,qCAAqC,CAAC,EACpD,QAAQ,EACR,KAAK,EAAE,SAAS,EAChB,OAAO,EACP,WAAW,GAAG,aAAa,GACkB;IAC7C,MAAM,GAAG,GAAG,KAAK,EACf,SAA4C,EAC5C,UAAkB,EAClB,OAA2C,EAC3C,OAA4C,EAC5C,EAAW,EACX,IAAc,EACI,EAAE;QACpB,MAAM,YAAY,GAAG,SAAS,IAAI,KAAK,CAAC;QACxC,IAAI,OAAO,YAAY,KAAK,UAAU,EAAE,CAAC;YACvC,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;QAClE,CAAC;QACD,MAAM,eAAe,GAAG,IAAI,OAAO,CACjC,MAAM,yBAAyB,CAAC,OAAO,EAAE,OAAO,CAAC,CAClD,CAAC;QACF,eAAe,CAAC,GAAG,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC;QAExD,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,QAAQ,EAAE;YAC5C,MAAM,EAAE,MAAM;YACd,WAAW;YACX,OAAO,EAAE,eAAe;YACxB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,SAAS;gBACT,WAAW,EAAE,OAAO,CAAC,WAAW;gBAChC,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,UAAU;gBACV,EAAE;gBACF,IAAI;gBACJ,OAAO,EAAE,OAAO,IAAI,EAAE;gBACtB,OAAO;aACR,CAAC;SACH,CAAC,CAAC;QACH,OAAO,uBAAuB,CAAU,QAAQ,CAAC,CAAC;IACpD,CAAC,CAAC;IAEF,OAAO;QACL,IAAI,CAAC,UAAU,EAAE,OAAO,EAAE,OAAO;YAC/B,OAAO,GAAG,CACR,MAAM,EACN,UAAU,EACV,OAAO,EACP,OAAO,CACR,CAAC;QACJ,CAAC;QACD,GAAG,CAAC,UAAU,EAAE,EAAE,EAAE,OAAO,EAAE,OAAO;YAClC,OAAO,GAAG,CACR,KAAK,EACL,UAAU,EACV,OAAO,EACP,OAAO,EACP,EAAE,CACH,CAAC;QACJ,CAAC;QACD,GAAG,CAAC,UAAU,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO;YACxC,OAAO,GAAG,CACR,KAAK,EACL,UAAU,EACV,OAAO,EACP,OAAO,EACP,EAAE,EACF,IAAI,CACL,CAAC;QACJ,CAAC;QACD,MAAM,CAAC,UAAU,EAAE,EAAE,EAAE,OAAO,EAAE,OAAO;YACrC,OAAO,GAAG,CACR,QAAQ,EACR,UAAU,EACV,OAAO,EACP,OAAO,EACP,EAAE,CACH,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,oCAAoC,CAClD,OAA2B;IAE3B,MAAM,MAAM,GAAG,IAAI,GAAG,CACpB,CAAC,OAAO,IAAI,wDAAwD,CAAC;SAClE,KAAK,CAAC,KAAK,CAAC;SACZ,MAAM,CAAC,OAAO,CAAC,CACnB,CAAC;IACF,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC;IACnC,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IAC5B,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACtC,CAAC;AAED,MAAM,UAAU,6BAA6B,CAAC,EAC5C,WAAW,EACX,OAAO,EACP,KAAK,EACL,MAAM,EACN,WAAW,EACX,QAAQ,GAAG,EAAE,EACb,MAAM,GAAG,KAAK,GACuB;IACrC,MAAM,eAAe,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC;IAC9C,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;IAC1C,MAAM,eAAe,GAAG,QAAQ,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;IACpD,MAAM,gBAAgB,GAAG,QAAQ,CAAC;QAChC,IAAI,EAAE,+BAA+B;QACrC,SAAS,EAAE,oCAAoC;KAChD,CAAC,CAAC;IACH,MAAM,SAAS,GAAG,KAAK,IAAI,wBAAwB,CAAC;IAEpD,OAAO;iBACQ,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE;;;;wDAIU,mBAAmB,CAAC,yBAAyB,CAAC;WAC3F,mBAAmB,CAAC,SAAS,CAAC;;;;;;;;;;;;;;;WAe9B,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2BAkCQ,gBAAgB;0BACjB,eAAe;qBACpB,UAAU;0BACL,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiLvC,OAAO;;QAED,CAAC;AACT,CAAC","sourcesContent":["import { AGENT_NATIVE_HOST_MESSAGE_TYPES } from \"../host-bridge.js\";\nimport { EXTENSION_IFRAME_META_CSP } from \"../../extensions/html-shell.js\";\n\nexport const AGENT_NATIVE_EXTENSION_MESSAGE_TYPES = {\n STORAGE_REQUEST: \"agentNative.extension.storage\",\n STORAGE_RESPONSE: \"agentNative.extension.storageResult\",\n RESIZE: \"agentNative.extension.resize\",\n SLOT_CONTEXT: \"agentNative.extension.slotContext\",\n} as const;\n\nexport type AgentNativeExtensionMessageType =\n (typeof AGENT_NATIVE_EXTENSION_MESSAGE_TYPES)[keyof typeof AGENT_NATIVE_EXTENSION_MESSAGE_TYPES];\n\nexport type AgentNativeExtensionStorageScope = \"user\" | \"org\" | \"all\" | string;\n\nexport interface AgentNativeExtensionManifest {\n /** Slot IDs this extension may render into. Omit to let the host decide. */\n slots?: readonly string[];\n /** Host action names this extension is allowed to call. Omit to inherit the slot policy. */\n requestedActions?: readonly string[];\n /** Host command names this extension is allowed to call. Omit to inherit the slot policy. */\n requestedCommands?: readonly string[];\n /** Storage scopes this extension is allowed to use. Omit to inherit the slot policy. */\n storageScopes?: readonly AgentNativeExtensionStorageScope[];\n}\n\nexport interface AgentNativeExtensionDefinition {\n id: string;\n name: string;\n content: string;\n description?: string;\n updatedAt?: string;\n manifest?: AgentNativeExtensionManifest;\n slots?: readonly string[];\n requestedActions?: readonly string[];\n requestedCommands?: readonly string[];\n storageScopes?: readonly AgentNativeExtensionStorageScope[];\n [key: string]: unknown;\n}\n\nexport interface AgentNativeExtensionStorageOptions {\n scope?: AgentNativeExtensionStorageScope;\n limit?: number;\n [key: string]: unknown;\n}\n\nexport interface AgentNativeExtensionStorageContext {\n extensionId: string;\n slotId?: string;\n scope?: Exclude<AgentNativeExtensionStorageScope, \"all\"> | string;\n userId?: string;\n organizationId?: string;\n [key: string]: unknown;\n}\n\nexport interface AgentNativeExtensionStorageRow<TData = unknown> {\n id: string;\n extensionId: string;\n collection: string;\n data: TData;\n scope: string;\n createdAt: string;\n updatedAt: string;\n}\n\nexport interface AgentNativeExtensionStorage {\n list(\n collection: string,\n options: AgentNativeExtensionStorageOptions | undefined,\n context: AgentNativeExtensionStorageContext,\n ):\n | AgentNativeExtensionStorageRow[]\n | Promise<AgentNativeExtensionStorageRow[]>;\n get(\n collection: string,\n id: string,\n options: AgentNativeExtensionStorageOptions | undefined,\n context: AgentNativeExtensionStorageContext,\n ):\n | AgentNativeExtensionStorageRow\n | null\n | Promise<AgentNativeExtensionStorageRow | null>;\n set(\n collection: string,\n id: string,\n data: unknown,\n options: AgentNativeExtensionStorageOptions | undefined,\n context: AgentNativeExtensionStorageContext,\n ): AgentNativeExtensionStorageRow | Promise<AgentNativeExtensionStorageRow>;\n remove(\n collection: string,\n id: string,\n options: AgentNativeExtensionStorageOptions | undefined,\n context: AgentNativeExtensionStorageContext,\n ): { removed: boolean } | Promise<{ removed: boolean }>;\n}\n\nexport interface CreateHttpAgentNativeExtensionStorageOptions {\n /** Endpoint that receives storage operation POSTs. */\n endpoint: string;\n fetch?: typeof fetch;\n headers?:\n | HeadersInit\n | ((\n context: AgentNativeExtensionStorageContext,\n ) => HeadersInit | Promise<HeadersInit>);\n credentials?: RequestCredentials;\n}\n\nexport interface BuildAgentNativeExtensionHtmlOptions {\n extensionId: string;\n content: string;\n title?: string;\n slotId?: string;\n slotContext?: Record<string, unknown> | null;\n themeCss?: string;\n isDark?: boolean;\n}\n\nfunction firstList<T>(\n ...values: Array<readonly T[] | undefined>\n): readonly T[] | undefined {\n return values.find((value) => Array.isArray(value));\n}\n\nexport function getAgentNativeExtensionManifest(\n extension: AgentNativeExtensionDefinition,\n): AgentNativeExtensionManifest {\n return {\n slots: firstList(extension.manifest?.slots, extension.slots),\n requestedActions: firstList(\n extension.manifest?.requestedActions,\n extension.requestedActions,\n ),\n requestedCommands: firstList(\n extension.manifest?.requestedCommands,\n extension.requestedCommands,\n ),\n storageScopes: firstList(\n extension.manifest?.storageScopes,\n extension.storageScopes,\n ),\n };\n}\n\nexport function isAgentNativeExtensionAllowedInSlot(\n extension: AgentNativeExtensionDefinition,\n slotId: string | undefined,\n): boolean {\n if (!slotId) return true;\n const slots = getAgentNativeExtensionManifest(extension).slots;\n if (!slots) return true;\n return slots.includes(slotId);\n}\n\nfunction escapeHtmlAttribute(value: string): string {\n return value\n .replace(/&/g, \"&amp;\")\n .replace(/\"/g, \"&quot;\")\n .replace(/</g, \"&lt;\")\n .replace(/>/g, \"&gt;\");\n}\n\nfunction safeJson(value: unknown): string {\n try {\n const json = JSON.stringify(value);\n return typeof json === \"string\" ? json.replace(/</g, \"\\\\u003c\") : \"null\";\n } catch {\n return \"null\";\n }\n}\n\nfunction encodedSegment(value: string): string {\n return encodeURIComponent(value);\n}\n\nfunction storageScope(\n options: AgentNativeExtensionStorageOptions | undefined,\n context: AgentNativeExtensionStorageContext,\n): string {\n const scope = options?.scope ?? context.scope ?? \"user\";\n return typeof scope === \"string\" && scope ? scope : \"user\";\n}\n\nfunction localStorageRef(): Storage {\n if (typeof window === \"undefined\" || !window.localStorage) {\n throw new Error(\"Extension localStorage is not available\");\n }\n return window.localStorage;\n}\n\nfunction bucketKey(\n namespace: string,\n extensionId: string,\n scope: string,\n collection: string,\n): string {\n return [\n \"agent-native\",\n \"extension-data\",\n encodedSegment(namespace),\n encodedSegment(extensionId),\n encodedSegment(scope),\n encodedSegment(collection),\n ].join(\":\");\n}\n\nfunction readBucket(\n storage: Storage,\n key: string,\n): Record<string, AgentNativeExtensionStorageRow> {\n const raw = storage.getItem(key);\n if (!raw) return {};\n try {\n const parsed = JSON.parse(raw);\n return parsed && typeof parsed === \"object\" && !Array.isArray(parsed)\n ? (parsed as Record<string, AgentNativeExtensionStorageRow>)\n : {};\n } catch {\n return {};\n }\n}\n\nfunction writeBucket(\n storage: Storage,\n key: string,\n value: Record<string, AgentNativeExtensionStorageRow>,\n) {\n storage.setItem(key, JSON.stringify(value));\n}\n\nfunction listLocalStorageBuckets(\n storage: Storage,\n namespace: string,\n extensionId: string,\n collection: string,\n): string[] {\n const prefix = [\n \"agent-native\",\n \"extension-data\",\n encodedSegment(namespace),\n encodedSegment(extensionId),\n \"\",\n ].join(\":\");\n const suffix = `:${encodedSegment(collection)}`;\n const keys: string[] = [];\n for (let index = 0; index < storage.length; index += 1) {\n const key = storage.key(index);\n if (key?.startsWith(prefix) && key.endsWith(suffix)) keys.push(key);\n }\n return keys;\n}\n\nexport function createLocalStorageAgentNativeExtensionStorage(\n namespace = \"default\",\n): AgentNativeExtensionStorage {\n return {\n list(collection, options, context) {\n const storage = localStorageRef();\n const scope = storageScope(options, context);\n const keys =\n scope === \"all\"\n ? listLocalStorageBuckets(\n storage,\n namespace,\n context.extensionId,\n collection,\n )\n : [bucketKey(namespace, context.extensionId, scope, collection)];\n const rows = keys.flatMap((key) =>\n Object.values(readBucket(storage, key)),\n );\n const limit = options?.limit ?? 100;\n return rows\n .sort((a, b) => b.updatedAt.localeCompare(a.updatedAt))\n .slice(0, Math.max(0, limit));\n },\n get(collection, id, options, context) {\n const rows = this.list(collection, options, context);\n if (rows instanceof Promise) {\n return rows.then(\n (resolved) => resolved.find((row) => row.id === id) ?? null,\n );\n }\n return rows.find((row) => row.id === id) ?? null;\n },\n set(collection, id, data, options, context) {\n const storage = localStorageRef();\n const scope = storageScope(options, context);\n if (scope === \"all\") {\n throw new Error('Extension data writes cannot use scope \"all\"');\n }\n const key = bucketKey(namespace, context.extensionId, scope, collection);\n const bucket = readBucket(storage, key);\n const now = new Date().toISOString();\n const row: AgentNativeExtensionStorageRow = {\n id,\n extensionId: context.extensionId,\n collection,\n data,\n scope,\n createdAt: bucket[id]?.createdAt ?? now,\n updatedAt: now,\n };\n bucket[id] = row;\n writeBucket(storage, key, bucket);\n return row;\n },\n remove(collection, id, options, context) {\n const storage = localStorageRef();\n const scope = storageScope(options, context);\n if (scope === \"all\") {\n throw new Error('Extension data deletes cannot use scope \"all\"');\n }\n const key = bucketKey(namespace, context.extensionId, scope, collection);\n const bucket = readBucket(storage, key);\n const removed = Boolean(bucket[id]);\n delete bucket[id];\n writeBucket(storage, key, bucket);\n return { removed };\n },\n };\n}\n\nasync function resolveHttpStorageHeaders(\n headers: CreateHttpAgentNativeExtensionStorageOptions[\"headers\"],\n context: AgentNativeExtensionStorageContext,\n): Promise<HeadersInit | undefined> {\n return typeof headers === \"function\" ? headers(context) : headers;\n}\n\nasync function readHttpStorageResponse<TResult>(\n response: Response,\n): Promise<TResult> {\n const text = await response.text();\n let body: unknown = text;\n if (text) {\n try {\n body = JSON.parse(text);\n } catch {\n body = text;\n }\n }\n\n if (!response.ok) {\n const message =\n body && typeof body === \"object\" && \"error\" in body\n ? String((body as { error: unknown }).error)\n : `Extension storage request failed: ${response.status}`;\n throw new Error(message);\n }\n\n if (body && typeof body === \"object\" && \"result\" in body) {\n return (body as { result: TResult }).result;\n }\n return body as TResult;\n}\n\nexport function createHttpAgentNativeExtensionStorage({\n endpoint,\n fetch: fetchImpl,\n headers,\n credentials = \"same-origin\",\n}: CreateHttpAgentNativeExtensionStorageOptions): AgentNativeExtensionStorage {\n const run = async <TResult>(\n operation: \"list\" | \"get\" | \"set\" | \"remove\",\n collection: string,\n context: AgentNativeExtensionStorageContext,\n options?: AgentNativeExtensionStorageOptions,\n id?: string,\n data?: unknown,\n ): Promise<TResult> => {\n const requestFetch = fetchImpl ?? fetch;\n if (typeof requestFetch !== \"function\") {\n throw new Error(\"fetch is not available for extension storage\");\n }\n const resolvedHeaders = new Headers(\n await resolveHttpStorageHeaders(headers, context),\n );\n resolvedHeaders.set(\"Content-Type\", \"application/json\");\n\n const response = await requestFetch(endpoint, {\n method: \"POST\",\n credentials,\n headers: resolvedHeaders,\n body: JSON.stringify({\n operation,\n extensionId: context.extensionId,\n slotId: context.slotId,\n collection,\n id,\n data,\n options: options ?? {},\n context,\n }),\n });\n return readHttpStorageResponse<TResult>(response);\n };\n\n return {\n list(collection, options, context) {\n return run<AgentNativeExtensionStorageRow[]>(\n \"list\",\n collection,\n context,\n options,\n );\n },\n get(collection, id, options, context) {\n return run<AgentNativeExtensionStorageRow | null>(\n \"get\",\n collection,\n context,\n options,\n id,\n );\n },\n set(collection, id, data, options, context) {\n return run<AgentNativeExtensionStorageRow>(\n \"set\",\n collection,\n context,\n options,\n id,\n data,\n );\n },\n remove(collection, id, options, context) {\n return run<{ removed: boolean }>(\n \"remove\",\n collection,\n context,\n options,\n id,\n );\n },\n };\n}\n\nexport function normalizeAgentNativeExtensionSandbox(\n sandbox: string | undefined,\n): string {\n const tokens = new Set(\n (sandbox ?? \"allow-scripts allow-forms allow-popups allow-downloads\")\n .split(/\\s+/)\n .filter(Boolean),\n );\n tokens.delete(\"allow-same-origin\");\n tokens.add(\"allow-scripts\");\n return Array.from(tokens).join(\" \");\n}\n\nexport function buildAgentNativeExtensionHtml({\n extensionId,\n content,\n title,\n slotId,\n slotContext,\n themeCss = \"\",\n isDark = false,\n}: BuildAgentNativeExtensionHtmlOptions): string {\n const extensionIdJson = safeJson(extensionId);\n const slotIdJson = safeJson(slotId ?? \"\");\n const slotContextJson = safeJson(slotContext ?? {});\n const messageTypesJson = safeJson({\n host: AGENT_NATIVE_HOST_MESSAGE_TYPES,\n extension: AGENT_NATIVE_EXTENSION_MESSAGE_TYPES,\n });\n const titleText = title ?? \"Agent Native extension\";\n\n return `<!DOCTYPE html>\n<html lang=\"en\"${isDark ? ' class=\"dark\"' : \"\"}>\n<head>\n <meta charset=\"utf-8\" />\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\" />\n <meta http-equiv=\"Content-Security-Policy\" content=\"${escapeHtmlAttribute(EXTENSION_IFRAME_META_CSP)}\" />\n <title>${escapeHtmlAttribute(titleText)}</title>\n <link rel=\"preconnect\" href=\"https://fonts.googleapis.com\" />\n <link rel=\"preconnect\" href=\"https://fonts.gstatic.com\" crossorigin />\n <link href=\"https://fonts.googleapis.com/css2?family=Inter:wght@300..700&display=swap\" rel=\"stylesheet\" />\n <script\n src=\"https://cdn.jsdelivr.net/npm/@tailwindcss/browser@4.2.4\"\n integrity=\"sha384-yNSZBFvuOWcmww494a9+1zNuvgUGEXoWkein7cxP8wHUTi3iXCU4vJ7hr3tzBCml\"\n crossorigin=\"anonymous\"\n ></script>\n <script\n defer\n src=\"https://cdn.jsdelivr.net/npm/alpinejs@3.15.11/dist/cdn.min.js\"\n integrity=\"sha384-WPtu0YHhJ3arcykfnv1JgUffWDSKRnqnDeTpJUbOc2os2moEmLkIdaeR0trPN4be\"\n crossorigin=\"anonymous\"\n ></script>\n <style>${themeCss}</style>\n <style type=\"text/tailwindcss\">\n @custom-variant dark (&:where(.dark, .dark *));\n @theme {\n --color-border: hsl(var(--border, 214 32% 91%));\n --color-background: hsl(var(--background, 0 0% 100%));\n --color-foreground: hsl(var(--foreground, 222 47% 11%));\n --color-primary: hsl(var(--primary, 222 47% 11%));\n --color-primary-foreground: hsl(var(--primary-foreground, 210 40% 98%));\n --color-muted: hsl(var(--muted, 210 40% 96%));\n --color-muted-foreground: hsl(var(--muted-foreground, 215 16% 47%));\n --color-card: hsl(var(--card, 0 0% 100%));\n --color-card-foreground: hsl(var(--card-foreground, 222 47% 11%));\n --radius-lg: var(--radius, .5rem);\n --radius-md: calc(var(--radius, .5rem) - 2px);\n --radius-sm: calc(var(--radius, .5rem) - 4px);\n }\n </style>\n <style>\n *, *::before, *::after { box-sizing: border-box; border-color: hsl(var(--border, 214 32% 91%)); }\n html, body { margin: 0; min-height: 100%; background: transparent; color: hsl(var(--foreground, 222 47% 11%)); }\n body {\n --agent-native-extension-padding: clamp(12px, 2vw, 20px);\n font-family: Inter, ui-sans-serif, system-ui, sans-serif;\n padding: var(--agent-native-extension-padding);\n }\n body:has(> [data-extension-layout=\"full-bleed\"]),\n body:has(> [data-extension-padding=\"none\"]),\n body:has(> .agent-native-extension-bleed) {\n padding: 0;\n }\n </style>\n <script>\n (function() {\n var messageTypes = ${messageTypesJson};\n var extensionId = ${extensionIdJson};\n var slotId = ${slotIdJson};\n var slotContext = ${slotContextJson};\n var requestSeq = 0;\n var pending = {};\n\n function nextRequestId(prefix) {\n requestSeq += 1;\n return prefix + '-' + Date.now() + '-' + requestSeq;\n }\n\n function failMessage(message, fallback) {\n return typeof message.error === 'string' ? message.error : fallback;\n }\n\n function requestParent(message, responseType, timeoutMs) {\n timeoutMs = timeoutMs || 30000;\n return new Promise(function(resolve, reject) {\n var requestId = message.requestId || nextRequestId('extension');\n var timer = setTimeout(function() {\n delete pending[requestId];\n reject(new Error('Timed out waiting for host response'));\n }, timeoutMs);\n pending[requestId] = {\n responseType: responseType,\n resolve: resolve,\n reject: reject,\n timer: timer,\n };\n window.parent.postMessage(Object.assign({}, message, { requestId: requestId }), '*');\n });\n }\n\n window.addEventListener('message', function(event) {\n if (event.source !== window.parent) return;\n var message = event.data || {};\n\n if (message.type === messageTypes.host.INIT) {\n agentNative.init = message;\n agentNative.contextSnapshot = message.context || null;\n agentNative.actionsSnapshot = message.actions || [];\n window.dispatchEvent(new CustomEvent('agentNative:init', { detail: message }));\n return;\n }\n\n if (message.type === messageTypes.extension.SLOT_CONTEXT) {\n slotContext = message.context || {};\n agentNative.slotContext = slotContext;\n window.slotContext = slotContext;\n window.dispatchEvent(new CustomEvent('agentNative:slot-context', { detail: slotContext }));\n return;\n }\n\n var entry = pending[message.requestId];\n if (!entry || message.type !== entry.responseType) return;\n delete pending[message.requestId];\n clearTimeout(entry.timer);\n if (message.ok === false) {\n entry.reject(new Error(failMessage(message, 'Host request failed')));\n } else {\n entry.resolve(message);\n }\n });\n\n function hostContext() {\n return requestParent(\n { type: messageTypes.host.GET_CONTEXT },\n messageTypes.host.CONTEXT,\n ).then(function(message) { return message.context || {}; });\n }\n\n function hostActions() {\n return requestParent(\n { type: messageTypes.host.LIST_ACTIONS },\n messageTypes.host.ACTIONS,\n ).then(function(message) { return message.actions || []; });\n }\n\n function hostAction(name, args) {\n return requestParent(\n { type: messageTypes.host.RUN_ACTION, name: name, args: args || {} },\n messageTypes.host.ACTION_RESULT,\n ).then(function(message) { return message.result; });\n }\n\n function hostCommand(command, payload) {\n return requestParent(\n { type: messageTypes.host.COMMAND, command: command, payload: payload },\n messageTypes.host.COMMAND_RESULT,\n ).then(function(message) { return message.result; });\n }\n\n function storageRequest(op, collection, id, data, options) {\n return requestParent(\n {\n type: messageTypes.extension.STORAGE_REQUEST,\n op: op,\n collection: collection,\n id: id,\n data: data,\n options: options || {},\n },\n messageTypes.extension.STORAGE_RESPONSE,\n ).then(function(message) { return message.result; });\n }\n\n var extensionData = {\n list: function(collection, options) {\n return storageRequest('list', collection, undefined, undefined, options);\n },\n get: function(collection, id, options) {\n return storageRequest('get', collection, id, undefined, options);\n },\n set: function(collection, id, data, options) {\n return storageRequest('set', collection, id, data, options);\n },\n remove: function(collection, id, options) {\n return storageRequest('remove', collection, id, undefined, options);\n },\n };\n\n var agentNative = {\n version: '0.1.0',\n extensionId: extensionId,\n slotId: slotId,\n slotContext: slotContext,\n contextSnapshot: null,\n actionsSnapshot: [],\n init: null,\n context: hostContext,\n listActions: hostActions,\n action: hostAction,\n command: hostCommand,\n refresh: function(payload) { return hostCommand('refreshData', payload); },\n data: extensionData,\n };\n\n window.agentNative = agentNative;\n window.appAction = hostAction;\n window.extensionData = extensionData;\n window.toolData = extensionData;\n window.extensionId = extensionId;\n window.toolId = extensionId;\n window.slotContext = slotContext;\n\n function reportHeight() {\n try {\n var doc = document.documentElement;\n var body = document.body;\n var height = Math.max(\n doc ? doc.scrollHeight : 0,\n doc ? doc.offsetHeight : 0,\n body ? body.scrollHeight : 0,\n body ? body.offsetHeight : 0,\n );\n window.parent.postMessage({\n type: messageTypes.extension.RESIZE,\n extensionId: extensionId,\n slotId: slotId,\n height: height,\n }, '*');\n } catch (_) {}\n }\n\n window.addEventListener('load', reportHeight);\n if (typeof ResizeObserver !== 'undefined') {\n new ResizeObserver(reportHeight).observe(document.documentElement);\n } else {\n setInterval(reportHeight, 1000);\n }\n\n window.parent.postMessage({\n type: messageTypes.host.READY,\n requestId: nextRequestId('ready'),\n }, '*');\n })();\n </script>\n</head>\n<body>\n${content}\n</body>\n</html>`;\n}\n"]}
@@ -0,0 +1,266 @@
1
+ export declare const AGENT_NATIVE_HOST_BRIDGE_VERSION = "0.1.0";
2
+ export declare const AGENT_NATIVE_HOST_MESSAGE_TYPES: {
3
+ readonly READY: "agentNative.host.ready";
4
+ readonly INIT: "agentNative.host.init";
5
+ readonly GET_CONTEXT: "agentNative.host.getContext";
6
+ readonly CONTEXT: "agentNative.host.context";
7
+ readonly AUTH: "agentNative.host.auth";
8
+ readonly LIST_ACTIONS: "agentNative.host.listActions";
9
+ readonly ACTIONS: "agentNative.host.actions";
10
+ readonly RUN_ACTION: "agentNative.host.runAction";
11
+ readonly ACTION_RESULT: "agentNative.host.actionResult";
12
+ readonly COMMAND: "agentNative.host.command";
13
+ readonly COMMAND_RESULT: "agentNative.host.commandResult";
14
+ readonly ERROR: "agentNative.host.error";
15
+ };
16
+ export type AgentNativeHostMessageType = (typeof AGENT_NATIVE_HOST_MESSAGE_TYPES)[keyof typeof AGENT_NATIVE_HOST_MESSAGE_TYPES];
17
+ export type BuiltInAgentNativeHostCommand = "navigate" | "refreshData" | "refresh-data" | "remountView" | "remount-view" | "hardReload" | "hard-reload" | "openResource" | "open-resource" | "requestApproval" | "request-approval";
18
+ export type AgentNativeJsonSchema = Record<string, unknown>;
19
+ export type AgentNativeActionAvailability = "browser-session" | "current-page" | "backend" | "always";
20
+ export interface AgentNativeActionManifestEntry {
21
+ name: string;
22
+ description: string;
23
+ schema?: AgentNativeJsonSchema;
24
+ /** Alias for schema for function-calling/tooling runtimes. */
25
+ parameters?: AgentNativeJsonSchema;
26
+ title?: string;
27
+ source?: "client" | "backend" | string;
28
+ availability?: AgentNativeActionAvailability | string;
29
+ destructive?: boolean;
30
+ requiresApproval?: boolean | AgentNativeClientActionApprovalConfig;
31
+ approval?: AgentNativeClientActionApprovalConfig;
32
+ [key: string]: unknown;
33
+ }
34
+ export interface AgentNativeClientActionApprovalConfig {
35
+ title?: string;
36
+ description?: string;
37
+ confirmLabel?: string;
38
+ risk?: "low" | "medium" | "high" | string;
39
+ [key: string]: unknown;
40
+ }
41
+ export interface AgentNativeHostSession {
42
+ id: string;
43
+ label?: string;
44
+ connectedAt: string;
45
+ url?: string;
46
+ [key: string]: unknown;
47
+ }
48
+ export interface AgentNativeClientActionRuntime {
49
+ requestId?: string;
50
+ origin: string;
51
+ context: AgentNativeHostContext;
52
+ session: AgentNativeHostSession;
53
+ event: MessageEvent;
54
+ refresh(payload?: unknown): Promise<unknown>;
55
+ command(command: string, payload?: unknown): Promise<unknown>;
56
+ }
57
+ export interface AgentNativeClientAction<TArgs = unknown, TResult = unknown> extends AgentNativeActionManifestEntry {
58
+ run(args: TArgs, runtime: AgentNativeClientActionRuntime): TResult | Promise<TResult>;
59
+ }
60
+ export type AgentNativeClientActionGetter = () => AgentNativeClientAction[] | Promise<AgentNativeClientAction[]>;
61
+ export type AgentNativeClientActions = AgentNativeClientAction[] | AgentNativeClientActionGetter;
62
+ export interface AgentNativeHostRouteContext {
63
+ pathname?: string;
64
+ search?: string;
65
+ hash?: string;
66
+ name?: string;
67
+ params?: Record<string, string | number | boolean | null | undefined>;
68
+ [key: string]: unknown;
69
+ }
70
+ export interface AgentNativeHostSelectionContext {
71
+ type?: string;
72
+ text?: string;
73
+ ids?: string[];
74
+ ranges?: unknown[];
75
+ [key: string]: unknown;
76
+ }
77
+ export interface AgentNativeHostResourceContext {
78
+ type?: string;
79
+ id?: string;
80
+ name?: string;
81
+ [key: string]: unknown;
82
+ }
83
+ export interface AgentNativeHostPrincipalContext {
84
+ id?: string;
85
+ email?: string;
86
+ name?: string;
87
+ [key: string]: unknown;
88
+ }
89
+ export interface AgentNativeHostCapabilities {
90
+ commands?: string[];
91
+ actions?: string[];
92
+ refresh?: boolean;
93
+ [key: string]: unknown;
94
+ }
95
+ export interface AgentNativeHostContext {
96
+ url?: string;
97
+ title?: string;
98
+ route?: AgentNativeHostRouteContext;
99
+ screen?: AgentNativeScreenSnapshot;
100
+ session?: AgentNativeHostSession;
101
+ selection?: AgentNativeHostSelectionContext;
102
+ resource?: AgentNativeHostResourceContext;
103
+ user?: AgentNativeHostPrincipalContext;
104
+ organization?: AgentNativeHostPrincipalContext;
105
+ capabilities?: AgentNativeHostCapabilities | string[];
106
+ data?: Record<string, unknown>;
107
+ [key: string]: unknown;
108
+ }
109
+ export interface AgentNativeHostAuthPayload {
110
+ token?: string;
111
+ headers?: Record<string, string>;
112
+ userId?: string;
113
+ organizationId?: string;
114
+ [key: string]: unknown;
115
+ }
116
+ export type AgentNativeHostAuthValue = string | AgentNativeHostAuthPayload | null | undefined;
117
+ export type AgentNativeHostAuth = AgentNativeHostAuthValue | (() => AgentNativeHostAuthValue | Promise<AgentNativeHostAuthValue>);
118
+ export type AgentNativeHostContextGetter = () => AgentNativeHostContext | Promise<AgentNativeHostContext>;
119
+ export interface AgentNativeHostCommandRequest<TPayload = unknown> {
120
+ command: string;
121
+ payload?: TPayload;
122
+ requestId?: string;
123
+ origin: string;
124
+ }
125
+ export type AgentNativeHostCommandHandler<TPayload = unknown, TResult = unknown> = (request: AgentNativeHostCommandRequest<TPayload>, event: MessageEvent) => TResult | Promise<TResult>;
126
+ export type AgentNativeHostCommandHandlers = Record<string, AgentNativeHostCommandHandler | undefined>;
127
+ export type AgentNativeHostBridgeEvent = {
128
+ type: "ready";
129
+ requestId?: string;
130
+ origin: string;
131
+ } | {
132
+ type: "init";
133
+ requestId?: string;
134
+ origin?: string;
135
+ } | {
136
+ type: "context";
137
+ requestId?: string;
138
+ origin?: string;
139
+ } | {
140
+ type: "auth";
141
+ requestId?: string;
142
+ origin?: string;
143
+ } | {
144
+ type: "actions";
145
+ requestId?: string;
146
+ count: number;
147
+ origin?: string;
148
+ } | {
149
+ type: "action";
150
+ name: string;
151
+ requestId?: string;
152
+ origin: string;
153
+ } | {
154
+ type: "command";
155
+ command: string;
156
+ requestId?: string;
157
+ origin: string;
158
+ } | {
159
+ type: "ignored";
160
+ reason: "origin" | "source" | "message";
161
+ origin: string;
162
+ } | {
163
+ type: "error";
164
+ requestId?: string;
165
+ error: Error;
166
+ origin?: string;
167
+ };
168
+ export interface AgentNativeHostBridgeOptions {
169
+ /**
170
+ * The iframe/content window that runs the agent sidecar. Can be set later
171
+ * with `bridge.setTargetWindow(iframe.contentWindow)`.
172
+ */
173
+ targetWindow?: Window | null;
174
+ /**
175
+ * Exact origin allowed to talk to the host, or a full URL whose origin should
176
+ * be trusted. Pass "*" only for local prototypes.
177
+ */
178
+ agentOrigin?: string;
179
+ /** Stable browser-session identity. Used by the sidecar to distinguish tabs. */
180
+ session?: string | Partial<AgentNativeHostSession>;
181
+ /** Return current route, selected resource, user/org, and host-specific data. */
182
+ getContext?: AgentNativeHostContextGetter;
183
+ /**
184
+ * Commands the sidecar may ask the host app to perform. If omitted, the
185
+ * bridge still supports safe event-dispatch defaults for navigation/refresh.
186
+ */
187
+ commands?: AgentNativeHostCommandHandlers;
188
+ /**
189
+ * Optional bearer token or headers for the iframe sidecar. Only sent via
190
+ * postMessage to the trusted `agentOrigin`.
191
+ */
192
+ auth?: AgentNativeHostAuth;
193
+ /**
194
+ * Live browser-session actions. These can change per render/page context and
195
+ * are only callable while this host page is connected.
196
+ */
197
+ actions?: AgentNativeClientActions;
198
+ onEvent?: (event: AgentNativeHostBridgeEvent) => void;
199
+ }
200
+ export interface AgentNativeHostBridge {
201
+ start(): AgentNativeHostBridge;
202
+ stop(): void;
203
+ setTargetWindow(targetWindow: Window | null): void;
204
+ post(message: Record<string, unknown>): boolean;
205
+ sendInit(requestId?: string): Promise<boolean>;
206
+ sendContext(requestId?: string): Promise<boolean>;
207
+ refreshContext(): Promise<boolean>;
208
+ sendAuth(requestId?: string): Promise<boolean>;
209
+ sendActions(requestId?: string): Promise<boolean>;
210
+ }
211
+ export interface AgentNativeScreenSnapshot {
212
+ url?: string;
213
+ title?: string;
214
+ route?: AgentNativeHostRouteContext;
215
+ selection?: AgentNativeHostSelectionContext;
216
+ visibleText?: string;
217
+ html?: string;
218
+ viewport?: {
219
+ width: number;
220
+ height: number;
221
+ scrollX: number;
222
+ scrollY: number;
223
+ };
224
+ }
225
+ export interface AgentNativeScreenSnapshotOptions {
226
+ /**
227
+ * Root element to read from. Defaults to document.body, then documentElement.
228
+ */
229
+ root?: Element | null | (() => Element | null | undefined);
230
+ /** Include textContent from the root element. Defaults to true. */
231
+ includeVisibleText?: boolean;
232
+ /** Include outerHTML from the root element. Defaults to false. */
233
+ includeDomHtml?: boolean;
234
+ /** Max characters of visible text to include. Defaults to 6000. */
235
+ maxTextLength?: number;
236
+ /** Max characters of DOM html to include. Defaults to 20000. */
237
+ maxHtmlLength?: number;
238
+ }
239
+ export declare function readAgentNativeScreenContext(options?: AgentNativeScreenSnapshotOptions): AgentNativeHostContext;
240
+ export declare const defaultAgentNativeHostCommands: AgentNativeHostCommandHandlers;
241
+ export declare function createAgentNativeHostBridge(options: AgentNativeHostBridgeOptions): AgentNativeHostBridge;
242
+ export interface AgentNativeHostRequestOptions {
243
+ /** Origin to send messages to. Defaults to "*" so prototypes can start. */
244
+ targetOrigin?: string;
245
+ /** Optional exact origin expected in replies from the host app. */
246
+ hostOrigin?: string;
247
+ timeoutMs?: number;
248
+ targetWindow?: Window;
249
+ }
250
+ export declare function announceAgentNativeFrameReady(options?: AgentNativeHostRequestOptions): void;
251
+ export declare function requestAgentNativeHostContext(options?: AgentNativeHostRequestOptions): Promise<AgentNativeHostContext>;
252
+ export declare function requestAgentNativeHostActions(options?: AgentNativeHostRequestOptions): Promise<AgentNativeActionManifestEntry[]>;
253
+ export declare function runAgentNativeHostAction<TArgs = unknown, TResult = unknown>(name: string, args?: TArgs, options?: AgentNativeHostRequestOptions): Promise<TResult>;
254
+ export declare function sendAgentNativeHostCommand<TPayload = unknown, TResult = unknown>(command: BuiltInAgentNativeHostCommand | string, payload?: TPayload, options?: AgentNativeHostRequestOptions): Promise<TResult>;
255
+ export interface AgentNativeHostInit {
256
+ version?: string;
257
+ context?: AgentNativeHostContext;
258
+ auth?: AgentNativeHostAuthPayload;
259
+ actions?: AgentNativeActionManifestEntry[];
260
+ session?: AgentNativeHostSession;
261
+ contextError?: string;
262
+ authError?: string;
263
+ actionsError?: string;
264
+ }
265
+ export declare function onAgentNativeHostInit(handler: (init: AgentNativeHostInit) => void, options?: Pick<AgentNativeHostRequestOptions, "hostOrigin" | "targetWindow">): () => void;
266
+ //# sourceMappingURL=host-bridge.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"host-bridge.d.ts","sourceRoot":"","sources":["../../src/client/host-bridge.ts"],"names":[],"mappings":"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"}