@better-openclaw/core 1.0.23 → 1.0.25

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 (335) hide show
  1. package/dist/addon-stack.cjs +673 -0
  2. package/dist/addon-stack.cjs.map +1 -0
  3. package/dist/addon-stack.d.cts +23 -0
  4. package/dist/addon-stack.d.cts.map +1 -0
  5. package/dist/addon-stack.d.mts +23 -0
  6. package/dist/addon-stack.d.mts.map +1 -0
  7. package/dist/addon-stack.mjs +671 -0
  8. package/dist/addon-stack.mjs.map +1 -0
  9. package/dist/addon-stack.test.cjs +349 -0
  10. package/dist/addon-stack.test.cjs.map +1 -0
  11. package/dist/addon-stack.test.d.cts +1 -0
  12. package/dist/addon-stack.test.d.mts +1 -0
  13. package/dist/addon-stack.test.mjs +349 -0
  14. package/dist/addon-stack.test.mjs.map +1 -0
  15. package/dist/bare-metal-partition.test.cjs +20 -21
  16. package/dist/bare-metal-partition.test.cjs.map +1 -1
  17. package/dist/bare-metal-partition.test.mjs +4 -5
  18. package/dist/bare-metal-partition.test.mjs.map +1 -1
  19. package/dist/composer.cjs +17 -1
  20. package/dist/composer.cjs.map +1 -1
  21. package/dist/composer.d.cts +24 -1
  22. package/dist/composer.d.cts.map +1 -1
  23. package/dist/composer.d.mts +24 -1
  24. package/dist/composer.d.mts.map +1 -1
  25. package/dist/composer.mjs +14 -2
  26. package/dist/composer.mjs.map +1 -1
  27. package/dist/composer.snapshot.test.cjs +20 -20
  28. package/dist/composer.snapshot.test.cjs.map +1 -1
  29. package/dist/composer.snapshot.test.mjs +2 -2
  30. package/dist/composer.test.cjs +53 -52
  31. package/dist/composer.test.cjs.map +1 -1
  32. package/dist/composer.test.mjs +4 -3
  33. package/dist/composer.test.mjs.map +1 -1
  34. package/dist/deployers/strip-host-ports.test.cjs +26 -26
  35. package/dist/deployers/strip-host-ports.test.cjs.map +1 -1
  36. package/dist/deployers/strip-host-ports.test.mjs +1 -1
  37. package/dist/generate.cjs +8 -4
  38. package/dist/generate.cjs.map +1 -1
  39. package/dist/generate.d.cts.map +1 -1
  40. package/dist/generate.d.mts.map +1 -1
  41. package/dist/generate.mjs +9 -5
  42. package/dist/generate.mjs.map +1 -1
  43. package/dist/generate.test.cjs +55 -55
  44. package/dist/generate.test.cjs.map +1 -1
  45. package/dist/generate.test.mjs +2 -2
  46. package/dist/generate.test.mjs.map +1 -1
  47. package/dist/generators/bare-metal-install.test.cjs +18 -18
  48. package/dist/generators/bare-metal-install.test.cjs.map +1 -1
  49. package/dist/generators/bare-metal-install.test.mjs +1 -1
  50. package/dist/generators/caddy.test.cjs +13 -13
  51. package/dist/generators/caddy.test.cjs.map +1 -1
  52. package/dist/generators/caddy.test.mjs +1 -1
  53. package/dist/generators/clone-repos.cjs +140 -0
  54. package/dist/generators/clone-repos.cjs.map +1 -0
  55. package/dist/generators/clone-repos.d.cts +11 -0
  56. package/dist/generators/clone-repos.d.cts.map +1 -0
  57. package/dist/generators/clone-repos.d.mts +11 -0
  58. package/dist/generators/clone-repos.d.mts.map +1 -0
  59. package/dist/generators/clone-repos.mjs +139 -0
  60. package/dist/generators/clone-repos.mjs.map +1 -0
  61. package/dist/generators/clone-repos.test.cjs +140 -0
  62. package/dist/generators/clone-repos.test.cjs.map +1 -0
  63. package/dist/generators/clone-repos.test.d.cts +1 -0
  64. package/dist/generators/clone-repos.test.d.mts +1 -0
  65. package/dist/generators/clone-repos.test.mjs +141 -0
  66. package/dist/generators/clone-repos.test.mjs.map +1 -0
  67. package/dist/generators/env.test.cjs +17 -17
  68. package/dist/generators/env.test.cjs.map +1 -1
  69. package/dist/generators/env.test.mjs +1 -1
  70. package/dist/generators/health-check.test.cjs +39 -39
  71. package/dist/generators/health-check.test.cjs.map +1 -1
  72. package/dist/generators/health-check.test.mjs +1 -1
  73. package/dist/generators/postgres-init.cjs +20 -0
  74. package/dist/generators/postgres-init.cjs.map +1 -1
  75. package/dist/generators/postgres-init.d.cts.map +1 -1
  76. package/dist/generators/postgres-init.d.mts.map +1 -1
  77. package/dist/generators/postgres-init.mjs +20 -0
  78. package/dist/generators/postgres-init.mjs.map +1 -1
  79. package/dist/generators/scripts.cjs +332 -3
  80. package/dist/generators/scripts.cjs.map +1 -1
  81. package/dist/generators/scripts.d.cts +3 -1
  82. package/dist/generators/scripts.d.cts.map +1 -1
  83. package/dist/generators/scripts.d.mts +3 -1
  84. package/dist/generators/scripts.d.mts.map +1 -1
  85. package/dist/generators/scripts.mjs +332 -3
  86. package/dist/generators/scripts.mjs.map +1 -1
  87. package/dist/generators/scripts.test.cjs +57 -23
  88. package/dist/generators/scripts.test.cjs.map +1 -1
  89. package/dist/generators/scripts.test.mjs +39 -5
  90. package/dist/generators/scripts.test.mjs.map +1 -1
  91. package/dist/generators/stack-manifest.cjs +1 -0
  92. package/dist/generators/stack-manifest.cjs.map +1 -1
  93. package/dist/generators/stack-manifest.d.cts +3 -2
  94. package/dist/generators/stack-manifest.d.cts.map +1 -1
  95. package/dist/generators/stack-manifest.d.mts +3 -2
  96. package/dist/generators/stack-manifest.d.mts.map +1 -1
  97. package/dist/generators/stack-manifest.mjs +1 -0
  98. package/dist/generators/stack-manifest.mjs.map +1 -1
  99. package/dist/generators/traefik.test.cjs +32 -32
  100. package/dist/generators/traefik.test.cjs.map +1 -1
  101. package/dist/generators/traefik.test.mjs +1 -1
  102. package/dist/index.cjs +28 -5
  103. package/dist/index.d.cts +7 -4
  104. package/dist/index.d.mts +7 -4
  105. package/dist/index.mjs +10 -7
  106. package/dist/migrations.test.cjs +16 -16
  107. package/dist/migrations.test.cjs.map +1 -1
  108. package/dist/migrations.test.mjs +1 -1
  109. package/dist/presets/registry.cjs.map +1 -1
  110. package/dist/presets/registry.d.cts.map +1 -1
  111. package/dist/presets/registry.d.mts.map +1 -1
  112. package/dist/presets/registry.mjs.map +1 -1
  113. package/dist/presets/registry.test.cjs +14 -14
  114. package/dist/presets/registry.test.cjs.map +1 -1
  115. package/dist/presets/registry.test.mjs +1 -1
  116. package/dist/resolver.cjs +8 -0
  117. package/dist/resolver.cjs.map +1 -1
  118. package/dist/resolver.mjs +9 -1
  119. package/dist/resolver.mjs.map +1 -1
  120. package/dist/resolver.test.cjs +125 -90
  121. package/dist/resolver.test.cjs.map +1 -1
  122. package/dist/resolver.test.mjs +47 -12
  123. package/dist/resolver.test.mjs.map +1 -1
  124. package/dist/{schema-B4c64P8N.d.cts → schema-CKBRu-Rt.d.cts} +355 -8
  125. package/dist/schema-CKBRu-Rt.d.cts.map +1 -0
  126. package/dist/{schema-CXNhYci1.d.mts → schema-Dn-_Jpb6.d.mts} +355 -8
  127. package/dist/schema-Dn-_Jpb6.d.mts.map +1 -0
  128. package/dist/schema.cjs +160 -5
  129. package/dist/schema.cjs.map +1 -1
  130. package/dist/schema.d.cts +2 -2
  131. package/dist/schema.d.mts +2 -2
  132. package/dist/schema.mjs +150 -6
  133. package/dist/schema.mjs.map +1 -1
  134. package/dist/schema.test.cjs +86 -86
  135. package/dist/schema.test.cjs.map +1 -1
  136. package/dist/schema.test.mjs +1 -1
  137. package/dist/services/definitions/apptension-saas.cjs +87 -0
  138. package/dist/services/definitions/apptension-saas.cjs.map +1 -0
  139. package/dist/services/definitions/apptension-saas.d.cts +7 -0
  140. package/dist/services/definitions/apptension-saas.d.cts.map +1 -0
  141. package/dist/services/definitions/apptension-saas.d.mts +7 -0
  142. package/dist/services/definitions/apptension-saas.d.mts.map +1 -0
  143. package/dist/services/definitions/apptension-saas.mjs +86 -0
  144. package/dist/services/definitions/apptension-saas.mjs.map +1 -0
  145. package/dist/services/definitions/boxyhq-saas.cjs +88 -0
  146. package/dist/services/definitions/boxyhq-saas.cjs.map +1 -0
  147. package/dist/services/definitions/boxyhq-saas.d.cts +7 -0
  148. package/dist/services/definitions/boxyhq-saas.d.cts.map +1 -0
  149. package/dist/services/definitions/boxyhq-saas.d.mts +7 -0
  150. package/dist/services/definitions/boxyhq-saas.d.mts.map +1 -0
  151. package/dist/services/definitions/boxyhq-saas.mjs +87 -0
  152. package/dist/services/definitions/boxyhq-saas.mjs.map +1 -0
  153. package/dist/services/definitions/browserless.cjs +4 -1
  154. package/dist/services/definitions/browserless.cjs.map +1 -1
  155. package/dist/services/definitions/browserless.mjs +4 -1
  156. package/dist/services/definitions/browserless.mjs.map +1 -1
  157. package/dist/services/definitions/cmsaas-starter.cjs +86 -0
  158. package/dist/services/definitions/cmsaas-starter.cjs.map +1 -0
  159. package/dist/services/definitions/cmsaas-starter.d.cts +7 -0
  160. package/dist/services/definitions/cmsaas-starter.d.cts.map +1 -0
  161. package/dist/services/definitions/cmsaas-starter.d.mts +7 -0
  162. package/dist/services/definitions/cmsaas-starter.d.mts.map +1 -0
  163. package/dist/services/definitions/cmsaas-starter.mjs +85 -0
  164. package/dist/services/definitions/cmsaas-starter.mjs.map +1 -0
  165. package/dist/services/definitions/convex.cjs +43 -1
  166. package/dist/services/definitions/convex.cjs.map +1 -1
  167. package/dist/services/definitions/convex.mjs +43 -1
  168. package/dist/services/definitions/convex.mjs.map +1 -1
  169. package/dist/services/definitions/grafana.cjs +11 -1
  170. package/dist/services/definitions/grafana.cjs.map +1 -1
  171. package/dist/services/definitions/grafana.mjs +11 -1
  172. package/dist/services/definitions/grafana.mjs.map +1 -1
  173. package/dist/services/definitions/index.cjs +51 -36
  174. package/dist/services/definitions/index.cjs.map +1 -1
  175. package/dist/services/definitions/index.d.cts +30 -25
  176. package/dist/services/definitions/index.d.cts.map +1 -1
  177. package/dist/services/definitions/index.d.mts +30 -25
  178. package/dist/services/definitions/index.d.mts.map +1 -1
  179. package/dist/services/definitions/index.mjs +47 -37
  180. package/dist/services/definitions/index.mjs.map +1 -1
  181. package/dist/services/definitions/ixartz-saas.cjs +88 -0
  182. package/dist/services/definitions/ixartz-saas.cjs.map +1 -0
  183. package/dist/services/definitions/ixartz-saas.d.cts +7 -0
  184. package/dist/services/definitions/ixartz-saas.d.cts.map +1 -0
  185. package/dist/services/definitions/ixartz-saas.d.mts +7 -0
  186. package/dist/services/definitions/ixartz-saas.d.mts.map +1 -0
  187. package/dist/services/definitions/ixartz-saas.mjs +87 -0
  188. package/dist/services/definitions/ixartz-saas.mjs.map +1 -0
  189. package/dist/services/definitions/meilisearch.cjs +11 -1
  190. package/dist/services/definitions/meilisearch.cjs.map +1 -1
  191. package/dist/services/definitions/meilisearch.mjs +11 -1
  192. package/dist/services/definitions/meilisearch.mjs.map +1 -1
  193. package/dist/services/definitions/minio.cjs +3 -1
  194. package/dist/services/definitions/minio.cjs.map +1 -1
  195. package/dist/services/definitions/minio.mjs +3 -1
  196. package/dist/services/definitions/minio.mjs.map +1 -1
  197. package/dist/services/definitions/mission-control.cjs +16 -2
  198. package/dist/services/definitions/mission-control.cjs.map +1 -1
  199. package/dist/services/definitions/mission-control.mjs +16 -2
  200. package/dist/services/definitions/mission-control.mjs.map +1 -1
  201. package/dist/services/definitions/n8n.cjs +11 -1
  202. package/dist/services/definitions/n8n.cjs.map +1 -1
  203. package/dist/services/definitions/n8n.mjs +11 -1
  204. package/dist/services/definitions/n8n.mjs.map +1 -1
  205. package/dist/services/definitions/ollama.cjs +3 -1
  206. package/dist/services/definitions/ollama.cjs.map +1 -1
  207. package/dist/services/definitions/ollama.mjs +3 -1
  208. package/dist/services/definitions/ollama.mjs.map +1 -1
  209. package/dist/services/definitions/open-saas.cjs +81 -0
  210. package/dist/services/definitions/open-saas.cjs.map +1 -0
  211. package/dist/services/definitions/open-saas.d.cts +7 -0
  212. package/dist/services/definitions/open-saas.d.cts.map +1 -0
  213. package/dist/services/definitions/open-saas.d.mts +7 -0
  214. package/dist/services/definitions/open-saas.d.mts.map +1 -0
  215. package/dist/services/definitions/open-saas.mjs +80 -0
  216. package/dist/services/definitions/open-saas.mjs.map +1 -0
  217. package/dist/services/definitions/qdrant.cjs +3 -1
  218. package/dist/services/definitions/qdrant.cjs.map +1 -1
  219. package/dist/services/definitions/qdrant.mjs +3 -1
  220. package/dist/services/definitions/qdrant.mjs.map +1 -1
  221. package/dist/services/definitions/searxng.cjs +8 -1
  222. package/dist/services/definitions/searxng.cjs.map +1 -1
  223. package/dist/services/definitions/searxng.mjs +8 -1
  224. package/dist/services/definitions/searxng.mjs.map +1 -1
  225. package/dist/services/definitions/uptime-kuma.cjs +8 -1
  226. package/dist/services/definitions/uptime-kuma.cjs.map +1 -1
  227. package/dist/services/definitions/uptime-kuma.mjs +8 -1
  228. package/dist/services/definitions/uptime-kuma.mjs.map +1 -1
  229. package/dist/services/registry.cjs +3 -0
  230. package/dist/services/registry.cjs.map +1 -1
  231. package/dist/services/registry.d.cts.map +1 -1
  232. package/dist/services/registry.d.mts.map +1 -1
  233. package/dist/services/registry.mjs +3 -0
  234. package/dist/services/registry.mjs.map +1 -1
  235. package/dist/services/registry.test.cjs +40 -33
  236. package/dist/services/registry.test.cjs.map +1 -1
  237. package/dist/services/registry.test.mjs +8 -1
  238. package/dist/services/registry.test.mjs.map +1 -1
  239. package/dist/{skill-manifest-BVUXU0__.mjs → skill-manifest-6XhrhWsG.mjs} +49 -1
  240. package/dist/{skill-manifest--IgY9REK.cjs.map → skill-manifest-6XhrhWsG.mjs.map} +1 -1
  241. package/dist/{skill-manifest--IgY9REK.cjs → skill-manifest-B8znSsym.cjs} +49 -1
  242. package/dist/{skill-manifest-BVUXU0__.mjs.map → skill-manifest-B8znSsym.cjs.map} +1 -1
  243. package/dist/skills/registry.cjs +3 -3
  244. package/dist/skills/registry.cjs.map +1 -1
  245. package/dist/skills/registry.mjs +3 -3
  246. package/dist/skills/registry.mjs.map +1 -1
  247. package/dist/skills/skill-manifest.cjs +1 -1
  248. package/dist/skills/skill-manifest.mjs +1 -1
  249. package/dist/{vi.2VT5v0um-DvC3SVNc.mjs → test.CTcmp4Su-ClCHJ3FA.mjs} +6793 -6403
  250. package/dist/test.CTcmp4Su-ClCHJ3FA.mjs.map +1 -0
  251. package/dist/{vi.2VT5v0um-CRqXre87.cjs → test.CTcmp4Su-DlzTarwH.cjs} +6793 -6403
  252. package/dist/test.CTcmp4Su-DlzTarwH.cjs.map +1 -0
  253. package/dist/track-analytics.cjs +50 -0
  254. package/dist/track-analytics.cjs.map +1 -0
  255. package/dist/track-analytics.d.cts +34 -0
  256. package/dist/track-analytics.d.cts.map +1 -0
  257. package/dist/track-analytics.d.mts +34 -0
  258. package/dist/track-analytics.d.mts.map +1 -0
  259. package/dist/track-analytics.mjs +48 -0
  260. package/dist/track-analytics.mjs.map +1 -0
  261. package/dist/track-analytics.test.cjs +91 -0
  262. package/dist/track-analytics.test.cjs.map +1 -0
  263. package/dist/track-analytics.test.d.cts +1 -0
  264. package/dist/track-analytics.test.d.mts +1 -0
  265. package/dist/track-analytics.test.mjs +92 -0
  266. package/dist/track-analytics.test.mjs.map +1 -0
  267. package/dist/types.cjs +7 -0
  268. package/dist/types.cjs.map +1 -1
  269. package/dist/types.d.cts +12 -2
  270. package/dist/types.d.cts.map +1 -1
  271. package/dist/types.d.mts +12 -2
  272. package/dist/types.d.mts.map +1 -1
  273. package/dist/types.mjs +7 -0
  274. package/dist/types.mjs.map +1 -1
  275. package/dist/validator.test.cjs +15 -15
  276. package/dist/validator.test.cjs.map +1 -1
  277. package/dist/validator.test.mjs +2 -2
  278. package/dist/version-manager.cjs +1 -1
  279. package/dist/version-manager.cjs.map +1 -1
  280. package/dist/version-manager.mjs +1 -1
  281. package/dist/version-manager.mjs.map +1 -1
  282. package/dist/version-manager.test.cjs +40 -38
  283. package/dist/version-manager.test.cjs.map +1 -1
  284. package/dist/version-manager.test.mjs +7 -5
  285. package/dist/version-manager.test.mjs.map +1 -1
  286. package/package.json +4 -4
  287. package/src/__snapshots__/composer.snapshot.test.ts.snap +160 -0
  288. package/src/addon-stack.test.ts +490 -0
  289. package/src/addon-stack.ts +998 -0
  290. package/src/bare-metal-partition.test.ts +4 -3
  291. package/src/composer.test.ts +4 -2
  292. package/src/composer.ts +24 -5
  293. package/src/generate.test.ts +2 -1
  294. package/src/generate.ts +10 -1
  295. package/src/generators/clone-repos.test.ts +154 -0
  296. package/src/generators/clone-repos.ts +159 -0
  297. package/src/generators/postgres-init.ts +17 -0
  298. package/src/generators/scripts.test.ts +52 -4
  299. package/src/generators/scripts.ts +351 -3
  300. package/src/generators/stack-manifest.ts +4 -2
  301. package/src/index.ts +28 -2
  302. package/src/presets/registry.ts +241 -329
  303. package/src/resolver.test.ts +53 -15
  304. package/src/resolver.ts +13 -1
  305. package/src/schema.ts +216 -4
  306. package/src/services/definitions/apptension-saas.ts +84 -0
  307. package/src/services/definitions/boxyhq-saas.ts +84 -0
  308. package/src/services/definitions/browserless.ts +3 -0
  309. package/src/services/definitions/cmsaas-starter.ts +84 -0
  310. package/src/services/definitions/convex.ts +31 -0
  311. package/src/services/definitions/grafana.ts +9 -0
  312. package/src/services/definitions/index.ts +90 -70
  313. package/src/services/definitions/ixartz-saas.ts +84 -0
  314. package/src/services/definitions/meilisearch.ts +9 -0
  315. package/src/services/definitions/minio.ts +2 -0
  316. package/src/services/definitions/mission-control.ts +19 -2
  317. package/src/services/definitions/n8n.ts +9 -0
  318. package/src/services/definitions/ollama.ts +2 -0
  319. package/src/services/definitions/open-saas.ts +79 -0
  320. package/src/services/definitions/qdrant.ts +2 -0
  321. package/src/services/definitions/searxng.ts +3 -0
  322. package/src/services/definitions/uptime-kuma.ts +3 -0
  323. package/src/services/registry.test.ts +8 -0
  324. package/src/services/registry.ts +7 -0
  325. package/src/skills/manifest.json +64 -0
  326. package/src/skills/registry.ts +3 -3
  327. package/src/track-analytics.test.ts +82 -0
  328. package/src/track-analytics.ts +76 -0
  329. package/src/types.ts +29 -0
  330. package/src/version-manager.test.ts +10 -5
  331. package/src/version-manager.ts +1 -1
  332. package/dist/schema-B4c64P8N.d.cts.map +0 -1
  333. package/dist/schema-CXNhYci1.d.mts.map +0 -1
  334. package/dist/vi.2VT5v0um-CRqXre87.cjs.map +0 -1
  335. package/dist/vi.2VT5v0um-DvC3SVNc.mjs.map +0 -1
