denchclaw 2.4.5 → 2.5.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 (626) hide show
  1. package/README.md +31 -0
  2. package/apps/web/.next/standalone/apps/web/.next/BUILD_ID +1 -1
  3. package/apps/web/.next/standalone/apps/web/.next/app-build-manifest.json +327 -198
  4. package/apps/web/.next/standalone/apps/web/.next/app-path-routes-manifest.json +44 -26
  5. package/apps/web/.next/standalone/apps/web/.next/build-manifest.json +5 -5
  6. package/apps/web/.next/standalone/apps/web/.next/cache/config.json +3 -3
  7. package/apps/web/.next/standalone/apps/web/.next/prerender-manifest.json +3 -3
  8. package/apps/web/.next/standalone/apps/web/.next/react-loadable-manifest.json +6 -6
  9. package/apps/web/.next/standalone/apps/web/.next/required-server-files.json +1 -1
  10. package/apps/web/.next/standalone/apps/web/.next/routes-manifest.json +25 -1
  11. package/apps/web/.next/standalone/apps/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  12. package/apps/web/.next/standalone/apps/web/.next/server/app/api/apps/cron/route_client-reference-manifest.js +1 -1
  13. package/apps/web/.next/standalone/apps/web/.next/server/app/api/apps/proxy/route_client-reference-manifest.js +1 -1
  14. package/apps/web/.next/standalone/apps/web/.next/server/app/api/apps/route_client-reference-manifest.js +1 -1
  15. package/apps/web/.next/standalone/apps/web/.next/server/app/api/apps/serve/[...path]/route_client-reference-manifest.js +1 -1
  16. package/apps/web/.next/standalone/apps/web/.next/server/app/api/apps/store/route_client-reference-manifest.js +1 -1
  17. package/apps/web/.next/standalone/apps/web/.next/server/app/api/apps/webhooks/[...path]/route_client-reference-manifest.js +1 -1
  18. package/apps/web/.next/standalone/apps/web/.next/server/app/api/chat/active/route_client-reference-manifest.js +1 -1
  19. package/apps/web/.next/standalone/apps/web/.next/server/app/api/chat/route.js +2 -2
  20. package/apps/web/.next/standalone/apps/web/.next/server/app/api/chat/route_client-reference-manifest.js +1 -1
  21. package/apps/web/.next/standalone/apps/web/.next/server/app/api/chat/runs/route.js +1 -1
  22. package/apps/web/.next/standalone/apps/web/.next/server/app/api/chat/runs/route_client-reference-manifest.js +1 -1
  23. package/apps/web/.next/standalone/apps/web/.next/server/app/api/chat/stop/route.js +1 -1
  24. package/apps/web/.next/standalone/apps/web/.next/server/app/api/chat/stop/route_client-reference-manifest.js +1 -1
  25. package/apps/web/.next/standalone/apps/web/.next/server/app/api/chat/stream/route_client-reference-manifest.js +1 -1
  26. package/apps/web/.next/standalone/apps/web/.next/server/app/api/chat/subagents/route.js +1 -1
  27. package/apps/web/.next/standalone/apps/web/.next/server/app/api/chat/subagents/route_client-reference-manifest.js +1 -1
  28. package/apps/web/.next/standalone/apps/web/.next/server/app/api/composio/callback/route.js +42 -0
  29. package/apps/web/.next/standalone/apps/web/.next/server/app/api/composio/callback/route.js.nft.json +1 -0
  30. package/apps/web/.next/standalone/apps/web/.next/server/app/api/composio/callback/route_client-reference-manifest.js +1 -0
  31. package/apps/web/.next/standalone/apps/web/.next/server/app/api/composio/connect/route.js +1 -0
  32. package/apps/web/.next/standalone/apps/web/.next/server/app/api/composio/connect/route.js.nft.json +1 -0
  33. package/apps/web/.next/standalone/apps/web/.next/server/app/api/composio/connect/route_client-reference-manifest.js +1 -0
  34. package/apps/web/.next/standalone/apps/web/.next/server/app/api/composio/connections/route.js +1 -0
  35. package/apps/web/.next/standalone/apps/web/.next/server/app/api/composio/connections/route.js.nft.json +1 -0
  36. package/apps/web/.next/standalone/apps/web/.next/server/app/api/composio/connections/route_client-reference-manifest.js +1 -0
  37. package/apps/web/.next/standalone/apps/web/.next/server/app/api/composio/disconnect/route.js +1 -0
  38. package/apps/web/.next/standalone/apps/web/.next/server/app/api/composio/disconnect/route.js.nft.json +1 -0
  39. package/apps/web/.next/standalone/apps/web/.next/server/app/api/composio/disconnect/route_client-reference-manifest.js +1 -0
  40. package/apps/web/.next/standalone/apps/web/.next/server/app/api/composio/status/route.js +1 -0
  41. package/apps/web/.next/standalone/apps/web/.next/server/app/api/composio/status/route.js.nft.json +1 -0
  42. package/apps/web/.next/standalone/apps/web/.next/server/app/api/composio/status/route_client-reference-manifest.js +1 -0
  43. package/apps/web/.next/standalone/apps/web/.next/server/app/api/composio/tool-index/route.js +1 -0
  44. package/apps/web/.next/standalone/apps/web/.next/server/app/api/composio/tool-index/route.js.nft.json +1 -0
  45. package/apps/web/.next/standalone/apps/web/.next/server/app/api/composio/tool-index/route_client-reference-manifest.js +1 -0
  46. package/apps/web/.next/standalone/apps/web/.next/server/app/api/composio/toolkits/route.js +1 -0
  47. package/apps/web/.next/standalone/apps/web/.next/server/app/api/composio/toolkits/route.js.nft.json +1 -0
  48. package/apps/web/.next/standalone/apps/web/.next/server/app/api/composio/toolkits/route_client-reference-manifest.js +1 -0
  49. package/apps/web/.next/standalone/apps/web/.next/server/app/api/cron/jobs/[jobId]/runs/route_client-reference-manifest.js +1 -1
  50. package/apps/web/.next/standalone/apps/web/.next/server/app/api/cron/jobs/route_client-reference-manifest.js +1 -1
  51. package/apps/web/.next/standalone/apps/web/.next/server/app/api/cron/runs/[sessionId]/route_client-reference-manifest.js +1 -1
  52. package/apps/web/.next/standalone/apps/web/.next/server/app/api/cron/runs/search-transcript/route_client-reference-manifest.js +1 -1
  53. package/apps/web/.next/standalone/apps/web/.next/server/app/api/feedback/route.js +1 -1
  54. package/apps/web/.next/standalone/apps/web/.next/server/app/api/feedback/route_client-reference-manifest.js +1 -1
  55. package/apps/web/.next/standalone/apps/web/.next/server/app/api/gateway/channels/route_client-reference-manifest.js +1 -1
  56. package/apps/web/.next/standalone/apps/web/.next/server/app/api/gateway/chat/route_client-reference-manifest.js +1 -1
  57. package/apps/web/.next/standalone/apps/web/.next/server/app/api/gateway/chat/stream/route_client-reference-manifest.js +1 -1
  58. package/apps/web/.next/standalone/apps/web/.next/server/app/api/gateway/sessions/[id]/route_client-reference-manifest.js +1 -1
  59. package/apps/web/.next/standalone/apps/web/.next/server/app/api/gateway/sessions/route_client-reference-manifest.js +1 -1
  60. package/apps/web/.next/standalone/apps/web/.next/server/app/api/integrations/[id]/toggle/route.js +1 -0
  61. package/apps/web/.next/standalone/apps/web/.next/server/app/api/integrations/[id]/toggle/route.js.nft.json +1 -0
  62. package/apps/web/.next/standalone/apps/web/.next/server/app/api/integrations/[id]/toggle/route_client-reference-manifest.js +1 -0
  63. package/apps/web/.next/standalone/apps/web/.next/server/app/api/integrations/repair/route.js +1 -0
  64. package/apps/web/.next/standalone/apps/web/.next/server/app/api/integrations/repair/route.js.nft.json +1 -0
  65. package/apps/web/.next/standalone/apps/web/.next/server/app/api/integrations/repair/route_client-reference-manifest.js +1 -0
  66. package/apps/web/.next/standalone/apps/web/.next/server/app/api/integrations/route.js +1 -0
  67. package/apps/web/.next/standalone/apps/web/.next/server/app/api/integrations/route.js.nft.json +1 -0
  68. package/apps/web/.next/standalone/apps/web/.next/server/app/api/integrations/route_client-reference-manifest.js +1 -0
  69. package/apps/web/.next/standalone/apps/web/.next/server/app/api/memories/route_client-reference-manifest.js +1 -1
  70. package/apps/web/.next/standalone/apps/web/.next/server/app/api/profiles/route_client-reference-manifest.js +1 -1
  71. package/apps/web/.next/standalone/apps/web/.next/server/app/api/profiles/switch/route_client-reference-manifest.js +1 -1
  72. package/apps/web/.next/standalone/apps/web/.next/server/app/api/sessions/[sessionId]/route_client-reference-manifest.js +1 -1
  73. package/apps/web/.next/standalone/apps/web/.next/server/app/api/sessions/route.js +1 -1
  74. package/apps/web/.next/standalone/apps/web/.next/server/app/api/sessions/route_client-reference-manifest.js +1 -1
  75. package/apps/web/.next/standalone/apps/web/.next/server/app/api/settings/cloud/route.js +1 -0
  76. package/apps/web/.next/standalone/apps/web/.next/server/app/api/settings/cloud/route.js.nft.json +1 -0
  77. package/apps/web/.next/standalone/apps/web/.next/server/app/api/settings/cloud/route_client-reference-manifest.js +1 -0
  78. package/apps/web/.next/standalone/apps/web/.next/server/app/api/skills/[slug]/content/route.js +1 -0
  79. package/apps/web/.next/standalone/apps/web/.next/server/app/api/skills/[slug]/content/route.js.nft.json +1 -0
  80. package/apps/web/.next/standalone/apps/web/.next/server/app/api/skills/[slug]/content/route_client-reference-manifest.js +1 -0
  81. package/apps/web/.next/standalone/apps/web/.next/server/app/api/skills/[slug]/route.js +1 -0
  82. package/apps/web/.next/standalone/apps/web/.next/server/app/api/skills/[slug]/route.js.nft.json +1 -0
  83. package/apps/web/.next/standalone/apps/web/.next/server/app/api/skills/[slug]/route_client-reference-manifest.js +1 -0
  84. package/apps/web/.next/standalone/apps/web/.next/server/app/api/skills/browse/route.js +1 -0
  85. package/apps/web/.next/standalone/apps/web/.next/server/app/api/skills/browse/route.js.nft.json +1 -0
  86. package/apps/web/.next/standalone/apps/web/.next/server/app/api/skills/browse/route_client-reference-manifest.js +1 -0
  87. package/apps/web/.next/standalone/apps/web/.next/server/app/api/skills/install/route.js +1 -0
  88. package/apps/web/.next/standalone/apps/web/.next/server/app/api/skills/install/route.js.nft.json +1 -0
  89. package/apps/web/.next/standalone/apps/web/.next/server/app/api/skills/install/route_client-reference-manifest.js +1 -0
  90. package/apps/web/.next/standalone/apps/web/.next/server/app/api/skills/route.js +2 -1
  91. package/apps/web/.next/standalone/apps/web/.next/server/app/api/skills/route_client-reference-manifest.js +1 -1
  92. package/apps/web/.next/standalone/apps/web/.next/server/app/api/terminal/port/route_client-reference-manifest.js +1 -1
  93. package/apps/web/.next/standalone/apps/web/.next/server/app/api/voice/speech/route.js +1 -0
  94. package/apps/web/.next/standalone/apps/web/.next/server/app/api/voice/speech/route.js.nft.json +1 -0
  95. package/apps/web/.next/standalone/apps/web/.next/server/app/api/voice/speech/route_client-reference-manifest.js +1 -0
  96. package/apps/web/.next/standalone/apps/web/.next/server/app/api/voice/transcribe/route.js +1 -0
  97. package/apps/web/.next/standalone/apps/web/.next/server/app/api/voice/transcribe/route.js.nft.json +1 -0
  98. package/apps/web/.next/standalone/apps/web/.next/server/app/api/voice/transcribe/route_client-reference-manifest.js +1 -0
  99. package/apps/web/.next/standalone/apps/web/.next/server/app/api/voice/voices/route.js +1 -0
  100. package/apps/web/.next/standalone/apps/web/.next/server/app/api/voice/voices/route.js.nft.json +1 -0
  101. package/apps/web/.next/standalone/apps/web/.next/server/app/api/voice/voices/route_client-reference-manifest.js +1 -0
  102. package/apps/web/.next/standalone/apps/web/.next/server/app/api/web-sessions/[id]/messages/route_client-reference-manifest.js +1 -1
  103. package/apps/web/.next/standalone/apps/web/.next/server/app/api/web-sessions/[id]/route.js +1 -1
  104. package/apps/web/.next/standalone/apps/web/.next/server/app/api/web-sessions/[id]/route_client-reference-manifest.js +1 -1
  105. package/apps/web/.next/standalone/apps/web/.next/server/app/api/web-sessions/route.js +1 -1
  106. package/apps/web/.next/standalone/apps/web/.next/server/app/api/web-sessions/route_client-reference-manifest.js +1 -1
  107. package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/assets/[...path]/route_client-reference-manifest.js +1 -1
  108. package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/browse/route_client-reference-manifest.js +1 -1
  109. package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/browse-file/route_client-reference-manifest.js +1 -1
  110. package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/context/route_client-reference-manifest.js +1 -1
  111. package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/copy/route_client-reference-manifest.js +1 -1
  112. package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/db/introspect/route_client-reference-manifest.js +1 -1
  113. package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/db/query/route_client-reference-manifest.js +1 -1
  114. package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/delete/route.js +1 -1
  115. package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/delete/route_client-reference-manifest.js +1 -1
  116. package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/execute/route_client-reference-manifest.js +1 -1
  117. package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/file/route_client-reference-manifest.js +1 -1
  118. package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/init/route.js +2 -2
  119. package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/init/route_client-reference-manifest.js +1 -1
  120. package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/link-preview/route_client-reference-manifest.js +1 -1
  121. package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/list/route_client-reference-manifest.js +1 -1
  122. package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/mkdir/route_client-reference-manifest.js +1 -1
  123. package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/move/route_client-reference-manifest.js +1 -1
  124. package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/objects/[name]/actions/route_client-reference-manifest.js +1 -1
  125. package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/objects/[name]/actions/runs/route_client-reference-manifest.js +1 -1
  126. package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/objects/[name]/display-field/route_client-reference-manifest.js +1 -1
  127. package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/objects/[name]/entries/[id]/content/route_client-reference-manifest.js +1 -1
  128. package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/objects/[name]/entries/[id]/route_client-reference-manifest.js +1 -1
  129. package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/objects/[name]/entries/bulk-delete/route_client-reference-manifest.js +1 -1
  130. package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/objects/[name]/entries/options/route_client-reference-manifest.js +1 -1
  131. package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/objects/[name]/entries/route.js +1 -1
  132. package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/objects/[name]/entries/route_client-reference-manifest.js +1 -1
  133. package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/objects/[name]/fields/[fieldId]/enum-rename/route_client-reference-manifest.js +1 -1
  134. package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/objects/[name]/fields/[fieldId]/route_client-reference-manifest.js +1 -1
  135. package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/objects/[name]/fields/reorder/route_client-reference-manifest.js +1 -1
  136. package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/objects/[name]/fields/route_client-reference-manifest.js +1 -1
  137. package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/objects/[name]/route_client-reference-manifest.js +1 -1
  138. package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/objects/[name]/views/route_client-reference-manifest.js +1 -1
  139. package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/open-file/route_client-reference-manifest.js +1 -1
  140. package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/path-info/route_client-reference-manifest.js +1 -1
  141. package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/query/route_client-reference-manifest.js +1 -1
  142. package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/raw-file/route_client-reference-manifest.js +1 -1
  143. package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/rename/route_client-reference-manifest.js +1 -1
  144. package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/reports/execute/route.js +1 -1
  145. package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/reports/execute/route_client-reference-manifest.js +1 -1
  146. package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/search-index/route_client-reference-manifest.js +1 -1
  147. package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/suggest-files/route_client-reference-manifest.js +1 -1
  148. package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/switch/route.js +1 -1
  149. package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/switch/route_client-reference-manifest.js +1 -1
  150. package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/thumbnail/route_client-reference-manifest.js +1 -1
  151. package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/tree/route.js +1 -1
  152. package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/tree/route_client-reference-manifest.js +1 -1
  153. package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/upload/route.js +1 -1
  154. package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/upload/route_client-reference-manifest.js +1 -1
  155. package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/virtual-file/route_client-reference-manifest.js +1 -1
  156. package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/watch/route_client-reference-manifest.js +1 -1
  157. package/apps/web/.next/standalone/apps/web/.next/server/app/api/workspace/write-binary/route_client-reference-manifest.js +1 -1
  158. package/apps/web/.next/standalone/apps/web/.next/server/app/page.js +21 -21
  159. package/apps/web/.next/standalone/apps/web/.next/server/app/page.js.nft.json +1 -1
  160. package/apps/web/.next/standalone/apps/web/.next/server/app/page_client-reference-manifest.js +1 -1
  161. package/apps/web/.next/standalone/apps/web/.next/server/app/workspace/page_client-reference-manifest.js +1 -1
  162. package/apps/web/.next/standalone/apps/web/.next/server/app-paths-manifest.json +44 -26
  163. package/apps/web/.next/standalone/apps/web/.next/server/chunks/6426.js +2 -2
  164. package/apps/web/.next/standalone/apps/web/.next/server/chunks/6787.js +1 -1
  165. package/apps/web/.next/standalone/apps/web/.next/server/chunks/687.js +7 -7
  166. package/apps/web/.next/standalone/apps/web/.next/server/chunks/737.js +3 -3
  167. package/apps/web/.next/standalone/apps/web/.next/server/chunks/7488.js +1 -0
  168. package/apps/web/.next/standalone/apps/web/.next/server/chunks/8306.js +1 -0
  169. package/apps/web/.next/standalone/apps/web/.next/server/chunks/8650.js +1 -0
  170. package/apps/web/.next/standalone/apps/web/.next/server/chunks/8693.js +481 -0
  171. package/apps/web/.next/standalone/apps/web/.next/server/functions-config-manifest.json +25 -11
  172. package/apps/web/.next/standalone/apps/web/.next/server/middleware-build-manifest.js +1 -1
  173. package/apps/web/.next/standalone/apps/web/.next/server/middleware-react-loadable-manifest.js +1 -1
  174. package/apps/web/.next/standalone/apps/web/.next/server/pages/500.html +1 -1
  175. package/apps/web/.next/standalone/apps/web/.next/server/server-reference-manifest.json +1 -1
  176. package/apps/web/.next/standalone/apps/web/.next/static/U0A79z_eUsEUNVdXxxyc3/_buildManifest.js +1 -0
  177. package/apps/web/.next/{static/chunks/eca025f9.538b3f5d85eeef79.js → standalone/apps/web/.next/static/chunks/0c958985.3ccb9c3aea7cd083.js} +2 -2
  178. package/apps/web/.next/standalone/apps/web/.next/static/chunks/3999.548dd8ec57152081.js +1 -0
  179. package/apps/web/.next/standalone/apps/web/.next/static/chunks/{2489.b5e1ce196331926c.js → 4870.507a55774d37d072.js} +1 -1
  180. package/apps/web/.next/standalone/apps/web/.next/static/chunks/{7812.c1435a724050dfec.js → 5431.a2353a2aa8c55a67.js} +1 -1
  181. package/apps/web/.next/standalone/apps/web/.next/static/chunks/7f67b0df-54679694c67e2b76.js +1 -0
  182. package/apps/web/.next/standalone/apps/web/.next/static/chunks/80f1cbb7-c9635d81d9fe6819.js +1 -0
  183. package/apps/web/.next/standalone/apps/web/.next/static/chunks/8532165e-abce74bbb270ef26.js +1 -0
  184. package/apps/web/.next/standalone/apps/web/.next/static/chunks/9372.e71f5b96da3f9dfd.js +1 -0
  185. package/apps/web/.next/standalone/apps/web/.next/static/chunks/9702-d646bcd7cb8fe6bf.js +135 -0
  186. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/apps/cron/route-982235d988e17f31.js +1 -0
  187. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/apps/proxy/route-982235d988e17f31.js +1 -0
  188. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/apps/route-982235d988e17f31.js +1 -0
  189. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/apps/serve/[...path]/route-982235d988e17f31.js +1 -0
  190. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/apps/store/route-982235d988e17f31.js +1 -0
  191. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/apps/webhooks/[...path]/route-982235d988e17f31.js +1 -0
  192. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/chat/active/route-982235d988e17f31.js +1 -0
  193. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/chat/route-982235d988e17f31.js +1 -0
  194. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/chat/runs/route-982235d988e17f31.js +1 -0
  195. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/chat/stop/route-982235d988e17f31.js +1 -0
  196. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/chat/stream/route-982235d988e17f31.js +1 -0
  197. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/chat/subagents/route-982235d988e17f31.js +1 -0
  198. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/composio/callback/route-982235d988e17f31.js +1 -0
  199. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/composio/connect/route-982235d988e17f31.js +1 -0
  200. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/composio/connections/route-982235d988e17f31.js +1 -0
  201. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/composio/disconnect/route-982235d988e17f31.js +1 -0
  202. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/composio/status/route-982235d988e17f31.js +1 -0
  203. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/composio/tool-index/route-982235d988e17f31.js +1 -0
  204. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/composio/toolkits/route-982235d988e17f31.js +1 -0
  205. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/cron/jobs/[jobId]/runs/route-982235d988e17f31.js +1 -0
  206. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/cron/jobs/route-982235d988e17f31.js +1 -0
  207. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/cron/runs/[sessionId]/route-982235d988e17f31.js +1 -0
  208. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/cron/runs/search-transcript/route-982235d988e17f31.js +1 -0
  209. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/feedback/route-982235d988e17f31.js +1 -0
  210. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/gateway/channels/route-982235d988e17f31.js +1 -0
  211. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/gateway/chat/route-982235d988e17f31.js +1 -0
  212. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/gateway/chat/stream/route-982235d988e17f31.js +1 -0
  213. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/gateway/sessions/[id]/route-982235d988e17f31.js +1 -0
  214. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/gateway/sessions/route-982235d988e17f31.js +1 -0
  215. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/integrations/[id]/toggle/route-982235d988e17f31.js +1 -0
  216. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/integrations/repair/route-982235d988e17f31.js +1 -0
  217. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/integrations/route-982235d988e17f31.js +1 -0
  218. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/memories/route-982235d988e17f31.js +1 -0
  219. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/profiles/route-982235d988e17f31.js +1 -0
  220. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/profiles/switch/route-982235d988e17f31.js +1 -0
  221. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/sessions/[sessionId]/route-982235d988e17f31.js +1 -0
  222. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/sessions/route-982235d988e17f31.js +1 -0
  223. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/settings/cloud/route-982235d988e17f31.js +1 -0
  224. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/skills/[slug]/content/route-982235d988e17f31.js +1 -0
  225. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/skills/[slug]/route-982235d988e17f31.js +1 -0
  226. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/skills/browse/route-982235d988e17f31.js +1 -0
  227. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/skills/install/route-982235d988e17f31.js +1 -0
  228. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/skills/route-982235d988e17f31.js +1 -0
  229. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/terminal/port/route-982235d988e17f31.js +1 -0
  230. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/voice/speech/route-982235d988e17f31.js +1 -0
  231. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/voice/transcribe/route-982235d988e17f31.js +1 -0
  232. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/voice/voices/route-982235d988e17f31.js +1 -0
  233. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/web-sessions/[id]/messages/route-982235d988e17f31.js +1 -0
  234. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/web-sessions/[id]/route-982235d988e17f31.js +1 -0
  235. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/web-sessions/route-982235d988e17f31.js +1 -0
  236. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/assets/[...path]/route-982235d988e17f31.js +1 -0
  237. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/browse/route-982235d988e17f31.js +1 -0
  238. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/browse-file/route-982235d988e17f31.js +1 -0
  239. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/context/route-982235d988e17f31.js +1 -0
  240. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/copy/route-982235d988e17f31.js +1 -0
  241. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/db/introspect/route-982235d988e17f31.js +1 -0
  242. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/db/query/route-982235d988e17f31.js +1 -0
  243. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/delete/route-982235d988e17f31.js +1 -0
  244. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/execute/route-982235d988e17f31.js +1 -0
  245. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/file/route-982235d988e17f31.js +1 -0
  246. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/init/route-982235d988e17f31.js +1 -0
  247. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/link-preview/route-982235d988e17f31.js +1 -0
  248. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/list/route-982235d988e17f31.js +1 -0
  249. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/mkdir/route-982235d988e17f31.js +1 -0
  250. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/move/route-982235d988e17f31.js +1 -0
  251. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/actions/route-982235d988e17f31.js +1 -0
  252. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/actions/runs/route-982235d988e17f31.js +1 -0
  253. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/display-field/route-982235d988e17f31.js +1 -0
  254. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/entries/[id]/content/route-982235d988e17f31.js +1 -0
  255. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/entries/[id]/route-982235d988e17f31.js +1 -0
  256. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/entries/bulk-delete/route-982235d988e17f31.js +1 -0
  257. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/entries/options/route-982235d988e17f31.js +1 -0
  258. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/entries/route-982235d988e17f31.js +1 -0
  259. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/fields/[fieldId]/enum-rename/route-982235d988e17f31.js +1 -0
  260. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/fields/[fieldId]/route-982235d988e17f31.js +1 -0
  261. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/fields/reorder/route-982235d988e17f31.js +1 -0
  262. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/fields/route-982235d988e17f31.js +1 -0
  263. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/route-982235d988e17f31.js +1 -0
  264. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/views/route-982235d988e17f31.js +1 -0
  265. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/open-file/route-982235d988e17f31.js +1 -0
  266. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/path-info/route-982235d988e17f31.js +1 -0
  267. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/query/route-982235d988e17f31.js +1 -0
  268. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/raw-file/route-982235d988e17f31.js +1 -0
  269. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/rename/route-982235d988e17f31.js +1 -0
  270. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/reports/execute/route-982235d988e17f31.js +1 -0
  271. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/search-index/route-982235d988e17f31.js +1 -0
  272. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/suggest-files/route-982235d988e17f31.js +1 -0
  273. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/switch/route-982235d988e17f31.js +1 -0
  274. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/thumbnail/route-982235d988e17f31.js +1 -0
  275. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/tree/route-982235d988e17f31.js +1 -0
  276. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/upload/route-982235d988e17f31.js +1 -0
  277. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/virtual-file/route-982235d988e17f31.js +1 -0
  278. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/watch/route-982235d988e17f31.js +1 -0
  279. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/write-binary/route-982235d988e17f31.js +1 -0
  280. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/{layout-a597017db7df698d.js → layout-8757ef9cb1826e76.js} +1 -1
  281. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/page-05ff98c264c1c0cf.js +1 -0
  282. package/apps/web/.next/standalone/apps/web/.next/static/chunks/webpack-d4501ef5cbbcf069.js +1 -0
  283. package/apps/web/.next/standalone/apps/web/.next/static/css/4f71a2dee93c9f97.css +1 -0
  284. package/apps/web/.next/standalone/apps/web/app/api/skills/route.test.ts +672 -0
  285. package/apps/web/.next/standalone/apps/web/package.json +2 -0
  286. package/apps/web/.next/standalone/apps/web/public/integrations/exa-logomark.svg +4 -0
  287. package/apps/web/.next/standalone/apps/web/public/models/deepseek.ico +0 -0
  288. package/apps/web/.next/standalone/apps/web/public/models/kimi.png +0 -0
  289. package/apps/web/.next/standalone/apps/web/public/models/kimi.svg +89 -0
  290. package/apps/web/.next/standalone/apps/web/public/models/minimax.png +0 -0
  291. package/apps/web/.next/standalone/apps/web/server.js +1 -1
  292. package/apps/web/.next/standalone/extensions/apollo-enrichment/index.ts +268 -0
  293. package/apps/web/.next/standalone/extensions/apollo-enrichment/openclaw.plugin.json +16 -0
  294. package/apps/web/.next/standalone/extensions/apollo-enrichment/package.json +8 -0
  295. package/apps/web/.next/standalone/extensions/dench-ai-gateway/composio-bridge.ts +474 -0
  296. package/apps/web/.next/standalone/extensions/dench-ai-gateway/config-patch.ts +83 -0
  297. package/apps/web/.next/standalone/extensions/dench-ai-gateway/index.test.ts +281 -0
  298. package/apps/web/.next/standalone/extensions/dench-ai-gateway/index.ts +325 -0
  299. package/apps/web/.next/standalone/extensions/dench-ai-gateway/models.ts +325 -0
  300. package/apps/web/.next/standalone/extensions/dench-ai-gateway/openclaw.plugin.json +27 -0
  301. package/apps/web/.next/standalone/extensions/dench-ai-gateway/package.json +8 -0
  302. package/apps/web/.next/standalone/extensions/dench-identity/composio-cheat-sheet.test.ts +146 -0
  303. package/apps/web/.next/standalone/extensions/dench-identity/composio-cheat-sheet.ts +197 -0
  304. package/apps/web/.next/standalone/extensions/dench-identity/index.test.ts +361 -0
  305. package/apps/web/.next/standalone/extensions/dench-identity/index.ts +920 -0
  306. package/apps/web/.next/standalone/extensions/dench-identity/openclaw.plugin.json +17 -0
  307. package/apps/web/.next/standalone/extensions/dench-identity/package.json +8 -0
  308. package/apps/web/.next/standalone/extensions/exa-search/index.ts +363 -0
  309. package/apps/web/.next/standalone/extensions/exa-search/openclaw.plugin.json +16 -0
  310. package/apps/web/.next/standalone/extensions/exa-search/package.json +8 -0
  311. package/apps/web/.next/standalone/extensions/posthog-analytics/index.ts +190 -0
  312. package/apps/web/.next/standalone/extensions/posthog-analytics/lib/build-env.js +3 -0
  313. package/apps/web/.next/standalone/extensions/posthog-analytics/lib/build-env.ts +3 -0
  314. package/apps/web/.next/standalone/extensions/posthog-analytics/lib/event-mappers.ts +403 -0
  315. package/apps/web/.next/standalone/extensions/posthog-analytics/lib/posthog-client.ts +105 -0
  316. package/apps/web/.next/standalone/extensions/posthog-analytics/lib/privacy.ts +294 -0
  317. package/apps/web/.next/standalone/extensions/posthog-analytics/lib/trace-context.ts +103 -0
  318. package/apps/web/.next/standalone/extensions/posthog-analytics/lib/types.ts +28 -0
  319. package/apps/web/.next/standalone/extensions/posthog-analytics/openclaw.plugin.json +22 -0
  320. package/apps/web/.next/standalone/extensions/posthog-analytics/package.json +8 -0
  321. package/apps/web/.next/standalone/extensions/vitest.config.ts +13 -0
  322. package/apps/web/.next/standalone/package.json +2 -2
  323. package/apps/web/.next/static/U0A79z_eUsEUNVdXxxyc3/_buildManifest.js +1 -0
  324. package/apps/web/.next/{standalone/apps/web/.next/static/chunks/eca025f9.538b3f5d85eeef79.js → static/chunks/0c958985.3ccb9c3aea7cd083.js} +2 -2
  325. package/apps/web/.next/static/chunks/3999.548dd8ec57152081.js +1 -0
  326. package/apps/web/.next/static/chunks/{2489.b5e1ce196331926c.js → 4870.507a55774d37d072.js} +1 -1
  327. package/apps/web/.next/static/chunks/{7812.c1435a724050dfec.js → 5431.a2353a2aa8c55a67.js} +1 -1
  328. package/apps/web/.next/static/chunks/7f67b0df-54679694c67e2b76.js +1 -0
  329. package/apps/web/.next/static/chunks/80f1cbb7-c9635d81d9fe6819.js +1 -0
  330. package/apps/web/.next/static/chunks/8532165e-abce74bbb270ef26.js +1 -0
  331. package/apps/web/.next/static/chunks/9372.e71f5b96da3f9dfd.js +1 -0
  332. package/apps/web/.next/static/chunks/9702-d646bcd7cb8fe6bf.js +135 -0
  333. package/apps/web/.next/static/chunks/app/api/apps/cron/route-982235d988e17f31.js +1 -0
  334. package/apps/web/.next/static/chunks/app/api/apps/proxy/route-982235d988e17f31.js +1 -0
  335. package/apps/web/.next/static/chunks/app/api/apps/route-982235d988e17f31.js +1 -0
  336. package/apps/web/.next/static/chunks/app/api/apps/serve/[...path]/route-982235d988e17f31.js +1 -0
  337. package/apps/web/.next/static/chunks/app/api/apps/store/route-982235d988e17f31.js +1 -0
  338. package/apps/web/.next/static/chunks/app/api/apps/webhooks/[...path]/route-982235d988e17f31.js +1 -0
  339. package/apps/web/.next/static/chunks/app/api/chat/active/route-982235d988e17f31.js +1 -0
  340. package/apps/web/.next/static/chunks/app/api/chat/route-982235d988e17f31.js +1 -0
  341. package/apps/web/.next/static/chunks/app/api/chat/runs/route-982235d988e17f31.js +1 -0
  342. package/apps/web/.next/static/chunks/app/api/chat/stop/route-982235d988e17f31.js +1 -0
  343. package/apps/web/.next/static/chunks/app/api/chat/stream/route-982235d988e17f31.js +1 -0
  344. package/apps/web/.next/static/chunks/app/api/chat/subagents/route-982235d988e17f31.js +1 -0
  345. package/apps/web/.next/static/chunks/app/api/composio/callback/route-982235d988e17f31.js +1 -0
  346. package/apps/web/.next/static/chunks/app/api/composio/connect/route-982235d988e17f31.js +1 -0
  347. package/apps/web/.next/static/chunks/app/api/composio/connections/route-982235d988e17f31.js +1 -0
  348. package/apps/web/.next/static/chunks/app/api/composio/disconnect/route-982235d988e17f31.js +1 -0
  349. package/apps/web/.next/static/chunks/app/api/composio/status/route-982235d988e17f31.js +1 -0
  350. package/apps/web/.next/static/chunks/app/api/composio/tool-index/route-982235d988e17f31.js +1 -0
  351. package/apps/web/.next/static/chunks/app/api/composio/toolkits/route-982235d988e17f31.js +1 -0
  352. package/apps/web/.next/static/chunks/app/api/cron/jobs/[jobId]/runs/route-982235d988e17f31.js +1 -0
  353. package/apps/web/.next/static/chunks/app/api/cron/jobs/route-982235d988e17f31.js +1 -0
  354. package/apps/web/.next/static/chunks/app/api/cron/runs/[sessionId]/route-982235d988e17f31.js +1 -0
  355. package/apps/web/.next/static/chunks/app/api/cron/runs/search-transcript/route-982235d988e17f31.js +1 -0
  356. package/apps/web/.next/static/chunks/app/api/feedback/route-982235d988e17f31.js +1 -0
  357. package/apps/web/.next/static/chunks/app/api/gateway/channels/route-982235d988e17f31.js +1 -0
  358. package/apps/web/.next/static/chunks/app/api/gateway/chat/route-982235d988e17f31.js +1 -0
  359. package/apps/web/.next/static/chunks/app/api/gateway/chat/stream/route-982235d988e17f31.js +1 -0
  360. package/apps/web/.next/static/chunks/app/api/gateway/sessions/[id]/route-982235d988e17f31.js +1 -0
  361. package/apps/web/.next/static/chunks/app/api/gateway/sessions/route-982235d988e17f31.js +1 -0
  362. package/apps/web/.next/static/chunks/app/api/integrations/[id]/toggle/route-982235d988e17f31.js +1 -0
  363. package/apps/web/.next/static/chunks/app/api/integrations/repair/route-982235d988e17f31.js +1 -0
  364. package/apps/web/.next/static/chunks/app/api/integrations/route-982235d988e17f31.js +1 -0
  365. package/apps/web/.next/static/chunks/app/api/memories/route-982235d988e17f31.js +1 -0
  366. package/apps/web/.next/static/chunks/app/api/profiles/route-982235d988e17f31.js +1 -0
  367. package/apps/web/.next/static/chunks/app/api/profiles/switch/route-982235d988e17f31.js +1 -0
  368. package/apps/web/.next/static/chunks/app/api/sessions/[sessionId]/route-982235d988e17f31.js +1 -0
  369. package/apps/web/.next/static/chunks/app/api/sessions/route-982235d988e17f31.js +1 -0
  370. package/apps/web/.next/static/chunks/app/api/settings/cloud/route-982235d988e17f31.js +1 -0
  371. package/apps/web/.next/static/chunks/app/api/skills/[slug]/content/route-982235d988e17f31.js +1 -0
  372. package/apps/web/.next/static/chunks/app/api/skills/[slug]/route-982235d988e17f31.js +1 -0
  373. package/apps/web/.next/static/chunks/app/api/skills/browse/route-982235d988e17f31.js +1 -0
  374. package/apps/web/.next/static/chunks/app/api/skills/install/route-982235d988e17f31.js +1 -0
  375. package/apps/web/.next/static/chunks/app/api/skills/route-982235d988e17f31.js +1 -0
  376. package/apps/web/.next/static/chunks/app/api/terminal/port/route-982235d988e17f31.js +1 -0
  377. package/apps/web/.next/static/chunks/app/api/voice/speech/route-982235d988e17f31.js +1 -0
  378. package/apps/web/.next/static/chunks/app/api/voice/transcribe/route-982235d988e17f31.js +1 -0
  379. package/apps/web/.next/static/chunks/app/api/voice/voices/route-982235d988e17f31.js +1 -0
  380. package/apps/web/.next/static/chunks/app/api/web-sessions/[id]/messages/route-982235d988e17f31.js +1 -0
  381. package/apps/web/.next/static/chunks/app/api/web-sessions/[id]/route-982235d988e17f31.js +1 -0
  382. package/apps/web/.next/static/chunks/app/api/web-sessions/route-982235d988e17f31.js +1 -0
  383. package/apps/web/.next/static/chunks/app/api/workspace/assets/[...path]/route-982235d988e17f31.js +1 -0
  384. package/apps/web/.next/static/chunks/app/api/workspace/browse/route-982235d988e17f31.js +1 -0
  385. package/apps/web/.next/static/chunks/app/api/workspace/browse-file/route-982235d988e17f31.js +1 -0
  386. package/apps/web/.next/static/chunks/app/api/workspace/context/route-982235d988e17f31.js +1 -0
  387. package/apps/web/.next/static/chunks/app/api/workspace/copy/route-982235d988e17f31.js +1 -0
  388. package/apps/web/.next/static/chunks/app/api/workspace/db/introspect/route-982235d988e17f31.js +1 -0
  389. package/apps/web/.next/static/chunks/app/api/workspace/db/query/route-982235d988e17f31.js +1 -0
  390. package/apps/web/.next/static/chunks/app/api/workspace/delete/route-982235d988e17f31.js +1 -0
  391. package/apps/web/.next/static/chunks/app/api/workspace/execute/route-982235d988e17f31.js +1 -0
  392. package/apps/web/.next/static/chunks/app/api/workspace/file/route-982235d988e17f31.js +1 -0
  393. package/apps/web/.next/static/chunks/app/api/workspace/init/route-982235d988e17f31.js +1 -0
  394. package/apps/web/.next/static/chunks/app/api/workspace/link-preview/route-982235d988e17f31.js +1 -0
  395. package/apps/web/.next/static/chunks/app/api/workspace/list/route-982235d988e17f31.js +1 -0
  396. package/apps/web/.next/static/chunks/app/api/workspace/mkdir/route-982235d988e17f31.js +1 -0
  397. package/apps/web/.next/static/chunks/app/api/workspace/move/route-982235d988e17f31.js +1 -0
  398. package/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/actions/route-982235d988e17f31.js +1 -0
  399. package/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/actions/runs/route-982235d988e17f31.js +1 -0
  400. package/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/display-field/route-982235d988e17f31.js +1 -0
  401. package/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/entries/[id]/content/route-982235d988e17f31.js +1 -0
  402. package/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/entries/[id]/route-982235d988e17f31.js +1 -0
  403. package/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/entries/bulk-delete/route-982235d988e17f31.js +1 -0
  404. package/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/entries/options/route-982235d988e17f31.js +1 -0
  405. package/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/entries/route-982235d988e17f31.js +1 -0
  406. package/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/fields/[fieldId]/enum-rename/route-982235d988e17f31.js +1 -0
  407. package/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/fields/[fieldId]/route-982235d988e17f31.js +1 -0
  408. package/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/fields/reorder/route-982235d988e17f31.js +1 -0
  409. package/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/fields/route-982235d988e17f31.js +1 -0
  410. package/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/route-982235d988e17f31.js +1 -0
  411. package/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/views/route-982235d988e17f31.js +1 -0
  412. package/apps/web/.next/static/chunks/app/api/workspace/open-file/route-982235d988e17f31.js +1 -0
  413. package/apps/web/.next/static/chunks/app/api/workspace/path-info/route-982235d988e17f31.js +1 -0
  414. package/apps/web/.next/static/chunks/app/api/workspace/query/route-982235d988e17f31.js +1 -0
  415. package/apps/web/.next/static/chunks/app/api/workspace/raw-file/route-982235d988e17f31.js +1 -0
  416. package/apps/web/.next/static/chunks/app/api/workspace/rename/route-982235d988e17f31.js +1 -0
  417. package/apps/web/.next/static/chunks/app/api/workspace/reports/execute/route-982235d988e17f31.js +1 -0
  418. package/apps/web/.next/static/chunks/app/api/workspace/search-index/route-982235d988e17f31.js +1 -0
  419. package/apps/web/.next/static/chunks/app/api/workspace/suggest-files/route-982235d988e17f31.js +1 -0
  420. package/apps/web/.next/static/chunks/app/api/workspace/switch/route-982235d988e17f31.js +1 -0
  421. package/apps/web/.next/static/chunks/app/api/workspace/thumbnail/route-982235d988e17f31.js +1 -0
  422. package/apps/web/.next/static/chunks/app/api/workspace/tree/route-982235d988e17f31.js +1 -0
  423. package/apps/web/.next/static/chunks/app/api/workspace/upload/route-982235d988e17f31.js +1 -0
  424. package/apps/web/.next/static/chunks/app/api/workspace/virtual-file/route-982235d988e17f31.js +1 -0
  425. package/apps/web/.next/static/chunks/app/api/workspace/watch/route-982235d988e17f31.js +1 -0
  426. package/apps/web/.next/static/chunks/app/api/workspace/write-binary/route-982235d988e17f31.js +1 -0
  427. package/apps/web/.next/static/chunks/app/{layout-a597017db7df698d.js → layout-8757ef9cb1826e76.js} +1 -1
  428. package/apps/web/.next/static/chunks/app/page-05ff98c264c1c0cf.js +1 -0
  429. package/apps/web/.next/static/chunks/webpack-d4501ef5cbbcf069.js +1 -0
  430. package/apps/web/.next/static/css/4f71a2dee93c9f97.css +1 -0
  431. package/apps/web/public/integrations/exa-logomark.svg +4 -0
  432. package/apps/web/public/models/deepseek.ico +0 -0
  433. package/apps/web/public/models/kimi.png +0 -0
  434. package/apps/web/public/models/kimi.svg +89 -0
  435. package/apps/web/public/models/minimax.png +0 -0
  436. package/dist/entry.js +1 -1
  437. package/dist/{program-D2RfLoKh.js → program-BYB4nfWK.js} +423 -13
  438. package/dist/{run-main-giTi_or5.js → run-main-Z-P_Zlf6.js} +1 -1
  439. package/extensions/apollo-enrichment/index.ts +268 -0
  440. package/extensions/apollo-enrichment/openclaw.plugin.json +16 -0
  441. package/extensions/apollo-enrichment/package.json +8 -0
  442. package/extensions/dench-ai-gateway/composio-bridge.ts +474 -0
  443. package/extensions/dench-ai-gateway/config-patch.ts +83 -0
  444. package/extensions/dench-ai-gateway/index.test.ts +281 -0
  445. package/extensions/dench-ai-gateway/index.ts +9 -36
  446. package/extensions/dench-ai-gateway/models.ts +5 -5
  447. package/extensions/dench-identity/composio-cheat-sheet.test.ts +146 -0
  448. package/extensions/dench-identity/composio-cheat-sheet.ts +197 -0
  449. package/extensions/dench-identity/index.test.ts +226 -1
  450. package/extensions/dench-identity/index.ts +795 -5
  451. package/extensions/exa-search/index.ts +363 -0
  452. package/extensions/exa-search/openclaw.plugin.json +16 -0
  453. package/extensions/exa-search/package.json +8 -0
  454. package/extensions/posthog-analytics/lib/build-env.js +1 -1
  455. package/package.json +2 -2
  456. package/skills/composio-apps/SKILL.md +88 -0
  457. package/apps/web/.next/standalone/apps/web/.next/server/chunks/4334.js +0 -481
  458. package/apps/web/.next/standalone/apps/web/.next/static/6km2S2lfAi2PQ3TlStEAM/_buildManifest.js +0 -1
  459. package/apps/web/.next/standalone/apps/web/.next/static/chunks/2457.b2932424bcf38aee.js +0 -1
  460. package/apps/web/.next/standalone/apps/web/.next/static/chunks/2716-475d96c202834586.js +0 -135
  461. package/apps/web/.next/standalone/apps/web/.next/static/chunks/4062.6ff486abe87e56aa.js +0 -1
  462. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/apps/cron/route-d14ffafd970f186e.js +0 -1
  463. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/apps/proxy/route-d14ffafd970f186e.js +0 -1
  464. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/apps/route-d14ffafd970f186e.js +0 -1
  465. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/apps/serve/[...path]/route-d14ffafd970f186e.js +0 -1
  466. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/apps/store/route-d14ffafd970f186e.js +0 -1
  467. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/apps/webhooks/[...path]/route-d14ffafd970f186e.js +0 -1
  468. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/chat/active/route-d14ffafd970f186e.js +0 -1
  469. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/chat/route-d14ffafd970f186e.js +0 -1
  470. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/chat/runs/route-d14ffafd970f186e.js +0 -1
  471. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/chat/stop/route-d14ffafd970f186e.js +0 -1
  472. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/chat/stream/route-d14ffafd970f186e.js +0 -1
  473. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/chat/subagents/route-d14ffafd970f186e.js +0 -1
  474. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/cron/jobs/[jobId]/runs/route-d14ffafd970f186e.js +0 -1
  475. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/cron/jobs/route-d14ffafd970f186e.js +0 -1
  476. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/cron/runs/[sessionId]/route-d14ffafd970f186e.js +0 -1
  477. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/cron/runs/search-transcript/route-d14ffafd970f186e.js +0 -1
  478. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/feedback/route-d14ffafd970f186e.js +0 -1
  479. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/gateway/channels/route-d14ffafd970f186e.js +0 -1
  480. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/gateway/chat/route-d14ffafd970f186e.js +0 -1
  481. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/gateway/chat/stream/route-d14ffafd970f186e.js +0 -1
  482. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/gateway/sessions/[id]/route-d14ffafd970f186e.js +0 -1
  483. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/gateway/sessions/route-d14ffafd970f186e.js +0 -1
  484. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/memories/route-d14ffafd970f186e.js +0 -1
  485. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/profiles/route-d14ffafd970f186e.js +0 -1
  486. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/profiles/switch/route-d14ffafd970f186e.js +0 -1
  487. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/sessions/[sessionId]/route-d14ffafd970f186e.js +0 -1
  488. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/sessions/route-d14ffafd970f186e.js +0 -1
  489. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/skills/route-d14ffafd970f186e.js +0 -1
  490. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/terminal/port/route-d14ffafd970f186e.js +0 -1
  491. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/web-sessions/[id]/messages/route-d14ffafd970f186e.js +0 -1
  492. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/web-sessions/[id]/route-d14ffafd970f186e.js +0 -1
  493. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/web-sessions/route-d14ffafd970f186e.js +0 -1
  494. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/assets/[...path]/route-d14ffafd970f186e.js +0 -1
  495. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/browse/route-d14ffafd970f186e.js +0 -1
  496. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/browse-file/route-d14ffafd970f186e.js +0 -1
  497. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/context/route-d14ffafd970f186e.js +0 -1
  498. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/copy/route-d14ffafd970f186e.js +0 -1
  499. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/db/introspect/route-d14ffafd970f186e.js +0 -1
  500. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/db/query/route-d14ffafd970f186e.js +0 -1
  501. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/delete/route-d14ffafd970f186e.js +0 -1
  502. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/execute/route-d14ffafd970f186e.js +0 -1
  503. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/file/route-d14ffafd970f186e.js +0 -1
  504. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/init/route-d14ffafd970f186e.js +0 -1
  505. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/link-preview/route-d14ffafd970f186e.js +0 -1
  506. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/list/route-d14ffafd970f186e.js +0 -1
  507. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/mkdir/route-d14ffafd970f186e.js +0 -1
  508. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/move/route-d14ffafd970f186e.js +0 -1
  509. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/actions/route-d14ffafd970f186e.js +0 -1
  510. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/actions/runs/route-d14ffafd970f186e.js +0 -1
  511. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/display-field/route-d14ffafd970f186e.js +0 -1
  512. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/entries/[id]/content/route-d14ffafd970f186e.js +0 -1
  513. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/entries/[id]/route-d14ffafd970f186e.js +0 -1
  514. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/entries/bulk-delete/route-d14ffafd970f186e.js +0 -1
  515. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/entries/options/route-d14ffafd970f186e.js +0 -1
  516. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/entries/route-d14ffafd970f186e.js +0 -1
  517. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/fields/[fieldId]/enum-rename/route-d14ffafd970f186e.js +0 -1
  518. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/fields/[fieldId]/route-d14ffafd970f186e.js +0 -1
  519. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/fields/reorder/route-d14ffafd970f186e.js +0 -1
  520. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/fields/route-d14ffafd970f186e.js +0 -1
  521. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/route-d14ffafd970f186e.js +0 -1
  522. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/views/route-d14ffafd970f186e.js +0 -1
  523. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/open-file/route-d14ffafd970f186e.js +0 -1
  524. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/path-info/route-d14ffafd970f186e.js +0 -1
  525. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/query/route-d14ffafd970f186e.js +0 -1
  526. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/raw-file/route-d14ffafd970f186e.js +0 -1
  527. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/rename/route-d14ffafd970f186e.js +0 -1
  528. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/reports/execute/route-d14ffafd970f186e.js +0 -1
  529. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/search-index/route-d14ffafd970f186e.js +0 -1
  530. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/suggest-files/route-d14ffafd970f186e.js +0 -1
  531. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/switch/route-d14ffafd970f186e.js +0 -1
  532. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/thumbnail/route-d14ffafd970f186e.js +0 -1
  533. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/tree/route-d14ffafd970f186e.js +0 -1
  534. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/upload/route-d14ffafd970f186e.js +0 -1
  535. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/virtual-file/route-d14ffafd970f186e.js +0 -1
  536. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/watch/route-d14ffafd970f186e.js +0 -1
  537. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/api/workspace/write-binary/route-d14ffafd970f186e.js +0 -1
  538. package/apps/web/.next/standalone/apps/web/.next/static/chunks/app/page-6702f960a7cc2d6f.js +0 -1
  539. package/apps/web/.next/standalone/apps/web/.next/static/chunks/webpack-a769c08a3fea86bb.js +0 -1
  540. package/apps/web/.next/standalone/apps/web/.next/static/css/99b07ab2db5fe339.css +0 -1
  541. package/apps/web/.next/static/6km2S2lfAi2PQ3TlStEAM/_buildManifest.js +0 -1
  542. package/apps/web/.next/static/chunks/2457.b2932424bcf38aee.js +0 -1
  543. package/apps/web/.next/static/chunks/2716-475d96c202834586.js +0 -135
  544. package/apps/web/.next/static/chunks/4062.6ff486abe87e56aa.js +0 -1
  545. package/apps/web/.next/static/chunks/app/api/apps/cron/route-d14ffafd970f186e.js +0 -1
  546. package/apps/web/.next/static/chunks/app/api/apps/proxy/route-d14ffafd970f186e.js +0 -1
  547. package/apps/web/.next/static/chunks/app/api/apps/route-d14ffafd970f186e.js +0 -1
  548. package/apps/web/.next/static/chunks/app/api/apps/serve/[...path]/route-d14ffafd970f186e.js +0 -1
  549. package/apps/web/.next/static/chunks/app/api/apps/store/route-d14ffafd970f186e.js +0 -1
  550. package/apps/web/.next/static/chunks/app/api/apps/webhooks/[...path]/route-d14ffafd970f186e.js +0 -1
  551. package/apps/web/.next/static/chunks/app/api/chat/active/route-d14ffafd970f186e.js +0 -1
  552. package/apps/web/.next/static/chunks/app/api/chat/route-d14ffafd970f186e.js +0 -1
  553. package/apps/web/.next/static/chunks/app/api/chat/runs/route-d14ffafd970f186e.js +0 -1
  554. package/apps/web/.next/static/chunks/app/api/chat/stop/route-d14ffafd970f186e.js +0 -1
  555. package/apps/web/.next/static/chunks/app/api/chat/stream/route-d14ffafd970f186e.js +0 -1
  556. package/apps/web/.next/static/chunks/app/api/chat/subagents/route-d14ffafd970f186e.js +0 -1
  557. package/apps/web/.next/static/chunks/app/api/cron/jobs/[jobId]/runs/route-d14ffafd970f186e.js +0 -1
  558. package/apps/web/.next/static/chunks/app/api/cron/jobs/route-d14ffafd970f186e.js +0 -1
  559. package/apps/web/.next/static/chunks/app/api/cron/runs/[sessionId]/route-d14ffafd970f186e.js +0 -1
  560. package/apps/web/.next/static/chunks/app/api/cron/runs/search-transcript/route-d14ffafd970f186e.js +0 -1
  561. package/apps/web/.next/static/chunks/app/api/feedback/route-d14ffafd970f186e.js +0 -1
  562. package/apps/web/.next/static/chunks/app/api/gateway/channels/route-d14ffafd970f186e.js +0 -1
  563. package/apps/web/.next/static/chunks/app/api/gateway/chat/route-d14ffafd970f186e.js +0 -1
  564. package/apps/web/.next/static/chunks/app/api/gateway/chat/stream/route-d14ffafd970f186e.js +0 -1
  565. package/apps/web/.next/static/chunks/app/api/gateway/sessions/[id]/route-d14ffafd970f186e.js +0 -1
  566. package/apps/web/.next/static/chunks/app/api/gateway/sessions/route-d14ffafd970f186e.js +0 -1
  567. package/apps/web/.next/static/chunks/app/api/memories/route-d14ffafd970f186e.js +0 -1
  568. package/apps/web/.next/static/chunks/app/api/profiles/route-d14ffafd970f186e.js +0 -1
  569. package/apps/web/.next/static/chunks/app/api/profiles/switch/route-d14ffafd970f186e.js +0 -1
  570. package/apps/web/.next/static/chunks/app/api/sessions/[sessionId]/route-d14ffafd970f186e.js +0 -1
  571. package/apps/web/.next/static/chunks/app/api/sessions/route-d14ffafd970f186e.js +0 -1
  572. package/apps/web/.next/static/chunks/app/api/skills/route-d14ffafd970f186e.js +0 -1
  573. package/apps/web/.next/static/chunks/app/api/terminal/port/route-d14ffafd970f186e.js +0 -1
  574. package/apps/web/.next/static/chunks/app/api/web-sessions/[id]/messages/route-d14ffafd970f186e.js +0 -1
  575. package/apps/web/.next/static/chunks/app/api/web-sessions/[id]/route-d14ffafd970f186e.js +0 -1
  576. package/apps/web/.next/static/chunks/app/api/web-sessions/route-d14ffafd970f186e.js +0 -1
  577. package/apps/web/.next/static/chunks/app/api/workspace/assets/[...path]/route-d14ffafd970f186e.js +0 -1
  578. package/apps/web/.next/static/chunks/app/api/workspace/browse/route-d14ffafd970f186e.js +0 -1
  579. package/apps/web/.next/static/chunks/app/api/workspace/browse-file/route-d14ffafd970f186e.js +0 -1
  580. package/apps/web/.next/static/chunks/app/api/workspace/context/route-d14ffafd970f186e.js +0 -1
  581. package/apps/web/.next/static/chunks/app/api/workspace/copy/route-d14ffafd970f186e.js +0 -1
  582. package/apps/web/.next/static/chunks/app/api/workspace/db/introspect/route-d14ffafd970f186e.js +0 -1
  583. package/apps/web/.next/static/chunks/app/api/workspace/db/query/route-d14ffafd970f186e.js +0 -1
  584. package/apps/web/.next/static/chunks/app/api/workspace/delete/route-d14ffafd970f186e.js +0 -1
  585. package/apps/web/.next/static/chunks/app/api/workspace/execute/route-d14ffafd970f186e.js +0 -1
  586. package/apps/web/.next/static/chunks/app/api/workspace/file/route-d14ffafd970f186e.js +0 -1
  587. package/apps/web/.next/static/chunks/app/api/workspace/init/route-d14ffafd970f186e.js +0 -1
  588. package/apps/web/.next/static/chunks/app/api/workspace/link-preview/route-d14ffafd970f186e.js +0 -1
  589. package/apps/web/.next/static/chunks/app/api/workspace/list/route-d14ffafd970f186e.js +0 -1
  590. package/apps/web/.next/static/chunks/app/api/workspace/mkdir/route-d14ffafd970f186e.js +0 -1
  591. package/apps/web/.next/static/chunks/app/api/workspace/move/route-d14ffafd970f186e.js +0 -1
  592. package/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/actions/route-d14ffafd970f186e.js +0 -1
  593. package/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/actions/runs/route-d14ffafd970f186e.js +0 -1
  594. package/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/display-field/route-d14ffafd970f186e.js +0 -1
  595. package/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/entries/[id]/content/route-d14ffafd970f186e.js +0 -1
  596. package/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/entries/[id]/route-d14ffafd970f186e.js +0 -1
  597. package/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/entries/bulk-delete/route-d14ffafd970f186e.js +0 -1
  598. package/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/entries/options/route-d14ffafd970f186e.js +0 -1
  599. package/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/entries/route-d14ffafd970f186e.js +0 -1
  600. package/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/fields/[fieldId]/enum-rename/route-d14ffafd970f186e.js +0 -1
  601. package/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/fields/[fieldId]/route-d14ffafd970f186e.js +0 -1
  602. package/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/fields/reorder/route-d14ffafd970f186e.js +0 -1
  603. package/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/fields/route-d14ffafd970f186e.js +0 -1
  604. package/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/route-d14ffafd970f186e.js +0 -1
  605. package/apps/web/.next/static/chunks/app/api/workspace/objects/[name]/views/route-d14ffafd970f186e.js +0 -1
  606. package/apps/web/.next/static/chunks/app/api/workspace/open-file/route-d14ffafd970f186e.js +0 -1
  607. package/apps/web/.next/static/chunks/app/api/workspace/path-info/route-d14ffafd970f186e.js +0 -1
  608. package/apps/web/.next/static/chunks/app/api/workspace/query/route-d14ffafd970f186e.js +0 -1
  609. package/apps/web/.next/static/chunks/app/api/workspace/raw-file/route-d14ffafd970f186e.js +0 -1
  610. package/apps/web/.next/static/chunks/app/api/workspace/rename/route-d14ffafd970f186e.js +0 -1
  611. package/apps/web/.next/static/chunks/app/api/workspace/reports/execute/route-d14ffafd970f186e.js +0 -1
  612. package/apps/web/.next/static/chunks/app/api/workspace/search-index/route-d14ffafd970f186e.js +0 -1
  613. package/apps/web/.next/static/chunks/app/api/workspace/suggest-files/route-d14ffafd970f186e.js +0 -1
  614. package/apps/web/.next/static/chunks/app/api/workspace/switch/route-d14ffafd970f186e.js +0 -1
  615. package/apps/web/.next/static/chunks/app/api/workspace/thumbnail/route-d14ffafd970f186e.js +0 -1
  616. package/apps/web/.next/static/chunks/app/api/workspace/tree/route-d14ffafd970f186e.js +0 -1
  617. package/apps/web/.next/static/chunks/app/api/workspace/upload/route-d14ffafd970f186e.js +0 -1
  618. package/apps/web/.next/static/chunks/app/api/workspace/virtual-file/route-d14ffafd970f186e.js +0 -1
  619. package/apps/web/.next/static/chunks/app/api/workspace/watch/route-d14ffafd970f186e.js +0 -1
  620. package/apps/web/.next/static/chunks/app/api/workspace/write-binary/route-d14ffafd970f186e.js +0 -1
  621. package/apps/web/.next/static/chunks/app/page-6702f960a7cc2d6f.js +0 -1
  622. package/apps/web/.next/static/chunks/webpack-a769c08a3fea86bb.js +0 -1
  623. package/apps/web/.next/static/css/99b07ab2db5fe339.css +0 -1
  624. package/skills/browser/SKILL.md +0 -16
  625. /package/apps/web/.next/standalone/apps/web/.next/static/{6km2S2lfAi2PQ3TlStEAM → U0A79z_eUsEUNVdXxxyc3}/_ssgManifest.js +0 -0
  626. /package/apps/web/.next/static/{6km2S2lfAi2PQ3TlStEAM → U0A79z_eUsEUNVdXxxyc3}/_ssgManifest.js +0 -0
