@xopcai/xopc 0.0.142 → 0.0.143

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 (543) hide show
  1. package/README.md +1 -1
  2. package/dist/browser-ext/manifest.json +1 -1
  3. package/dist/extensions/telegram/xopc.extension.json +1 -1
  4. package/dist/gateway/static/root/assets/activity-center-store-jITiX2vJ.js +1 -0
  5. package/dist/gateway/static/root/assets/{agent-avatar-dicebear-BawPxiu5.js → agent-avatar-dicebear-DiME9u_P.js} +1 -1
  6. package/dist/gateway/static/root/assets/agents-DzBXhZXO.js +2 -0
  7. package/dist/gateway/static/root/assets/{app-management-settings-panel-81xd1p9R.js → app-management-settings-panel-Cuo7SbUP.js} +1 -1
  8. package/dist/gateway/static/root/assets/{appearance-settings-DYeQsYU8.js → appearance-settings-DUfdNQqk.js} +1 -1
  9. package/dist/gateway/static/root/assets/apps-page-CKuKK5AU.js +1 -0
  10. package/dist/gateway/static/root/assets/{archive-plugin-D_oa7oti.js → archive-plugin-B-Qk6cGr.js} +1 -1
  11. package/dist/gateway/static/root/assets/{attachment-load-Cd-bwI2N.js → attachment-load-Di6EEbQX.js} +1 -1
  12. package/dist/gateway/static/root/assets/automation-suggestion-card-DGxvRxtO.js +1 -0
  13. package/dist/gateway/static/root/assets/automations-page-D-FF_WKV.js +4 -0
  14. package/dist/gateway/static/root/assets/{binary-plugins-O8svLKWw.js → binary-plugins-ZaOZDH2I.js} +1 -1
  15. package/dist/gateway/static/root/assets/block-editor-BTFhjWfg.js +184 -0
  16. package/dist/gateway/static/root/assets/browser-settings-page-BvKLdEQt.js +8 -0
  17. package/dist/gateway/static/root/assets/{capability-presets-api-dJy1Eqgx.js → capability-presets-api-BU-pVZiZ.js} +1 -1
  18. package/dist/gateway/static/root/assets/capability-presets-settings-panel-DgyeEwzh.js +2 -0
  19. package/dist/gateway/static/root/assets/{channel-recipient-api-Bfuhp2ty.js → channel-recipient-api-DuulnhIj.js} +1 -1
  20. package/dist/gateway/static/root/assets/channels-settings-BbVsdD_I.js +1 -0
  21. package/dist/gateway/static/root/assets/channels-status-swr-B5lVrUsN.js +1 -0
  22. package/dist/gateway/static/root/assets/check-BODqo66o.js +1 -0
  23. package/dist/gateway/static/root/assets/chunk-QUQL4437-DXsxWP7r.js +4 -0
  24. package/dist/gateway/static/root/assets/circle-alert-RzVebuX2.js +1 -0
  25. package/dist/gateway/static/root/assets/connectors-page-B8QqVy3I.js +2 -0
  26. package/dist/gateway/static/root/assets/{desktop-pet-DFMfIb5F.js → desktop-pet---yzVxVR.js} +1 -1
  27. package/dist/gateway/static/root/assets/desktop-pet-settings-Dc3gqBJE.js +1 -0
  28. package/dist/gateway/static/root/assets/{directory-picker-path-field-BrYt1gAr.js → directory-picker-path-field-DCmOGLtK.js} +1 -1
  29. package/dist/gateway/static/root/assets/dreaming-settings-BgT5KZVe.js +3 -0
  30. package/dist/gateway/static/root/assets/{extension-debug-page-Bh630pLD.js → extension-debug-page-ByaKTTq4.js} +1 -1
  31. package/dist/gateway/static/root/assets/extension-page-BmRzHAZr.js +1 -0
  32. package/dist/gateway/static/root/assets/extension-settings-page-JUtwIhbF.js +1 -0
  33. package/dist/gateway/static/root/assets/{fetch-B1WtuprY.js → fetch-8QNN25Sh.js} +1 -1
  34. package/dist/gateway/static/root/assets/{gateway-config-api-De2N821l.js → gateway-config-api-CxicF50_.js} +1 -1
  35. package/dist/gateway/static/root/assets/gateway-settings-Bz2I_EO5.js +1 -0
  36. package/dist/gateway/static/root/assets/{gateway-startup-retry-nEujFSDj.js → gateway-startup-retry-5YBnS9Fj.js} +1 -1
  37. package/dist/gateway/static/root/assets/goal-create-dialog-VcoyuZGN.js +1 -0
  38. package/dist/gateway/static/root/assets/goal-detail-page-Cilkap2G.js +4 -0
  39. package/dist/gateway/static/root/assets/{goals-config-api-DUy3eEse.js → goals-config-api-CwcHRdC0.js} +1 -1
  40. package/dist/gateway/static/root/assets/goals-page-C6eoni4z.js +2 -0
  41. package/dist/gateway/static/root/assets/goals-settings-o4i-qAOS.js +1 -0
  42. package/dist/gateway/static/root/assets/heartbeat-settings-DQQkETX8.js +1 -0
  43. package/dist/gateway/static/root/assets/index-BKRqeRHm.js +257 -0
  44. package/dist/gateway/static/root/assets/index-CphxClbs.css +1 -0
  45. package/dist/gateway/static/root/assets/{keyboard-shortcuts-settings-CVIwwM15.js → keyboard-shortcuts-settings-LT6qB-ua.js} +1 -1
  46. package/dist/gateway/static/root/assets/logs-page-Dli2e3fS.js +7 -0
  47. package/dist/gateway/static/root/assets/{markdown-split-B_6us9j7.js → markdown-split-Dw-yE2-y.js} +1 -1
  48. package/dist/gateway/static/root/assets/{media-plugins-D_fryIyj.js → media-plugins-D9NNNUgE.js} +1 -1
  49. package/dist/gateway/static/root/assets/messages-CzKxM6I4.js +5 -0
  50. package/dist/gateway/static/root/assets/models-hub-panel-DVn2Q1Ik.js +2 -0
  51. package/dist/gateway/static/root/assets/notes-page-CRgbJGgk.js +1 -0
  52. package/dist/gateway/static/root/assets/notes-workbench-BxZRHLWx.js +2 -0
  53. package/dist/gateway/static/root/assets/{page-tabs-D_8jGlqx.js → page-tabs-D4hkWVt_.js} +1 -1
  54. package/dist/gateway/static/root/assets/{preview-open-alternatives-BBLMK8Mp.js → preview-open-alternatives-CIckv0uy.js} +1 -1
  55. package/dist/gateway/static/root/assets/project-detail-page-Doz53xLn.js +1 -0
  56. package/dist/gateway/static/root/assets/projects-page-DoMtcRLg.js +1 -0
  57. package/dist/gateway/static/root/assets/remote-access-hub-BeHVEgrm.js +1 -0
  58. package/dist/gateway/static/root/assets/{save-bar-controls-DVS3FR5r.js → save-bar-controls-B0b42kB2.js} +1 -1
  59. package/dist/gateway/static/root/assets/{schedule-field-D6vKd6-T.js → schedule-field-BtjEkczK.js} +1 -1
  60. package/dist/gateway/static/root/assets/{schema-form-BPy4lbIh.js → schema-form-Bf0bk3i6.js} +1 -1
  61. package/dist/gateway/static/root/assets/sessions-page-Bk4bQsBe.js +1 -0
  62. package/dist/gateway/static/root/assets/settings-advanced-gate-DdFyaRMm.js +1 -0
  63. package/dist/gateway/static/root/assets/{settings-collapsible-section-WzdikxPt.js → settings-collapsible-section-BTKTdTNX.js} +1 -1
  64. package/dist/gateway/static/root/assets/{settings-form-section-CvfzhBV-.js → settings-form-section-DL4P0sAj.js} +1 -1
  65. package/dist/gateway/static/root/assets/{settings-loading-skeleton-BxR-Ulhi.js → settings-loading-skeleton-BV6KFNj4.js} +1 -1
  66. package/dist/gateway/static/root/assets/settings-page-B_4DsX5W.js +1 -0
  67. package/dist/gateway/static/root/assets/{settings-page-layout-CKefvbYi.js → settings-page-layout-CyGlrInB.js} +1 -1
  68. package/dist/gateway/static/root/assets/setup-status-panel-DJ1_MLgX.js +1 -0
  69. package/dist/gateway/static/root/assets/share-preview-page-BQBV7YrV.js +2 -0
  70. package/dist/gateway/static/root/assets/shares-settings-0VuFLBeU.js +1 -0
  71. package/dist/gateway/static/root/assets/skill-reload-api-DO87Ckeo.js +1 -0
  72. package/dist/gateway/static/root/assets/skills-page-D3VdtxAn.js +2 -0
  73. package/dist/gateway/static/root/assets/{system-settings-panel-BokgAgf7.js → system-settings-panel-D85fBBuI.js} +1 -1
  74. package/dist/gateway/static/root/assets/{typed-models-lib-BwHlNL3L.js → typed-models-lib-CwEuYrHX.js} +1 -1
  75. package/dist/gateway/static/root/assets/{use-channel-catalog-DR11ap3A.js → use-channel-catalog-COXIfXcl.js} +1 -1
  76. package/dist/gateway/static/root/assets/user-context-page-m9JVQ73F.js +1 -0
  77. package/dist/gateway/static/root/assets/user-profile-fields-editor-DtQiuY7E.js +1 -0
  78. package/dist/gateway/static/root/assets/user-profile-settings-panel-CWM0fEpb.js +1 -0
  79. package/dist/gateway/static/root/assets/{utils-BKUWB-TT.js → utils--BO6xT3u.js} +1 -1
  80. package/dist/gateway/static/root/assets/voice-api-key-field-LoT3wgZ9.js +1 -0
  81. package/dist/gateway/static/root/assets/with-selector-aYPsXwdl.js +1 -0
  82. package/dist/gateway/static/root/assets/work-item-detail-page-DSTMz_mO.js +1 -0
  83. package/dist/gateway/static/root/assets/{workflow-run-setup-panel-CL_rnAUB.js → workflow-run-setup-panel-B35lJzvm.js} +2 -2
  84. package/dist/gateway/static/root/assets/workflows-page-BfSm9oR8.js +11 -0
  85. package/dist/gateway/static/root/assets/workflows-page-DLioOiRN.css +1 -0
  86. package/dist/gateway/static/root/connector-icons/README.md +11 -0
  87. package/dist/gateway/static/root/connector-icons/airtable.svg +13 -0
  88. package/dist/gateway/static/root/connector-icons/asana.svg +15 -0
  89. package/dist/gateway/static/root/connector-icons/brave-search.svg +1 -0
  90. package/dist/gateway/static/root/connector-icons/clickup.svg +19 -0
  91. package/dist/gateway/static/root/connector-icons/composio.svg +266 -0
  92. package/dist/gateway/static/root/connector-icons/discord.svg +15 -0
  93. package/dist/gateway/static/root/connector-icons/dropbox.svg +152 -0
  94. package/dist/gateway/static/root/connector-icons/excel.svg +56 -0
  95. package/dist/gateway/static/root/connector-icons/fetch.svg +6 -0
  96. package/dist/gateway/static/root/connector-icons/figma.svg +178 -0
  97. package/dist/gateway/static/root/connector-icons/filesystem.svg +6 -0
  98. package/dist/gateway/static/root/connector-icons/github.svg +10 -0
  99. package/dist/gateway/static/root/connector-icons/gmail.svg +3 -0
  100. package/dist/gateway/static/root/connector-icons/google-calendar.svg +3 -0
  101. package/dist/gateway/static/root/connector-icons/google-docs.svg +25 -0
  102. package/dist/gateway/static/root/connector-icons/google-drive.svg +25 -0
  103. package/dist/gateway/static/root/connector-icons/google-sheets.svg +1 -0
  104. package/dist/gateway/static/root/connector-icons/hubspot.svg +142 -0
  105. package/dist/gateway/static/root/connector-icons/jira.svg +15 -0
  106. package/dist/gateway/static/root/connector-icons/linear.svg +5 -0
  107. package/dist/gateway/static/root/connector-icons/memory.svg +5 -0
  108. package/dist/gateway/static/root/connector-icons/microsoft-teams.svg +33 -0
  109. package/dist/gateway/static/root/connector-icons/notion.svg +5 -0
  110. package/dist/gateway/static/root/connector-icons/one-drive.svg +13 -0
  111. package/dist/gateway/static/root/connector-icons/outlook.svg +76 -0
  112. package/dist/gateway/static/root/connector-icons/playwright.svg +9 -0
  113. package/dist/gateway/static/root/connector-icons/salesforce.svg +17 -0
  114. package/dist/gateway/static/root/connector-icons/sequential-thinking.svg +8 -0
  115. package/dist/gateway/static/root/connector-icons/shopify.svg +5 -0
  116. package/dist/gateway/static/root/connector-icons/slack.svg +9 -0
  117. package/dist/gateway/static/root/connector-icons/spotify.svg +43 -0
  118. package/dist/gateway/static/root/connector-icons/stripe.svg +11 -0
  119. package/dist/gateway/static/root/connector-icons/telegram.svg +130 -0
  120. package/dist/gateway/static/root/connector-icons/time.svg +6 -0
  121. package/dist/gateway/static/root/connector-icons/todoist.svg +277 -0
  122. package/dist/gateway/static/root/connector-icons/trello.svg +19 -0
  123. package/dist/gateway/static/root/connector-icons/twitter.svg +128 -0
  124. package/dist/gateway/static/root/connector-icons/whatsapp.svg +61 -0
  125. package/dist/gateway/static/root/connector-icons/youtube.svg +11 -0
  126. package/dist/gateway/static/root/index.html +9 -6
  127. package/dist/package.js +1 -1
  128. package/dist/src/agent/agent-manager.d.ts +2 -0
  129. package/dist/src/agent/agent-manager.js +8 -0
  130. package/dist/src/agent/agent-manager.js.map +1 -1
  131. package/dist/src/agent/background-review/prompts.d.ts +1 -1
  132. package/dist/src/agent/background-review/prompts.js +3 -2
  133. package/dist/src/agent/background-review/prompts.js.map +1 -1
  134. package/dist/src/agent/embedded/session-tool-result-guard.js +1 -1
  135. package/dist/src/agent/embedded/xopc-tools-bridge.d.ts +9 -0
  136. package/dist/src/agent/embedded/xopc-tools-bridge.js +71 -3
  137. package/dist/src/agent/embedded/xopc-tools-bridge.js.map +1 -1
  138. package/dist/src/agent/goals/post-turn.js +5 -4
  139. package/dist/src/agent/goals/post-turn.js.map +1 -1
  140. package/dist/src/agent/mcp/mcp-transport.js +4 -1
  141. package/dist/src/agent/mcp/mcp-transport.js.map +1 -1
  142. package/dist/src/agent/memory/context/planner.d.ts +1 -0
  143. package/dist/src/agent/memory/context/planner.js +60 -14
  144. package/dist/src/agent/memory/context/planner.js.map +1 -1
  145. package/dist/src/agent/memory/context/types.d.ts +3 -1
  146. package/dist/src/agent/memory/lifecycle.d.ts +11 -0
  147. package/dist/src/agent/memory/lifecycle.js +50 -0
  148. package/dist/src/agent/memory/lifecycle.js.map +1 -0
  149. package/dist/src/agent/memory/source-origin.d.ts +3 -0
  150. package/dist/src/agent/memory/source-origin.js +19 -0
  151. package/dist/src/agent/memory/source-origin.js.map +1 -0
  152. package/dist/src/agent/memory/understanding/service.js +5 -0
  153. package/dist/src/agent/memory/understanding/service.js.map +1 -1
  154. package/dist/src/agent/memory/user-context-coordinator.js +7 -2
  155. package/dist/src/agent/memory/user-context-coordinator.js.map +1 -1
  156. package/dist/src/agent/prompt/sections/behavior.d.ts +2 -0
  157. package/dist/src/agent/prompt/sections/behavior.js +30 -1
  158. package/dist/src/agent/prompt/sections/behavior.js.map +1 -1
  159. package/dist/src/agent/prompt/sections/tooling.js +1 -1
  160. package/dist/src/agent/prompt/sections/tooling.js.map +1 -1
  161. package/dist/src/agent/prompt/service-prompt-builder.js +8 -1
  162. package/dist/src/agent/prompt/service-prompt-builder.js.map +1 -1
  163. package/dist/src/agent/prompt/system-prompt.d.ts +2 -0
  164. package/dist/src/agent/prompt/system-prompt.js +6 -3
  165. package/dist/src/agent/prompt/system-prompt.js.map +1 -1
  166. package/dist/src/agent/service/process-direct-streaming.js +22 -0
  167. package/dist/src/agent/service/process-direct-streaming.js.map +1 -1
  168. package/dist/src/agent/service.d.ts +2 -0
  169. package/dist/src/agent/service.js +9 -3
  170. package/dist/src/agent/service.js.map +1 -1
  171. package/dist/src/agent/starter-agents.js +1 -1
  172. package/dist/src/agent/starter-agents.js.map +1 -1
  173. package/dist/src/agent/tool-manuals/xopc-use.d.ts +1 -1
  174. package/dist/src/agent/tool-manuals/xopc-use.js +1 -1
  175. package/dist/src/agent/tool-manuals/xopc-use.js.map +1 -1
  176. package/dist/src/agent/tools/composio-tool.d.ts +18 -5
  177. package/dist/src/agent/tools/composio-tool.js +252 -35
  178. package/dist/src/agent/tools/composio-tool.js.map +1 -1
  179. package/dist/src/agent/tools/factory.js +7 -3
  180. package/dist/src/agent/tools/factory.js.map +1 -1
  181. package/dist/src/agent/tools/index.d.ts +1 -1
  182. package/dist/src/agent/tools/index.js +2 -2
  183. package/dist/src/agent/tools/workflow-tool.d.ts +0 -1
  184. package/dist/src/agent/tools/workflow-tool.js +3 -16
  185. package/dist/src/agent/tools/workflow-tool.js.map +1 -1
  186. package/dist/src/agent/workflow/builtins/index.d.ts +2 -28
  187. package/dist/src/agent/workflow/builtins/index.js +226 -41
  188. package/dist/src/agent/workflow/builtins/index.js.map +1 -1
  189. package/dist/src/agent/workflow/catalog.d.ts +32 -34
  190. package/dist/src/agent/workflow/catalog.js +158 -154
  191. package/dist/src/agent/workflow/catalog.js.map +1 -1
  192. package/dist/src/agent/workflow/index.d.ts +4 -6
  193. package/dist/src/agent/workflow/index.js +2 -5
  194. package/dist/src/agent/workflow/snapshot.d.ts +2 -2
  195. package/dist/src/agent/workflow/snapshot.js +2 -2
  196. package/dist/src/agent/workflow/snapshot.js.map +1 -1
  197. package/dist/src/agent/workflow/structured-output-tool.d.ts +2 -2
  198. package/dist/src/agent/workflow/structured-output-tool.js +2 -2
  199. package/dist/src/agent/workflow/structured-output-tool.js.map +1 -1
  200. package/dist/src/agent/workflow/subagent-runner.js +1 -1
  201. package/dist/src/agent/workflow/types.d.ts +31 -26
  202. package/dist/src/agent-manifest/index.d.ts +1 -0
  203. package/dist/src/agent-manifest/index.js +3 -1
  204. package/dist/src/agent-manifest/index.js.map +1 -1
  205. package/dist/src/agent-manifest/preset-chain.d.ts +10 -0
  206. package/dist/src/agent-manifest/preset-chain.js +32 -0
  207. package/dist/src/agent-manifest/preset-chain.js.map +1 -0
  208. package/dist/src/agent-manifest/resolver.js +3 -10
  209. package/dist/src/agent-manifest/resolver.js.map +1 -1
  210. package/dist/src/agent-manifest/schema.d.ts +4 -4
  211. package/dist/src/automations/api/routes.js +13 -1
  212. package/dist/src/automations/api/routes.js.map +1 -1
  213. package/dist/src/automations/domain/validation.d.ts +14 -14
  214. package/dist/src/automations/draft/automation-draft-validator.d.ts +3 -3
  215. package/dist/src/browser/providers/browser-ext-install.d.ts +11 -1
  216. package/dist/src/browser/providers/browser-ext-install.js +39 -14
  217. package/dist/src/browser/providers/browser-ext-install.js.map +1 -1
  218. package/dist/src/capabilities/store-connector.d.ts +0 -1
  219. package/dist/src/capabilities/store-connector.js +3 -5
  220. package/dist/src/capabilities/store-connector.js.map +1 -1
  221. package/dist/src/chat-commands/builtins/review.js +72 -73
  222. package/dist/src/chat-commands/builtins/review.js.map +1 -1
  223. package/dist/src/chat-commands/builtins/workflow.js +9 -54
  224. package/dist/src/chat-commands/builtins/workflow.js.map +1 -1
  225. package/dist/src/cli/commands/doctor/checks/database-schema.js +1 -1
  226. package/dist/src/cli/commands/extension-create.js +2 -2
  227. package/dist/src/cli/commands/extension-create.js.map +1 -1
  228. package/dist/src/cli/commands/extension-marketplace.js +42 -36
  229. package/dist/src/cli/commands/extension-marketplace.js.map +1 -1
  230. package/dist/src/cli/commands/extension-pack.d.ts +6 -0
  231. package/dist/src/cli/commands/extension-pack.js +3 -2
  232. package/dist/src/cli/commands/extension-pack.js.map +1 -1
  233. package/dist/src/commands/agents.config.d.ts +1 -0
  234. package/dist/src/commands/agents.config.js +1 -0
  235. package/dist/src/commands/agents.config.js.map +1 -1
  236. package/dist/src/config/schema.d.ts +6 -6
  237. package/dist/src/config/schema.js +6 -22
  238. package/dist/src/config/schema.js.map +1 -1
  239. package/dist/src/config/web-patch.d.ts +1 -1
  240. package/dist/src/connectors/approval.d.ts +2 -0
  241. package/dist/src/connectors/approval.js +33 -0
  242. package/dist/src/connectors/approval.js.map +1 -0
  243. package/dist/src/connectors/auth-provider-registry.d.ts +9 -0
  244. package/dist/src/connectors/auth-provider-registry.js +17 -0
  245. package/dist/src/connectors/auth-provider-registry.js.map +1 -0
  246. package/dist/src/connectors/builtin-catalog.js +55 -116
  247. package/dist/src/connectors/builtin-catalog.js.map +1 -1
  248. package/dist/src/connectors/catalog.js +7 -2
  249. package/dist/src/connectors/catalog.js.map +1 -1
  250. package/dist/src/connectors/composio-catalog.d.ts +19 -0
  251. package/dist/src/connectors/composio-catalog.js +237 -0
  252. package/dist/src/connectors/composio-catalog.js.map +1 -0
  253. package/dist/src/connectors/composio-logo.d.ts +1 -0
  254. package/dist/src/connectors/composio-logo.js +51 -0
  255. package/dist/src/connectors/composio-logo.js.map +1 -0
  256. package/dist/src/connectors/composio-sessions.d.ts +116 -0
  257. package/dist/src/connectors/composio-sessions.js +296 -0
  258. package/dist/src/connectors/composio-sessions.js.map +1 -0
  259. package/dist/src/connectors/composio-triggers.d.ts +17 -0
  260. package/dist/src/connectors/composio-triggers.js +48 -5
  261. package/dist/src/connectors/composio-triggers.js.map +1 -1
  262. package/dist/src/connectors/composio.d.ts +31 -2
  263. package/dist/src/connectors/composio.js +374 -151
  264. package/dist/src/connectors/composio.js.map +1 -1
  265. package/dist/src/connectors/connector-memory-sync.d.ts +15 -0
  266. package/dist/src/connectors/connector-memory-sync.js +90 -0
  267. package/dist/src/connectors/connector-memory-sync.js.map +1 -0
  268. package/dist/src/connectors/install.js +35 -92
  269. package/dist/src/connectors/install.js.map +1 -1
  270. package/dist/src/connectors/instances.js +6 -2
  271. package/dist/src/connectors/instances.js.map +1 -1
  272. package/dist/src/connectors/integration-strategy.d.ts +3 -0
  273. package/dist/src/connectors/integration-strategy.js +29 -0
  274. package/dist/src/connectors/integration-strategy.js.map +1 -0
  275. package/dist/src/connectors/policy.d.ts +13 -0
  276. package/dist/src/connectors/policy.js +48 -0
  277. package/dist/src/connectors/policy.js.map +1 -0
  278. package/dist/src/connectors/providers.js +1 -1
  279. package/dist/src/connectors/runtime-adapter-registry.d.ts +25 -0
  280. package/dist/src/connectors/runtime-adapter-registry.js +154 -0
  281. package/dist/src/connectors/runtime-adapter-registry.js.map +1 -0
  282. package/dist/src/connectors/types.d.ts +113 -4
  283. package/dist/src/connectors/workflow-preflight.d.ts +20 -0
  284. package/dist/src/connectors/workflow-preflight.js +70 -0
  285. package/dist/src/connectors/workflow-preflight.js.map +1 -0
  286. package/dist/src/extensions/install-transaction.d.ts +16 -0
  287. package/dist/src/extensions/install-transaction.js +76 -0
  288. package/dist/src/extensions/install-transaction.js.map +1 -0
  289. package/dist/src/extensions/install.d.ts +2 -0
  290. package/dist/src/extensions/install.js +23 -1
  291. package/dist/src/extensions/install.js.map +1 -1
  292. package/dist/src/gateway/agents-admin.d.ts +2 -0
  293. package/dist/src/gateway/agents-admin.js +7 -0
  294. package/dist/src/gateway/agents-admin.js.map +1 -1
  295. package/dist/src/gateway/capability-presets-admin.d.ts +11 -0
  296. package/dist/src/gateway/capability-presets-admin.js +11 -4
  297. package/dist/src/gateway/capability-presets-admin.js.map +1 -1
  298. package/dist/src/gateway/chat-stream/mapper.js +17 -0
  299. package/dist/src/gateway/chat-stream/mapper.js.map +1 -1
  300. package/dist/src/gateway/chat-stream/protocol.d.ts +18 -1
  301. package/dist/src/gateway/hono/lib/config-payload.d.ts +3 -3
  302. package/dist/src/gateway/hono/routes/agents.js +3 -0
  303. package/dist/src/gateway/hono/routes/agents.js.map +1 -1
  304. package/dist/src/gateway/hono/routes/capability-presets.js +19 -1
  305. package/dist/src/gateway/hono/routes/capability-presets.js.map +1 -1
  306. package/dist/src/gateway/hono/routes/connectors.js +188 -25
  307. package/dist/src/gateway/hono/routes/connectors.js.map +1 -1
  308. package/dist/src/gateway/hono/routes/goals.js +22 -3
  309. package/dist/src/gateway/hono/routes/goals.js.map +1 -1
  310. package/dist/src/gateway/hono/routes/home.d.ts +60 -1
  311. package/dist/src/gateway/hono/routes/home.js +244 -18
  312. package/dist/src/gateway/hono/routes/home.js.map +1 -1
  313. package/dist/src/gateway/hono/routes/lazy-bundles.js +8 -0
  314. package/dist/src/gateway/hono/routes/lazy-bundles.js.map +1 -1
  315. package/dist/src/gateway/hono/routes/memory.js +14 -1
  316. package/dist/src/gateway/hono/routes/memory.js.map +1 -1
  317. package/dist/src/gateway/hono/routes/projects.js +103 -2
  318. package/dist/src/gateway/hono/routes/projects.js.map +1 -1
  319. package/dist/src/gateway/hono/routes/public-gateway.js +93 -0
  320. package/dist/src/gateway/hono/routes/public-gateway.js.map +1 -1
  321. package/dist/src/gateway/hono/routes/workflows.js +137 -22
  322. package/dist/src/gateway/hono/routes/workflows.js.map +1 -1
  323. package/dist/src/gateway/hono/routes/you.d.ts +23 -0
  324. package/dist/src/gateway/hono/routes/you.js +538 -0
  325. package/dist/src/gateway/hono/routes/you.js.map +1 -0
  326. package/dist/src/gateway/hono/sse.d.ts +2 -1
  327. package/dist/src/gateway/hono/sse.js +2 -1
  328. package/dist/src/gateway/hono/sse.js.map +1 -1
  329. package/dist/src/gateway/service/marketplace-service.d.ts +13 -1
  330. package/dist/src/gateway/service/marketplace-service.js +96 -40
  331. package/dist/src/gateway/service/marketplace-service.js.map +1 -1
  332. package/dist/src/gateway/service.d.ts +2 -0
  333. package/dist/src/gateway/service.js +7 -1
  334. package/dist/src/gateway/service.js.map +1 -1
  335. package/dist/src/goals/goal-service.d.ts +7 -5
  336. package/dist/src/goals/goal-service.js +25 -13
  337. package/dist/src/goals/goal-service.js.map +1 -1
  338. package/dist/src/goals/goal-store.js +46 -7
  339. package/dist/src/goals/goal-store.js.map +1 -1
  340. package/dist/src/goals/types.d.ts +24 -0
  341. package/dist/src/storage/sqlite/connector-repository.d.ts +49 -0
  342. package/dist/src/storage/sqlite/connector-repository.js +385 -0
  343. package/dist/src/storage/sqlite/connector-repository.js.map +1 -0
  344. package/dist/src/storage/sqlite/index.d.ts +3 -0
  345. package/dist/src/storage/sqlite/index.js +4 -1
  346. package/dist/src/storage/sqlite/migrations/030_connectors.sql +94 -0
  347. package/dist/src/storage/sqlite/migrations/031_connector_approvals.sql +24 -0
  348. package/dist/src/storage/sqlite/migrations/032_connector_webhook_deliveries.sql +15 -0
  349. package/dist/src/storage/sqlite/migrations/033_user_trust_policies.sql +6 -0
  350. package/dist/src/storage/sqlite/migrations/034_allow_global_auto_trust.sql +14 -0
  351. package/dist/src/storage/sqlite/migrations/035_user_profile_prompt_state.sql +7 -0
  352. package/dist/src/storage/sqlite/migrations/036_goal_outcome_metric.sql +12 -0
  353. package/dist/src/storage/sqlite/migrations/runner.d.ts +1 -1
  354. package/dist/src/storage/sqlite/migrations/runner.js +3 -3
  355. package/dist/src/storage/sqlite/migrations/runner.js.map +1 -1
  356. package/dist/src/storage/sqlite/migrations/runner.ts +1 -1
  357. package/dist/src/storage/sqlite/schema.js +1 -1
  358. package/dist/src/storage/sqlite/user-profile-setup-repository.d.ts +3 -0
  359. package/dist/src/storage/sqlite/user-profile-setup-repository.js +34 -0
  360. package/dist/src/storage/sqlite/user-profile-setup-repository.js.map +1 -0
  361. package/dist/src/storage/sqlite/user-trust-repository.d.ts +3 -0
  362. package/dist/src/storage/sqlite/user-trust-repository.js +34 -0
  363. package/dist/src/storage/sqlite/user-trust-repository.js.map +1 -0
  364. package/dist/src/tui/components/assistant-message.js +15 -0
  365. package/dist/src/tui/components/assistant-message.js.map +1 -1
  366. package/dist/src/tui/tui-agent-events.js +85 -1
  367. package/dist/src/tui/tui-agent-events.js.map +1 -1
  368. package/dist/src/tui/tui-command-formatters.js +7 -7
  369. package/dist/src/tui/tui-command-formatters.js.map +1 -1
  370. package/dist/src/tui/tui-commands.js +1 -1
  371. package/dist/src/tui/tui-startup-resources.js +1 -1
  372. package/dist/src/user-context/import.d.ts +12 -0
  373. package/dist/src/user-context/import.js +48 -0
  374. package/dist/src/user-context/import.js.map +1 -0
  375. package/dist/src/user-context/profile.d.ts +37 -0
  376. package/dist/src/user-context/profile.js +165 -0
  377. package/dist/src/user-context/profile.js.map +1 -0
  378. package/dist/src/user-context/projection.d.ts +54 -0
  379. package/dist/src/user-context/projection.js +121 -0
  380. package/dist/src/user-context/projection.js.map +1 -0
  381. package/dist/src/user-context/source-recommendations.d.ts +13 -0
  382. package/dist/src/user-context/source-recommendations.js +86 -0
  383. package/dist/src/user-context/source-recommendations.js.map +1 -0
  384. package/dist/src/user-context/trust-policy.d.ts +11 -0
  385. package/dist/src/user-context/trust-policy.js +31 -0
  386. package/dist/src/user-context/trust-policy.js.map +1 -0
  387. package/dist/src/workflows/authoring/index.d.ts +1 -0
  388. package/dist/src/workflows/authoring/index.js +2 -0
  389. package/dist/src/workflows/authoring/workflow-draft-store.d.ts +33 -0
  390. package/dist/src/workflows/authoring/workflow-draft-store.js +74 -0
  391. package/dist/src/workflows/authoring/workflow-draft-store.js.map +1 -0
  392. package/dist/src/workflows/domain/definition-utils.d.ts +6 -4
  393. package/dist/src/workflows/domain/definition-utils.js +28 -26
  394. package/dist/src/workflows/domain/definition-utils.js.map +1 -1
  395. package/dist/src/workflows/domain/definition.d.ts +79 -6
  396. package/dist/src/workflows/domain/event.d.ts +18 -2
  397. package/dist/src/workflows/domain/index.js +3 -3
  398. package/dist/src/workflows/domain/run.d.ts +16 -2
  399. package/dist/src/workflows/domain/run.js.map +1 -1
  400. package/dist/src/workflows/domain/validation.d.ts +9 -5
  401. package/dist/src/workflows/domain/validation.js +183 -40
  402. package/dist/src/workflows/domain/validation.js.map +1 -1
  403. package/dist/src/workflows/draft/workflow-draft-prompt.d.ts +2 -3
  404. package/dist/src/workflows/draft/workflow-draft-prompt.js +31 -73
  405. package/dist/src/workflows/draft/workflow-draft-prompt.js.map +1 -1
  406. package/dist/src/workflows/draft/workflow-draft-service.js +4 -8
  407. package/dist/src/workflows/draft/workflow-draft-service.js.map +1 -1
  408. package/dist/src/workflows/draft/workflow-draft-validator.js +29 -37
  409. package/dist/src/workflows/draft/workflow-draft-validator.js.map +1 -1
  410. package/dist/src/workflows/draft/workflow-draft.types.d.ts +4 -4
  411. package/dist/src/workflows/engine/projector.js +43 -1
  412. package/dist/src/workflows/engine/projector.js.map +1 -1
  413. package/dist/src/workflows/engine/workflow-engine.d.ts +2 -3
  414. package/dist/src/workflows/engine/workflow-engine.js +24 -4
  415. package/dist/src/workflows/engine/workflow-engine.js.map +1 -1
  416. package/dist/src/workflows/index.js +4 -7
  417. package/dist/src/workflows/registry/catalog-workflow-definition-registry.js +1 -9
  418. package/dist/src/workflows/registry/catalog-workflow-definition-registry.js.map +1 -1
  419. package/dist/src/workflows/runtime/graph-workflow-runtime.d.ts +10 -0
  420. package/dist/src/workflows/runtime/graph-workflow-runtime.js +295 -0
  421. package/dist/src/workflows/runtime/graph-workflow-runtime.js.map +1 -0
  422. package/dist/src/workflows/runtime/index.d.ts +1 -2
  423. package/dist/src/workflows/runtime/index.js +2 -5
  424. package/dist/src/workflows/runtime/workflow-runtime-port.d.ts +5 -8
  425. package/dist/src/workflows/service/workflow-run-service.js +15 -1
  426. package/dist/src/workflows/service/workflow-run-service.js.map +1 -1
  427. package/dist/src/workflows/service/workflow-run-service.types.d.ts +2 -1
  428. package/package.json +4 -3
  429. package/dist/gateway/static/root/assets/agents-CyvCIHnB.js +0 -2
  430. package/dist/gateway/static/root/assets/apps-page-DK_Vx6nl.js +0 -1
  431. package/dist/gateway/static/root/assets/automation-suggestion-card-B1LV3YYv.js +0 -1
  432. package/dist/gateway/static/root/assets/automations-page-fzrovqhv.js +0 -4
  433. package/dist/gateway/static/root/assets/block-editor-Dhj5f4Bx.js +0 -184
  434. package/dist/gateway/static/root/assets/browser-settings-page-BDn-n-UB.js +0 -8
  435. package/dist/gateway/static/root/assets/capability-presets-settings-panel-Co5ipo_Q.js +0 -1
  436. package/dist/gateway/static/root/assets/channels-settings-BWlpaxg9.js +0 -1
  437. package/dist/gateway/static/root/assets/channels-status-swr-D_jkIZLV.js +0 -1
  438. package/dist/gateway/static/root/assets/connectors-page-BcekbW4q.js +0 -2
  439. package/dist/gateway/static/root/assets/desktop-pet-settings-BJCUuL8Y.js +0 -1
  440. package/dist/gateway/static/root/assets/dreaming-settings-BN1Z2mIo.js +0 -3
  441. package/dist/gateway/static/root/assets/extension-page-B-1KxvVy.js +0 -1
  442. package/dist/gateway/static/root/assets/extension-settings-page-BF9NACI3.js +0 -1
  443. package/dist/gateway/static/root/assets/gateway-settings-DN9sNREz.js +0 -1
  444. package/dist/gateway/static/root/assets/goal-create-dialog-BpoQW8cD.js +0 -1
  445. package/dist/gateway/static/root/assets/goal-detail-page-CBRSPd0b.js +0 -4
  446. package/dist/gateway/static/root/assets/goals-page-BCcBi407.js +0 -2
  447. package/dist/gateway/static/root/assets/goals-settings-pkTXzXkh.js +0 -1
  448. package/dist/gateway/static/root/assets/heartbeat-settings-ezsufgLQ.js +0 -1
  449. package/dist/gateway/static/root/assets/index-B8s8Pq5U.css +0 -1
  450. package/dist/gateway/static/root/assets/index-DcUaXYeb.js +0 -262
  451. package/dist/gateway/static/root/assets/logs-page-DQtTRXtj.js +0 -7
  452. package/dist/gateway/static/root/assets/messages-BXNELNBa.js +0 -3
  453. package/dist/gateway/static/root/assets/models-hub-panel-BP2M9n6Q.js +0 -2
  454. package/dist/gateway/static/root/assets/notes-page-CspveYaO.js +0 -1
  455. package/dist/gateway/static/root/assets/notes-workbench-BHwzJ0OC.js +0 -2
  456. package/dist/gateway/static/root/assets/project-detail-page-Dy3rsobs.js +0 -1
  457. package/dist/gateway/static/root/assets/projects-page-CWKpPE0L.js +0 -1
  458. package/dist/gateway/static/root/assets/remote-access-hub-CqNRyXEo.js +0 -1
  459. package/dist/gateway/static/root/assets/sessions-page-MEME7ivF.js +0 -1
  460. package/dist/gateway/static/root/assets/settings-advanced-gate-JVd0qaSF.js +0 -1
  461. package/dist/gateway/static/root/assets/settings-page-DYEbB1EV.js +0 -1
  462. package/dist/gateway/static/root/assets/setup-status-panel-dWN8BJ3z.js +0 -1
  463. package/dist/gateway/static/root/assets/share-preview-page-D8foINzP.js +0 -2
  464. package/dist/gateway/static/root/assets/shares-settings-Tgbv1s7G.js +0 -1
  465. package/dist/gateway/static/root/assets/skill-reload-api-D_YK0b_Z.js +0 -1
  466. package/dist/gateway/static/root/assets/skills-page-DGytfoZK.js +0 -2
  467. package/dist/gateway/static/root/assets/toast-z0toXu32.js +0 -1
  468. package/dist/gateway/static/root/assets/user-profile-settings-panel-8YtygcJp.js +0 -1
  469. package/dist/gateway/static/root/assets/voice-api-key-field-BVH71EFf.js +0 -1
  470. package/dist/gateway/static/root/assets/work-item-detail-page-JeTE7XNM.js +0 -1
  471. package/dist/gateway/static/root/assets/workflow-start-dialog-_u8Uc1ze.js +0 -1
  472. package/dist/gateway/static/root/assets/workflows-page-ixgk_y1l.js +0 -18
  473. package/dist/src/agent/workflow/builtins/audit-repo.d.ts +0 -13
  474. package/dist/src/agent/workflow/builtins/audit-repo.js +0 -183
  475. package/dist/src/agent/workflow/builtins/audit-repo.js.map +0 -1
  476. package/dist/src/agent/workflow/builtins/client-proposal.d.ts +0 -12
  477. package/dist/src/agent/workflow/builtins/client-proposal.js +0 -164
  478. package/dist/src/agent/workflow/builtins/client-proposal.js.map +0 -1
  479. package/dist/src/agent/workflow/builtins/competitor-scan.d.ts +0 -12
  480. package/dist/src/agent/workflow/builtins/competitor-scan.js +0 -164
  481. package/dist/src/agent/workflow/builtins/competitor-scan.js.map +0 -1
  482. package/dist/src/agent/workflow/builtins/content-draft.d.ts +0 -13
  483. package/dist/src/agent/workflow/builtins/content-draft.js +0 -159
  484. package/dist/src/agent/workflow/builtins/content-draft.js.map +0 -1
  485. package/dist/src/agent/workflow/builtins/content-repurpose.d.ts +0 -11
  486. package/dist/src/agent/workflow/builtins/content-repurpose.js +0 -146
  487. package/dist/src/agent/workflow/builtins/content-repurpose.js.map +0 -1
  488. package/dist/src/agent/workflow/builtins/debug-incident.d.ts +0 -13
  489. package/dist/src/agent/workflow/builtins/debug-incident.js +0 -177
  490. package/dist/src/agent/workflow/builtins/debug-incident.js.map +0 -1
  491. package/dist/src/agent/workflow/builtins/decision-compare.d.ts +0 -13
  492. package/dist/src/agent/workflow/builtins/decision-compare.js +0 -187
  493. package/dist/src/agent/workflow/builtins/decision-compare.js.map +0 -1
  494. package/dist/src/agent/workflow/builtins/implementation-plan.d.ts +0 -12
  495. package/dist/src/agent/workflow/builtins/implementation-plan.js +0 -185
  496. package/dist/src/agent/workflow/builtins/implementation-plan.js.map +0 -1
  497. package/dist/src/agent/workflow/builtins/inbox-triage.d.ts +0 -11
  498. package/dist/src/agent/workflow/builtins/inbox-triage.js +0 -158
  499. package/dist/src/agent/workflow/builtins/inbox-triage.js.map +0 -1
  500. package/dist/src/agent/workflow/builtins/meeting-prep.d.ts +0 -12
  501. package/dist/src/agent/workflow/builtins/meeting-prep.js +0 -152
  502. package/dist/src/agent/workflow/builtins/meeting-prep.js.map +0 -1
  503. package/dist/src/agent/workflow/builtins/multi-perspective-review.d.ts +0 -14
  504. package/dist/src/agent/workflow/builtins/multi-perspective-review.js +0 -171
  505. package/dist/src/agent/workflow/builtins/multi-perspective-review.js.map +0 -1
  506. package/dist/src/agent/workflow/builtins/offer-design.d.ts +0 -12
  507. package/dist/src/agent/workflow/builtins/offer-design.js +0 -170
  508. package/dist/src/agent/workflow/builtins/offer-design.js.map +0 -1
  509. package/dist/src/agent/workflow/builtins/pr-review.d.ts +0 -12
  510. package/dist/src/agent/workflow/builtins/pr-review.js +0 -178
  511. package/dist/src/agent/workflow/builtins/pr-review.js.map +0 -1
  512. package/dist/src/agent/workflow/builtins/release-check.d.ts +0 -11
  513. package/dist/src/agent/workflow/builtins/release-check.js +0 -174
  514. package/dist/src/agent/workflow/builtins/release-check.js.map +0 -1
  515. package/dist/src/agent/workflow/builtins/research.d.ts +0 -13
  516. package/dist/src/agent/workflow/builtins/research.js +0 -188
  517. package/dist/src/agent/workflow/builtins/research.js.map +0 -1
  518. package/dist/src/agent/workflow/builtins/weekly-review.d.ts +0 -12
  519. package/dist/src/agent/workflow/builtins/weekly-review.js +0 -139
  520. package/dist/src/agent/workflow/builtins/weekly-review.js.map +0 -1
  521. package/dist/src/agent/workflow/last-run-memory.d.ts +0 -42
  522. package/dist/src/agent/workflow/last-run-memory.js +0 -60
  523. package/dist/src/agent/workflow/last-run-memory.js.map +0 -1
  524. package/dist/src/agent/workflow/lint.d.ts +0 -38
  525. package/dist/src/agent/workflow/lint.js +0 -74
  526. package/dist/src/agent/workflow/lint.js.map +0 -1
  527. package/dist/src/agent/workflow/meta-locale.d.ts +0 -12
  528. package/dist/src/agent/workflow/meta-locale.js +0 -62
  529. package/dist/src/agent/workflow/meta-locale.js.map +0 -1
  530. package/dist/src/agent/workflow/parser.d.ts +0 -20
  531. package/dist/src/agent/workflow/parser.js +0 -152
  532. package/dist/src/agent/workflow/parser.js.map +0 -1
  533. package/dist/src/agent/workflow/runtime.d.ts +0 -34
  534. package/dist/src/agent/workflow/runtime.js +0 -402
  535. package/dist/src/agent/workflow/runtime.js.map +0 -1
  536. package/dist/src/connectors/oauth.d.ts +0 -22
  537. package/dist/src/connectors/oauth.js +0 -99
  538. package/dist/src/connectors/oauth.js.map +0 -1
  539. package/dist/src/workflows/runtime/script-runtime.d.ts +0 -3
  540. package/dist/src/workflows/runtime/script-runtime.js +0 -3
  541. package/dist/src/workflows/runtime/script-workflow-runtime.d.ts +0 -5
  542. package/dist/src/workflows/runtime/script-workflow-runtime.js +0 -15
  543. package/dist/src/workflows/runtime/script-workflow-runtime.js.map +0 -1