@@ -63,10 +63,40 @@ exports[`compose snapshot tests > creator preset (ffmpeg + remotion + minio + re
63
63
  retries: 5
64
64
  start_period: 20s
65
65
  depends_on:
66
+ convex:
67
+ condition: service_healthy
66
68
  minio:
67
69
  condition: service_healthy
68
70
  redis:
69
71
  condition: service_healthy
72
+ convex:
73
+ image: ghcr.io/get-convex/convex-backend:latest
74
+ environment:
75
+ CONVEX_CLOUD_ORIGIN: http://127.0.0.1:3210
76
+ CONVEX_SITE_ORIGIN: http://127.0.0.1:3211
77
+ INSTANCE_NAME: openclaw-convex
78
+ INSTANCE_SECRET: \${INSTANCE_SECRET}
79
+ DATABASE_URL: \${DATABASE_URL}
80
+ RUST_LOG: info
81
+ DISABLE_BEACON: ""
82
+ CONVEX_SELF_HOSTED_ADMIN_KEY: \${CONVEX_SELF_HOSTED_ADMIN_KEY}
83
+ CONVEX_INSTANCE_SECRET: \${CONVEX_INSTANCE_SECRET}
84
+ ports:
85
+ - \${CONVEX_EXTERNAL_PORT_0:-3210}:3210
86
+ - \${CONVEX_EXTERNAL_PORT_1:-3211}:3211
87
+ volumes:
88
+ - convex-data:/convex/data
89
+ healthcheck:
90
+ test:
91
+ - CMD-SHELL
92
+ - curl -f http://localhost:3210/version
93
+ interval: 5s
94
+ timeout: 5s
95
+ retries: 5
96
+ start_period: 10s
97
+ restart: unless-stopped
98
+ networks:
99
+ - openclaw-network
70
100
  minio:
71
101
  image: minio/minio:RELEASE.2025-04-22T22-12-26Z
72
102
  environment:
@@ -146,9 +176,11 @@ exports[`compose snapshot tests > creator preset (ffmpeg + remotion + minio + re
146
176
  depends_on:
147
177
  - openclaw-gateway
148
178
  volumes:
179
+ convex-data:
149
180
  ffmpeg-shared:
150
181
  minio-data:
151
182
  redis-data:
183
+ tailscale-state:
152
184
  networks:
153
185
  openclaw-network:
154
186
  driver: bridge
@@ -246,12 +278,42 @@ exports[`compose snapshot tests > devops preset (n8n + postgresql + redis + moni
246
278
  retries: 5
247
279
  start_period: 20s
248
280
  depends_on:
281
+ convex:
282
+ condition: service_healthy
249
283
  postgresql:
250
284
  condition: service_healthy
251
285
  redis:
252
286
  condition: service_healthy
253
287
  n8n:
254
288
  condition: service_healthy
289
+ convex:
290
+ image: ghcr.io/get-convex/convex-backend:latest
291
+ environment:
292
+ CONVEX_CLOUD_ORIGIN: http://127.0.0.1:3210
293
+ CONVEX_SITE_ORIGIN: http://127.0.0.1:3211
294
+ INSTANCE_NAME: openclaw-convex
295
+ INSTANCE_SECRET: \${INSTANCE_SECRET}
296
+ DATABASE_URL: \${DATABASE_URL}
297
+ RUST_LOG: info
298
+ DISABLE_BEACON: ""
299
+ CONVEX_SELF_HOSTED_ADMIN_KEY: \${CONVEX_SELF_HOSTED_ADMIN_KEY}
300
+ CONVEX_INSTANCE_SECRET: \${CONVEX_INSTANCE_SECRET}
301
+ ports:
302
+ - \${CONVEX_EXTERNAL_PORT_0:-3210}:3210
303
+ - \${CONVEX_EXTERNAL_PORT_1:-3211}:3211
304
+ volumes:
305
+ - convex-data:/convex/data
306
+ healthcheck:
307
+ test:
308
+ - CMD-SHELL
309
+ - curl -f http://localhost:3210/version
310
+ interval: 5s
311
+ timeout: 5s
312
+ retries: 5
313
+ start_period: 10s
314
+ restart: unless-stopped
315
+ networks:
316
+ - openclaw-network
255
317
  postgresql:
256
318
  image: postgres:17-alpine
257
319
  environment:
@@ -403,11 +465,13 @@ exports[`compose snapshot tests > devops preset (n8n + postgresql + redis + moni
403
465
  depends_on:
404
466
  - openclaw-gateway
405
467
  volumes:
468
+ convex-data:
406
469
  grafana-data:
407
470
  n8n-data:
408
471
  postgres-data:
409
472
  prometheus-data:
410
473
  redis-data:
474
+ tailscale-state:
411
475
  uptime-kuma-data:
412
476
  networks:
413
477
  openclaw-network:
@@ -580,6 +644,8 @@ exports[`compose snapshot tests > full preset (many services) 1`] = `
580
644
  condition: service_healthy
581
645
  caddy:
582
646
  condition: service_healthy
647
+ convex:
648
+ condition: service_healthy
583
649
  meilisearch:
584
650
  condition: service_healthy
585
651
  minio:
@@ -631,6 +697,34 @@ exports[`compose snapshot tests > full preset (many services) 1`] = `
631
697
  restart: unless-stopped
632
698
  networks:
633
699
  - openclaw-network
700
+ convex:
701
+ image: ghcr.io/get-convex/convex-backend:latest
702
+ environment:
703
+ CONVEX_CLOUD_ORIGIN: http://127.0.0.1:3210
704
+ CONVEX_SITE_ORIGIN: http://127.0.0.1:3211
705
+ INSTANCE_NAME: openclaw-convex
706
+ INSTANCE_SECRET: \${INSTANCE_SECRET}
707
+ DATABASE_URL: \${DATABASE_URL}
708
+ RUST_LOG: info
709
+ DISABLE_BEACON: ""
710
+ CONVEX_SELF_HOSTED_ADMIN_KEY: \${CONVEX_SELF_HOSTED_ADMIN_KEY}
711
+ CONVEX_INSTANCE_SECRET: \${CONVEX_INSTANCE_SECRET}
712
+ ports:
713
+ - \${CONVEX_EXTERNAL_PORT_0:-3210}:3210
714
+ - \${CONVEX_EXTERNAL_PORT_1:-3211}:3211
715
+ volumes:
716
+ - convex-data:/convex/data
717
+ healthcheck:
718
+ test:
719
+ - CMD-SHELL
720
+ - curl -f http://localhost:3210/version
721
+ interval: 5s
722
+ timeout: 5s
723
+ retries: 5
724
+ start_period: 10s
725
+ restart: unless-stopped
726
+ networks:
727
+ - openclaw-network
634
728
  meilisearch:
635
729
  image: getmeili/meilisearch:v1.35.1
636
730
  environment:
@@ -861,6 +955,7 @@ exports[`compose snapshot tests > full preset (many services) 1`] = `
861
955
  volumes:
862
956
  caddy-config:
863
957
  caddy-data:
958
+ convex-data:
864
959
  ffmpeg-shared:
865
960
  gotify-data:
866
961
  grafana-data:
@@ -873,6 +968,7 @@ volumes:
873
968
  qdrant-data:
874
969
  redis-data:
875
970
  searxng-data:
971
+ tailscale-state:
876
972
  uptime-kuma-data:
877
973
  networks:
878
974
  openclaw-network:
@@ -935,8 +1031,38 @@ exports[`compose snapshot tests > minimal preset (redis only) 1`] = `
935
1031
  retries: 5
936
1032
  start_period: 20s
937
1033
  depends_on:
1034
+ convex:
1035
+ condition: service_healthy
938
1036
  redis:
939
1037
  condition: service_healthy
1038
+ convex:
1039
+ image: ghcr.io/get-convex/convex-backend:latest
1040
+ environment:
1041
+ CONVEX_CLOUD_ORIGIN: http://127.0.0.1:3210
1042
+ CONVEX_SITE_ORIGIN: http://127.0.0.1:3211
1043
+ INSTANCE_NAME: openclaw-convex
1044
+ INSTANCE_SECRET: \${INSTANCE_SECRET}
1045
+ DATABASE_URL: \${DATABASE_URL}
1046
+ RUST_LOG: info
1047
+ DISABLE_BEACON: ""
1048
+ CONVEX_SELF_HOSTED_ADMIN_KEY: \${CONVEX_SELF_HOSTED_ADMIN_KEY}
1049
+ CONVEX_INSTANCE_SECRET: \${CONVEX_INSTANCE_SECRET}
1050
+ ports:
1051
+ - \${CONVEX_EXTERNAL_PORT_0:-3210}:3210
1052
+ - \${CONVEX_EXTERNAL_PORT_1:-3211}:3211
1053
+ volumes:
1054
+ - convex-data:/convex/data
1055
+ healthcheck:
1056
+ test:
1057
+ - CMD-SHELL
1058
+ - curl -f http://localhost:3210/version
1059
+ interval: 5s
1060
+ timeout: 5s
1061
+ retries: 5
1062
+ start_period: 10s
1063
+ restart: unless-stopped
1064
+ networks:
1065
+ - openclaw-network
940
1066
  redis:
941
1067
  image: redis:8-alpine
942
1068
  environment:
@@ -994,7 +1120,9 @@ exports[`compose snapshot tests > minimal preset (redis only) 1`] = `
994
1120
  depends_on:
995
1121
  - openclaw-gateway
996
1122
  volumes:
1123
+ convex-data:
997
1124
  redis-data:
1125
+ tailscale-state:
998
1126
  networks:
999
1127
  openclaw-network:
1000
1128
  driver: bridge
@@ -1065,6 +1193,8 @@ exports[`compose snapshot tests > researcher preset (qdrant + searxng + browserl
1065
1193
  depends_on:
1066
1194
  browserless:
1067
1195
  condition: service_healthy
1196
+ convex:
1197
+ condition: service_healthy
1068
1198
  qdrant:
1069
1199
  condition: service_healthy
1070
1200
  redis:
@@ -1089,6 +1219,34 @@ exports[`compose snapshot tests > researcher preset (qdrant + searxng + browserl
1089
1219
  restart: unless-stopped
1090
1220
  networks:
1091
1221
  - openclaw-network
1222
+ convex:
1223
+ image: ghcr.io/get-convex/convex-backend:latest
1224
+ environment:
1225
+ CONVEX_CLOUD_ORIGIN: http://127.0.0.1:3210
1226
+ CONVEX_SITE_ORIGIN: http://127.0.0.1:3211
1227
+ INSTANCE_NAME: openclaw-convex
1228
+ INSTANCE_SECRET: \${INSTANCE_SECRET}
1229
+ DATABASE_URL: \${DATABASE_URL}
1230
+ RUST_LOG: info
1231
+ DISABLE_BEACON: ""
1232
+ CONVEX_SELF_HOSTED_ADMIN_KEY: \${CONVEX_SELF_HOSTED_ADMIN_KEY}
1233
+ CONVEX_INSTANCE_SECRET: \${CONVEX_INSTANCE_SECRET}
1234
+ ports:
1235
+ - \${CONVEX_EXTERNAL_PORT_0:-3210}:3210
1236
+ - \${CONVEX_EXTERNAL_PORT_1:-3211}:3211
1237
+ volumes:
1238
+ - convex-data:/convex/data
1239
+ healthcheck:
1240
+ test:
1241
+ - CMD-SHELL
1242
+ - curl -f http://localhost:3210/version
1243
+ interval: 5s
1244
+ timeout: 5s
1245
+ retries: 5
1246
+ start_period: 10s
1247
+ restart: unless-stopped
1248
+ networks:
1249
+ - openclaw-network
1092
1250
  qdrant:
1093
1251
  image: qdrant/qdrant:v1.12.1
1094
1252
  environment:
@@ -1182,9 +1340,11 @@ exports[`compose snapshot tests > researcher preset (qdrant + searxng + browserl
1182
1340
  depends_on:
1183
1341
  - openclaw-gateway
1184
1342
  volumes:
1343
+ convex-data:
1185
1344
  qdrant-data:
1186
1345
  redis-data:
1187
1346
  searxng-data:
1347
+ tailscale-state:
1188
1348
  networks:
1189
1349
  openclaw-network:
1190
1350
  driver: bridge