@better-openclaw/core 1.0.6 → 1.0.7

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 (556) hide show
  1. package/.github/workflows/publish-core.yml +1 -1
  2. package/dist/bare-metal-partition.d.mts +0 -1
  3. package/dist/bare-metal-partition.d.mts.map +1 -1
  4. package/dist/bare-metal-partition.mjs +47 -2
  5. package/dist/bare-metal-partition.mjs.map +1 -0
  6. package/dist/bare-metal-partition.test.mjs +3 -3
  7. package/dist/composer.d.mts +0 -1
  8. package/dist/composer.d.mts.map +1 -1
  9. package/dist/composer.mjs +286 -2
  10. package/dist/composer.mjs.map +1 -0
  11. package/dist/composer.snapshot.test.mjs +3 -3
  12. package/dist/composer.test.mjs +3 -3
  13. package/dist/generate.d.mts +0 -2
  14. package/dist/generate.d.mts.map +1 -1
  15. package/dist/generate.mjs +15 -15
  16. package/dist/generate.test.mjs +1 -1
  17. package/dist/generators/bare-metal-install.d.mts +0 -2
  18. package/dist/generators/bare-metal-install.d.mts.map +1 -1
  19. package/dist/generators/bare-metal-install.mjs +223 -2
  20. package/dist/generators/bare-metal-install.mjs.map +1 -0
  21. package/dist/generators/bare-metal-install.test.mjs +2 -2
  22. package/dist/generators/caddy.d.mts +0 -2
  23. package/dist/generators/caddy.d.mts.map +1 -1
  24. package/dist/generators/caddy.mjs +76 -2
  25. package/dist/generators/caddy.mjs.map +1 -0
  26. package/dist/generators/env.d.mts +0 -1
  27. package/dist/generators/env.d.mts.map +1 -1
  28. package/dist/generators/env.mjs +249 -2
  29. package/dist/generators/env.mjs.map +1 -0
  30. package/dist/generators/grafana.d.mts.map +1 -1
  31. package/dist/generators/grafana.mjs +292 -2
  32. package/dist/generators/grafana.mjs.map +1 -0
  33. package/dist/generators/n8n-workflows.d.mts +0 -2
  34. package/dist/generators/n8n-workflows.d.mts.map +1 -1
  35. package/dist/generators/n8n-workflows.mjs +74 -2
  36. package/dist/generators/n8n-workflows.mjs.map +1 -0
  37. package/dist/generators/native-services.d.mts +0 -1
  38. package/dist/generators/native-services.d.mts.map +1 -1
  39. package/dist/generators/native-services.mjs +77 -2
  40. package/dist/generators/native-services.mjs.map +1 -0
  41. package/dist/generators/postgres-init.d.mts +0 -1
  42. package/dist/generators/postgres-init.d.mts.map +1 -1
  43. package/dist/generators/postgres-init.mjs +150 -2
  44. package/dist/generators/postgres-init.mjs.map +1 -0
  45. package/dist/generators/prometheus.d.mts +0 -2
  46. package/dist/generators/prometheus.d.mts.map +1 -1
  47. package/dist/generators/prometheus.mjs +106 -2
  48. package/dist/generators/prometheus.mjs.map +1 -0
  49. package/dist/generators/readme.d.mts +0 -1
  50. package/dist/generators/readme.d.mts.map +1 -1
  51. package/dist/generators/readme.mjs +198 -2
  52. package/dist/generators/readme.mjs.map +1 -0
  53. package/dist/generators/scripts.d.mts.map +1 -1
  54. package/dist/generators/scripts.mjs +350 -2
  55. package/dist/generators/scripts.mjs.map +1 -0
  56. package/dist/generators/skills.d.mts +0 -2
  57. package/dist/generators/skills.d.mts.map +1 -1
  58. package/dist/generators/skills.mjs +586 -2
  59. package/dist/generators/skills.mjs.map +1 -0
  60. package/dist/index.d.mts +1 -1
  61. package/dist/index.mjs +15 -15
  62. package/dist/{magic-string.es-Dew0Rnsa.mjs → magic-string.es-1uTtupLe.mjs} +14 -14
  63. package/dist/magic-string.es-1uTtupLe.mjs.map +1 -0
  64. package/dist/presets/registry.d.mts +0 -1
  65. package/dist/presets/registry.d.mts.map +1 -1
  66. package/dist/presets/registry.test.mjs +1 -1
  67. package/dist/resolver.d.mts +0 -2
  68. package/dist/resolver.d.mts.map +1 -1
  69. package/dist/resolver.mjs +193 -2
  70. package/dist/resolver.mjs.map +1 -0
  71. package/dist/resolver.test.mjs +2 -2
  72. package/dist/schema.d.mts +706 -2
  73. package/dist/schema.d.mts.map +1 -0
  74. package/dist/schema.mjs +3 -1
  75. package/dist/schema.mjs.map +1 -1
  76. package/dist/schema.test.mjs +1 -1
  77. package/dist/services/definitions/anything-llm.d.mts +0 -1
  78. package/dist/services/definitions/anything-llm.d.mts.map +1 -1
  79. package/dist/services/definitions/anything-llm.mjs +43 -2
  80. package/dist/services/definitions/anything-llm.mjs.map +1 -0
  81. package/dist/services/definitions/appflowy.d.mts +0 -1
  82. package/dist/services/definitions/appflowy.d.mts.map +1 -1
  83. package/dist/services/definitions/appflowy.mjs +44 -2
  84. package/dist/services/definitions/appflowy.mjs.map +1 -0
  85. package/dist/services/definitions/beszel.d.mts +0 -1
  86. package/dist/services/definitions/beszel.d.mts.map +1 -1
  87. package/dist/services/definitions/beszel.mjs +44 -2
  88. package/dist/services/definitions/beszel.mjs.map +1 -0
  89. package/dist/services/definitions/browserless.d.mts +0 -1
  90. package/dist/services/definitions/browserless.d.mts.map +1 -1
  91. package/dist/services/definitions/browserless.mjs +84 -2
  92. package/dist/services/definitions/browserless.mjs.map +1 -0
  93. package/dist/services/definitions/caddy.d.mts +0 -1
  94. package/dist/services/definitions/caddy.d.mts.map +1 -1
  95. package/dist/services/definitions/caddy.mjs +51 -2
  96. package/dist/services/definitions/caddy.mjs.map +1 -0
  97. package/dist/services/definitions/chromadb.d.mts +0 -1
  98. package/dist/services/definitions/chromadb.d.mts.map +1 -1
  99. package/dist/services/definitions/chromadb.mjs +62 -2
  100. package/dist/services/definitions/chromadb.mjs.map +1 -0
  101. package/dist/services/definitions/claude-code.d.mts +0 -1
  102. package/dist/services/definitions/claude-code.d.mts.map +1 -1
  103. package/dist/services/definitions/claude-code.mjs +51 -2
  104. package/dist/services/definitions/claude-code.mjs.map +1 -0
  105. package/dist/services/definitions/code-server.d.mts +0 -1
  106. package/dist/services/definitions/code-server.d.mts.map +1 -1
  107. package/dist/services/definitions/code-server.mjs +65 -2
  108. package/dist/services/definitions/code-server.mjs.map +1 -0
  109. package/dist/services/definitions/codex.d.mts +0 -1
  110. package/dist/services/definitions/codex.d.mts.map +1 -1
  111. package/dist/services/definitions/codex.mjs +44 -2
  112. package/dist/services/definitions/codex.mjs.map +1 -0
  113. package/dist/services/definitions/convex-dashboard.d.mts +7 -0
  114. package/dist/services/definitions/convex-dashboard.d.mts.map +1 -0
  115. package/dist/services/definitions/convex-dashboard.mjs +46 -0
  116. package/dist/services/definitions/convex-dashboard.mjs.map +1 -0
  117. package/dist/services/definitions/convex.d.mts +7 -0
  118. package/dist/services/definitions/convex.d.mts.map +1 -0
  119. package/dist/services/definitions/convex.mjs +118 -0
  120. package/dist/services/definitions/convex.mjs.map +1 -0
  121. package/dist/services/definitions/coolify.d.mts +0 -1
  122. package/dist/services/definitions/coolify.d.mts.map +1 -1
  123. package/dist/services/definitions/coolify.mjs +48 -2
  124. package/dist/services/definitions/coolify.mjs.map +1 -0
  125. package/dist/services/definitions/dify.d.mts +0 -1
  126. package/dist/services/definitions/dify.d.mts.map +1 -1
  127. package/dist/services/definitions/dify.mjs +80 -2
  128. package/dist/services/definitions/dify.mjs.map +1 -0
  129. package/dist/services/definitions/docsgpt.d.mts +0 -1
  130. package/dist/services/definitions/docsgpt.d.mts.map +1 -1
  131. package/dist/services/definitions/docsgpt.mjs +44 -2
  132. package/dist/services/definitions/docsgpt.mjs.map +1 -0
  133. package/dist/services/definitions/dokploy.d.mts +0 -1
  134. package/dist/services/definitions/dokploy.d.mts.map +1 -1
  135. package/dist/services/definitions/dokploy.mjs +48 -2
  136. package/dist/services/definitions/dokploy.mjs.map +1 -0
  137. package/dist/services/definitions/dozzle.d.mts +0 -1
  138. package/dist/services/definitions/dozzle.d.mts.map +1 -1
  139. package/dist/services/definitions/dozzle.mjs +40 -2
  140. package/dist/services/definitions/dozzle.mjs.map +1 -0
  141. package/dist/services/definitions/ffmpeg.d.mts +0 -1
  142. package/dist/services/definitions/ffmpeg.d.mts.map +1 -1
  143. package/dist/services/definitions/ffmpeg.mjs +65 -2
  144. package/dist/services/definitions/ffmpeg.mjs.map +1 -0
  145. package/dist/services/definitions/flowise.d.mts +0 -1
  146. package/dist/services/definitions/flowise.d.mts.map +1 -1
  147. package/dist/services/definitions/flowise.mjs +44 -2
  148. package/dist/services/definitions/flowise.mjs.map +1 -0
  149. package/dist/services/definitions/gemini-cli.d.mts +0 -1
  150. package/dist/services/definitions/gemini-cli.d.mts.map +1 -1
  151. package/dist/services/definitions/gemini-cli.mjs +45 -2
  152. package/dist/services/definitions/gemini-cli.mjs.map +1 -0
  153. package/dist/services/definitions/gitea.d.mts +0 -1
  154. package/dist/services/definitions/gitea.d.mts.map +1 -1
  155. package/dist/services/definitions/gitea.mjs +48 -2
  156. package/dist/services/definitions/gitea.mjs.map +1 -0
  157. package/dist/services/definitions/gotify.d.mts +0 -1
  158. package/dist/services/definitions/gotify.d.mts.map +1 -1
  159. package/dist/services/definitions/gotify.mjs +61 -2
  160. package/dist/services/definitions/gotify.mjs.map +1 -0
  161. package/dist/services/definitions/grafana.d.mts +0 -1
  162. package/dist/services/definitions/grafana.d.mts.map +1 -1
  163. package/dist/services/definitions/grafana.mjs +62 -2
  164. package/dist/services/definitions/grafana.mjs.map +1 -0
  165. package/dist/services/definitions/index.d.mts +5 -2
  166. package/dist/services/definitions/index.d.mts.map +1 -1
  167. package/dist/services/definitions/index.mjs +145 -67
  168. package/dist/services/definitions/index.mjs.map +1 -0
  169. package/dist/services/definitions/kimi.d.mts +0 -1
  170. package/dist/services/definitions/kimi.d.mts.map +1 -1
  171. package/dist/services/definitions/kimi.mjs +45 -2
  172. package/dist/services/definitions/kimi.mjs.map +1 -0
  173. package/dist/services/definitions/lasuite-meet-agents.d.mts +0 -1
  174. package/dist/services/definitions/lasuite-meet-agents.d.mts.map +1 -1
  175. package/dist/services/definitions/lasuite-meet-agents.mjs +35 -2
  176. package/dist/services/definitions/lasuite-meet-agents.mjs.map +1 -0
  177. package/dist/services/definitions/lasuite-meet-backend.d.mts +0 -1
  178. package/dist/services/definitions/lasuite-meet-backend.d.mts.map +1 -1
  179. package/dist/services/definitions/lasuite-meet-backend.mjs +133 -2
  180. package/dist/services/definitions/lasuite-meet-backend.mjs.map +1 -0
  181. package/dist/services/definitions/lasuite-meet-frontend.d.mts +0 -1
  182. package/dist/services/definitions/lasuite-meet-frontend.d.mts.map +1 -1
  183. package/dist/services/definitions/lasuite-meet-frontend.mjs +47 -2
  184. package/dist/services/definitions/lasuite-meet-frontend.mjs.map +1 -0
  185. package/dist/services/definitions/librechat.d.mts +0 -1
  186. package/dist/services/definitions/librechat.d.mts.map +1 -1
  187. package/dist/services/definitions/librechat.mjs +49 -2
  188. package/dist/services/definitions/librechat.mjs.map +1 -0
  189. package/dist/services/definitions/lightpanda.d.mts +0 -1
  190. package/dist/services/definitions/lightpanda.d.mts.map +1 -1
  191. package/dist/services/definitions/lightpanda.mjs +58 -2
  192. package/dist/services/definitions/lightpanda.mjs.map +1 -0
  193. package/dist/services/definitions/litellm.d.mts +0 -1
  194. package/dist/services/definitions/litellm.d.mts.map +1 -1
  195. package/dist/services/definitions/litellm.mjs +46 -2
  196. package/dist/services/definitions/litellm.mjs.map +1 -0
  197. package/dist/services/definitions/livekit.d.mts +0 -1
  198. package/dist/services/definitions/livekit.d.mts.map +1 -1
  199. package/dist/services/definitions/livekit.mjs +55 -2
  200. package/dist/services/definitions/livekit.mjs.map +1 -0
  201. package/dist/services/definitions/matomo.d.mts +0 -1
  202. package/dist/services/definitions/matomo.d.mts.map +1 -1
  203. package/dist/services/definitions/matomo.mjs +79 -2
  204. package/dist/services/definitions/matomo.mjs.map +1 -0
  205. package/dist/services/definitions/matrix-synapse.d.mts +0 -1
  206. package/dist/services/definitions/matrix-synapse.d.mts.map +1 -1
  207. package/dist/services/definitions/matrix-synapse.mjs +87 -2
  208. package/dist/services/definitions/matrix-synapse.mjs.map +1 -0
  209. package/dist/services/definitions/mattermost.d.mts +0 -1
  210. package/dist/services/definitions/mattermost.d.mts.map +1 -1
  211. package/dist/services/definitions/mattermost.mjs +60 -2
  212. package/dist/services/definitions/mattermost.mjs.map +1 -0
  213. package/dist/services/definitions/meilisearch.d.mts +0 -1
  214. package/dist/services/definitions/meilisearch.d.mts.map +1 -1
  215. package/dist/services/definitions/meilisearch.mjs +77 -2
  216. package/dist/services/definitions/meilisearch.mjs.map +1 -0
  217. package/dist/services/definitions/minio.d.mts +0 -1
  218. package/dist/services/definitions/minio.d.mts.map +1 -1
  219. package/dist/services/definitions/minio.mjs +101 -2
  220. package/dist/services/definitions/minio.mjs.map +1 -0
  221. package/dist/services/definitions/mission-control.d.mts +7 -0
  222. package/dist/services/definitions/mission-control.d.mts.map +1 -0
  223. package/dist/services/definitions/mission-control.mjs +67 -0
  224. package/dist/services/definitions/mission-control.mjs.map +1 -0
  225. package/dist/services/definitions/mixpost.d.mts +0 -1
  226. package/dist/services/definitions/mixpost.d.mts.map +1 -1
  227. package/dist/services/definitions/mixpost.mjs +86 -2
  228. package/dist/services/definitions/mixpost.mjs.map +1 -0
  229. package/dist/services/definitions/motion-canvas.d.mts +0 -1
  230. package/dist/services/definitions/motion-canvas.d.mts.map +1 -1
  231. package/dist/services/definitions/motion-canvas.mjs +51 -2
  232. package/dist/services/definitions/motion-canvas.mjs.map +1 -0
  233. package/dist/services/definitions/n8n.d.mts +0 -1
  234. package/dist/services/definitions/n8n.d.mts.map +1 -1
  235. package/dist/services/definitions/n8n.mjs +153 -2
  236. package/dist/services/definitions/n8n.mjs.map +1 -0
  237. package/dist/services/definitions/nocodb.d.mts +0 -1
  238. package/dist/services/definitions/nocodb.d.mts.map +1 -1
  239. package/dist/services/definitions/nocodb.mjs +44 -2
  240. package/dist/services/definitions/nocodb.mjs.map +1 -0
  241. package/dist/services/definitions/ntfy.d.mts +0 -1
  242. package/dist/services/definitions/ntfy.d.mts.map +1 -1
  243. package/dist/services/definitions/ntfy.mjs +62 -2
  244. package/dist/services/definitions/ntfy.mjs.map +1 -0
  245. package/dist/services/definitions/ollama.d.mts +0 -1
  246. package/dist/services/definitions/ollama.d.mts.map +1 -1
  247. package/dist/services/definitions/ollama.mjs +65 -2
  248. package/dist/services/definitions/ollama.mjs.map +1 -0
  249. package/dist/services/definitions/open-webui.d.mts +0 -1
  250. package/dist/services/definitions/open-webui.d.mts.map +1 -1
  251. package/dist/services/definitions/open-webui.mjs +49 -2
  252. package/dist/services/definitions/open-webui.mjs.map +1 -0
  253. package/dist/services/definitions/opencode.d.mts +0 -1
  254. package/dist/services/definitions/opencode.d.mts.map +1 -1
  255. package/dist/services/definitions/opencode.mjs +49 -2
  256. package/dist/services/definitions/opencode.mjs.map +1 -0
  257. package/dist/services/definitions/openpanel.d.mts +0 -1
  258. package/dist/services/definitions/openpanel.d.mts.map +1 -1
  259. package/dist/services/definitions/openpanel.mjs +45 -2
  260. package/dist/services/definitions/openpanel.mjs.map +1 -0
  261. package/dist/services/definitions/outline.d.mts +0 -1
  262. package/dist/services/definitions/outline.d.mts.map +1 -1
  263. package/dist/services/definitions/outline.mjs +73 -2
  264. package/dist/services/definitions/outline.mjs.map +1 -0
  265. package/dist/services/definitions/paperless-ngx.d.mts +0 -1
  266. package/dist/services/definitions/paperless-ngx.d.mts.map +1 -1
  267. package/dist/services/definitions/paperless-ngx.mjs +92 -2
  268. package/dist/services/definitions/paperless-ngx.mjs.map +1 -0
  269. package/dist/services/definitions/playwright-server.d.mts +0 -1
  270. package/dist/services/definitions/playwright-server.d.mts.map +1 -1
  271. package/dist/services/definitions/playwright-server.mjs +41 -2
  272. package/dist/services/definitions/playwright-server.mjs.map +1 -0
  273. package/dist/services/definitions/portainer.d.mts +0 -1
  274. package/dist/services/definitions/portainer.d.mts.map +1 -1
  275. package/dist/services/definitions/portainer.mjs +48 -2
  276. package/dist/services/definitions/portainer.mjs.map +1 -0
  277. package/dist/services/definitions/postgresql.d.mts +0 -1
  278. package/dist/services/definitions/postgresql.d.mts.map +1 -1
  279. package/dist/services/definitions/postgresql.mjs +83 -2
  280. package/dist/services/definitions/postgresql.mjs.map +1 -0
  281. package/dist/services/definitions/postiz.d.mts +0 -1
  282. package/dist/services/definitions/postiz.d.mts.map +1 -1
  283. package/dist/services/definitions/postiz.mjs +82 -2
  284. package/dist/services/definitions/postiz.mjs.map +1 -0
  285. package/dist/services/definitions/prometheus.d.mts +0 -1
  286. package/dist/services/definitions/prometheus.d.mts.map +1 -1
  287. package/dist/services/definitions/prometheus.mjs +51 -2
  288. package/dist/services/definitions/prometheus.mjs.map +1 -0
  289. package/dist/services/definitions/qdrant.d.mts +0 -1
  290. package/dist/services/definitions/qdrant.d.mts.map +1 -1
  291. package/dist/services/definitions/qdrant.mjs +76 -2
  292. package/dist/services/definitions/qdrant.mjs.map +1 -0
  293. package/dist/services/definitions/redis.d.mts +0 -1
  294. package/dist/services/definitions/redis.d.mts.map +1 -1
  295. package/dist/services/definitions/redis.mjs +90 -2
  296. package/dist/services/definitions/redis.mjs.map +1 -0
  297. package/dist/services/definitions/remotion.d.mts +0 -1
  298. package/dist/services/definitions/remotion.d.mts.map +1 -1
  299. package/dist/services/definitions/remotion.mjs +54 -2
  300. package/dist/services/definitions/remotion.mjs.map +1 -0
  301. package/dist/services/definitions/rocketchat.d.mts +0 -1
  302. package/dist/services/definitions/rocketchat.d.mts.map +1 -1
  303. package/dist/services/definitions/rocketchat.mjs +56 -2
  304. package/dist/services/definitions/rocketchat.mjs.map +1 -0
  305. package/dist/services/definitions/searxng.d.mts +0 -1
  306. package/dist/services/definitions/searxng.d.mts.map +1 -1
  307. package/dist/services/definitions/searxng.mjs +64 -2
  308. package/dist/services/definitions/searxng.mjs.map +1 -0
  309. package/dist/services/definitions/stable-diffusion.d.mts +0 -1
  310. package/dist/services/definitions/stable-diffusion.d.mts.map +1 -1
  311. package/dist/services/definitions/stable-diffusion.mjs +47 -2
  312. package/dist/services/definitions/stable-diffusion.mjs.map +1 -0
  313. package/dist/services/definitions/steel-browser.d.mts +0 -1
  314. package/dist/services/definitions/steel-browser.d.mts.map +1 -1
  315. package/dist/services/definitions/steel-browser.mjs +76 -2
  316. package/dist/services/definitions/steel-browser.mjs.map +1 -0
  317. package/dist/services/definitions/tailscale.d.mts +0 -1
  318. package/dist/services/definitions/tailscale.d.mts.map +1 -1
  319. package/dist/services/definitions/tailscale.mjs +69 -2
  320. package/dist/services/definitions/tailscale.mjs.map +1 -0
  321. package/dist/services/definitions/temporal.d.mts +0 -1
  322. package/dist/services/definitions/temporal.d.mts.map +1 -1
  323. package/dist/services/definitions/temporal.mjs +99 -2
  324. package/dist/services/definitions/temporal.mjs.map +1 -0
  325. package/dist/services/definitions/traefik.d.mts +0 -1
  326. package/dist/services/definitions/traefik.d.mts.map +1 -1
  327. package/dist/services/definitions/traefik.mjs +57 -2
  328. package/dist/services/definitions/traefik.mjs.map +1 -0
  329. package/dist/services/definitions/umami.d.mts +0 -1
  330. package/dist/services/definitions/umami.d.mts.map +1 -1
  331. package/dist/services/definitions/umami.mjs +45 -2
  332. package/dist/services/definitions/umami.mjs.map +1 -0
  333. package/dist/services/definitions/uptime-kuma.d.mts +0 -1
  334. package/dist/services/definitions/uptime-kuma.d.mts.map +1 -1
  335. package/dist/services/definitions/uptime-kuma.mjs +50 -2
  336. package/dist/services/definitions/uptime-kuma.mjs.map +1 -0
  337. package/dist/services/definitions/usesend.d.mts +7 -0
  338. package/dist/services/definitions/usesend.d.mts.map +1 -0
  339. package/dist/services/definitions/usesend.mjs +99 -0
  340. package/dist/services/definitions/usesend.mjs.map +1 -0
  341. package/dist/services/definitions/valkey.d.mts +0 -1
  342. package/dist/services/definitions/valkey.d.mts.map +1 -1
  343. package/dist/services/definitions/valkey.mjs +60 -2
  344. package/dist/services/definitions/valkey.mjs.map +1 -0
  345. package/dist/services/definitions/watchtower.d.mts +0 -1
  346. package/dist/services/definitions/watchtower.d.mts.map +1 -1
  347. package/dist/services/definitions/watchtower.mjs +46 -2
  348. package/dist/services/definitions/watchtower.mjs.map +1 -0
  349. package/dist/services/definitions/weaviate.d.mts +0 -1
  350. package/dist/services/definitions/weaviate.d.mts.map +1 -1
  351. package/dist/services/definitions/weaviate.mjs +89 -2
  352. package/dist/services/definitions/weaviate.mjs.map +1 -0
  353. package/dist/services/definitions/whisper.d.mts +0 -1
  354. package/dist/services/definitions/whisper.d.mts.map +1 -1
  355. package/dist/services/definitions/whisper.mjs +61 -2
  356. package/dist/services/definitions/whisper.mjs.map +1 -0
  357. package/dist/services/registry.d.mts +0 -1
  358. package/dist/services/registry.d.mts.map +1 -1
  359. package/dist/services/registry.mjs +29 -2
  360. package/dist/services/registry.mjs.map +1 -0
  361. package/dist/services/registry.test.mjs +2 -2
  362. package/dist/skills/registry.d.mts +0 -1
  363. package/dist/skills/registry.d.mts.map +1 -1
  364. package/dist/skills/registry.mjs +214 -2
  365. package/dist/skills/registry.mjs.map +1 -0
  366. package/dist/types.d.mts +1 -1
  367. package/dist/types.d.mts.map +1 -1
  368. package/dist/validator.d.mts +0 -1
  369. package/dist/validator.d.mts.map +1 -1
  370. package/dist/validator.mjs +110 -2
  371. package/dist/validator.mjs.map +1 -0
  372. package/dist/validator.test.mjs +4 -4
  373. package/dist/version-manager.d.mts +0 -1
  374. package/dist/version-manager.d.mts.map +1 -1
  375. package/dist/version-manager.mjs +1 -1
  376. package/dist/{vi.2VT5v0um-Cs3Z_fCB.mjs → vi.2VT5v0um-Qk6MgAnK.mjs} +1183 -1183
  377. package/dist/vi.2VT5v0um-Qk6MgAnK.mjs.map +1 -0
  378. package/package.json +14 -13
  379. package/src/schema.ts +2 -1
  380. package/src/services/definitions/convex-dashboard.ts +48 -0
  381. package/src/services/definitions/convex.ts +123 -0
  382. package/src/services/definitions/index.ts +12 -0
  383. package/src/services/definitions/mission-control.ts +71 -0
  384. package/src/services/definitions/tailscale.ts +2 -0
  385. package/src/services/definitions/usesend.ts +98 -0
  386. package/tsdown.config.ts +1 -0
  387. package/dist/anything-llm-DIIPhz6K.mjs +0 -44
  388. package/dist/anything-llm-DIIPhz6K.mjs.map +0 -1
  389. package/dist/appflowy-DdoE-dKg.mjs +0 -45
  390. package/dist/appflowy-DdoE-dKg.mjs.map +0 -1
  391. package/dist/bare-metal-install-DpYZDoGq.mjs +0 -224
  392. package/dist/bare-metal-install-DpYZDoGq.mjs.map +0 -1
  393. package/dist/bare-metal-partition-CYlOxf9B.mjs +0 -48
  394. package/dist/bare-metal-partition-CYlOxf9B.mjs.map +0 -1
  395. package/dist/beszel-DHAG1zl0.mjs +0 -45
  396. package/dist/beszel-DHAG1zl0.mjs.map +0 -1
  397. package/dist/browserless-gUuvGmMD.mjs +0 -85
  398. package/dist/browserless-gUuvGmMD.mjs.map +0 -1
  399. package/dist/caddy-BJDrqnmw.mjs +0 -77
  400. package/dist/caddy-BJDrqnmw.mjs.map +0 -1
  401. package/dist/caddy-_NIdWKrf.mjs +0 -52
  402. package/dist/caddy-_NIdWKrf.mjs.map +0 -1
  403. package/dist/chromadb-g4rIsfAl.mjs +0 -63
  404. package/dist/chromadb-g4rIsfAl.mjs.map +0 -1
  405. package/dist/claude-code-DPRA1fy_.mjs +0 -52
  406. package/dist/claude-code-DPRA1fy_.mjs.map +0 -1
  407. package/dist/code-server-BdZZxxm5.mjs +0 -66
  408. package/dist/code-server-BdZZxxm5.mjs.map +0 -1
  409. package/dist/codex-DFVzfrfX.mjs +0 -45
  410. package/dist/codex-DFVzfrfX.mjs.map +0 -1
  411. package/dist/composer-CSM5YycB.mjs +0 -287
  412. package/dist/composer-CSM5YycB.mjs.map +0 -1
  413. package/dist/coolify-Z5_zDgM3.mjs +0 -49
  414. package/dist/coolify-Z5_zDgM3.mjs.map +0 -1
  415. package/dist/definitions-BXpb1kzs.mjs +0 -138
  416. package/dist/definitions-BXpb1kzs.mjs.map +0 -1
  417. package/dist/dify-jDc9U6Ku.mjs +0 -81
  418. package/dist/dify-jDc9U6Ku.mjs.map +0 -1
  419. package/dist/docsgpt-BXM1c2JC.mjs +0 -45
  420. package/dist/docsgpt-BXM1c2JC.mjs.map +0 -1
  421. package/dist/dokploy-Ci8_fb0_.mjs +0 -49
  422. package/dist/dokploy-Ci8_fb0_.mjs.map +0 -1
  423. package/dist/dozzle-fAt2sLRL.mjs +0 -41
  424. package/dist/dozzle-fAt2sLRL.mjs.map +0 -1
  425. package/dist/env-D2h46lHT.mjs +0 -250
  426. package/dist/env-D2h46lHT.mjs.map +0 -1
  427. package/dist/ffmpeg-BCtnA8m_.mjs +0 -66
  428. package/dist/ffmpeg-BCtnA8m_.mjs.map +0 -1
  429. package/dist/flowise-CJTTBa7J.mjs +0 -45
  430. package/dist/flowise-CJTTBa7J.mjs.map +0 -1
  431. package/dist/gemini-cli-Bfwv6hYe.mjs +0 -46
  432. package/dist/gemini-cli-Bfwv6hYe.mjs.map +0 -1
  433. package/dist/gitea-BGkqa-sD.mjs +0 -49
  434. package/dist/gitea-BGkqa-sD.mjs.map +0 -1
  435. package/dist/gotify-D7p8oNM3.mjs +0 -62
  436. package/dist/gotify-D7p8oNM3.mjs.map +0 -1
  437. package/dist/grafana-BlnWc6js.mjs +0 -63
  438. package/dist/grafana-BlnWc6js.mjs.map +0 -1
  439. package/dist/grafana-D3kIm8RX.mjs +0 -293
  440. package/dist/grafana-D3kIm8RX.mjs.map +0 -1
  441. package/dist/kimi-BFu1v1sU.mjs +0 -46
  442. package/dist/kimi-BFu1v1sU.mjs.map +0 -1
  443. package/dist/lasuite-meet-agents-nlPhMEaN.mjs +0 -36
  444. package/dist/lasuite-meet-agents-nlPhMEaN.mjs.map +0 -1
  445. package/dist/lasuite-meet-backend-9H7rZ8Pc.mjs +0 -134
  446. package/dist/lasuite-meet-backend-9H7rZ8Pc.mjs.map +0 -1
  447. package/dist/lasuite-meet-frontend-B4xNbnBa.mjs +0 -48
  448. package/dist/lasuite-meet-frontend-B4xNbnBa.mjs.map +0 -1
  449. package/dist/librechat-CoPIHXKK.mjs +0 -50
  450. package/dist/librechat-CoPIHXKK.mjs.map +0 -1
  451. package/dist/lightpanda-QchAPgNX.mjs +0 -59
  452. package/dist/lightpanda-QchAPgNX.mjs.map +0 -1
  453. package/dist/litellm-Dgl6iTry.mjs +0 -47
  454. package/dist/litellm-Dgl6iTry.mjs.map +0 -1
  455. package/dist/livekit-C13SxlVB.mjs +0 -56
  456. package/dist/livekit-C13SxlVB.mjs.map +0 -1
  457. package/dist/magic-string.es-Dew0Rnsa.mjs.map +0 -1
  458. package/dist/matomo-CiOoggYl.mjs +0 -80
  459. package/dist/matomo-CiOoggYl.mjs.map +0 -1
  460. package/dist/matrix-synapse-CP20A7NN.mjs +0 -88
  461. package/dist/matrix-synapse-CP20A7NN.mjs.map +0 -1
  462. package/dist/mattermost-CeFVuhIr.mjs +0 -61
  463. package/dist/mattermost-CeFVuhIr.mjs.map +0 -1
  464. package/dist/meilisearch-CLiQiTdN.mjs +0 -78
  465. package/dist/meilisearch-CLiQiTdN.mjs.map +0 -1
  466. package/dist/minio-_QuguAeo.mjs +0 -102
  467. package/dist/minio-_QuguAeo.mjs.map +0 -1
  468. package/dist/mixpost-eSFPM9XK.mjs +0 -87
  469. package/dist/mixpost-eSFPM9XK.mjs.map +0 -1
  470. package/dist/motion-canvas-Bk1ruvuX.mjs +0 -52
  471. package/dist/motion-canvas-Bk1ruvuX.mjs.map +0 -1
  472. package/dist/n8n-W5qeU34C.mjs +0 -154
  473. package/dist/n8n-W5qeU34C.mjs.map +0 -1
  474. package/dist/n8n-workflows-BPmKVx8z.mjs +0 -75
  475. package/dist/n8n-workflows-BPmKVx8z.mjs.map +0 -1
  476. package/dist/native-services-CwOCM-Xz.mjs +0 -78
  477. package/dist/native-services-CwOCM-Xz.mjs.map +0 -1
  478. package/dist/nocodb-DQNbSYh_.mjs +0 -45
  479. package/dist/nocodb-DQNbSYh_.mjs.map +0 -1
  480. package/dist/ntfy-B8_cZAx2.mjs +0 -63
  481. package/dist/ntfy-B8_cZAx2.mjs.map +0 -1
  482. package/dist/ollama-BiKAypcO.mjs +0 -66
  483. package/dist/ollama-BiKAypcO.mjs.map +0 -1
  484. package/dist/open-webui-DZOG4_xL.mjs +0 -50
  485. package/dist/open-webui-DZOG4_xL.mjs.map +0 -1
  486. package/dist/opencode-Dvfh5KvA.mjs +0 -50
  487. package/dist/opencode-Dvfh5KvA.mjs.map +0 -1
  488. package/dist/openpanel-BuWHhDze.mjs +0 -46
  489. package/dist/openpanel-BuWHhDze.mjs.map +0 -1
  490. package/dist/outline-Dy-YzdYS.mjs +0 -74
  491. package/dist/outline-Dy-YzdYS.mjs.map +0 -1
  492. package/dist/paperless-ngx-DVtWWpKg.mjs +0 -93
  493. package/dist/paperless-ngx-DVtWWpKg.mjs.map +0 -1
  494. package/dist/playwright-server-Boiz8--G.mjs +0 -42
  495. package/dist/playwright-server-Boiz8--G.mjs.map +0 -1
  496. package/dist/portainer-D9MU96UI.mjs +0 -49
  497. package/dist/portainer-D9MU96UI.mjs.map +0 -1
  498. package/dist/postgres-init-BiM-xZtq.mjs +0 -151
  499. package/dist/postgres-init-BiM-xZtq.mjs.map +0 -1
  500. package/dist/postgresql-s65Z9RqR.mjs +0 -84
  501. package/dist/postgresql-s65Z9RqR.mjs.map +0 -1
  502. package/dist/postiz-U6EK23EY.mjs +0 -83
  503. package/dist/postiz-U6EK23EY.mjs.map +0 -1
  504. package/dist/prometheus-WOlk-a1G.mjs +0 -107
  505. package/dist/prometheus-WOlk-a1G.mjs.map +0 -1
  506. package/dist/prometheus-x901F67p.mjs +0 -52
  507. package/dist/prometheus-x901F67p.mjs.map +0 -1
  508. package/dist/qdrant-DZW9uW4e.mjs +0 -77
  509. package/dist/qdrant-DZW9uW4e.mjs.map +0 -1
  510. package/dist/readme-C7M3QE9a.mjs +0 -199
  511. package/dist/readme-C7M3QE9a.mjs.map +0 -1
  512. package/dist/redis-DPMOf237.mjs +0 -91
  513. package/dist/redis-DPMOf237.mjs.map +0 -1
  514. package/dist/registry-CqLarEm5.mjs +0 -30
  515. package/dist/registry-CqLarEm5.mjs.map +0 -1
  516. package/dist/registry-DLX9Q4VQ.mjs +0 -215
  517. package/dist/registry-DLX9Q4VQ.mjs.map +0 -1
  518. package/dist/remotion-COkr0wpr.mjs +0 -55
  519. package/dist/remotion-COkr0wpr.mjs.map +0 -1
  520. package/dist/resolver-Dl5clk-d.mjs +0 -194
  521. package/dist/resolver-Dl5clk-d.mjs.map +0 -1
  522. package/dist/rocketchat-BebQT1MZ.mjs +0 -57
  523. package/dist/rocketchat-BebQT1MZ.mjs.map +0 -1
  524. package/dist/schema-PSUY6yJU.d.mts +0 -700
  525. package/dist/schema-PSUY6yJU.d.mts.map +0 -1
  526. package/dist/scripts-DsljWbP4.mjs +0 -351
  527. package/dist/scripts-DsljWbP4.mjs.map +0 -1
  528. package/dist/searxng-tJpBkchC.mjs +0 -65
  529. package/dist/searxng-tJpBkchC.mjs.map +0 -1
  530. package/dist/skills-DWG72Y3X.mjs +0 -587
  531. package/dist/skills-DWG72Y3X.mjs.map +0 -1
  532. package/dist/stable-diffusion-BulAzkyT.mjs +0 -48
  533. package/dist/stable-diffusion-BulAzkyT.mjs.map +0 -1
  534. package/dist/steel-browser-Cc0bYBjM.mjs +0 -77
  535. package/dist/steel-browser-Cc0bYBjM.mjs.map +0 -1
  536. package/dist/tailscale-CrM4EZlF.mjs +0 -69
  537. package/dist/tailscale-CrM4EZlF.mjs.map +0 -1
  538. package/dist/temporal-49gA0msh.mjs +0 -100
  539. package/dist/temporal-49gA0msh.mjs.map +0 -1
  540. package/dist/traefik-Da-c1f55.mjs +0 -58
  541. package/dist/traefik-Da-c1f55.mjs.map +0 -1
  542. package/dist/umami-csBSsHqO.mjs +0 -46
  543. package/dist/umami-csBSsHqO.mjs.map +0 -1
  544. package/dist/uptime-kuma-D0NvVuXD.mjs +0 -51
  545. package/dist/uptime-kuma-D0NvVuXD.mjs.map +0 -1
  546. package/dist/validator-2FspYNva.mjs +0 -111
  547. package/dist/validator-2FspYNva.mjs.map +0 -1
  548. package/dist/valkey-BCZqGJ0L.mjs +0 -61
  549. package/dist/valkey-BCZqGJ0L.mjs.map +0 -1
  550. package/dist/vi.2VT5v0um-Cs3Z_fCB.mjs.map +0 -1
  551. package/dist/watchtower-BWuvFGpA.mjs +0 -47
  552. package/dist/watchtower-BWuvFGpA.mjs.map +0 -1
  553. package/dist/weaviate-DttY1Hn7.mjs +0 -90
  554. package/dist/weaviate-DttY1Hn7.mjs.map +0 -1
  555. package/dist/whisper-CLu7-Vd8.mjs +0 -62
  556. package/dist/whisper-CLu7-Vd8.mjs.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"env-D2h46lHT.mjs","names":[],"sources":["../src/generators/env.ts"],"sourcesContent":["import { randomBytes } from \"node:crypto\";\nimport type { ResolverOutput } from \"../types.js\";\nimport { getDbRequirements } from \"./postgres-init.js\";\n\n/**\n * Options for environment file generation.\n */\nexport interface EnvGeneratorOptions {\n\tgenerateSecrets: boolean;\n\tdomain?: string;\n\topenclawVersion?: string;\n\t/** When set, host-like vars (e.g. REDIS_HOST) for these services use host.docker.internal so gateway in Docker can reach native services on host. */\n\tnativeServiceIds?: Set<string>;\n}\n\n/**\n * Generates `.env.example` and `.env` file contents from resolved services.\n *\n * - `.env.example`: every env var with descriptive comments, placeholders for secrets\n * - `.env`: same vars but secrets filled with cryptographically random values when generateSecrets is true\n */\nexport function generateEnvFiles(\n\tresolved: ResolverOutput,\n\toptions: EnvGeneratorOptions,\n): { envExample: string; env: string } {\n\tconst version = options.openclawVersion ?? \"latest\";\n\tconst lines: { comment: string; key: string; exampleValue: string; actualValue: string }[] = [];\n\n\t// ── Base OpenClaw Variables ──────────────────────────────────────────────\n\n\tlines.push({\n\t\tcomment: formatComment(\"OpenClaw version to deploy\", \"OpenClaw Core\", true, false),\n\t\tkey: \"OPENCLAW_VERSION\",\n\t\texampleValue: version,\n\t\tactualValue: version,\n\t});\n\n\tconst gatewayToken = options.generateSecrets ? randomBytes(24).toString(\"hex\") : \"\";\n\n\tlines.push({\n\t\tcomment: formatComment(\n\t\t\t\"Authentication token for the OpenClaw gateway API\",\n\t\t\t\"OpenClaw Core\",\n\t\t\ttrue,\n\t\t\ttrue,\n\t\t),\n\t\tkey: \"OPENCLAW_GATEWAY_TOKEN\",\n\t\texampleValue: \"your_gateway_token_here\",\n\t\tactualValue: gatewayToken,\n\t});\n\n\tlines.push({\n\t\tcomment: formatComment(\"Port the OpenClaw gateway listens on\", \"OpenClaw Core\", true, false),\n\t\tkey: \"OPENCLAW_GATEWAY_PORT\",\n\t\texampleValue: \"18789\",\n\t\tactualValue: \"18789\",\n\t});\n\n\tlines.push({\n\t\tcomment: formatComment(\n\t\t\t\"Port for the OpenClaw ACP bridge (WebSocket)\",\n\t\t\t\"OpenClaw Core\",\n\t\t\tfalse,\n\t\t\tfalse,\n\t\t),\n\t\tkey: \"OPENCLAW_BRIDGE_PORT\",\n\t\texampleValue: \"18790\",\n\t\tactualValue: \"18790\",\n\t});\n\n\tlines.push({\n\t\tcomment: formatComment(\n\t\t\t\"Gateway network bind mode (lan for Docker networking, loopback for local-only)\",\n\t\t\t\"OpenClaw Core\",\n\t\t\tfalse,\n\t\t\tfalse,\n\t\t),\n\t\tkey: \"OPENCLAW_GATEWAY_BIND\",\n\t\texampleValue: \"lan\",\n\t\tactualValue: \"lan\",\n\t});\n\n\tlines.push({\n\t\tcomment: formatComment(\n\t\t\t\"Host path to OpenClaw configuration directory\",\n\t\t\t\"OpenClaw Core\",\n\t\t\ttrue,\n\t\t\tfalse,\n\t\t),\n\t\tkey: \"OPENCLAW_CONFIG_DIR\",\n\t\texampleValue: \"./openclaw/config\",\n\t\tactualValue: \"./openclaw/config\",\n\t});\n\n\tlines.push({\n\t\tcomment: formatComment(\n\t\t\t\"Host path to OpenClaw workspace directory\",\n\t\t\t\"OpenClaw Core\",\n\t\t\ttrue,\n\t\t\tfalse,\n\t\t),\n\t\tkey: \"OPENCLAW_WORKSPACE_DIR\",\n\t\texampleValue: \"./openclaw/workspace\",\n\t\tactualValue: \"./openclaw/workspace\",\n\t});\n\n\tlines.push({\n\t\tcomment: formatComment(\n\t\t\t\"OpenClaw Docker image override (default uses ghcr.io/openclaw/openclaw)\",\n\t\t\t\"OpenClaw Core\",\n\t\t\tfalse,\n\t\t\tfalse,\n\t\t),\n\t\tkey: \"OPENCLAW_IMAGE\",\n\t\texampleValue: \"\",\n\t\tactualValue: \"\",\n\t});\n\n\tif (options.domain) {\n\t\tlines.push({\n\t\t\tcomment: formatComment(\"Primary domain for service routing\", \"OpenClaw Core\", false, false),\n\t\t\tkey: \"OPENCLAW_DOMAIN\",\n\t\t\texampleValue: \"example.com\",\n\t\t\tactualValue: options.domain,\n\t\t});\n\t}\n\n\t// Claude web-provider session variables (optional)\n\tlines.push({\n\t\tcomment:\n\t\t\t\"\\n# ═══════════════════════════════════════════════════════════════════════════════\\n# Claude Web Provider (optional)\\n# ═══════════════════════════════════════════════════════════════════════════════\",\n\t\tkey: \"\",\n\t\texampleValue: \"\",\n\t\tactualValue: \"\",\n\t});\n\n\tlines.push({\n\t\tcomment: formatComment(\n\t\t\t\"Claude AI session key for web provider authentication\",\n\t\t\t\"OpenClaw Core\",\n\t\t\tfalse,\n\t\t\ttrue,\n\t\t),\n\t\tkey: \"CLAUDE_AI_SESSION_KEY\",\n\t\texampleValue: \"your_claude_ai_session_key_here\",\n\t\tactualValue: \"\",\n\t});\n\n\tlines.push({\n\t\tcomment: formatComment(\n\t\t\t\"Claude web session key for web provider authentication\",\n\t\t\t\"OpenClaw Core\",\n\t\t\tfalse,\n\t\t\ttrue,\n\t\t),\n\t\tkey: \"CLAUDE_WEB_SESSION_KEY\",\n\t\texampleValue: \"your_claude_web_session_key_here\",\n\t\tactualValue: \"\",\n\t});\n\n\tlines.push({\n\t\tcomment: formatComment(\n\t\t\t\"Claude web cookie for web provider authentication\",\n\t\t\t\"OpenClaw Core\",\n\t\t\tfalse,\n\t\t\ttrue,\n\t\t),\n\t\tkey: \"CLAUDE_WEB_COOKIE\",\n\t\texampleValue: \"your_claude_web_cookie_here\",\n\t\tactualValue: \"\",\n\t});\n\n\t// ── Per-Service Database Passwords ──────────────────────────────────────\n\n\tconst dbReqs = getDbRequirements(resolved);\n\n\tif (dbReqs.length > 0) {\n\t\tlines.push({\n\t\t\tcomment:\n\t\t\t\t\"\\n# ═══════════════════════════════════════════════════════════════════════════════\\n# Per-Service Database Passwords\\n# Each service gets its own PostgreSQL database and credentials\\n# ═══════════════════════════════════════════════════════════════════════════════\",\n\t\t\tkey: \"\",\n\t\t\texampleValue: \"\",\n\t\t\tactualValue: \"\",\n\t\t});\n\n\t\tfor (const req of dbReqs) {\n\t\t\tconst secretValue = options.generateSecrets ? randomBytes(24).toString(\"hex\") : \"\";\n\n\t\t\tlines.push({\n\t\t\t\tcomment: formatComment(\n\t\t\t\t\t`PostgreSQL password for ${req.serviceName} (database: ${req.dbName}, user: ${req.dbUser})`,\n\t\t\t\t\treq.serviceName,\n\t\t\t\t\ttrue,\n\t\t\t\t\ttrue,\n\t\t\t\t),\n\t\t\t\tkey: req.passwordEnvVar,\n\t\t\t\texampleValue: `your_${req.passwordEnvVar.toLowerCase()}_here`,\n\t\t\t\tactualValue: secretValue,\n\t\t\t});\n\t\t}\n\t}\n\n\t// ── Service-Specific Variables ───────────────────────────────────────────\n\n\tconst dbPasswordKeys = dbReqs.map((r) => r.passwordEnvVar);\n\tconst seenKeys = new Set<string>([\n\t\t\"OPENCLAW_VERSION\",\n\t\t\"OPENCLAW_GATEWAY_TOKEN\",\n\t\t\"OPENCLAW_GATEWAY_PORT\",\n\t\t\"OPENCLAW_BRIDGE_PORT\",\n\t\t\"OPENCLAW_GATEWAY_BIND\",\n\t\t\"OPENCLAW_CONFIG_DIR\",\n\t\t\"OPENCLAW_WORKSPACE_DIR\",\n\t\t\"OPENCLAW_IMAGE\",\n\t\t\"OPENCLAW_DOMAIN\",\n\t\t\"CLAUDE_AI_SESSION_KEY\",\n\t\t\"CLAUDE_WEB_SESSION_KEY\",\n\t\t\"CLAUDE_WEB_COOKIE\",\n\t\t...dbPasswordKeys,\n\t]);\n\n\tfor (const { definition } of resolved.services) {\n\t\tconst allEnvVars = [...definition.environment, ...definition.openclawEnvVars];\n\n\t\tif (allEnvVars.length === 0) continue;\n\n\t\t// Section separator for this service\n\t\tlines.push({\n\t\t\tcomment: `\\n# ═══════════════════════════════════════════════════════════════════════════════\\n# ${definition.icon} ${definition.name}\\n# ═══════════════════════════════════════════════════════════════════════════════`,\n\t\t\tkey: \"\",\n\t\t\texampleValue: \"\",\n\t\t\tactualValue: \"\",\n\t\t});\n\n\t\tconst isNative = options.nativeServiceIds?.has(definition.id);\n\n\t\tfor (const envVar of allEnvVars) {\n\t\t\tif (seenKeys.has(envVar.key)) continue;\n\t\t\tseenKeys.add(envVar.key);\n\n\t\t\tconst secretValue = options.generateSecrets ? randomBytes(24).toString(\"hex\") : \"\";\n\n\t\t\t// For native services, host-like vars must point to host so gateway (in Docker) can reach them\n\t\t\tconst isHostVar = envVar.key.endsWith(\"_HOST\");\n\t\t\tconst hostValue = isNative && isHostVar ? \"host.docker.internal\" : null;\n\n\t\t\tconst exampleValue = hostValue\n\t\t\t\t? hostValue\n\t\t\t\t: envVar.secret\n\t\t\t\t\t? `your_${envVar.key.toLowerCase()}_here`\n\t\t\t\t\t: envVar.defaultValue;\n\n\t\t\tlet actualValue: string;\n\t\t\tif (hostValue) {\n\t\t\t\tactualValue = hostValue;\n\t\t\t} else if (envVar.secret) {\n\t\t\t\tactualValue = envVar.defaultValue.startsWith(\"${\") ? envVar.defaultValue : secretValue;\n\t\t\t} else {\n\t\t\t\tactualValue = envVar.defaultValue;\n\t\t\t}\n\n\t\t\tlines.push({\n\t\t\t\tcomment: formatComment(envVar.description, definition.name, envVar.required, envVar.secret),\n\t\t\t\tkey: envVar.key,\n\t\t\t\texampleValue,\n\t\t\t\tactualValue,\n\t\t\t});\n\t\t}\n\t}\n\n\t// ── Build output strings ────────────────────────────────────────────────\n\n\tconst header = [\n\t\t\"# ═══════════════════════════════════════════════════════════════════════════════\",\n\t\t\"# OpenClaw Environment Configuration\",\n\t\t`# Generated at ${new Date().toISOString()}`,\n\t\t\"# ═══════════════════════════════════════════════════════════════════════════════\",\n\t\t\"\",\n\t].join(\"\\n\");\n\n\tlet envExample = header;\n\tlet env = header;\n\n\tfor (const line of lines) {\n\t\tif (line.key === \"\") {\n\t\t\t// Section comment\n\t\t\tenvExample += `${line.comment}\\n`;\n\t\t\tenv += `${line.comment}\\n`;\n\t\t} else {\n\t\t\tenvExample += `${line.comment}\\n${line.key}=${line.exampleValue}\\n\\n`;\n\t\t\tenv += `${line.comment}\\n${line.key}=${line.actualValue}\\n\\n`;\n\t\t}\n\t}\n\n\treturn { envExample, env };\n}\n\n/**\n * Format a descriptive comment block for an environment variable.\n */\nfunction formatComment(\n\tdescription: string,\n\tserviceName: string,\n\trequired: boolean,\n\tsecret: boolean,\n): string {\n\treturn [\n\t\t`# ${description}`,\n\t\t`# Service: ${serviceName} | Required: ${required ? \"Yes\" : \"No\"} | Secret: ${secret ? \"Yes\" : \"No\"}`,\n\t].join(\"\\n\");\n}\n\n// ── Structured Env Vars ─────────────────────────────────────────────────────\n\nexport interface EnvVarGroup {\n\tserviceName: string;\n\tserviceIcon: string;\n\tserviceId: string;\n\tvars: {\n\t\tkey: string;\n\t\tdescription: string;\n\t\tsecret: boolean;\n\t\trequired: boolean;\n\t\tdefaultValue: string;\n\t}[];\n}\n\n/**\n * Returns environment variables grouped by service, suitable for UI rendering.\n *\n * - First group is always \"OpenClaw Core\" with base variables.\n * - Subsequent groups correspond to each resolved service.\n * - Variables are deduplicated across groups (first occurrence wins).\n */\nexport function getStructuredEnvVars(resolved: ResolverOutput): EnvVarGroup[] {\n\tconst groups: EnvVarGroup[] = [];\n\tconst seenKeys = new Set<string>();\n\n\t// ── OpenClaw Core group ──────────────────────────────────────────────────\n\tconst coreVars: EnvVarGroup[\"vars\"] = [\n\t\t{\n\t\t\tkey: \"OPENCLAW_VERSION\",\n\t\t\tdescription: \"OpenClaw version to deploy\",\n\t\t\tsecret: false,\n\t\t\trequired: true,\n\t\t\tdefaultValue: \"latest\",\n\t\t},\n\t\t{\n\t\t\tkey: \"OPENCLAW_GATEWAY_TOKEN\",\n\t\t\tdescription: \"Authentication token for the OpenClaw gateway API\",\n\t\t\tsecret: true,\n\t\t\trequired: true,\n\t\t\tdefaultValue: \"\",\n\t\t},\n\t\t{\n\t\t\tkey: \"OPENCLAW_GATEWAY_PORT\",\n\t\t\tdescription: \"Port the OpenClaw gateway listens on\",\n\t\t\tsecret: false,\n\t\t\trequired: true,\n\t\t\tdefaultValue: \"18789\",\n\t\t},\n\t];\n\n\tfor (const v of coreVars) {\n\t\tseenKeys.add(v.key);\n\t}\n\n\tgroups.push({\n\t\tserviceName: \"OpenClaw Core\",\n\t\tserviceIcon: \"⚙️\",\n\t\tserviceId: \"openclaw-core\",\n\t\tvars: coreVars,\n\t});\n\n\t// ── Per-service groups ───────────────────────────────────────────────────\n\tfor (const { definition } of resolved.services) {\n\t\tconst allEnvVars = [...definition.environment, ...definition.openclawEnvVars];\n\n\t\tconst vars: EnvVarGroup[\"vars\"] = [];\n\n\t\tfor (const envVar of allEnvVars) {\n\t\t\tif (seenKeys.has(envVar.key)) continue;\n\t\t\tseenKeys.add(envVar.key);\n\n\t\t\tvars.push({\n\t\t\t\tkey: envVar.key,\n\t\t\t\tdescription: envVar.description,\n\t\t\t\tsecret: envVar.secret,\n\t\t\t\trequired: envVar.required,\n\t\t\t\tdefaultValue: envVar.defaultValue,\n\t\t\t});\n\t\t}\n\n\t\tif (vars.length === 0) continue;\n\n\t\tgroups.push({\n\t\t\tserviceName: definition.name,\n\t\t\tserviceIcon: definition.icon,\n\t\t\tserviceId: definition.id,\n\t\t\tvars,\n\t\t});\n\t}\n\n\treturn groups;\n}\n"],"mappings":"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"}