@@ -1,50 +1,60 @@
1
+ import { getConnectorConnection, getConnectorInstallation, listConnectorConnections, upsertConnectorActionMetadata, upsertConnectorConnection, upsertConnectorInstallation } from "../storage/sqlite/connector-repository.js";
1
2
  import { CredentialResolver, init_credentials } from "../auth/credentials.js";
3
+ import { ComposioSessionsAdapter } from "./composio-sessions.js";
4
+ import { COMPOSIO_AGENT_READY_TOOLKITS, COMPOSIO_TOOLKIT_DISPLAY_NAMES, connectorDefinitionFromComposioToolkit } from "./composio-catalog.js";
2
5
  import { consumeConnectorSetupSecretRef } from "./setup-secrets.js";
3
6
  //#region src/connectors/composio.ts
4
7
  init_credentials();
5
- const COMPOSIO_TOOLKITS = [
6
- [
7
- "gmail",
8
- "Gmail",
9
- "Read and send Gmail messages through Composio."
10
- ],
11
- [
12
- "googlecalendar",
13
- "Google Calendar",
14
- "Read and manage Google Calendar events through Composio."
15
- ],
16
- [
17
- "googledrive",
18
- "Google Drive",
19
- "Search and manage Google Drive files through Composio."
20
- ],
21
- [
22
- "notion",
23
- "Notion",
24
- "Search and update Notion pages and databases through Composio."
25
- ],
26
- [
27
- "slack",
28
- "Slack",
29
- "Read and send Slack workspace messages through Composio."
30
- ],
31
- [
32
- "github",
33
- "GitHub via Composio",
34
- "Work with GitHub repositories, issues, and pull requests through Composio."
35
- ],
36
- [
37
- "linear",
38
- "Linear via Composio",
39
- "Manage Linear issues and projects through Composio."
40
- ]
41
- ];
42
8
  const COMPOSIO_API_KEY_PROVIDER = "connector-composio-api-key";