@@ -0,0 +1,4 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 395 480" fill="none" aria-hidden="true">
2
+ <!-- Logomark geometry from Exa brand assets (https://exa.ai/brand); single-fill for UI chips -->
3
+ <path fill-rule="evenodd" clip-rule="evenodd" fill="#1E40ED" d="M0 475.765C0 478.104 1.8948 480 4.23215 480H390.768C393.105 480 395 478.104 395 475.765V455.637C395 453.672 394.318 451.767 393.07 450.248L222.539 242.69C221.255 241.127 221.255 238.873 222.539 237.31L393.07 29.7517C394.318 28.2333 395 26.3285 395 24.3627V4.23529C395 1.89621 393.105 0 390.768 0H4.23214C1.89479 0 0 1.8962 0 4.23529V475.765ZM199.802 270.589C198.668 269.208 196.554 269.216 195.43 270.605L58.3178 440.106C56.8245 441.952 58.1374 444.706 60.5108 444.706H336.886C339.269 444.706 340.579 441.932 339.065 440.089L199.802 270.589ZM39.0286 407.858C37.7739 409.409 35.2679 408.521 35.2679 406.525V260.471C35.2679 258.911 36.5311 257.647 38.0893 257.647H154.623C156.996 257.647 158.309 260.401 156.816 262.247L39.0286 407.858ZM154.623 222.353C156.996 222.353 158.309 219.599 156.816 217.753L39.0286 72.1424C37.7739 70.5913 35.2679 71.4792 35.2679 73.4749V219.529C35.2679 221.089 36.5311 222.353 38.0893 222.353H154.623ZM58.3178 39.8942C56.8245 38.0482 58.1374 35.2941 60.5108 35.2941H336.886C339.269 35.2941 340.579 38.0685 339.065 39.9109L199.802 209.411C198.668 210.792 196.554 210.784 195.43 209.395L58.3178 39.8942Z"/>
4
+ </svg>
@@ -0,0 +1,89 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <meta http-equiv="Content-type" content="text/html; charset=utf-8">
5
+ <meta http-equiv="Content-Security-Policy" content="default-src 'none'; style-src 'unsafe-inline'; img-src data:; connect-src 'self'">
6
+ <title>Page not found &middot; GitHub Pages</title>
7
+ <style type="text/css" media="screen">
8
+ body {
9
+ background-color: #f1f1f1;
10
+ margin: 0;
11
+ font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
12
+ }
13
+
14
+ .container { margin: 50px auto 40px auto; width: 600px; text-align: center; }
15
+
16
+ a { color: #4183c4; text-decoration: none; }
17
+ a:hover { text-decoration: underline; }
18
+
19
+ h1 { width: 800px; position:relative; left: -100px; letter-spacing: -1px; line-height: 60px; font-size: 60px; font-weight: 100; margin: 0px 0 50px 0; text-shadow: 0 1px 0 #fff; }
20
+ p { color: rgba(0, 0, 0, 0.5); margin: 20px 0; line-height: 1.6; }
21
+
22
+ ul { list-style: none; margin: 25px 0; padding: 0; }
23
+ li { display: table-cell; font-weight: bold; width: 1%; }
24
+
25
+ .logo { display: inline-block; margin-top: 35px; }
26
+ .logo-img-2x { display: none; }
27
+ @media
28
+ only screen and (-webkit-min-device-pixel-ratio: 2),
29
+ only screen and ( min--moz-device-pixel-ratio: 2),
30
+ only screen and ( -o-min-device-pixel-ratio: 2/1),
31
+ only screen and ( min-device-pixel-ratio: 2),
32
+ only screen and ( min-resolution: 192dpi),
33
+ only screen and ( min-resolution: 2dppx) {
34
+ .logo-img-1x { display: none; }
35
+ .logo-img-2x { display: inline-block; }
36
+ }
37
+
38
+ #suggestions {
39
+ margin-top: 35px;
40
+ color: #ccc;
41
+ }
42
+ #suggestions a {
43
+ color: #666666;
44
+ font-weight: 200;
45
+ font-size: 14px;
46
+ margin: 0 10px;
47
+ }
48
+
49
+ </style>
50
+ </head>
51
+ <body>
52
+
53
+ <div class="container">
54
+
55
+ <h1>404</h1>
56
+ <p><strong>File not found</strong></p>
57
+
58
+ <p>
59
+ The site configured at this address does not
60
+ contain the requested file.
61
+ </p>
62
+
63
+ <p>
64
+ If this is your site, make sure that the filename case matches the URL
65
+ as well as any file permissions.<br>
66
+ For root URLs (like <code>http://example.com/</code>) you must provide an
67
+ <code>index.html</code> file.
68
+ </p>
69
+
70
+ <p>
71
+ <a href="https://help.github.com/pages/">Read the full documentation</a>
72
+ for more information about using <strong>GitHub Pages</strong>.
73
+ </p>
74
+
75
+ <div id="suggestions">
76
+ <a href="https://githubstatus.com">GitHub Status</a> &mdash;
77
+ <a href="https://twitter.com/githubstatus">@githubstatus</a>
78
+ </div>
79
+
80
+ <a href="/" class="logo logo-img-1x">
81
+ <img width="32" height="32" title="" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyRpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoTWFjaW50b3NoKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpFMTZCRDY3REIzRjAxMUUyQUQzREIxQzRENUFFNUM5NiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpFMTZCRDY3RUIzRjAxMUUyQUQzREIxQzRENUFFNUM5NiI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOkUxNkJENjdCQjNGMDExRTJBRDNEQjFDNEQ1QUU1Qzk2IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOkUxNkJENjdDQjNGMDExRTJBRDNEQjFDNEQ1QUU1Qzk2Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+SM9MCAAAA+5JREFUeNrEV11Ik1EY3s4+ddOp29Q5b0opCgKFsoKoi5Kg6CIhuwi6zLJLoYLopq4qsKKgi4i6CYIoU/q5iDAKs6syoS76IRWtyJ+p7cdt7sf1PGOD+e0c3dygAx/67ZzzPM95/877GYdHRg3ZjMXFxepQKNS6sLCwJxqNNuFpiMfjVs4ZjUa/pmmjeD6VlJS8NpvNT4QQ7mxwjSsJiEQim/1+/9lgMHgIr5ohuxG1WCw9Vqv1clFR0dCqBODElV6v90ogEDjGdYbVjXhpaendioqK07CIR7ZAqE49PT09BPL2PMgTByQGsYiZlQD4uMXtdr+JxWINhgINYhGT2MsKgMrm2dnZXgRXhaHAg5jEJodUAHxux4LudHJE9RdEdA+i3Juz7bGHe4mhE9FNrgwBCLirMFV9Okh5eflFh8PR5nK5nDabrR2BNJlKO0T35+Li4n4+/J+/JQCxhmu5h3uJoXNHPbmWZAHMshWB8l5/ipqammaAf0zPDDx1ONV3vurdidqwAQL+pEc8sLcAe1CCvQ3YHxIW8Pl85xSWNC1hADDIv0rIE/o4J0k3kww4xSlwIhcq3EFFOm7KN/hUGOQkt0CFa5WpNJlMvxBEz/IVQAxg/ZRZl9wiHA63yDYieM7DnLP5CiAGsC7I5sgtYKJGWe2A8seFqgFJrJjEPY1Cn3pJ8/9W1e5VWsFDTEmFrBcoDhZJEQkXuhICMyKpjhahqN21hRYATKfUOlDmkygrR4o4C0VOLGJKrOITKB4jijzdXygBKixyC5TDQdnk/Pz8qRw6oOWGlsTKGOQW6OH6FBWsyePxdOXLTgxiyebILZCjz+GLgMIKnXNzc49YMlcRdHXcSwxFVgTInQhC9G33UhNoJLuqq6t345p9y3eUy8OTk5PjAHuI9uo4b07FBaOhsu0A4Unc+T1TU1Nj3KsSSE5yJ65jqF2DDd8QqWYmAZrIM2VlZTdnZmb6AbpdV9V6ec9znf5Q7HjYumdRE0JOp3MjitO4SFa+cZz8Umqe3TCbSLvdfkR/kWDdNQl5InuTcysOcpFT35ZrbBxx4p3JAHlZVVW1D/634VRt+FvLBgK/v5LV9WS+10xMTEwtRw7XvqOL+e2Q8V3AYIOIAXQ26/heWVnZCVfcyKHg2CBgTpmPmjYM8l24GyaUHyaIh7XwfR9ErE8qHoDfn2LTNAVC0HX6MFcBIP8Bi+6F6cdW/DICkANRfx99fEYFQ7Nph5i/uQiA214gno7K+guhaiKg9gC62+M8eR7XsBsYJ4ilam60Fb7r7uAj8wFyuwM1oIOWgfmDy6RXEEQzJMPe23DXrVS7rtyD3Df8z/FPgAEAzWU5Ku59ZAUAAAAASUVORK5CYII=">
82
+ </a>
83
+
84
+ <a href="/" class="logo logo-img-2x">
85
+ <img width="32" height="32" title="" alt="" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyRpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoTWFjaW50b3NoKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpEQUM1QkUxRUI0MUMxMUUyQUQzREIxQzRENUFFNUM5NiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpEQUM1QkUxRkI0MUMxMUUyQUQzREIxQzRENUFFNUM5NiI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOkUxNkJENjdGQjNGMDExRTJBRDNEQjFDNEQ1QUU1Qzk2IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOkUxNkJENjgwQjNGMDExRTJBRDNEQjFDNEQ1QUU1Qzk2Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+hfPRaQAAB6lJREFUeNrsW2mME2UYbodtt+2222u35QheoCCYGBQligIJgkZJNPzgigoaTEj8AdFEMfADfyABkgWiiWcieK4S+QOiHAYUj2hMNKgYlEujpNttu9vttbvdw+chU1K6M535pt3ubHCSyezR+b73eb73+t7vrfXsufOW4bz6+vom9/b23ovnNNw34b5xYGAgODg46Mbt4mesVmsWd1qSpHhdXd2fuP/Afcput5/A88xwymcdBgLqenp6FuRyuWV4zu/v759QyWBjxoz5t76+/gun09mK5xFyakoCAPSaTCazNpvNPoYVbh6O1YKGRF0u13sNDQ27QMzfpiAAKj0lnU6/gBVfAZW2WWpwwVzy0IgP3G73FpjI6REhAGA9qVRqA1b9mVoBVyIC2tDi8Xg24+dUzQiAbS/s7Ox8G2o/3mKCC+Zw0efzPQEfcVjYrARX3dbV1bUtHo8fMgt42f+Mp0yUTVQbdWsAHVsikdiHkHaPxcQXQufXgUBgMRxme9U0AAxfH4vFvjM7eF6UkbJS5qoQwEQGA57Ac5JllFyUVZZ5ckUEgMVxsK2jlSYzI+QXJsiyjzNEAJyJAzb/KQa41jJKL8pODMQiTEAymXw5n8/P0IjD3bh7Rgog59aanxiIRTVvV/oj0tnHca/WMrVwODwB3raTGxzkBg/gnZVapFV62Wy2n5AO70HM/5wbJ0QnXyQSaVPDIuNZzY0V3ntHMwxiwHA0Gj2Np7ecIBDgaDAYXKCQJM1DhrgJ3nhulcPbl8j4NmHe46X/g60fwbz3aewjkqFQaAqebWU1AOqyQwt8Id6qEHMc97zu7u7FGGsn7HAiVuosVw7P35C1nccdgSCxop1dHeZswmfHMnxBo6ZTk+jN8dl/vF7vWofDsa+MLN9oEUBMxOb3+1eoEsBVw6Zmua49r8YmhAKDiEPcMwBsxMiqQ+ixzPFxZyqRpXARG/YOr1ObFJ0gUskXBbamcR1OKmMUvDxHRAu8/LmY3jFLMUpFqz9HxG65smYJdyKyECOxDiEAe/p1gjF2oonivZAsxVgl2daa4EQWCW6J55qFAFFZiJWYLxNQy2qOSUzGRsyXCUDIeliwAHEO4WSlWQBRFoZakXcKmCXmyXAKs0Ve9vl8q42WoIYpJU4hV3hKcNs8m9gl7p/xQ73eF5kB4j5mNrWmTJRNwAzqiV1CxjVTZCIkEq+Z1bZFZSN2CenmVAFVy4Plz8xKAGWjjAKFk6lCBMDR/MJjLLMSQNm43xAiQKTaA+9/wewhDjL+JVI1kkTSSOTcKbMTwPqESAot6dn6Fr1gHwVJju6IRuyiByPuUUBAg5DGkAgBmxlvdgIEK9gDkohdY/BJo4CAG0R8miRSsGABkgVQs4KXu098IgUXSSRsFAoKZiVAVDY2WUiiPTjYRi41KwGisrGsLtlsth8Fiwnz2fBkQvWfRtlE3iF2yW63/yCacXZ1dW02GwGyTFaRd4idJnCKHRaCxYRHoG5LTKT6SyiToP1fJHbmAYPYRR0UnZQtMnA6s0zg+GZBlt0Gdo7EPHgpE3Q6nZ8YyLhc8Xj8MJh/aKTAY+5FPAKHLE7RdwuYJZmNwzyCMkBCYyKROJBMJl9B/PXXCjjmCmDOVzH3fiPpObEWGqoKe4EBl8v1hlqsdLvd23mkxHM9pc9kMpmno9HoeTii7ewbHEZPPx1ztLS1tV3AnGuMjiNjvbQFuHw6zDo5By7dTPAQNBgMLrRarTkSls1mnwT7uwp9virx9QzbW/HuV/j5d/b+6jniKlllP8lkeONJDk+dq9GsQTnC4fB1heO0K47Hwe7WdDr9nAKgXwOBwHI+C45Htj1d6sd429TUNEcmUdc+PRaLHcvn87dXW4ugzdsaGxufL94NFv9zi1J7GVbhlvb2dnaJ3SVrxfc+n2+NTsZ7/H7/Mr3g5XdSIHyJSH1PZ+7fToyl2+ErqilgZ4NaLYB9goVGaHjR93Hv1ZrU4XDsFT20kH3PObzbWk0CgG1jacVIUnAQb9F+VexyLMzkpcLv0IJV7AHQIOCAUYHx7v5qgScmYHtTqSAyZLEJTK22Bie4iq3xsqpm4SAf9Hq9a2DnJ4uLK3SEULcdRvp3i3zHySqpficxEdsQc1NrlYXXvR+O7qASSezXB+h1SuUomgg9LL8BUoV4749EIolKh+EiqWmqVEZlDgHks2pxHw7xTqUQw9J5NcAXOK10AGIoZ6Zli6JY6Z1Q461KoZ4NiKLHarW+KDsxlDUPHZ5zPQZqUVDPJsTqb5n9malbpAh8C2XXDLl62+WZIDFRUlNVOiwencnNU3aQEkL+cDMSoLvZo2fQB7AJssNAuFuvorlDVVkkg2I87+jo2K2QAVphDrfyViK5VqtO34OkaxXCp+7drdDBCAdubm6eidX+2WwqT5komwh4YQLk+H4aE93h8Xg2gvHekQZOGSgLZTLyDTLJ4Lx9/KZWKBSainT4Iy3FqQBfnUZR42PKQFksBr9QKVXCPusD3OiA/RkQ5kP8qV/Jl1WywAp/6+dcmPM2zL1UrUahe4JqfnWWKXIul3uUbfP8njAFLW1OFr3gdFtZ72cNH+PtQT7/brW+NXqJAHh0y9V8/U/A1U7AfwIMAD7mS3pCbuWJAAAAAElFTkSuQmCC">
86
+ </a>
87
+ </div>
88
+ </body>
89
+ </html>
@@ -9,7 +9,7 @@ const currentPort = parseInt(process.env.PORT, 10) || 3000
9
9
  const hostname = process.env.HOSTNAME || '0.0.0.0'
10
10
 
11
11
  let keepAliveTimeout = parseInt(process.env.KEEP_ALIVE_TIMEOUT, 10)
12
- const nextConfig = {"env":{"NEXT_PUBLIC_DENCHCLAW_VERSION":"2.4.5","NEXT_PUBLIC_OPENCLAW_VERSION":""},"eslint":{"ignoreDuringBuilds":false},"typescript":{"ignoreBuildErrors":false,"tsconfigPath":"tsconfig.json"},"typedRoutes":false,"distDir":"./.next","cleanDistDir":true,"assetPrefix":"","cacheMaxMemorySize":52428800,"configOrigin":"next.config.ts","useFileSystemPublicRoutes":true,"generateEtags":true,"pageExtensions":["tsx","ts","jsx","js"],"poweredByHeader":true,"compress":true,"images":{"deviceSizes":[640,750,828,1080,1200,1920,2048,3840],"imageSizes":[16,32,48,64,96,128,256,384],"path":"/_next/image","loader":"default","loaderFile":"","domains":[],"disableStaticImages":false,"minimumCacheTTL":60,"formats":["image/webp"],"maximumResponseBody":50000000,"dangerouslyAllowSVG":false,"contentSecurityPolicy":"script-src 'none'; frame-src 'none'; sandbox;","contentDispositionType":"attachment","remotePatterns":[],"unoptimized":false},"devIndicators":{"position":"bottom-left"},"onDemandEntries":{"maxInactiveAge":60000,"pagesBufferLength":5},"amp":{"canonicalBase":""},"basePath":"","sassOptions":{},"trailingSlash":false,"i18n":null,"productionBrowserSourceMaps":false,"excludeDefaultMomentLocales":true,"serverRuntimeConfig":{},"publicRuntimeConfig":{},"reactProductionProfiling":false,"reactStrictMode":null,"reactMaxHeadersLength":6000,"httpAgentOptions":{"keepAlive":true},"logging":{},"compiler":{},"expireTime":31536000,"staticPageGenerationTimeout":60,"output":"standalone","modularizeImports":{"@mui/icons-material":{"transform":"@mui/icons-material/{{member}}"},"lodash":{"transform":"lodash/{{member}}"}},"outputFileTracingRoot":"/home/runner/work/DenchClaw/DenchClaw","experimental":{"useSkewCookie":false,"cacheLife":{"default":{"stale":300,"revalidate":900,"expire":4294967294},"seconds":{"stale":30,"revalidate":1,"expire":60},"minutes":{"stale":300,"revalidate":60,"expire":3600},"hours":{"stale":300,"revalidate":3600,"expire":86400},"days":{"stale":300,"revalidate":86400,"expire":604800},"weeks":{"stale":300,"revalidate":604800,"expire":2592000},"max":{"stale":300,"revalidate":2592000,"expire":4294967294}},"cacheHandlers":{},"cssChunking":true,"multiZoneDraftMode":false,"appNavFailHandling":false,"prerenderEarlyExit":true,"serverMinification":true,"serverSourceMaps":false,"linkNoTouchStart":false,"caseSensitiveRoutes":false,"clientSegmentCache":false,"clientParamParsing":false,"dynamicOnHover":false,"preloadEntriesOnStart":true,"clientRouterFilter":true,"clientRouterFilterRedirects":false,"fetchCacheKeyPrefix":"","middlewarePrefetch":"flexible","optimisticClientCache":true,"manualClientBasePath":false,"cpus":3,"memoryBasedWorkersCount":false,"imgOptConcurrency":null,"imgOptTimeoutInSeconds":7,"imgOptMaxInputPixels":268402689,"imgOptSequentialRead":null,"imgOptSkipMetadata":null,"isrFlushToDisk":true,"workerThreads":false,"optimizeCss":false,"nextScriptWorkers":false,"scrollRestoration":false,"externalDir":false,"disableOptimizedLoading":false,"gzipSize":true,"craCompat":false,"esmExternals":true,"fullySpecified":false,"swcTraceProfiling":false,"forceSwcTransforms":false,"largePageDataBytes":128000,"typedEnv":false,"parallelServerCompiles":false,"parallelServerBuildTraces":false,"ppr":false,"authInterrupts":false,"webpackMemoryOptimizations":false,"optimizeServerReact":true,"viewTransition":false,"routerBFCache":false,"removeUncaughtErrorAndRejectionListeners":false,"validateRSCRequestHeaders":false,"staleTimes":{"dynamic":0,"static":300},"serverComponentsHmrCache":true,"staticGenerationMaxConcurrency":8,"staticGenerationMinPagesPerWorker":25,"cacheComponents":false,"inlineCss":false,"useCache":false,"globalNotFound":false,"devtoolSegmentExplorer":true,"browserDebugInfoInTerminal":false,"optimizeRouterScrolling":false,"middlewareClientMaxBodySize":10485760,"optimizePackageImports":["lucide-react","date-fns","lodash-es","ramda","antd","react-bootstrap","ahooks","@ant-design/icons","@headlessui/react","@headlessui-float/react","@heroicons/react/20/solid","@heroicons/react/24/solid","@heroicons/react/24/outline","@visx/visx","@tremor/react","rxjs","@mui/material","@mui/icons-material","recharts","react-use","effect","@effect/schema","@effect/platform","@effect/platform-node","@effect/platform-browser","@effect/platform-bun","@effect/sql","@effect/sql-mssql","@effect/sql-mysql2","@effect/sql-pg","@effect/sql-sqlite-node","@effect/sql-sqlite-bun","@effect/sql-sqlite-wasm","@effect/sql-sqlite-react-native","@effect/rpc","@effect/rpc-http","@effect/typeclass","@effect/experimental","@effect/opentelemetry","@material-ui/core","@material-ui/icons","@tabler/icons-react","mui-core","react-icons/ai","react-icons/bi","react-icons/bs","react-icons/cg","react-icons/ci","react-icons/di","react-icons/fa","react-icons/fa6","react-icons/fc","react-icons/fi","react-icons/gi","react-icons/go","react-icons/gr","react-icons/hi","react-icons/hi2","react-icons/im","react-icons/io","react-icons/io5","react-icons/lia","react-icons/lib","react-icons/lu","react-icons/md","react-icons/pi","react-icons/ri","react-icons/rx","react-icons/si","react-icons/sl","react-icons/tb","react-icons/tfi","react-icons/ti","react-icons/vsc","react-icons/wi"],"trustHostHeader":false,"isExperimentalCompile":false},"htmlLimitedBots":"[\\w-]+-Google|Google-[\\w-]+|Chrome-Lighthouse|Slurp|DuckDuckBot|baiduspider|yandex|sogou|bitlybot|tumblr|vkShare|quora link preview|redditbot|ia_archiver|Bingbot|BingPreview|applebot|facebookexternalhit|facebookcatalog|Twitterbot|LinkedInBot|Slackbot|Discordbot|WhatsApp|SkypeUriPreview|Yeti|googleweblight","bundlePagesRouterDependencies":false,"configFileName":"next.config.ts","serverExternalPackages":["ws","bufferutil","utf-8-validate","node-pty"],"transpilePackages":["react-markdown","remark-gfm"],"turbopack":{"root":"/home/runner/work/DenchClaw/DenchClaw"}}
12
+ const nextConfig = {"env":{"NEXT_PUBLIC_DENCHCLAW_VERSION":"2.5.0","NEXT_PUBLIC_OPENCLAW_VERSION":""},"eslint":{"ignoreDuringBuilds":false},"typescript":{"ignoreBuildErrors":false,"tsconfigPath":"tsconfig.json"},"typedRoutes":false,"distDir":"./.next","cleanDistDir":true,"assetPrefix":"","cacheMaxMemorySize":52428800,"configOrigin":"next.config.ts","useFileSystemPublicRoutes":true,"generateEtags":true,"pageExtensions":["tsx","ts","jsx","js"],"poweredByHeader":true,"compress":true,"images":{"deviceSizes":[640,750,828,1080,1200,1920,2048,3840],"imageSizes":[16,32,48,64,96,128,256,384],"path":"/_next/image","loader":"default","loaderFile":"","domains":[],"disableStaticImages":false,"minimumCacheTTL":60,"formats":["image/webp"],"maximumResponseBody":50000000,"dangerouslyAllowSVG":false,"contentSecurityPolicy":"script-src 'none'; frame-src 'none'; sandbox;","contentDispositionType":"attachment","remotePatterns":[],"unoptimized":false},"devIndicators":{"position":"bottom-left"},"onDemandEntries":{"maxInactiveAge":60000,"pagesBufferLength":5},"amp":{"canonicalBase":""},"basePath":"","sassOptions":{},"trailingSlash":false,"i18n":null,"productionBrowserSourceMaps":false,"excludeDefaultMomentLocales":true,"serverRuntimeConfig":{},"publicRuntimeConfig":{},"reactProductionProfiling":false,"reactStrictMode":null,"reactMaxHeadersLength":6000,"httpAgentOptions":{"keepAlive":true},"logging":{},"compiler":{},"expireTime":31536000,"staticPageGenerationTimeout":60,"output":"standalone","modularizeImports":{"@mui/icons-material":{"transform":"@mui/icons-material/{{member}}"},"lodash":{"transform":"lodash/{{member}}"}},"outputFileTracingRoot":"/home/runner/work/DenchClaw/DenchClaw","experimental":{"useSkewCookie":false,"cacheLife":{"default":{"stale":300,"revalidate":900,"expire":4294967294},"seconds":{"stale":30,"revalidate":1,"expire":60},"minutes":{"stale":300,"revalidate":60,"expire":3600},"hours":{"stale":300,"revalidate":3600,"expire":86400},"days":{"stale":300,"revalidate":86400,"expire":604800},"weeks":{"stale":300,"revalidate":604800,"expire":2592000},"max":{"stale":300,"revalidate":2592000,"expire":4294967294}},"cacheHandlers":{},"cssChunking":true,"multiZoneDraftMode":false,"appNavFailHandling":false,"prerenderEarlyExit":true,"serverMinification":true,"serverSourceMaps":false,"linkNoTouchStart":false,"caseSensitiveRoutes":false,"clientSegmentCache":false,"clientParamParsing":false,"dynamicOnHover":false,"preloadEntriesOnStart":true,"clientRouterFilter":true,"clientRouterFilterRedirects":false,"fetchCacheKeyPrefix":"","middlewarePrefetch":"flexible","optimisticClientCache":true,"manualClientBasePath":false,"cpus":3,"memoryBasedWorkersCount":false,"imgOptConcurrency":null,"imgOptTimeoutInSeconds":7,"imgOptMaxInputPixels":268402689,"imgOptSequentialRead":null,"imgOptSkipMetadata":null,"isrFlushToDisk":true,"workerThreads":false,"optimizeCss":false,"nextScriptWorkers":false,"scrollRestoration":false,"externalDir":false,"disableOptimizedLoading":false,"gzipSize":true,"craCompat":false,"esmExternals":true,"fullySpecified":false,"swcTraceProfiling":false,"forceSwcTransforms":false,"largePageDataBytes":128000,"typedEnv":false,"parallelServerCompiles":false,"parallelServerBuildTraces":false,"ppr":false,"authInterrupts":false,"webpackMemoryOptimizations":false,"optimizeServerReact":true,"viewTransition":false,"routerBFCache":false,"removeUncaughtErrorAndRejectionListeners":false,"validateRSCRequestHeaders":false,"staleTimes":{"dynamic":0,"static":300},"serverComponentsHmrCache":true,"staticGenerationMaxConcurrency":8,"staticGenerationMinPagesPerWorker":25,"cacheComponents":false,"inlineCss":false,"useCache":false,"globalNotFound":false,"devtoolSegmentExplorer":true,"browserDebugInfoInTerminal":false,"optimizeRouterScrolling":false,"middlewareClientMaxBodySize":10485760,"optimizePackageImports":["lucide-react","date-fns","lodash-es","ramda","antd","react-bootstrap","ahooks","@ant-design/icons","@headlessui/react","@headlessui-float/react","@heroicons/react/20/solid","@heroicons/react/24/solid","@heroicons/react/24/outline","@visx/visx","@tremor/react","rxjs","@mui/material","@mui/icons-material","recharts","react-use","effect","@effect/schema","@effect/platform","@effect/platform-node","@effect/platform-browser","@effect/platform-bun","@effect/sql","@effect/sql-mssql","@effect/sql-mysql2","@effect/sql-pg","@effect/sql-sqlite-node","@effect/sql-sqlite-bun","@effect/sql-sqlite-wasm","@effect/sql-sqlite-react-native","@effect/rpc","@effect/rpc-http","@effect/typeclass","@effect/experimental","@effect/opentelemetry","@material-ui/core","@material-ui/icons","@tabler/icons-react","mui-core","react-icons/ai","react-icons/bi","react-icons/bs","react-icons/cg","react-icons/ci","react-icons/di","react-icons/fa","react-icons/fa6","react-icons/fc","react-icons/fi","react-icons/gi","react-icons/go","react-icons/gr","react-icons/hi","react-icons/hi2","react-icons/im","react-icons/io","react-icons/io5","react-icons/lia","react-icons/lib","react-icons/lu","react-icons/md","react-icons/pi","react-icons/ri","react-icons/rx","react-icons/si","react-icons/sl","react-icons/tb","react-icons/tfi","react-icons/ti","react-icons/vsc","react-icons/wi"],"trustHostHeader":false,"isExperimentalCompile":false},"htmlLimitedBots":"[\\w-]+-Google|Google-[\\w-]+|Chrome-Lighthouse|Slurp|DuckDuckBot|baiduspider|yandex|sogou|bitlybot|tumblr|vkShare|quora link preview|redditbot|ia_archiver|Bingbot|BingPreview|applebot|facebookexternalhit|facebookcatalog|Twitterbot|LinkedInBot|Slackbot|Discordbot|WhatsApp|SkypeUriPreview|Yeti|googleweblight","bundlePagesRouterDependencies":false,"configFileName":"next.config.ts","serverExternalPackages":["ws","bufferutil","utf-8-validate","node-pty"],"transpilePackages":["react-markdown","remark-gfm"],"turbopack":{"root":"/home/runner/work/DenchClaw/DenchClaw"}}
13
13
 
14
14
  process.env.__NEXT_PRIVATE_STANDALONE_CONFIG = JSON.stringify(nextConfig)
15
15
 
@@ -0,0 +1,268 @@
1
+ import type { AnyAgentTool, OpenClawPluginApi } from "openclaw/plugin-sdk";
2
+
3
+ export const id = "apollo-enrichment";
4
+
5
+ const DEFAULT_GATEWAY_URL = "https://gateway.merseoriginals.com";
6
+ const ENRICHMENT_BASE_PATH = "/v1/enrichment";
7
+ const APOLLO_ACTIONS = ["people", "company", "people_search"] as const;
8
+
9
+ type UnknownRecord = Record<string, unknown>;
10
+
11
+ function asRecord(value: unknown): UnknownRecord | undefined {
12
+ return value && typeof value === "object" ? (value as UnknownRecord) : undefined;
13
+ }
14
+
15
+ function readTrimmedString(value: unknown): string | undefined {
16
+ return typeof value === "string" && value.trim() ? value.trim() : undefined;
17
+ }
18
+
19
+ function readStringList(value: unknown): string[] | undefined {
20
+ if (!Array.isArray(value)) {
21
+ return undefined;
22
+ }
23
+ const items = value
24
+ .map((item) => readTrimmedString(item))
25
+ .filter((item): item is string => Boolean(item));
26
+ return items.length > 0 ? items : undefined;
27
+ }
28
+
29
+ function resolveGatewayUrl(config: unknown): string {
30
+ const root = asRecord(config);
31
+ const pluginEntries = asRecord(asRecord(root?.plugins)?.entries);
32
+ const gatewayConfig = asRecord(asRecord(pluginEntries?.["dench-ai-gateway"])?.config);
33
+ return (
34
+ readTrimmedString(gatewayConfig?.gatewayUrl) ||
35
+ process.env.DENCH_GATEWAY_URL?.trim() ||
36
+ DEFAULT_GATEWAY_URL
37
+ );
38
+ }
39
+
40
+ function resolveApiKey(config: unknown): string | undefined {
41
+ const root = asRecord(config);
42
+ const providers = asRecord(asRecord(asRecord(root?.models)?.providers));
43
+ const provider = asRecord(providers?.["dench-cloud"]);
44
+ return (
45
+ readTrimmedString(provider?.apiKey) ||
46
+ process.env.DENCH_CLOUD_API_KEY?.trim() ||
47
+ process.env.DENCH_API_KEY?.trim() ||
48
+ undefined
49
+ );
50
+ }
51
+
52
+ function jsonResult(payload: unknown) {
53
+ return {
54
+ content: [{ type: "text" as const, text: JSON.stringify(payload, null, 2) }],
55
+ details: payload,
56
+ };
57
+ }
58
+
59
+ const ApolloEnrichParameters = {
60
+ type: "object",
61
+ additionalProperties: false,
62
+ properties: {
63
+ action: {
64
+ type: "string",
65
+ enum: [...APOLLO_ACTIONS],
66
+ description: 'Action to perform: "people", "company", or "people_search".',
67
+ },
68
+ email: { type: "string", description: "Email for people enrichment." },
69
+ linkedinUrl: { type: "string", description: "LinkedIn URL for people enrichment." },
70
+ firstName: { type: "string", description: "Person first name." },
71
+ lastName: { type: "string", description: "Person last name." },
72
+ domain: { type: "string", description: "Company domain such as acme.com." },
73
+ organizationName: { type: "string", description: "Organization name hint for people enrichment." },
74
+ personTitles: { type: "array", items: { type: "string" }, description: "Job titles for people search." },
75
+ personLocations: { type: "array", items: { type: "string" }, description: "Locations for people search." },
76
+ organizationDomains: { type: "array", items: { type: "string" }, description: "Organization domains for people search." },
77
+ page: { type: "number", description: "People search page number." },
78
+ perPage: { type: "number", description: "People search page size." },
79
+ first_name: { type: "string", description: "Legacy alias for firstName." },
80
+ last_name: { type: "string", description: "Legacy alias for lastName." },
81
+ organization_name: { type: "string", description: "Legacy alias for organizationName." },
82
+ linkedin_url: { type: "string", description: "Legacy alias for linkedinUrl." },
83
+ person_titles: { type: "array", items: { type: "string" }, description: "Legacy alias for personTitles." },
84
+ person_locations: { type: "array", items: { type: "string" }, description: "Legacy alias for personLocations." },
85
+ organization_domains: { type: "array", items: { type: "string" }, description: "Legacy alias for organizationDomains." },
86
+ per_page: { type: "number", description: "Legacy alias for perPage." },
87
+ },
88
+ required: ["action"],
89
+ };
90
+
91
+ function buildPeopleBody(params: Record<string, unknown>) {
92
+ const body: Record<string, unknown> = {};
93
+ const email = readTrimmedString(params.email);
94
+ const linkedinUrl = readTrimmedString(params.linkedinUrl) ?? readTrimmedString(params.linkedin_url);
95
+ const firstName = readTrimmedString(params.firstName) ?? readTrimmedString(params.first_name);
96
+ const lastName = readTrimmedString(params.lastName) ?? readTrimmedString(params.last_name);
97
+ const domain = readTrimmedString(params.domain);
98
+ const organizationName =
99
+ readTrimmedString(params.organizationName) ?? readTrimmedString(params.organization_name);
100
+
101
+ if (email) {
102
+ body.email = email;
103
+ }
104
+ if (linkedinUrl) {
105
+ body.linkedinUrl = linkedinUrl;
106
+ }
107
+ if (firstName) {
108
+ body.firstName = firstName;
109
+ }
110
+ if (lastName) {
111
+ body.lastName = lastName;
112
+ }
113
+ if (domain) {
114
+ body.domain = domain;
115
+ }
116
+ if (organizationName) {
117
+ body.organizationName = organizationName;
118
+ }
119
+
120
+ return body;
121
+ }
122
+
123
+ function buildPeopleSearchBody(params: Record<string, unknown>) {
124
+ const body: Record<string, unknown> = {};
125
+ const personTitles = readStringList(params.personTitles) ?? readStringList(params.person_titles);
126
+ const personLocations =
127
+ readStringList(params.personLocations) ?? readStringList(params.person_locations);
128
+ const organizationDomains =
129
+ readStringList(params.organizationDomains) ?? readStringList(params.organization_domains);
130
+ const page = typeof params.page === "number" ? params.page : undefined;
131
+ const perPage =
132
+ typeof params.perPage === "number"
133
+ ? params.perPage
134
+ : typeof params.per_page === "number"
135
+ ? params.per_page
136
+ : undefined;
137
+
138
+ if (personTitles) {
139
+ body.personTitles = personTitles;
140
+ }
141
+ if (personLocations) {
142
+ body.personLocations = personLocations;
143
+ }
144
+ if (organizationDomains) {
145
+ body.organizationDomains = organizationDomains;
146
+ }
147
+ if (page !== undefined) {
148
+ body.page = page;
149
+ }
150
+ if (perPage !== undefined) {
151
+ body.perPage = perPage;
152
+ }
153
+
154
+ return body;
155
+ }
156
+
157
+ async function parseResponse(response: Response) {
158
+ const contentType = response.headers.get("content-type") ?? "";
159
+ if (contentType.includes("application/json")) {
160
+ return response.json();
161
+ }
162
+ return response.text();
163
+ }
164
+
165
+ async function executeApolloEnrich(
166
+ gatewayUrl: string,
167
+ apiKey: string,
168
+ _toolCallId: string,
169
+ params: Record<string, unknown>,
170
+ ) {
171
+ const action = params.action;
172
+ if (action !== "people" && action !== "company" && action !== "people_search") {
173
+ return jsonResult({
174
+ error: `Unknown action "${String(action)}". Use "people", "company", or "people_search".`,
175
+ });
176
+ }
177
+
178
+ try {
179
+ let response: Response;
180
+
181
+ if (action === "people") {
182
+ const body = buildPeopleBody(params);
183
+ if (!body.email && !body.linkedinUrl && !body.firstName && !body.lastName) {
184
+ return jsonResult({
185
+ error:
186
+ "People enrichment requires at least an email, LinkedIn URL, or person name.",
187
+ });
188
+ }
189
+ response = await fetch(`${gatewayUrl}${ENRICHMENT_BASE_PATH}/people`, {
190
+ method: "POST",
191
+ headers: {
192
+ "content-type": "application/json",
193
+ authorization: `Bearer ${apiKey}`,
194
+ },
195
+ body: JSON.stringify(body),
196
+ });
197
+ } else if (action === "company") {
198
+ const domain = readTrimmedString(params.domain);
199
+ if (!domain) {
200
+ return jsonResult({ error: "Company enrichment requires a domain." });
201
+ }
202
+ const url = new URL(`${gatewayUrl}${ENRICHMENT_BASE_PATH}/company`);
203
+ url.searchParams.set("domain", domain);
204
+ response = await fetch(url, {
205
+ method: "GET",
206
+ headers: {
207
+ authorization: `Bearer ${apiKey}`,
208
+ },
209
+ });
210
+ } else {
211
+ const body = buildPeopleSearchBody(params);
212
+ response = await fetch(`${gatewayUrl}${ENRICHMENT_BASE_PATH}/people/search`, {
213
+ method: "POST",
214
+ headers: {
215
+ "content-type": "application/json",
216
+ authorization: `Bearer ${apiKey}`,
217
+ },
218
+ body: JSON.stringify(body),
219
+ });
220
+ }
221
+
222
+ if (!response.ok) {
223
+ const detail = await parseResponse(response).catch(() => "");
224
+ return jsonResult({
225
+ error: `Enrichment request failed (HTTP ${response.status}).`,
226
+ detail: detail || undefined,
227
+ });
228
+ }
229
+
230
+ return jsonResult(await parseResponse(response));
231
+ } catch (err) {
232
+ return jsonResult({
233
+ error: "Enrichment request failed.",
234
+ detail: err instanceof Error ? err.message : String(err),
235
+ });
236
+ }
237
+ }
238
+
239
+ export default function register(api: OpenClawPluginApi) {
240
+ const rootConfig = asRecord(api.config);
241
+ const pluginEntries = asRecord(asRecord(rootConfig?.plugins)?.entries);
242
+ const pluginConfig = asRecord(asRecord(pluginEntries?.[id])?.config);
243
+ if (pluginConfig?.enabled === false) {
244
+ return;
245
+ }
246
+
247
+ const gatewayUrl = resolveGatewayUrl(api.config);
248
+ const apiKey = resolveApiKey(api.config);
249
+
250
+ if (!apiKey) {
251
+ api.logger?.info?.(
252
+ "[apollo-enrichment] No Dench Cloud API key found; tool will not be registered.",
253
+ );
254
+ return;
255
+ }
256
+
257
+ api.registerTool({
258
+ name: "apollo_enrich",
259
+ label: "Apollo Enrichment",
260
+ description:
261
+ "Look up Apollo people, companies, or people search results through the Dench Cloud gateway. " +
262
+ 'Use action "people" for an individual profile, "company" for company enrichment by domain, ' +
263
+ 'or "people_search" to search people with filters such as titles, locations, and company domains.',
264
+ parameters: ApolloEnrichParameters,
265
+ execute: (toolCallId: string, params: Record<string, unknown>) =>
266
+ executeApolloEnrich(gatewayUrl, apiKey, toolCallId, params),
267
+ } as AnyAgentTool);
268
+ }
@@ -0,0 +1,16 @@
1
+ {
2
+ "id": "apollo-enrichment",
3
+ "name": "Apollo Enrichment",
4
+ "version": "1.0.0",
5
+ "description": "Registers an agent tool for Apollo person and company enrichment via the Dench Cloud gateway.",
6
+ "configSchema": {
7
+ "type": "object",
8
+ "additionalProperties": false,
9
+ "properties": {
10
+ "enabled": {
11
+ "type": "boolean",
12
+ "default": true
13
+ }
14
+ }
15
+ }
16
+ }
@@ -0,0 +1,8 @@
1
+ {
2
+ "name": "@denchclaw/apollo-enrichment",
3
+ "version": "1.0.0",
4
+ "private": true,
5
+ "openclaw": {
6
+ "extensions": ["./index.ts"]
7
+ }
8
+ }