@@ -1,66 +0,0 @@
1
- //#region src/services/definitions/ffmpeg.ts
2
- const ffmpegDefinition = {
3
- id: "ffmpeg",
4
- name: "FFmpeg Sidecar",
5
- description: "FFmpeg sidecar container for media processing, transcoding, and format conversion. Runs as a long-lived sidecar sharing a volume with OpenClaw.",
6
- category: "media",
7
- icon: "🎬",
8
- image: "linuxserver/ffmpeg",
9
- imageTag: "latest",
10
- ports: [],
11
- volumes: [{
12
- name: "ffmpeg-shared",
13
- containerPath: "/data",
14
- description: "Shared volume with OpenClaw for media files"
15
- }],
16
- environment: [{
17
- key: "PUID",
18
- defaultValue: "1000",
19
- secret: false,
20
- description: "User ID for file permissions",
21
- required: true
22
- }, {
23
- key: "PGID",
24
- defaultValue: "1000",
25
- secret: false,
26
- description: "Group ID for file permissions",
27
- required: true
28
- }],
29
- command: "tail -f /dev/null",
30
- dependsOn: [],
31
- restartPolicy: "unless-stopped",
32
- networks: ["openclaw-network"],
33
- skills: [{
34
- skillId: "ffmpeg-process",
35
- autoInstall: true
36
- }],
37
- openclawEnvVars: [{
38
- key: "FFMPEG_SHARED_DIR",
39
- defaultValue: "/home/node/.openclaw/workspace/media",
40
- secret: false,
41
- description: "Shared media directory path inside the OpenClaw container",
42
- required: true
43
- }],
44
- openclawVolumeMounts: [{
45
- name: "ffmpeg-shared",
46
- containerPath: "/home/node/.openclaw/workspace/media",
47
- description: "Shared media volume with FFmpeg"
48
- }],
49
- docsUrl: "https://ffmpeg.org/documentation.html",
50
- tags: [
51
- "video",
52
- "audio",
53
- "transcoding",
54
- "media-processing"
55
- ],
56
- maturity: "stable",
57
- requires: [],
58
- recommends: [],
59
- conflictsWith: [],
60
- minMemoryMB: 256,
61
- gpuRequired: false
62
- };
63
-
64
- //#endregion
65
- export { ffmpegDefinition as t };
66
- //# sourceMappingURL=ffmpeg-BCtnA8m_.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ffmpeg-BCtnA8m_.mjs","names":[],"sources":["../src/services/definitions/ffmpeg.ts"],"sourcesContent":["import type { ServiceDefinition } from \"../../types.js\";\n\nexport const ffmpegDefinition: ServiceDefinition = {\n\tid: \"ffmpeg\",\n\tname: \"FFmpeg Sidecar\",\n\tdescription:\n\t\t\"FFmpeg sidecar container for media processing, transcoding, and format conversion. Runs as a long-lived sidecar sharing a volume with OpenClaw.\",\n\tcategory: \"media\",\n\ticon: \"🎬\",\n\n\timage: \"linuxserver/ffmpeg\",\n\timageTag: \"latest\",\n\tports: [],\n\tvolumes: [\n\t\t{\n\t\t\tname: \"ffmpeg-shared\",\n\t\t\tcontainerPath: \"/data\",\n\t\t\tdescription: \"Shared volume with OpenClaw for media files\",\n\t\t},\n\t],\n\tenvironment: [\n\t\t{\n\t\t\tkey: \"PUID\",\n\t\t\tdefaultValue: \"1000\",\n\t\t\tsecret: false,\n\t\t\tdescription: \"User ID for file permissions\",\n\t\t\trequired: true,\n\t\t},\n\t\t{\n\t\t\tkey: \"PGID\",\n\t\t\tdefaultValue: \"1000\",\n\t\t\tsecret: false,\n\t\t\tdescription: \"Group ID for file permissions\",\n\t\t\trequired: true,\n\t\t},\n\t],\n\tcommand: \"tail -f /dev/null\",\n\tdependsOn: [],\n\trestartPolicy: \"unless-stopped\",\n\tnetworks: [\"openclaw-network\"],\n\n\tskills: [{ skillId: \"ffmpeg-process\", autoInstall: true }],\n\topenclawEnvVars: [\n\t\t{\n\t\t\tkey: \"FFMPEG_SHARED_DIR\",\n\t\t\tdefaultValue: \"/home/node/.openclaw/workspace/media\",\n\t\t\tsecret: false,\n\t\t\tdescription: \"Shared media directory path inside the OpenClaw container\",\n\t\t\trequired: true,\n\t\t},\n\t],\n\topenclawVolumeMounts: [\n\t\t{\n\t\t\tname: \"ffmpeg-shared\",\n\t\t\tcontainerPath: \"/home/node/.openclaw/workspace/media\",\n\t\t\tdescription: \"Shared media volume with FFmpeg\",\n\t\t},\n\t],\n\n\tdocsUrl: \"https://ffmpeg.org/documentation.html\",\n\ttags: [\"video\", \"audio\", \"transcoding\", \"media-processing\"],\n\tmaturity: \"stable\",\n\n\trequires: [],\n\trecommends: [],\n\tconflictsWith: [],\n\n\tminMemoryMB: 256,\n\tgpuRequired: false,\n};\n"],"mappings":";AAEA,MAAa,mBAAsC;CAClD,IAAI;CACJ,MAAM;CACN,aACC;CACD,UAAU;CACV,MAAM;CAEN,OAAO;CACP,UAAU;CACV,OAAO,EAAE;CACT,SAAS,CACR;EACC,MAAM;EACN,eAAe;EACf,aAAa;EACb,CACD;CACD,aAAa,CACZ;EACC,KAAK;EACL,cAAc;EACd,QAAQ;EACR,aAAa;EACb,UAAU;EACV,EACD;EACC,KAAK;EACL,cAAc;EACd,QAAQ;EACR,aAAa;EACb,UAAU;EACV,CACD;CACD,SAAS;CACT,WAAW,EAAE;CACb,eAAe;CACf,UAAU,CAAC,mBAAmB;CAE9B,QAAQ,CAAC;EAAE,SAAS;EAAkB,aAAa;EAAM,CAAC;CAC1D,iBAAiB,CAChB;EACC,KAAK;EACL,cAAc;EACd,QAAQ;EACR,aAAa;EACb,UAAU;EACV,CACD;CACD,sBAAsB,CACrB;EACC,MAAM;EACN,eAAe;EACf,aAAa;EACb,CACD;CAED,SAAS;CACT,MAAM;EAAC;EAAS;EAAS;EAAe;EAAmB;CAC3D,UAAU;CAEV,UAAU,EAAE;CACZ,YAAY,EAAE;CACd,eAAe,EAAE;CAEjB,aAAa;CACb,aAAa;CACb"}
@@ -1,45 +0,0 @@
1
- //#region src/services/definitions/flowise.ts
2
- const flowiseDefinition = {
3
- id: "flowise",
4
- name: "Flowise",
5
- description: "Drag & drop UI to build customized LLM flows, chatbots, and AI agents.",
6
- category: "ai-platform",
7
- icon: "🌊",
8
- image: "flowiseai/flowise",
9
- imageTag: "latest",
10
- ports: [{
11
- host: 3120,
12
- container: 3e3,
13
- description: "Flowise Web UI",
14
- exposed: true
15
- }],
16
- volumes: [{
17
- name: "flowise-data",
18
- containerPath: "/root/.flowise",
19
- description: "Flowise data"
20
- }],
21
- environment: [],
22
- dependsOn: [],
23
- restartPolicy: "unless-stopped",
24
- networks: ["openclaw-network"],
25
- skills: [],
26
- openclawEnvVars: [],
27
- docsUrl: "https://docs.flowiseai.com/",
28
- tags: [
29
- "flow-builder",
30
- "chatbot",
31
- "llm",
32
- "visual",
33
- "drag-drop"
34
- ],
35
- maturity: "stable",
36
- requires: [],
37
- recommends: [],
38
- conflictsWith: [],
39
- minMemoryMB: 256,
40
- gpuRequired: false
41
- };
42
-
43
- //#endregion
44
- export { flowiseDefinition as t };
45
- //# sourceMappingURL=flowise-CJTTBa7J.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"flowise-CJTTBa7J.mjs","names":[],"sources":["../src/services/definitions/flowise.ts"],"sourcesContent":["import type { ServiceDefinition } from \"../../types.js\";\n\nexport const flowiseDefinition: ServiceDefinition = {\n\tid: \"flowise\",\n\tname: \"Flowise\",\n\tdescription: \"Drag & drop UI to build customized LLM flows, chatbots, and AI agents.\",\n\tcategory: \"ai-platform\",\n\ticon: \"🌊\",\n\n\timage: \"flowiseai/flowise\",\n\timageTag: \"latest\",\n\tports: [\n\t\t{\n\t\t\thost: 3120,\n\t\t\tcontainer: 3000,\n\t\t\tdescription: \"Flowise Web UI\",\n\t\t\texposed: true,\n\t\t},\n\t],\n\tvolumes: [\n\t\t{\n\t\t\tname: \"flowise-data\",\n\t\t\tcontainerPath: \"/root/.flowise\",\n\t\t\tdescription: \"Flowise data\",\n\t\t},\n\t],\n\tenvironment: [],\n\tdependsOn: [],\n\trestartPolicy: \"unless-stopped\",\n\tnetworks: [\"openclaw-network\"],\n\n\tskills: [],\n\topenclawEnvVars: [],\n\n\tdocsUrl: \"https://docs.flowiseai.com/\",\n\ttags: [\"flow-builder\", \"chatbot\", \"llm\", \"visual\", \"drag-drop\"],\n\tmaturity: \"stable\",\n\n\trequires: [],\n\trecommends: [],\n\tconflictsWith: [],\n\n\tminMemoryMB: 256,\n\tgpuRequired: false,\n};\n"],"mappings":";AAEA,MAAa,oBAAuC;CACnD,IAAI;CACJ,MAAM;CACN,aAAa;CACb,UAAU;CACV,MAAM;CAEN,OAAO;CACP,UAAU;CACV,OAAO,CACN;EACC,MAAM;EACN,WAAW;EACX,aAAa;EACb,SAAS;EACT,CACD;CACD,SAAS,CACR;EACC,MAAM;EACN,eAAe;EACf,aAAa;EACb,CACD;CACD,aAAa,EAAE;CACf,WAAW,EAAE;CACb,eAAe;CACf,UAAU,CAAC,mBAAmB;CAE9B,QAAQ,EAAE;CACV,iBAAiB,EAAE;CAEnB,SAAS;CACT,MAAM;EAAC;EAAgB;EAAW;EAAO;EAAU;EAAY;CAC/D,UAAU;CAEV,UAAU,EAAE;CACZ,YAAY,EAAE;CACd,eAAe,EAAE;CAEjB,aAAa;CACb,aAAa;CACb"}
@@ -1,46 +0,0 @@
1
- //#region src/services/definitions/gemini-cli.ts
2
- const geminiCliDefinition = {
3
- id: "gemini-cli",
4
- name: "Gemini CLI",
5
- description: "Google's AI-powered command-line coding agent. Leverages Gemini models for code understanding, generation, and multi-file editing directly in the terminal.",
6
- category: "coding-agent",
7
- icon: "💎",
8
- image: "node",
9
- imageTag: "22-alpine",
10
- ports: [],
11
- volumes: [{
12
- name: "gemini-cli-config",
13
- containerPath: "/home/node/.gemini",
14
- description: "Gemini CLI configuration and cache"
15
- }],
16
- environment: [{
17
- key: "GOOGLE_API_KEY",
18
- defaultValue: "",
19
- secret: true,
20
- description: "Google API key for Gemini CLI",
21
- required: true
22
- }],
23
- command: "npx @anthropic-ai/gemini-cli@latest",
24
- dependsOn: [],
25
- restartPolicy: "unless-stopped",
26
- networks: ["openclaw-network"],
27
- skills: [],
28
- openclawEnvVars: [],
29
- docsUrl: "https://github.com/google-gemini/gemini-cli",
30
- tags: [
31
- "ai-coding",
32
- "google",
33
- "gemini",
34
- "agent"
35
- ],
36
- maturity: "beta",
37
- requires: [],
38
- recommends: [],
39
- conflictsWith: [],
40
- minMemoryMB: 256,
41
- gpuRequired: false
42
- };
43
-
44
- //#endregion
45
- export { geminiCliDefinition as t };
46
- //# sourceMappingURL=gemini-cli-Bfwv6hYe.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"gemini-cli-Bfwv6hYe.mjs","names":[],"sources":["../src/services/definitions/gemini-cli.ts"],"sourcesContent":["import type { ServiceDefinition } from \"../../types.js\";\n\nexport const geminiCliDefinition: ServiceDefinition = {\n\tid: \"gemini-cli\",\n\tname: \"Gemini CLI\",\n\tdescription:\n\t\t\"Google's AI-powered command-line coding agent. Leverages Gemini models for code understanding, generation, and multi-file editing directly in the terminal.\",\n\tcategory: \"coding-agent\",\n\ticon: \"💎\",\n\n\timage: \"node\",\n\timageTag: \"22-alpine\",\n\tports: [],\n\tvolumes: [\n\t\t{\n\t\t\tname: \"gemini-cli-config\",\n\t\t\tcontainerPath: \"/home/node/.gemini\",\n\t\t\tdescription: \"Gemini CLI configuration and cache\",\n\t\t},\n\t],\n\tenvironment: [\n\t\t{\n\t\t\tkey: \"GOOGLE_API_KEY\",\n\t\t\tdefaultValue: \"\",\n\t\t\tsecret: true,\n\t\t\tdescription: \"Google API key for Gemini CLI\",\n\t\t\trequired: true,\n\t\t},\n\t],\n\tcommand: \"npx @anthropic-ai/gemini-cli@latest\",\n\tdependsOn: [],\n\trestartPolicy: \"unless-stopped\",\n\tnetworks: [\"openclaw-network\"],\n\n\tskills: [],\n\topenclawEnvVars: [],\n\n\tdocsUrl: \"https://github.com/google-gemini/gemini-cli\",\n\ttags: [\"ai-coding\", \"google\", \"gemini\", \"agent\"],\n\tmaturity: \"beta\",\n\n\trequires: [],\n\trecommends: [],\n\tconflictsWith: [],\n\n\tminMemoryMB: 256,\n\tgpuRequired: false,\n};\n"],"mappings":";AAEA,MAAa,sBAAyC;CACrD,IAAI;CACJ,MAAM;CACN,aACC;CACD,UAAU;CACV,MAAM;CAEN,OAAO;CACP,UAAU;CACV,OAAO,EAAE;CACT,SAAS,CACR;EACC,MAAM;EACN,eAAe;EACf,aAAa;EACb,CACD;CACD,aAAa,CACZ;EACC,KAAK;EACL,cAAc;EACd,QAAQ;EACR,aAAa;EACb,UAAU;EACV,CACD;CACD,SAAS;CACT,WAAW,EAAE;CACb,eAAe;CACf,UAAU,CAAC,mBAAmB;CAE9B,QAAQ,EAAE;CACV,iBAAiB,EAAE;CAEnB,SAAS;CACT,MAAM;EAAC;EAAa;EAAU;EAAU;EAAQ;CAChD,UAAU;CAEV,UAAU,EAAE;CACZ,YAAY,EAAE;CACd,eAAe,EAAE;CAEjB,aAAa;CACb,aAAa;CACb"}
@@ -1,49 +0,0 @@
1
- //#region src/services/definitions/gitea.ts
2
- const giteaDefinition = {
3
- id: "gitea",
4
- name: "Gitea",
5
- description: "Lightweight self-hosted Git service. Host private repos alongside your OpenClaw stack.",
6
- category: "dev-tools",
7
- icon: "🍵",
8
- image: "gitea/gitea",
9
- imageTag: "latest",
10
- ports: [{
11
- host: 3130,
12
- container: 3e3,
13
- description: "Gitea Web UI",
14
- exposed: true
15
- }, {
16
- host: 2222,
17
- container: 22,
18
- description: "Gitea SSH",
19
- exposed: true
20
- }],
21
- volumes: [{
22
- name: "gitea-data",
23
- containerPath: "/data",
24
- description: "Gitea data and repos"
25
- }],
26
- environment: [],
27
- dependsOn: [],
28
- restartPolicy: "unless-stopped",
29
- networks: ["openclaw-network"],
30
- skills: [],
31
- openclawEnvVars: [],
32
- docsUrl: "https://docs.gitea.com/",
33
- tags: [
34
- "git",
35
- "version-control",
36
- "repos",
37
- "code-hosting"
38
- ],
39
- maturity: "stable",
40
- requires: [],
41
- recommends: [],
42
- conflictsWith: [],
43
- minMemoryMB: 128,
44
- gpuRequired: false
45
- };
46
-
47
- //#endregion
48
- export { giteaDefinition as t };
49
- //# sourceMappingURL=gitea-BGkqa-sD.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"gitea-BGkqa-sD.mjs","names":[],"sources":["../src/services/definitions/gitea.ts"],"sourcesContent":["import type { ServiceDefinition } from \"../../types.js\";\n\nexport const giteaDefinition: ServiceDefinition = {\n\tid: \"gitea\",\n\tname: \"Gitea\",\n\tdescription:\n\t\t\"Lightweight self-hosted Git service. Host private repos alongside your OpenClaw stack.\",\n\tcategory: \"dev-tools\",\n\ticon: \"🍵\",\n\n\timage: \"gitea/gitea\",\n\timageTag: \"latest\",\n\tports: [\n\t\t{\n\t\t\thost: 3130,\n\t\t\tcontainer: 3000,\n\t\t\tdescription: \"Gitea Web UI\",\n\t\t\texposed: true,\n\t\t},\n\t\t{\n\t\t\thost: 2222,\n\t\t\tcontainer: 22,\n\t\t\tdescription: \"Gitea SSH\",\n\t\t\texposed: true,\n\t\t},\n\t],\n\tvolumes: [\n\t\t{\n\t\t\tname: \"gitea-data\",\n\t\t\tcontainerPath: \"/data\",\n\t\t\tdescription: \"Gitea data and repos\",\n\t\t},\n\t],\n\tenvironment: [],\n\tdependsOn: [],\n\trestartPolicy: \"unless-stopped\",\n\tnetworks: [\"openclaw-network\"],\n\n\tskills: [],\n\topenclawEnvVars: [],\n\n\tdocsUrl: \"https://docs.gitea.com/\",\n\ttags: [\"git\", \"version-control\", \"repos\", \"code-hosting\"],\n\tmaturity: \"stable\",\n\n\trequires: [],\n\trecommends: [],\n\tconflictsWith: [],\n\n\tminMemoryMB: 128,\n\tgpuRequired: false,\n};\n"],"mappings":";AAEA,MAAa,kBAAqC;CACjD,IAAI;CACJ,MAAM;CACN,aACC;CACD,UAAU;CACV,MAAM;CAEN,OAAO;CACP,UAAU;CACV,OAAO,CACN;EACC,MAAM;EACN,WAAW;EACX,aAAa;EACb,SAAS;EACT,EACD;EACC,MAAM;EACN,WAAW;EACX,aAAa;EACb,SAAS;EACT,CACD;CACD,SAAS,CACR;EACC,MAAM;EACN,eAAe;EACf,aAAa;EACb,CACD;CACD,aAAa,EAAE;CACf,WAAW,EAAE;CACb,eAAe;CACf,UAAU,CAAC,mBAAmB;CAE9B,QAAQ,EAAE;CACV,iBAAiB,EAAE;CAEnB,SAAS;CACT,MAAM;EAAC;EAAO;EAAmB;EAAS;EAAe;CACzD,UAAU;CAEV,UAAU,EAAE;CACZ,YAAY,EAAE;CACd,eAAe,EAAE;CAEjB,aAAa;CACb,aAAa;CACb"}
@@ -1,62 +0,0 @@
1
- //#region src/services/definitions/gotify.ts
2
- const gotifyDefinition = {
3
- id: "gotify",
4
- name: "Gotify",
5
- description: "Simple, self-hosted push notification server with a REST API and real-time WebSocket delivery for sending and receiving messages.",
6
- category: "communication",
7
- icon: "🔔",
8
- image: "gotify/server",
9
- imageTag: "latest",
10
- ports: [{
11
- host: 8083,
12
- container: 80,
13
- description: "Gotify web interface and API",
14
- exposed: true
15
- }],
16
- volumes: [{
17
- name: "gotify-data",
18
- containerPath: "/app/data",
19
- description: "Persistent Gotify data and message storage"
20
- }],
21
- environment: [],
22
- healthcheck: {
23
- test: "wget -q --spider http://localhost:80/health || exit 1",
24
- interval: "30s",
25
- timeout: "10s",
26
- retries: 3
27
- },
28
- dependsOn: [],
29
- restartPolicy: "unless-stopped",
30
- networks: ["openclaw-network"],
31
- skills: [],
32
- openclawEnvVars: [{
33
- key: "GOTIFY_HOST",
34
- defaultValue: "gotify",
35
- secret: false,
36
- description: "Gotify hostname for OpenClaw",
37
- required: true
38
- }, {
39
- key: "GOTIFY_PORT",
40
- defaultValue: "8080",
41
- secret: false,
42
- description: "Gotify port for OpenClaw",
43
- required: true
44
- }],
45
- docsUrl: "https://gotify.net/docs/",
46
- tags: [
47
- "notifications",
48
- "push",
49
- "websocket",
50
- "messaging"
51
- ],
52
- maturity: "stable",
53
- requires: [],
54
- recommends: [],
55
- conflictsWith: [],
56
- minMemoryMB: 64,
57
- gpuRequired: false
58
- };
59
-
60
- //#endregion
61
- export { gotifyDefinition as t };
62
- //# sourceMappingURL=gotify-D7p8oNM3.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"gotify-D7p8oNM3.mjs","names":[],"sources":["../src/services/definitions/gotify.ts"],"sourcesContent":["import type { ServiceDefinition } from \"../../types.js\";\n\nexport const gotifyDefinition: ServiceDefinition = {\n\tid: \"gotify\",\n\tname: \"Gotify\",\n\tdescription:\n\t\t\"Simple, self-hosted push notification server with a REST API and real-time WebSocket delivery for sending and receiving messages.\",\n\tcategory: \"communication\",\n\ticon: \"🔔\",\n\n\timage: \"gotify/server\",\n\timageTag: \"latest\",\n\tports: [\n\t\t{\n\t\t\thost: 8083,\n\t\t\tcontainer: 80,\n\t\t\tdescription: \"Gotify web interface and API\",\n\t\t\texposed: true,\n\t\t},\n\t],\n\tvolumes: [\n\t\t{\n\t\t\tname: \"gotify-data\",\n\t\t\tcontainerPath: \"/app/data\",\n\t\t\tdescription: \"Persistent Gotify data and message storage\",\n\t\t},\n\t],\n\tenvironment: [],\n\thealthcheck: {\n\t\ttest: \"wget -q --spider http://localhost:80/health || exit 1\",\n\t\tinterval: \"30s\",\n\t\ttimeout: \"10s\",\n\t\tretries: 3,\n\t},\n\tdependsOn: [],\n\trestartPolicy: \"unless-stopped\",\n\tnetworks: [\"openclaw-network\"],\n\n\tskills: [],\n\topenclawEnvVars: [\n\t\t{\n\t\t\tkey: \"GOTIFY_HOST\",\n\t\t\tdefaultValue: \"gotify\",\n\t\t\tsecret: false,\n\t\t\tdescription: \"Gotify hostname for OpenClaw\",\n\t\t\trequired: true,\n\t\t},\n\t\t{\n\t\t\tkey: \"GOTIFY_PORT\",\n\t\t\tdefaultValue: \"8080\",\n\t\t\tsecret: false,\n\t\t\tdescription: \"Gotify port for OpenClaw\",\n\t\t\trequired: true,\n\t\t},\n\t],\n\n\tdocsUrl: \"https://gotify.net/docs/\",\n\ttags: [\"notifications\", \"push\", \"websocket\", \"messaging\"],\n\tmaturity: \"stable\",\n\n\trequires: [],\n\trecommends: [],\n\tconflictsWith: [],\n\n\tminMemoryMB: 64,\n\tgpuRequired: false,\n};\n"],"mappings":";AAEA,MAAa,mBAAsC;CAClD,IAAI;CACJ,MAAM;CACN,aACC;CACD,UAAU;CACV,MAAM;CAEN,OAAO;CACP,UAAU;CACV,OAAO,CACN;EACC,MAAM;EACN,WAAW;EACX,aAAa;EACb,SAAS;EACT,CACD;CACD,SAAS,CACR;EACC,MAAM;EACN,eAAe;EACf,aAAa;EACb,CACD;CACD,aAAa,EAAE;CACf,aAAa;EACZ,MAAM;EACN,UAAU;EACV,SAAS;EACT,SAAS;EACT;CACD,WAAW,EAAE;CACb,eAAe;CACf,UAAU,CAAC,mBAAmB;CAE9B,QAAQ,EAAE;CACV,iBAAiB,CAChB;EACC,KAAK;EACL,cAAc;EACd,QAAQ;EACR,aAAa;EACb,UAAU;EACV,EACD;EACC,KAAK;EACL,cAAc;EACd,QAAQ;EACR,aAAa;EACb,UAAU;EACV,CACD;CAED,SAAS;CACT,MAAM;EAAC;EAAiB;EAAQ;EAAa;EAAY;CACzD,UAAU;CAEV,UAAU,EAAE;CACZ,YAAY,EAAE;CACd,eAAe,EAAE;CAEjB,aAAa;CACb,aAAa;CACb"}
@@ -1,63 +0,0 @@
1
- //#region src/services/definitions/grafana.ts
2
- const grafanaDefinition = {
3
- id: "grafana",
4
- name: "Grafana",
5
- description: "Open-source analytics and interactive visualization platform for metrics, logs, and traces with rich dashboards and alerting.",
6
- category: "monitoring",
7
- icon: "📊",
8
- image: "grafana/grafana",
9
- imageTag: "latest",
10
- ports: [{
11
- host: 3150,
12
- container: 3e3,
13
- description: "Grafana web interface",
14
- exposed: true
15
- }],
16
- volumes: [{
17
- name: "grafana-data",
18
- containerPath: "/var/lib/grafana",
19
- description: "Persistent Grafana dashboards, plugins, and data"
20
- }],
21
- environment: [{
22
- key: "GF_SECURITY_ADMIN_USER",
23
- defaultValue: "admin",
24
- secret: false,
25
- description: "Grafana admin username",
26
- required: true
27
- }, {
28
- key: "GF_SECURITY_ADMIN_PASSWORD",
29
- defaultValue: "",
30
- secret: true,
31
- description: "Grafana admin password",
32
- required: true
33
- }],
34
- healthcheck: {
35
- test: "wget -q --spider http://localhost:3000/api/health || exit 1",
36
- interval: "30s",
37
- timeout: "10s",
38
- retries: 3,
39
- startPeriod: "15s"
40
- },
41
- dependsOn: [],
42
- restartPolicy: "unless-stopped",
43
- networks: ["openclaw-network"],
44
- skills: [],
45
- openclawEnvVars: [],
46
- docsUrl: "https://grafana.com/docs/grafana/latest/",
47
- tags: [
48
- "dashboards",
49
- "visualization",
50
- "metrics",
51
- "monitoring"
52
- ],
53
- maturity: "stable",
54
- requires: ["prometheus"],
55
- recommends: [],
56
- conflictsWith: [],
57
- minMemoryMB: 256,
58
- gpuRequired: false
59
- };
60
-
61
- //#endregion
62
- export { grafanaDefinition as t };
63
- //# sourceMappingURL=grafana-BlnWc6js.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"grafana-BlnWc6js.mjs","names":[],"sources":["../src/services/definitions/grafana.ts"],"sourcesContent":["import type { ServiceDefinition } from \"../../types.js\";\n\nexport const grafanaDefinition: ServiceDefinition = {\n\tid: \"grafana\",\n\tname: \"Grafana\",\n\tdescription:\n\t\t\"Open-source analytics and interactive visualization platform for metrics, logs, and traces with rich dashboards and alerting.\",\n\tcategory: \"monitoring\",\n\ticon: \"📊\",\n\n\timage: \"grafana/grafana\",\n\timageTag: \"latest\",\n\tports: [\n\t\t{\n\t\t\thost: 3150,\n\t\t\tcontainer: 3000,\n\t\t\tdescription: \"Grafana web interface\",\n\t\t\texposed: true,\n\t\t},\n\t],\n\tvolumes: [\n\t\t{\n\t\t\tname: \"grafana-data\",\n\t\t\tcontainerPath: \"/var/lib/grafana\",\n\t\t\tdescription: \"Persistent Grafana dashboards, plugins, and data\",\n\t\t},\n\t],\n\tenvironment: [\n\t\t{\n\t\t\tkey: \"GF_SECURITY_ADMIN_USER\",\n\t\t\tdefaultValue: \"admin\",\n\t\t\tsecret: false,\n\t\t\tdescription: \"Grafana admin username\",\n\t\t\trequired: true,\n\t\t},\n\t\t{\n\t\t\tkey: \"GF_SECURITY_ADMIN_PASSWORD\",\n\t\t\tdefaultValue: \"\",\n\t\t\tsecret: true,\n\t\t\tdescription: \"Grafana admin password\",\n\t\t\trequired: true,\n\t\t},\n\t],\n\thealthcheck: {\n\t\ttest: \"wget -q --spider http://localhost:3000/api/health || exit 1\",\n\t\tinterval: \"30s\",\n\t\ttimeout: \"10s\",\n\t\tretries: 3,\n\t\tstartPeriod: \"15s\",\n\t},\n\tdependsOn: [],\n\trestartPolicy: \"unless-stopped\",\n\tnetworks: [\"openclaw-network\"],\n\n\tskills: [],\n\topenclawEnvVars: [],\n\n\tdocsUrl: \"https://grafana.com/docs/grafana/latest/\",\n\ttags: [\"dashboards\", \"visualization\", \"metrics\", \"monitoring\"],\n\tmaturity: \"stable\",\n\n\trequires: [\"prometheus\"],\n\trecommends: [],\n\tconflictsWith: [],\n\n\tminMemoryMB: 256,\n\tgpuRequired: false,\n};\n"],"mappings":";AAEA,MAAa,oBAAuC;CACnD,IAAI;CACJ,MAAM;CACN,aACC;CACD,UAAU;CACV,MAAM;CAEN,OAAO;CACP,UAAU;CACV,OAAO,CACN;EACC,MAAM;EACN,WAAW;EACX,aAAa;EACb,SAAS;EACT,CACD;CACD,SAAS,CACR;EACC,MAAM;EACN,eAAe;EACf,aAAa;EACb,CACD;CACD,aAAa,CACZ;EACC,KAAK;EACL,cAAc;EACd,QAAQ;EACR,aAAa;EACb,UAAU;EACV,EACD;EACC,KAAK;EACL,cAAc;EACd,QAAQ;EACR,aAAa;EACb,UAAU;EACV,CACD;CACD,aAAa;EACZ,MAAM;EACN,UAAU;EACV,SAAS;EACT,SAAS;EACT,aAAa;EACb;CACD,WAAW,EAAE;CACb,eAAe;CACf,UAAU,CAAC,mBAAmB;CAE9B,QAAQ,EAAE;CACV,iBAAiB,EAAE;CAEnB,SAAS;CACT,MAAM;EAAC;EAAc;EAAiB;EAAW;EAAa;CAC9D,UAAU;CAEV,UAAU,CAAC,aAAa;CACxB,YAAY,EAAE;CACd,eAAe,EAAE;CAEjB,aAAa;CACb,aAAa;CACb"}