43
9
  const COMPOSIO_SCOPE_ORDER = {
44
10
  read: 1,
45
11
  write: 2,
46
12
  admin: 3
47
13
  };
14
+ const COMPOSIO_AGENT_READY = new Set(COMPOSIO_AGENT_READY_TOOLKITS);
15
+ const STRICT_CURATED_TOOLKITS = new Set(["github"]);
16
+ const READ_ACTION_TOKENS = [
17
+ "GET",
18
+ "LIST",
19
+ "SEARCH",
20
+ "FETCH",
21
+ "FIND",
22
+ "LOOKUP",
23
+ "RETRIEVE",
24
+ "READ",
25
+ "QUERY",
26
+ "CHECK",
27
+ "DESCRIBE",
28
+ "DOWNLOAD"
29
+ ];
30
+ const WRITE_ACTION_TOKENS = [
31
+ "CREATE",
32
+ "UPDATE",
33
+ "SEND",
34
+ "POST",
35
+ "ADD",
36
+ "UPLOAD",
37
+ "REPLY",
38
+ "DRAFT",
39
+ "INVITE",
40
+ "ASSIGN",
41
+ "MOVE",
42
+ "COPY",
43
+ "EDIT",
44
+ "WRITE",
45
+ "PUBLISH",
46
+ "SCHEDULE"
47
+ ];
48
+ const ADMIN_ACTION_TOKENS = [
49
+ "DELETE",
50
+ "REMOVE",
51
+ "REVOKE",
52
+ "TRASH",
53
+ "ARCHIVE",
54
+ "CANCEL",
55
+ "DISCONNECT",
56
+ "DEACTIVATE"
57
+ ];
48
58
  const COMPOSIO_CURATED_ACTIONS = {
49
59
  gmail: {
50
60
  GMAIL_FETCH_EMAILS: "read",
@@ -82,10 +92,45 @@ const COMPOSIO_CURATED_ACTIONS = {
82
92
  SLACK_SEND_DIRECT_MESSAGE: "write"
83
93
  },
84
94
  github: {
95
+ GITHUB_GET_THE_AUTHENTICATED_USER: "read",
96
+ GITHUB_LIST_REPOSITORIES_FOR_THE_AUTHENTICATED_USER: "read",
97
+ GITHUB_GET_A_REPOSITORY: "read",
85
98
  GITHUB_GET_REPOSITORY: "read",
99
+ GITHUB_LIST_REPOSITORY_COLLABORATORS: "read",
100
+ GITHUB_SEARCH_REPOSITORIES: "read",
101
+ GITHUB_SEARCH_CODE: "read",
102
+ GITHUB_SEARCH_ISSUES_AND_PULL_REQUESTS: "read",
103
+ GITHUB_SEARCH_USERS: "read",
86
104
  GITHUB_LIST_REPOSITORY_ISSUES: "read",
105
+ GITHUB_GET_AN_ISSUE: "read",
106
+ GITHUB_LIST_ISSUE_COMMENTS: "read",
107
+ GITHUB_LIST_PULL_REQUESTS: "read",
108
+ GITHUB_GET_A_PULL_REQUEST: "read",
109
+ GITHUB_LIST_BRANCHES: "read",
110
+ GITHUB_GET_A_BRANCH: "read",
111
+ GITHUB_LIST_COMMITS: "read",
112
+ GITHUB_GET_A_COMMIT: "read",
113
+ GITHUB_CREATE_A_REPOSITORY_FOR_THE_AUTHENTICATED_USER: "write",
114
+ GITHUB_CREATE_OR_UPDATE_FILE_CONTENTS: "write",
115
+ GITHUB_CREATE_A_COMMIT: "write",
116
+ GITHUB_CREATE_A_COMMIT_COMMENT: "write",
87
117
  GITHUB_CREATE_AN_ISSUE: "write",
88
- GITHUB_CREATE_PULL_REQUEST: "write"
118
+ GITHUB_UPDATE_AN_ISSUE: "write",
119
+ GITHUB_CREATE_AN_ISSUE_COMMENT: "write",
120
+ GITHUB_ADD_LABELS_TO_AN_ISSUE: "write",
121
+ GITHUB_ADD_ASSIGNEES_TO_AN_ISSUE: "write",
122
+ GITHUB_CREATE_A_PULL_REQUEST: "write",
123
+ GITHUB_CREATE_PULL_REQUEST: "write",
124
+ GITHUB_UPDATE_A_PULL_REQUEST: "write",
125
+ GITHUB_MERGE_A_PULL_REQUEST: "write",
126
+ GITHUB_CREATE_A_REVIEW_FOR_A_PULL_REQUEST: "write",
127
+ GITHUB_CREATE_A_REVIEW_COMMENT_FOR_A_PULL_REQUEST: "write",
128
+ GITHUB_CREATE_A_GIST: "write",
129
+ GITHUB_DELETE_A_REPOSITORY: "admin",
130
+ GITHUB_DELETE_A_REFERENCE: "admin",
131
+ GITHUB_DELETE_A_FILE: "admin",
132
+ GITHUB_ADD_A_REPOSITORY_COLLABORATOR: "admin",
133
+ GITHUB_CANCEL_A_WORKFLOW_RUN: "admin"
89
134
  },
90
135
  linear: {
91
136
  LINEAR_LIST_ISSUES: "read",
@@ -94,42 +139,11 @@ const COMPOSIO_CURATED_ACTIONS = {
94
139
  LINEAR_UPDATE_ISSUE: "write"
95
140
  }
96
141
  };
97
- function composioBaseUrl() {
98
- return process.env.XOPC_COMPOSIO_BASE_URL?.trim().replace(/\/+$/, "") || "https://backend.composio.dev/api/v3";
99
- }
100
- async function composioApiKey(resolver = new CredentialResolver()) {
101
- const key = (await resolver.resolveApiKey(COMPOSIO_API_KEY_PROVIDER).catch(() => void 0))?.trim() || process.env.XOPC_COMPOSIO_API_KEY?.trim() || process.env.COMPOSIO_API_KEY?.trim();
102
- if (!key) throw new Error("Composio API key is not configured. Set XOPC_COMPOSIO_API_KEY or connect the Composio API Key connector.");
103
- return key;
104
- }
105
- async function composioFetch(path, init = {}, resolver = new CredentialResolver()) {
106
- const apiKey = await composioApiKey(resolver);
107
- const response = await fetch(`${composioBaseUrl()}${path}`, {
108
- ...init,
109
- headers: {
110
- Accept: "application/json",
111
- "Content-Type": "application/json",
112
- "x-api-key": apiKey,
113
- Authorization: `Bearer ${apiKey}`,
114
- ...init.headers ?? {}
115
- }
116
- });
117
- const data = await response.json().catch(async () => ({ error: await response.text().catch(() => response.statusText) }));
118
- if (!response.ok) {
119
- const record = data && typeof data === "object" && !Array.isArray(data) ? data : {};
120
- throw new Error(String(record.error ?? record.message ?? response.statusText));
121
- }
122
- return data;
123
- }
124
- function arrayAt(payload, keys) {
125
- if (Array.isArray(payload)) return payload;
126
- if (!payload || typeof payload !== "object" || Array.isArray(payload)) return [];
127
- const record = payload;
128
- for (const key of keys) if (Array.isArray(record[key])) return record[key];
129
- return [];
130
- }
131
- function readString(value) {
132
- return typeof value === "string" && value.trim() ? value.trim() : void 0;
142
+ const LOCAL_OWNER_PRINCIPAL = "local-owner";
143
+ function toolkitFromConnectionMetadata(connection) {
144
+ const toolkit = connection.metadata.toolkit;
145
+ if (typeof toolkit !== "string" || !toolkit.trim()) throw new Error(`Composio connection "${connection.id}" does not contain toolkit metadata.`);
146
+ return toolkit;
133
147
  }
134
148
  function normalizeToolkit(toolkit) {
135
149
  return toolkit.trim().toLowerCase().replace(/[^a-z0-9_]+/g, "");
@@ -137,8 +151,8 @@ function normalizeToolkit(toolkit) {
137
151
  function toolkitFromComposioSlug(slug) {
138
152
  const upper = slug.trim().toUpperCase();
139
153
  if (!upper) return void 0;
140
- if (upper.startsWith("GOOGLECALENDAR_")) return "googlecalendar";
141
- if (upper.startsWith("GOOGLEDRIVE_")) return "googledrive";
154
+ const known = [...COMPOSIO_AGENT_READY].sort((left, right) => right.length - left.length).find((toolkit) => upper === toolkit.toUpperCase() || upper.startsWith(`${toolkit.toUpperCase()}_`));
155
+ if (known) return known;
142
156
  return upper.split("_")[0]?.toLowerCase() || void 0;
143
157
  }
144
158
  function scopeForComposioAction(slug) {
@@ -153,12 +167,39 @@ function scopeForComposioAction(slug) {
153
167
  scope,
154
168
  curated: true
155
169
  };
170
+ if (STRICT_CURATED_TOOLKITS.has(toolkit)) return {
171
+ toolkit,
172
+ scope: "write",
173
+ curated: false
174
+ };
175
+ if (COMPOSIO_AGENT_READY.has(toolkit)) {
176
+ const tokens = slug.trim().toUpperCase().split("_");
177
+ if (tokens.some((token) => ADMIN_ACTION_TOKENS.some((verb) => token.startsWith(verb)))) return {
178
+ toolkit,
179
+ scope: "admin",
180
+ curated: true
181
+ };
182
+ if (tokens.some((token) => READ_ACTION_TOKENS.some((verb) => token.startsWith(verb)))) return {
183
+ toolkit,
184
+ scope: "read",
185
+ curated: true
186
+ };
187
+ if (tokens.some((token) => WRITE_ACTION_TOKENS.some((verb) => token.startsWith(verb)))) return {
188
+ toolkit,
189
+ scope: "write",
190
+ curated: true
191
+ };
192
+ }
156
193
  return {
157
194
  toolkit,
158
195
  scope: "write",
159
196
  curated: false
160
197
  };
161
198
  }
199
+ function isComposioActionAllowedByCatalog(slug) {
200
+ const action = scopeForComposioAction(slug);
201
+ return Boolean(action.toolkit && (action.curated || !STRICT_CURATED_TOOLKITS.has(action.toolkit)));
202
+ }
162
203
  function getComposioToolkitScope(config, toolkit) {
163
204
  const record = config?.connectors?.instances?.[`composio-${normalizeToolkit(toolkit)}`];
164
205
  const raw = record && typeof record === "object" && !Array.isArray(record) ? record.scope : void 0;
@@ -177,6 +218,12 @@ function canUseComposioAction(config, slug) {
177
218
  reason: `Unknown Composio toolkit for action: ${slug}`,
178
219
  scope: action.scope
179
220
  };
221
+ if (!isComposioActionAllowedByCatalog(slug)) return {
222
+ ok: false,
223
+ reason: `Composio action ${slug} is not in the curated ${action.toolkit} action catalog.`,
224
+ toolkit: action.toolkit,
225
+ scope: action.scope
226
+ };
180
227
  if (!config?.connectors?.instances?.[`composio-${action.toolkit}`]) return {
181
228
  ok: false,
182
229
  reason: `Composio connector is not installed: ${action.toolkit}`,
@@ -210,6 +257,11 @@ const COMPOSIO_CONNECTORS = [{
210
257
  category: "automation",
211
258
  kind: "composio",
212
259
  source: "builtin",
260
+ branding: {
261
+ logoUrl: "/connector-icons/composio.svg",
262
+ source: "composio-catalog"
263
+ },
264
+ verificationLevel: "verified",
213
265
  capabilities: [
214
266
  "auth.apiKey",
215
267
  "tools",
@@ -229,92 +281,228 @@ const COMPOSIO_CONNECTORS = [{
229
281
  }] },
230
282
  runtime: {
231
283
  type: "composio",
232
- toolkit: "composio"
233
- }
234
- }, ...COMPOSIO_TOOLKITS.map(([toolkit, displayName, description]) => ({
235
- id: `composio-${toolkit}`,
236
- version: "1.0.0",
237
- displayName,
238
- description,
239
- category: "automation",
240
- kind: "composio",
241
- source: "builtin",
242
- capabilities: [
243
- "tools",
244
- "auth.oauth",
245
- "events",
246
- "workflows"
247
- ],
248
- tags: ["composio", toolkit],
249
- auth: { mode: "none" },
250
- setup: {},
251
- runtime: {
252
- type: "composio",
253
- toolkit
284
+ toolkit: "composio",
285
+ role: "credential"
286
+ },
287
+ integrationStrategy: {
288
+ lane: "composio",
289
+ workload: "long_tail",
290
+ preferred: true
254
291
  }
255
- }))];
292
+ }, ...COMPOSIO_AGENT_READY_TOOLKITS.map((toolkit) => {
293
+ return {
294
+ ...connectorDefinitionFromComposioToolkit({
295
+ slug: toolkit,
296
+ name: COMPOSIO_TOOLKIT_DISPLAY_NAMES[toolkit],
297
+ isNoAuth: false,
298
+ connected: false
299
+ }),
300
+ version: "1.0.0"
301
+ };
302
+ })];
256
303
  async function saveComposioApiKey(input, resolver = new CredentialResolver()) {
257
304
  const raw = input.secrets?.COMPOSIO_API_KEY;
258
305
  const resolved = typeof raw === "string" && raw.trim().startsWith("secret://") ? consumeConnectorSetupSecretRef(raw) : raw;
259
- if (typeof resolved === "string" && resolved.trim()) await resolver.saveApiKey(COMPOSIO_API_KEY_PROVIDER, resolved.trim(), { profileName: "default" });
306
+ if (typeof resolved !== "string" || !resolved.trim()) throw new Error("Composio API key is required.");
307
+ await resolver.saveApiKey(COMPOSIO_API_KEY_PROVIDER, resolved.trim(), { profileName: "default" });
260
308
  }
261
309
  async function listComposioConnections(resolver = new CredentialResolver()) {
262
- return arrayAt(await composioFetch("/connected_accounts", {}, resolver), [
263
- "items",
264
- "connected_accounts",
265
- "connections",
266
- "data"
267
- ]).flatMap((item) => {
268
- if (!item || typeof item !== "object" || Array.isArray(item)) return [];
269
- const row = item;
270
- const toolkit = readString(row.toolkit_slug ?? row.toolkit ?? row.appName ?? row.app_name);
271
- const id = readString(row.id ?? row.uuid ?? row.connectedAccountId ?? row.connected_account_id);
272
- if (!toolkit || !id) return [];
273
- return [{
274
- id,
275
- toolkit,
276
- status: readString(row.status) ?? "unknown",
277
- accountEmail: readString(row.accountEmail ?? row.account_email ?? row.email),
278
- workspace: readString(row.workspace ?? row.teamName ?? row.team_name),
279
- username: readString(row.username ?? row.name)
280
- }];
310
+ await new ComposioSessionsAdapter({ resolver }).syncConnections({ principalId: LOCAL_OWNER_PRINCIPAL });
311
+ return listConnectorConnections({ principalId: LOCAL_OWNER_PRINCIPAL }).filter((connection) => connection.provider === "composio").map((connection) => ({
312
+ id: connection.id,
313
+ providerConnectionId: connection.providerConnectionId,
314
+ toolkit: toolkitFromConnectionMetadata(connection),
315
+ status: connection.status,
316
+ alias: connection.alias,
317
+ isDefault: connection.isDefault,
318
+ accountEmail: typeof connection.identity.email === "string" ? connection.identity.email : void 0,
319
+ workspace: typeof connection.identity.workspace === "string" ? connection.identity.workspace : void 0,
320
+ username: typeof connection.identity.username === "string" ? connection.identity.username : void 0,
321
+ connectedAt: connection.connectedAt,
322
+ lastError: connection.lastError
323
+ }));
324
+ }
325
+ async function inspectComposioConnectorHealth(toolkit, resolver = new CredentialResolver()) {
326
+ const normalizedToolkit = normalizeToolkit(toolkit);
327
+ try {
328
+ const connections = (await listComposioConnections(resolver)).filter((connection) => connection.toolkit.toLowerCase() === normalizedToolkit);
329
+ const activeConnections = connections.filter((connection) => connection.status === "active").length;
330
+ const affectedConnections = connections.filter((connection) => connection.status === "expired" || connection.status === "failed").length;
331
+ if (activeConnections > 0) return {
332
+ toolkit: normalizedToolkit,
333
+ status: "connected",
334
+ activeConnections,
335
+ affectedConnections,
336
+ checkedAt: (/* @__PURE__ */ new Date()).toISOString(),
337
+ message: `${activeConnections} active account connection${activeConnections === 1 ? "" : "s"}.`,
338
+ recovery: "none"
339
+ };
340
+ if (affectedConnections > 0) return {
341
+ toolkit: normalizedToolkit,
342
+ status: "reauthorization_required",
343
+ activeConnections: 0,
344
+ affectedConnections,
345
+ checkedAt: (/* @__PURE__ */ new Date()).toISOString(),
346
+ message: "The account connection expired or failed and must be authorized again.",
347
+ recovery: "reconnect"
348
+ };
349
+ return {
350
+ toolkit: normalizedToolkit,
351
+ status: "disconnected",
352
+ activeConnections: 0,
353
+ affectedConnections: 0,
354
+ checkedAt: (/* @__PURE__ */ new Date()).toISOString(),
355
+ message: "No active account is connected.",
356
+ recovery: "connect"
357
+ };
358
+ } catch (error) {
359
+ const failure = classifyComposioHealthError(error);
360
+ return {
361
+ toolkit: normalizedToolkit,
362
+ status: "degraded",
363
+ activeConnections: 0,
364
+ affectedConnections: 0,
365
+ checkedAt: (/* @__PURE__ */ new Date()).toISOString(),
366
+ message: failure.message,
367
+ recovery: "retry",
368
+ errorCode: failure.code
369
+ };
370
+ }
371
+ }
372
+ function classifyComposioHealthError(error) {
373
+ const message = error instanceof Error ? error.message : String(error);
374
+ if (/api key is not configured|missing.*api key/i.test(message)) return {
375
+ code: "missing_credential",
376
+ message
377
+ };
378
+ if (/\b401\b|unauthori[sz]ed|invalid api key|authentication failed/i.test(message)) return {
379
+ code: "unauthorized",
380
+ message: "Composio rejected the configured project API key."
381
+ };
382
+ if (/\b403\b|forbidden|insufficient permission|permission denied/i.test(message)) return {
383
+ code: "forbidden",
384
+ message: "The Composio project API key does not have the required permissions."
385
+ };
386
+ if (/timed?\s*out|timeout|aborterror/i.test(message)) return {
387
+ code: "timeout",
388
+ message: "The Composio health request timed out."
389
+ };
390
+ if (/fetch failed|network|econn|enotfound|eai_again|socket|tls/i.test(message)) return {
391
+ code: "network",
392
+ message: "The gateway could not reach the Composio API."
393
+ };
394
+ return {
395
+ code: "provider_error",
396
+ message
397
+ };
398
+ }
399
+ function getComposioInstallationPolicy(config, toolkit) {
400
+ const normalizedToolkit = normalizeToolkit(toolkit);
401
+ const connectorId = `composio-${normalizedToolkit}`;
402
+ const id = `${connectorId}-${LOCAL_OWNER_PRINCIPAL}`;
403
+ const existing = getConnectorInstallation(id);
404
+ return upsertConnectorInstallation({
405
+ id,
406
+ connectorId,
407
+ principalId: LOCAL_OWNER_PRINCIPAL,
408
+ enabled: existing?.enabled ?? true,
409
+ allowedAgentIds: existing?.allowedAgentIds ?? [],
410
+ maxScope: getComposioToolkitScope(config, normalizedToolkit),
411
+ confirmationPolicy: existing?.confirmationPolicy ?? "writes",
412
+ selectedConnectionIds: existing?.selectedConnectionIds ?? [],
413
+ createdAt: existing?.createdAt
281
414
  });
282
415
  }
283
- async function startComposioAuthorize(toolkit, resolver = new CredentialResolver()) {
284
- const payload = await composioFetch("/connected_accounts", {
285
- method: "POST",
286
- body: JSON.stringify({
287
- toolkit_slug: toolkit,
288
- toolkit,
289
- auth_config: {}
290
- })
291
- }, resolver);
292
- const record = payload && typeof payload === "object" && !Array.isArray(payload) ? payload : {};
293
- const connectUrl = readString(record.redirect_url ?? record.redirectUrl ?? record.connect_url ?? record.connectUrl);
294
- if (!connectUrl) throw new Error("Composio authorize did not return a connect URL.");
416
+ function updateComposioInstallationPolicy(config, toolkit, patch) {
417
+ const current = getComposioInstallationPolicy(config, toolkit);
418
+ return upsertConnectorInstallation({
419
+ ...current,
420
+ allowedAgentIds: patch.allowedAgentIds ?? current.allowedAgentIds,
421
+ confirmationPolicy: patch.confirmationPolicy ?? current.confirmationPolicy,
422
+ selectedConnectionIds: patch.selectedConnectionIds ?? current.selectedConnectionIds
423
+ });
424
+ }
425
+ function updateComposioConnection(id, patch) {
426
+ const connection = getConnectorConnection(id);
427
+ if (!connection || connection.provider !== "composio" || connection.principalId !== LOCAL_OWNER_PRINCIPAL) throw new Error("Composio connection not found.");
428
+ upsertConnectorConnection({
429
+ ...connection,
430
+ alias: patch.alias === void 0 ? connection.alias : patch.alias.trim() || void 0,
431
+ isDefault: patch.isDefault ?? connection.isDefault
432
+ });
433
+ const updated = getConnectorConnection(id);
295
434
  return {
296
- toolkit,
297
- connectUrl,
298
- connectionId: readString(record.id ?? record.connectionId ?? record.connected_account_id)
435
+ id: updated.id,
436
+ providerConnectionId: updated.providerConnectionId,
437
+ toolkit: toolkitFromConnectionMetadata(updated),
438
+ status: updated.status,
439
+ alias: updated.alias,
440
+ isDefault: updated.isDefault,
441
+ accountEmail: typeof updated.identity.email === "string" ? updated.identity.email : void 0,
442
+ workspace: typeof updated.identity.workspace === "string" ? updated.identity.workspace : void 0,
443
+ username: typeof updated.identity.username === "string" ? updated.identity.username : void 0,
444
+ connectedAt: updated.connectedAt,
445
+ lastError: updated.lastError
446
+ };
447
+ }
448
+ async function refreshComposioConnection(id, resolver = new CredentialResolver()) {
449
+ const connection = getConnectorConnection(id);
450
+ if (!connection || connection.provider !== "composio" || connection.principalId !== LOCAL_OWNER_PRINCIPAL) throw new Error("Composio connection not found.");
451
+ await new ComposioSessionsAdapter({ resolver }).refreshConnection(connection);
452
+ }
453
+ async function revokeComposioConnection(id, resolver = new CredentialResolver()) {
454
+ const connection = getConnectorConnection(id);
455
+ if (!connection || connection.provider !== "composio" || connection.principalId !== LOCAL_OWNER_PRINCIPAL) throw new Error("Composio connection not found.");
456
+ await new ComposioSessionsAdapter({ resolver }).revokeConnection(connection);
457
+ }
458
+ async function startComposioAuthorize(connectorId, toolkit, resolver = new CredentialResolver()) {
459
+ const normalizedToolkit = normalizeToolkit(toolkit);
460
+ const authorization = await new ComposioSessionsAdapter({ resolver }).authorize({
461
+ principalId: LOCAL_OWNER_PRINCIPAL,
462
+ toolkit: normalizedToolkit,
463
+ installationId: getConnectorInstallation(`${connectorId}-${LOCAL_OWNER_PRINCIPAL}`)?.id
464
+ });
465
+ if (!authorization.connectUrl) throw new Error("Composio authorize did not return a connect URL.");
466
+ return {
467
+ toolkit: authorization.toolkit,
468
+ connectUrl: authorization.connectUrl,
469
+ connectionId: authorization.connectionId
299
470
  };
300
471
  }
301
472
  async function listComposioTools(toolkit, config, resolver = new CredentialResolver()) {
302
- return arrayAt(await composioFetch(`/tools?toolkit_slug=${encodeURIComponent(toolkit)}`, {}, resolver), [
303
- "items",
304
- "tools",
305
- "data"
306
- ]).flatMap((item) => {
307
- if (!item || typeof item !== "object" || Array.isArray(item)) return [];
308
- const row = item;
309
- const slug = readString(row.slug ?? row.name);
473
+ const normalizedToolkit = normalizeToolkit(toolkit);
474
+ const payload = await (await new ComposioSessionsAdapter({ resolver }).createSession({
475
+ principalId: LOCAL_OWNER_PRINCIPAL,
476
+ toolkits: [normalizedToolkit]
477
+ })).search({
478
+ query: `List the available ${normalizedToolkit} actions and their exact input contracts.`,
479
+ toolkits: [normalizedToolkit]
480
+ });
481
+ if (!payload || typeof payload !== "object" || Array.isArray(payload)) return [];
482
+ const schemas = payload.toolSchemas;
483
+ if (!schemas || typeof schemas !== "object" || Array.isArray(schemas)) return [];
484
+ return Object.values(schemas).flatMap((value) => {
485
+ if (!value || typeof value !== "object" || Array.isArray(value)) return [];
486
+ const row = value;
487
+ const slug = typeof row.toolSlug === "string" ? row.toolSlug : void 0;
310
488
  if (!slug) return [];
311
489
  const action = scopeForComposioAction(slug);
312
- if (!(config ? canUseComposioAction(config, slug).ok : true)) return [];
490
+ if (config && !canUseComposioAction(config, slug).ok) return [];
491
+ const inputSchema = row.inputSchema;
492
+ upsertConnectorActionMetadata({
493
+ connectorId: `composio-${normalizedToolkit}`,
494
+ actionId: slug,
495
+ toolkit: normalizedToolkit,
496
+ scope: action.scope,
497
+ curated: action.curated,
498
+ inputSchema,
499
+ cachedAt: (/* @__PURE__ */ new Date()).toISOString()
500
+ });
313
501
  return [{
314
502
  slug,
315
- name: readString(row.name),
316
- description: readString(row.description),
317
- inputSchema: row.inputSchema ?? row.input_schema ?? row.parameters,
503
+ name: slug,
504
+ description: typeof row.description === "string" ? row.description : void 0,
505
+ inputSchema,
318
506
  scope: action.scope,
319
507
  curated: action.curated
320
508
  }];
@@ -323,12 +511,47 @@ async function listComposioTools(toolkit, config, resolver = new CredentialResol
323
511
  async function executeComposioTool(params, resolver = new CredentialResolver()) {
324
512
  const allowed = canUseComposioAction(params.config, params.slug);
325
513
  if (allowed.ok === false) throw new Error(allowed.reason);
326
- return composioFetch(`/tools/${encodeURIComponent(params.slug)}/execute`, {
327
- method: "POST",
328
- body: JSON.stringify({ arguments: params.arguments ?? {} })
329
- }, resolver);
514
+ if (!allowed.toolkit) throw new Error(`Unknown Composio toolkit for action: ${params.slug}`);
515
+ const connectorId = `composio-${allowed.toolkit}`;
516
+ const installation = upsertConnectorInstallation({
517
+ id: `${connectorId}-${LOCAL_OWNER_PRINCIPAL}`,
518
+ connectorId,
519
+ principalId: LOCAL_OWNER_PRINCIPAL,
520
+ enabled: true,
521
+ allowedAgentIds: [],
522
+ maxScope: getComposioToolkitScope(params.config, allowed.toolkit),
523
+ confirmationPolicy: "writes",
524
+ selectedConnectionIds: []
525
+ });
526
+ const connection = listConnectorConnections({
527
+ principalId: LOCAL_OWNER_PRINCIPAL,
528
+ connectorId
529
+ }).find((candidate) => candidate.status === "active" && candidate.isDefault) ?? listConnectorConnections({
530
+ principalId: LOCAL_OWNER_PRINCIPAL,
531
+ connectorId
532
+ }).find((candidate) => candidate.status === "active");
533
+ const result = await new ComposioSessionsAdapter({ resolver }).executeWithPolicy({
534
+ context: {
535
+ principalId: LOCAL_OWNER_PRINCIPAL,
536
+ toolkits: [allowed.toolkit]
537
+ },
538
+ installation,
539
+ connection,
540
+ action: {
541
+ connectorId,
542
+ actionId: params.slug,
543
+ toolkit: allowed.toolkit,
544
+ scope: allowed.scope,
545
+ curated: scopeForComposioAction(params.slug).curated,
546
+ cachedAt: (/* @__PURE__ */ new Date()).toISOString()
547
+ },
548
+ args: params.arguments && typeof params.arguments === "object" && !Array.isArray(params.arguments) ? params.arguments : {},
549
+ confirmed: true
550
+ });
551
+ if (result.decision !== "allowed") throw new Error(result.reason);
552
+ return result.result;
330
553
  }
331
554
  //#endregion
332
- export { COMPOSIO_CONNECTORS, canUseComposioAction, executeComposioTool, getComposioToolkitScope, listComposioConnections, listComposioTools, saveComposioApiKey, scopeForComposioAction, setComposioToolkitScope, startComposioAuthorize, toolkitFromComposioSlug };
555
+ export { COMPOSIO_CONNECTORS, canUseComposioAction, executeComposioTool, getComposioInstallationPolicy, getComposioToolkitScope, inspectComposioConnectorHealth, isComposioActionAllowedByCatalog, listComposioConnections, listComposioTools, refreshComposioConnection, revokeComposioConnection, saveComposioApiKey, scopeForComposioAction, setComposioToolkitScope, startComposioAuthorize, toolkitFromComposioSlug, updateComposioConnection, updateComposioInstallationPolicy };
333
556
 
334
557
  //# sourceMappingURL=composio.js.map