@better-openclaw/core 1.0.21 → 1.0.22

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 (958) hide show
  1. package/dist/bare-metal-partition.cjs +2 -3
  2. package/dist/bare-metal-partition.cjs.map +1 -1
  3. package/dist/bare-metal-partition.d.mts.map +1 -1
  4. package/dist/bare-metal-partition.mjs +1 -1
  5. package/dist/bare-metal-partition.test.cjs +4 -5
  6. package/dist/bare-metal-partition.test.cjs.map +1 -1
  7. package/dist/bare-metal-partition.test.mjs +3 -4
  8. package/dist/bare-metal-partition.test.mjs.map +1 -1
  9. package/dist/compose-validation.test.cjs +5 -6
  10. package/dist/compose-validation.test.cjs.map +1 -1
  11. package/dist/compose-validation.test.mjs +2 -3
  12. package/dist/compose-validation.test.mjs.map +1 -1
  13. package/dist/composer.cjs +4 -5
  14. package/dist/composer.cjs.map +1 -1
  15. package/dist/composer.d.mts.map +1 -1
  16. package/dist/composer.mjs +1 -2
  17. package/dist/composer.mjs.map +1 -1
  18. package/dist/composer.snapshot.test.cjs +4 -5
  19. package/dist/composer.snapshot.test.cjs.map +1 -1
  20. package/dist/composer.snapshot.test.mjs +3 -4
  21. package/dist/composer.snapshot.test.mjs.map +1 -1
  22. package/dist/composer.test.cjs +5 -6
  23. package/dist/composer.test.cjs.map +1 -1
  24. package/dist/composer.test.mjs +3 -4
  25. package/dist/composer.test.mjs.map +1 -1
  26. package/dist/coolify-BVGGcMrT.d.mts +18 -0
  27. package/dist/coolify-BVGGcMrT.d.mts.map +1 -0
  28. package/dist/coolify-vlb1G9V2.d.cts +18 -0
  29. package/dist/coolify-vlb1G9V2.d.cts.map +1 -0
  30. package/dist/deployers/coolify.cjs +3 -4
  31. package/dist/deployers/coolify.cjs.map +1 -1
  32. package/dist/deployers/coolify.d.cts +2 -18
  33. package/dist/deployers/coolify.d.mts +2 -18
  34. package/dist/deployers/coolify.mjs +1 -2
  35. package/dist/deployers/coolify.mjs.map +1 -1
  36. package/dist/deployers/dokploy.cjs +3 -4
  37. package/dist/deployers/dokploy.cjs.map +1 -1
  38. package/dist/deployers/dokploy.d.cts +2 -25
  39. package/dist/deployers/dokploy.d.mts +2 -25
  40. package/dist/deployers/dokploy.mjs +1 -2
  41. package/dist/deployers/dokploy.mjs.map +1 -1
  42. package/dist/deployers/index.cjs +4 -5
  43. package/dist/deployers/index.cjs.map +1 -1
  44. package/dist/deployers/index.d.cts +3 -3
  45. package/dist/deployers/index.d.mts +3 -3
  46. package/dist/deployers/index.mjs +1 -2
  47. package/dist/deployers/index.mjs.map +1 -1
  48. package/dist/deployers/strip-host-ports.cjs +3 -4
  49. package/dist/deployers/strip-host-ports.cjs.map +1 -1
  50. package/dist/deployers/strip-host-ports.mjs +1 -2
  51. package/dist/deployers/strip-host-ports.mjs.map +1 -1
  52. package/dist/deployers/strip-host-ports.test.cjs +3 -4
  53. package/dist/deployers/strip-host-ports.test.cjs.map +1 -1
  54. package/dist/deployers/strip-host-ports.test.mjs +3 -4
  55. package/dist/deployers/strip-host-ports.test.mjs.map +1 -1
  56. package/dist/deployers/types.d.cts +2 -243
  57. package/dist/deployers/types.d.mts +2 -243
  58. package/dist/deployers/types.mjs +1 -1
  59. package/dist/dokploy-8cbrxUun.d.cts +25 -0
  60. package/dist/dokploy-8cbrxUun.d.cts.map +1 -0
  61. package/dist/dokploy-BTflLhTM.d.mts +25 -0
  62. package/dist/dokploy-BTflLhTM.d.mts.map +1 -0
  63. package/dist/errors.cjs +2 -3
  64. package/dist/errors.cjs.map +1 -1
  65. package/dist/errors.mjs +1 -1
  66. package/dist/errors.mjs.map +1 -1
  67. package/dist/generate.cjs +27 -28
  68. package/dist/generate.cjs.map +1 -1
  69. package/dist/generate.d.mts.map +1 -1
  70. package/dist/generate.mjs +1 -2
  71. package/dist/generate.mjs.map +1 -1
  72. package/dist/generate.test.cjs +4 -5
  73. package/dist/generate.test.cjs.map +1 -1
  74. package/dist/generate.test.mjs +3 -4
  75. package/dist/generate.test.mjs.map +1 -1
  76. package/dist/generators/bare-metal-install.cjs +2 -3
  77. package/dist/generators/bare-metal-install.cjs.map +1 -1
  78. package/dist/generators/bare-metal-install.d.mts.map +1 -1
  79. package/dist/generators/bare-metal-install.mjs +1 -1
  80. package/dist/generators/bare-metal-install.test.cjs +3 -4
  81. package/dist/generators/bare-metal-install.test.cjs.map +1 -1
  82. package/dist/generators/bare-metal-install.test.mjs +3 -4
  83. package/dist/generators/bare-metal-install.test.mjs.map +1 -1
  84. package/dist/generators/caddy.cjs +2 -3
  85. package/dist/generators/caddy.cjs.map +1 -1
  86. package/dist/generators/caddy.d.mts.map +1 -1
  87. package/dist/generators/caddy.mjs +1 -1
  88. package/dist/generators/caddy.test.cjs +3 -4
  89. package/dist/generators/caddy.test.cjs.map +1 -1
  90. package/dist/generators/caddy.test.mjs +3 -4
  91. package/dist/generators/caddy.test.mjs.map +1 -1
  92. package/dist/generators/cloud-init.cjs +2 -3
  93. package/dist/generators/cloud-init.cjs.map +1 -1
  94. package/dist/generators/cloud-init.mjs +1 -1
  95. package/dist/generators/env.cjs +4 -5
  96. package/dist/generators/env.cjs.map +1 -1
  97. package/dist/generators/env.d.mts.map +1 -1
  98. package/dist/generators/env.mjs +1 -2
  99. package/dist/generators/env.mjs.map +1 -1
  100. package/dist/generators/env.test.cjs +3 -4
  101. package/dist/generators/env.test.cjs.map +1 -1
  102. package/dist/generators/env.test.mjs +3 -4
  103. package/dist/generators/env.test.mjs.map +1 -1
  104. package/dist/generators/get-shit-done.cjs +2 -3
  105. package/dist/generators/get-shit-done.cjs.map +1 -1
  106. package/dist/generators/get-shit-done.mjs +1 -1
  107. package/dist/generators/grafana.cjs +2 -3
  108. package/dist/generators/grafana.cjs.map +1 -1
  109. package/dist/generators/grafana.mjs +1 -1
  110. package/dist/generators/health-check.cjs +2 -3
  111. package/dist/generators/health-check.cjs.map +1 -1
  112. package/dist/generators/health-check.d.mts.map +1 -1
  113. package/dist/generators/health-check.mjs +1 -1
  114. package/dist/generators/health-check.test.cjs +3 -4
  115. package/dist/generators/health-check.test.cjs.map +1 -1
  116. package/dist/generators/health-check.test.mjs +3 -4
  117. package/dist/generators/health-check.test.mjs.map +1 -1
  118. package/dist/generators/n8n-workflows.cjs +2 -3
  119. package/dist/generators/n8n-workflows.cjs.map +1 -1
  120. package/dist/generators/n8n-workflows.d.mts.map +1 -1
  121. package/dist/generators/n8n-workflows.mjs +1 -1
  122. package/dist/generators/native-services.cjs +2 -3
  123. package/dist/generators/native-services.cjs.map +1 -1
  124. package/dist/generators/native-services.mjs +1 -1
  125. package/dist/generators/openclaw-install-script.cjs +2 -3
  126. package/dist/generators/openclaw-install-script.cjs.map +1 -1
  127. package/dist/generators/openclaw-install-script.mjs +1 -1
  128. package/dist/generators/openclaw-json.cjs +2 -3
  129. package/dist/generators/openclaw-json.cjs.map +1 -1
  130. package/dist/generators/openclaw-json.mjs +1 -1
  131. package/dist/generators/postgres-init.cjs +32 -3
  132. package/dist/generators/postgres-init.cjs.map +1 -1
  133. package/dist/generators/postgres-init.d.cts.map +1 -1
  134. package/dist/generators/postgres-init.d.mts.map +1 -1
  135. package/dist/generators/postgres-init.mjs +31 -1
  136. package/dist/generators/postgres-init.mjs.map +1 -1
  137. package/dist/generators/prometheus.cjs +2 -3
  138. package/dist/generators/prometheus.cjs.map +1 -1
  139. package/dist/generators/prometheus.d.mts.map +1 -1
  140. package/dist/generators/prometheus.mjs +1 -1
  141. package/dist/generators/readme.cjs +2 -3
  142. package/dist/generators/readme.cjs.map +1 -1
  143. package/dist/generators/readme.d.mts.map +1 -1
  144. package/dist/generators/readme.mjs +1 -1
  145. package/dist/generators/scripts.cjs +2 -3
  146. package/dist/generators/scripts.cjs.map +1 -1
  147. package/dist/generators/scripts.mjs +1 -1
  148. package/dist/generators/scripts.test.cjs +3 -4
  149. package/dist/generators/scripts.test.cjs.map +1 -1
  150. package/dist/generators/scripts.test.mjs +3 -4
  151. package/dist/generators/scripts.test.mjs.map +1 -1
  152. package/dist/generators/skills.cjs +3 -590
  153. package/dist/generators/skills.d.mts.map +1 -1
  154. package/dist/generators/skills.mjs +1 -2
  155. package/dist/generators/skills.mjs.map +1 -1
  156. package/dist/generators/stack-manifest.cjs +2 -3
  157. package/dist/generators/stack-manifest.cjs.map +1 -1
  158. package/dist/generators/stack-manifest.mjs +1 -1
  159. package/dist/generators/traefik.cjs +2 -3
  160. package/dist/generators/traefik.cjs.map +1 -1
  161. package/dist/generators/traefik.mjs +1 -1
  162. package/dist/generators/traefik.test.cjs +4 -5
  163. package/dist/generators/traefik.test.cjs.map +1 -1
  164. package/dist/generators/traefik.test.mjs +3 -4
  165. package/dist/generators/traefik.test.mjs.map +1 -1
  166. package/dist/index.cjs +35 -36
  167. package/dist/index.d.cts +4 -4
  168. package/dist/index.d.mts +4 -4
  169. package/dist/index.mjs +2 -3
  170. package/dist/{magic-string.es-D2agHT3I.cjs → magic-string.es-CJq41xdM.cjs} +2 -4
  171. package/dist/{magic-string.es-CfFonO_S.mjs.map → magic-string.es-CJq41xdM.cjs.map} +1 -1
  172. package/dist/{magic-string.es-CfFonO_S.mjs → magic-string.es-CoDyF8pj.mjs} +2 -3
  173. package/dist/{magic-string.es-D2agHT3I.cjs.map → magic-string.es-CoDyF8pj.mjs.map} +1 -1
  174. package/dist/migrations.cjs +5 -6
  175. package/dist/migrations.cjs.map +1 -1
  176. package/dist/migrations.mjs +4 -4
  177. package/dist/migrations.mjs.map +1 -1
  178. package/dist/migrations.test.cjs +6 -7
  179. package/dist/migrations.test.cjs.map +1 -1
  180. package/dist/migrations.test.mjs +7 -8
  181. package/dist/migrations.test.mjs.map +1 -1
  182. package/dist/port-scanner.cjs +2 -3
  183. package/dist/port-scanner.cjs.map +1 -1
  184. package/dist/port-scanner.d.mts.map +1 -1
  185. package/dist/port-scanner.mjs +1 -1
  186. package/dist/presets/presets.test.cjs +11 -8
  187. package/dist/presets/presets.test.cjs.map +1 -1
  188. package/dist/presets/presets.test.mjs +7 -4
  189. package/dist/presets/presets.test.mjs.map +1 -1
  190. package/dist/presets/registry.cjs +152 -3
  191. package/dist/presets/registry.cjs.map +1 -1
  192. package/dist/presets/registry.d.cts.map +1 -1
  193. package/dist/presets/registry.d.mts.map +1 -1
  194. package/dist/presets/registry.mjs +151 -1
  195. package/dist/presets/registry.mjs.map +1 -1
  196. package/dist/presets/registry.test.cjs +3 -4
  197. package/dist/presets/registry.test.cjs.map +1 -1
  198. package/dist/presets/registry.test.mjs +3 -4
  199. package/dist/presets/registry.test.mjs.map +1 -1
  200. package/dist/resolver.cjs +4 -5
  201. package/dist/resolver.cjs.map +1 -1
  202. package/dist/resolver.d.mts.map +1 -1
  203. package/dist/resolver.mjs +1 -2
  204. package/dist/resolver.mjs.map +1 -1
  205. package/dist/resolver.test.cjs +3 -4
  206. package/dist/resolver.test.cjs.map +1 -1
  207. package/dist/resolver.test.mjs +3 -4
  208. package/dist/resolver.test.mjs.map +1 -1
  209. package/dist/schema-C_hc7e4k.d.cts +898 -0
  210. package/dist/schema-C_hc7e4k.d.cts.map +1 -0
  211. package/dist/schema-CaesJaS2.d.mts +898 -0
  212. package/dist/schema-CaesJaS2.d.mts.map +1 -0
  213. package/dist/schema.cjs +15 -5
  214. package/dist/schema.cjs.map +1 -1
  215. package/dist/schema.d.cts +2 -854
  216. package/dist/schema.d.mts +2 -854
  217. package/dist/schema.mjs +13 -3
  218. package/dist/schema.mjs.map +1 -1
  219. package/dist/schema.test.cjs +3 -4
  220. package/dist/schema.test.cjs.map +1 -1
  221. package/dist/schema.test.mjs +3 -4
  222. package/dist/schema.test.mjs.map +1 -1
  223. package/dist/services/definitions/airbyte.cjs +76 -0
  224. package/dist/services/definitions/airbyte.cjs.map +1 -0
  225. package/dist/services/definitions/airbyte.d.cts +7 -0
  226. package/dist/services/definitions/airbyte.d.cts.map +1 -0
  227. package/dist/services/definitions/airbyte.d.mts +7 -0
  228. package/dist/services/definitions/airbyte.d.mts.map +1 -0
  229. package/dist/services/definitions/airbyte.mjs +75 -0
  230. package/dist/services/definitions/airbyte.mjs.map +1 -0
  231. package/dist/services/definitions/airflow.cjs +109 -0
  232. package/dist/services/definitions/airflow.cjs.map +1 -0
  233. package/dist/services/definitions/airflow.d.cts +7 -0
  234. package/dist/services/definitions/airflow.d.cts.map +1 -0
  235. package/dist/services/definitions/airflow.d.mts +7 -0
  236. package/dist/services/definitions/airflow.d.mts.map +1 -0
  237. package/dist/services/definitions/airflow.mjs +108 -0
  238. package/dist/services/definitions/airflow.mjs.map +1 -0
  239. package/dist/services/definitions/anything-llm.cjs +2 -3
  240. package/dist/services/definitions/anything-llm.cjs.map +1 -1
  241. package/dist/services/definitions/anything-llm.mjs +1 -1
  242. package/dist/services/definitions/appflowy.cjs +2 -3
  243. package/dist/services/definitions/appflowy.cjs.map +1 -1
  244. package/dist/services/definitions/appflowy.mjs +1 -1
  245. package/dist/services/definitions/appwrite.cjs +190 -0
  246. package/dist/services/definitions/appwrite.cjs.map +1 -0
  247. package/dist/services/definitions/appwrite.d.cts +7 -0
  248. package/dist/services/definitions/appwrite.d.cts.map +1 -0
  249. package/dist/services/definitions/appwrite.d.mts +7 -0
  250. package/dist/services/definitions/appwrite.d.mts.map +1 -0
  251. package/dist/services/definitions/appwrite.mjs +189 -0
  252. package/dist/services/definitions/appwrite.mjs.map +1 -0
  253. package/dist/services/definitions/authelia.cjs +145 -0
  254. package/dist/services/definitions/authelia.cjs.map +1 -0
  255. package/dist/services/definitions/authelia.d.cts +7 -0
  256. package/dist/services/definitions/authelia.d.cts.map +1 -0
  257. package/dist/services/definitions/authelia.d.mts +7 -0
  258. package/dist/services/definitions/authelia.d.mts.map +1 -0
  259. package/dist/services/definitions/authelia.mjs +144 -0
  260. package/dist/services/definitions/authelia.mjs.map +1 -0
  261. package/dist/services/definitions/authentik.cjs +2 -3
  262. package/dist/services/definitions/authentik.cjs.map +1 -1
  263. package/dist/services/definitions/authentik.mjs +1 -1
  264. package/dist/services/definitions/axolotl.cjs +67 -0
  265. package/dist/services/definitions/axolotl.cjs.map +1 -0
  266. package/dist/services/definitions/axolotl.d.cts +7 -0
  267. package/dist/services/definitions/axolotl.d.cts.map +1 -0
  268. package/dist/services/definitions/axolotl.d.mts +7 -0
  269. package/dist/services/definitions/axolotl.d.mts.map +1 -0
  270. package/dist/services/definitions/axolotl.mjs +66 -0
  271. package/dist/services/definitions/axolotl.mjs.map +1 -0
  272. package/dist/services/definitions/beszel.cjs +2 -3
  273. package/dist/services/definitions/beszel.cjs.map +1 -1
  274. package/dist/services/definitions/beszel.mjs +1 -1
  275. package/dist/services/definitions/browserless.cjs +2 -3
  276. package/dist/services/definitions/browserless.cjs.map +1 -1
  277. package/dist/services/definitions/browserless.mjs +1 -1
  278. package/dist/services/definitions/caddy.cjs +2 -3
  279. package/dist/services/definitions/caddy.cjs.map +1 -1
  280. package/dist/services/definitions/caddy.mjs +1 -1
  281. package/dist/services/definitions/cal-com.cjs +2 -3
  282. package/dist/services/definitions/cal-com.cjs.map +1 -1
  283. package/dist/services/definitions/cal-com.mjs +1 -1
  284. package/dist/services/definitions/chatwoot-worker.cjs +95 -0
  285. package/dist/services/definitions/chatwoot-worker.cjs.map +1 -0
  286. package/dist/services/definitions/chatwoot-worker.d.cts +7 -0
  287. package/dist/services/definitions/chatwoot-worker.d.cts.map +1 -0
  288. package/dist/services/definitions/chatwoot-worker.d.mts +7 -0
  289. package/dist/services/definitions/chatwoot-worker.d.mts.map +1 -0
  290. package/dist/services/definitions/chatwoot-worker.mjs +94 -0
  291. package/dist/services/definitions/chatwoot-worker.mjs.map +1 -0
  292. package/dist/services/definitions/chatwoot.cjs +112 -0
  293. package/dist/services/definitions/chatwoot.cjs.map +1 -0
  294. package/dist/services/definitions/chatwoot.d.cts +7 -0
  295. package/dist/services/definitions/chatwoot.d.cts.map +1 -0
  296. package/dist/services/definitions/chatwoot.d.mts +7 -0
  297. package/dist/services/definitions/chatwoot.d.mts.map +1 -0
  298. package/dist/services/definitions/chatwoot.mjs +111 -0
  299. package/dist/services/definitions/chatwoot.mjs.map +1 -0
  300. package/dist/services/definitions/chromadb.cjs +2 -3
  301. package/dist/services/definitions/chromadb.cjs.map +1 -1
  302. package/dist/services/definitions/chromadb.mjs +1 -1
  303. package/dist/services/definitions/claude-code.cjs +2 -3
  304. package/dist/services/definitions/claude-code.cjs.map +1 -1
  305. package/dist/services/definitions/claude-code.mjs +1 -1
  306. package/dist/services/definitions/code-server.cjs +2 -3
  307. package/dist/services/definitions/code-server.cjs.map +1 -1
  308. package/dist/services/definitions/code-server.mjs +1 -1
  309. package/dist/services/definitions/codex.cjs +2 -3
  310. package/dist/services/definitions/codex.cjs.map +1 -1
  311. package/dist/services/definitions/codex.mjs +1 -1
  312. package/dist/services/definitions/comfyui.cjs +2 -3
  313. package/dist/services/definitions/comfyui.cjs.map +1 -1
  314. package/dist/services/definitions/comfyui.mjs +1 -1
  315. package/dist/services/definitions/convex-dashboard.cjs +2 -3
  316. package/dist/services/definitions/convex-dashboard.cjs.map +1 -1
  317. package/dist/services/definitions/convex-dashboard.mjs +1 -1
  318. package/dist/services/definitions/convex.cjs +2 -3
  319. package/dist/services/definitions/convex.cjs.map +1 -1
  320. package/dist/services/definitions/convex.mjs +1 -1
  321. package/dist/services/definitions/coolify.cjs +2 -3
  322. package/dist/services/definitions/coolify.cjs.map +1 -1
  323. package/dist/services/definitions/coolify.mjs +1 -1
  324. package/dist/services/definitions/crowdsec.cjs +2 -3
  325. package/dist/services/definitions/crowdsec.cjs.map +1 -1
  326. package/dist/services/definitions/crowdsec.mjs +1 -1
  327. package/dist/services/definitions/dagster.cjs +83 -0
  328. package/dist/services/definitions/dagster.cjs.map +1 -0
  329. package/dist/services/definitions/dagster.d.cts +7 -0
  330. package/dist/services/definitions/dagster.d.cts.map +1 -0
  331. package/dist/services/definitions/dagster.d.mts +7 -0
  332. package/dist/services/definitions/dagster.d.mts.map +1 -0
  333. package/dist/services/definitions/dagster.mjs +82 -0
  334. package/dist/services/definitions/dagster.mjs.map +1 -0
  335. package/dist/services/definitions/desktop-environment.cjs +2 -3
  336. package/dist/services/definitions/desktop-environment.cjs.map +1 -1
  337. package/dist/services/definitions/desktop-environment.mjs +1 -1
  338. package/dist/services/definitions/dify.cjs +2 -3
  339. package/dist/services/definitions/dify.cjs.map +1 -1
  340. package/dist/services/definitions/dify.mjs +1 -1
  341. package/dist/services/definitions/directus.cjs +115 -0
  342. package/dist/services/definitions/directus.cjs.map +1 -0
  343. package/dist/services/definitions/directus.d.cts +7 -0
  344. package/dist/services/definitions/directus.d.cts.map +1 -0
  345. package/dist/services/definitions/directus.d.mts +7 -0
  346. package/dist/services/definitions/directus.d.mts.map +1 -0
  347. package/dist/services/definitions/directus.mjs +114 -0
  348. package/dist/services/definitions/directus.mjs.map +1 -0
  349. package/dist/services/definitions/docsgpt.cjs +2 -3
  350. package/dist/services/definitions/docsgpt.cjs.map +1 -1
  351. package/dist/services/definitions/docsgpt.mjs +1 -1
  352. package/dist/services/definitions/dokploy.cjs +2 -3
  353. package/dist/services/definitions/dokploy.cjs.map +1 -1
  354. package/dist/services/definitions/dokploy.mjs +1 -1
  355. package/dist/services/definitions/dozzle.cjs +2 -3
  356. package/dist/services/definitions/dozzle.cjs.map +1 -1
  357. package/dist/services/definitions/dozzle.mjs +1 -1
  358. package/dist/services/definitions/duplicati.cjs +76 -0
  359. package/dist/services/definitions/duplicati.cjs.map +1 -0
  360. package/dist/services/definitions/duplicati.d.cts +7 -0
  361. package/dist/services/definitions/duplicati.d.cts.map +1 -0
  362. package/dist/services/definitions/duplicati.d.mts +7 -0
  363. package/dist/services/definitions/duplicati.d.mts.map +1 -0
  364. package/dist/services/definitions/duplicati.mjs +75 -0
  365. package/dist/services/definitions/duplicati.mjs.map +1 -0
  366. package/dist/services/definitions/excalidraw.cjs +48 -0
  367. package/dist/services/definitions/excalidraw.cjs.map +1 -0
  368. package/dist/services/definitions/excalidraw.d.cts +7 -0
  369. package/dist/services/definitions/excalidraw.d.cts.map +1 -0
  370. package/dist/services/definitions/excalidraw.d.mts +7 -0
  371. package/dist/services/definitions/excalidraw.d.mts.map +1 -0
  372. package/dist/services/definitions/excalidraw.mjs +47 -0
  373. package/dist/services/definitions/excalidraw.mjs.map +1 -0
  374. package/dist/services/definitions/ffmpeg.cjs +2 -3
  375. package/dist/services/definitions/ffmpeg.cjs.map +1 -1
  376. package/dist/services/definitions/ffmpeg.mjs +1 -1
  377. package/dist/services/definitions/firecrawl-playwright.cjs +61 -0
  378. package/dist/services/definitions/firecrawl-playwright.cjs.map +1 -0
  379. package/dist/services/definitions/firecrawl-playwright.d.cts +7 -0
  380. package/dist/services/definitions/firecrawl-playwright.d.cts.map +1 -0
  381. package/dist/services/definitions/firecrawl-playwright.d.mts +7 -0
  382. package/dist/services/definitions/firecrawl-playwright.d.mts.map +1 -0
  383. package/dist/services/definitions/firecrawl-playwright.mjs +60 -0
  384. package/dist/services/definitions/firecrawl-playwright.mjs.map +1 -0
  385. package/dist/services/definitions/firecrawl.cjs +163 -0
  386. package/dist/services/definitions/firecrawl.cjs.map +1 -0
  387. package/dist/services/definitions/firecrawl.d.cts +7 -0
  388. package/dist/services/definitions/firecrawl.d.cts.map +1 -0
  389. package/dist/services/definitions/firecrawl.d.mts +7 -0
  390. package/dist/services/definitions/firecrawl.d.mts.map +1 -0
  391. package/dist/services/definitions/firecrawl.mjs +162 -0
  392. package/dist/services/definitions/firecrawl.mjs.map +1 -0
  393. package/dist/services/definitions/flagsmith.cjs +77 -0
  394. package/dist/services/definitions/flagsmith.cjs.map +1 -0
  395. package/dist/services/definitions/flagsmith.d.cts +7 -0
  396. package/dist/services/definitions/flagsmith.d.cts.map +1 -0
  397. package/dist/services/definitions/flagsmith.d.mts +7 -0
  398. package/dist/services/definitions/flagsmith.d.mts.map +1 -0
  399. package/dist/services/definitions/flagsmith.mjs +76 -0
  400. package/dist/services/definitions/flagsmith.mjs.map +1 -0
  401. package/dist/services/definitions/flowise.cjs +2 -3
  402. package/dist/services/definitions/flowise.cjs.map +1 -1
  403. package/dist/services/definitions/flowise.mjs +1 -1
  404. package/dist/services/definitions/fonoster.cjs +66 -0
  405. package/dist/services/definitions/fonoster.cjs.map +1 -0
  406. package/dist/services/definitions/fonoster.d.cts +7 -0
  407. package/dist/services/definitions/fonoster.d.cts.map +1 -0
  408. package/dist/services/definitions/fonoster.d.mts +7 -0
  409. package/dist/services/definitions/fonoster.d.mts.map +1 -0
  410. package/dist/services/definitions/fonoster.mjs +65 -0
  411. package/dist/services/definitions/fonoster.mjs.map +1 -0
  412. package/dist/services/definitions/formbricks.cjs +75 -0
  413. package/dist/services/definitions/formbricks.cjs.map +1 -0
  414. package/dist/services/definitions/formbricks.d.cts +7 -0
  415. package/dist/services/definitions/formbricks.d.cts.map +1 -0
  416. package/dist/services/definitions/formbricks.d.mts +7 -0
  417. package/dist/services/definitions/formbricks.d.mts.map +1 -0
  418. package/dist/services/definitions/formbricks.mjs +74 -0
  419. package/dist/services/definitions/formbricks.mjs.map +1 -0
  420. package/dist/services/definitions/gemini-cli.cjs +2 -3
  421. package/dist/services/definitions/gemini-cli.cjs.map +1 -1
  422. package/dist/services/definitions/gemini-cli.mjs +1 -1
  423. package/dist/services/definitions/ghost.cjs +2 -3
  424. package/dist/services/definitions/ghost.cjs.map +1 -1
  425. package/dist/services/definitions/ghost.mjs +1 -1
  426. package/dist/services/definitions/gitea.cjs +2 -3
  427. package/dist/services/definitions/gitea.cjs.map +1 -1
  428. package/dist/services/definitions/gitea.mjs +1 -1
  429. package/dist/services/definitions/gotify.cjs +2 -3
  430. package/dist/services/definitions/gotify.cjs.map +1 -1
  431. package/dist/services/definitions/gotify.mjs +1 -1
  432. package/dist/services/definitions/grafana.cjs +2 -3
  433. package/dist/services/definitions/grafana.cjs.map +1 -1
  434. package/dist/services/definitions/grafana.mjs +1 -1
  435. package/dist/services/definitions/headscale.cjs +2 -3
  436. package/dist/services/definitions/headscale.cjs.map +1 -1
  437. package/dist/services/definitions/headscale.mjs +1 -1
  438. package/dist/services/definitions/hedgedoc.cjs +82 -0
  439. package/dist/services/definitions/hedgedoc.cjs.map +1 -0
  440. package/dist/services/definitions/hedgedoc.d.cts +7 -0
  441. package/dist/services/definitions/hedgedoc.d.cts.map +1 -0
  442. package/dist/services/definitions/hedgedoc.d.mts +7 -0
  443. package/dist/services/definitions/hedgedoc.d.mts.map +1 -0
  444. package/dist/services/definitions/hedgedoc.mjs +81 -0
  445. package/dist/services/definitions/hedgedoc.mjs.map +1 -0
  446. package/dist/services/definitions/hexstrike.cjs +2 -3
  447. package/dist/services/definitions/hexstrike.cjs.map +1 -1
  448. package/dist/services/definitions/hexstrike.mjs +1 -1
  449. package/dist/services/definitions/heyform.cjs +64 -0
  450. package/dist/services/definitions/heyform.cjs.map +1 -0
  451. package/dist/services/definitions/heyform.d.cts +7 -0
  452. package/dist/services/definitions/heyform.d.cts.map +1 -0
  453. package/dist/services/definitions/heyform.d.mts +7 -0
  454. package/dist/services/definitions/heyform.d.mts.map +1 -0
  455. package/dist/services/definitions/heyform.mjs +63 -0
  456. package/dist/services/definitions/heyform.mjs.map +1 -0
  457. package/dist/services/definitions/homeassistant.cjs +2 -3
  458. package/dist/services/definitions/homeassistant.cjs.map +1 -1
  459. package/dist/services/definitions/homeassistant.mjs +1 -1
  460. package/dist/services/definitions/hoppscotch.cjs +76 -0
  461. package/dist/services/definitions/hoppscotch.cjs.map +1 -0
  462. package/dist/services/definitions/hoppscotch.d.cts +7 -0
  463. package/dist/services/definitions/hoppscotch.d.cts.map +1 -0
  464. package/dist/services/definitions/hoppscotch.d.mts +7 -0
  465. package/dist/services/definitions/hoppscotch.d.mts.map +1 -0
  466. package/dist/services/definitions/hoppscotch.mjs +75 -0
  467. package/dist/services/definitions/hoppscotch.mjs.map +1 -0
  468. package/dist/services/definitions/immich.cjs +2 -3
  469. package/dist/services/definitions/immich.cjs.map +1 -1
  470. package/dist/services/definitions/immich.mjs +1 -1
  471. package/dist/services/definitions/index.cjs +220 -98
  472. package/dist/services/definitions/index.cjs.map +1 -1
  473. package/dist/services/definitions/index.d.cts +42 -1
  474. package/dist/services/definitions/index.d.cts.map +1 -1
  475. package/dist/services/definitions/index.d.mts +42 -1
  476. package/dist/services/definitions/index.d.mts.map +1 -1
  477. package/dist/services/definitions/index.mjs +85 -4
  478. package/dist/services/definitions/index.mjs.map +1 -1
  479. package/dist/services/definitions/infisical.cjs +99 -0
  480. package/dist/services/definitions/infisical.cjs.map +1 -0
  481. package/dist/services/definitions/infisical.d.cts +7 -0
  482. package/dist/services/definitions/infisical.d.cts.map +1 -0
  483. package/dist/services/definitions/infisical.d.mts +7 -0
  484. package/dist/services/definitions/infisical.d.mts.map +1 -0
  485. package/dist/services/definitions/infisical.mjs +98 -0
  486. package/dist/services/definitions/infisical.mjs.map +1 -0
  487. package/dist/services/definitions/jellyfin.cjs +2 -3
  488. package/dist/services/definitions/jellyfin.cjs.map +1 -1
  489. package/dist/services/definitions/jellyfin.mjs +1 -1
  490. package/dist/services/definitions/jenkins.cjs +2 -3
  491. package/dist/services/definitions/jenkins.cjs.map +1 -1
  492. package/dist/services/definitions/jenkins.mjs +1 -1
  493. package/dist/services/definitions/keycloak.cjs +122 -0
  494. package/dist/services/definitions/keycloak.cjs.map +1 -0
  495. package/dist/services/definitions/keycloak.d.cts +7 -0
  496. package/dist/services/definitions/keycloak.d.cts.map +1 -0
  497. package/dist/services/definitions/keycloak.d.mts +7 -0
  498. package/dist/services/definitions/keycloak.d.mts.map +1 -0
  499. package/dist/services/definitions/keycloak.mjs +121 -0
  500. package/dist/services/definitions/keycloak.mjs.map +1 -0
  501. package/dist/services/definitions/kimi.cjs +2 -3
  502. package/dist/services/definitions/kimi.cjs.map +1 -1
  503. package/dist/services/definitions/kimi.mjs +1 -1
  504. package/dist/services/definitions/kong.cjs +121 -0
  505. package/dist/services/definitions/kong.cjs.map +1 -0
  506. package/dist/services/definitions/kong.d.cts +7 -0
  507. package/dist/services/definitions/kong.d.cts.map +1 -0
  508. package/dist/services/definitions/kong.d.mts +7 -0
  509. package/dist/services/definitions/kong.d.mts.map +1 -0
  510. package/dist/services/definitions/kong.mjs +120 -0
  511. package/dist/services/definitions/kong.mjs.map +1 -0
  512. package/dist/services/definitions/lago.cjs +95 -0
  513. package/dist/services/definitions/lago.cjs.map +1 -0
  514. package/dist/services/definitions/lago.d.cts +7 -0
  515. package/dist/services/definitions/lago.d.cts.map +1 -0
  516. package/dist/services/definitions/lago.d.mts +7 -0
  517. package/dist/services/definitions/lago.d.mts.map +1 -0
  518. package/dist/services/definitions/lago.mjs +94 -0
  519. package/dist/services/definitions/lago.mjs.map +1 -0
  520. package/dist/services/definitions/langflow.cjs +88 -0
  521. package/dist/services/definitions/langflow.cjs.map +1 -0
  522. package/dist/services/definitions/langflow.d.cts +7 -0
  523. package/dist/services/definitions/langflow.d.cts.map +1 -0
  524. package/dist/services/definitions/langflow.d.mts +7 -0
  525. package/dist/services/definitions/langflow.d.mts.map +1 -0
  526. package/dist/services/definitions/langflow.mjs +87 -0
  527. package/dist/services/definitions/langflow.mjs.map +1 -0
  528. package/dist/services/definitions/langfuse.cjs +79 -0
  529. package/dist/services/definitions/langfuse.cjs.map +1 -0
  530. package/dist/services/definitions/langfuse.d.cts +7 -0
  531. package/dist/services/definitions/langfuse.d.cts.map +1 -0
  532. package/dist/services/definitions/langfuse.d.mts +7 -0
  533. package/dist/services/definitions/langfuse.d.mts.map +1 -0
  534. package/dist/services/definitions/langfuse.mjs +78 -0
  535. package/dist/services/definitions/langfuse.mjs.map +1 -0
  536. package/dist/services/definitions/lasuite-meet-agents.cjs +2 -3
  537. package/dist/services/definitions/lasuite-meet-agents.cjs.map +1 -1
  538. package/dist/services/definitions/lasuite-meet-agents.mjs +1 -1
  539. package/dist/services/definitions/lasuite-meet-backend.cjs +2 -3
  540. package/dist/services/definitions/lasuite-meet-backend.cjs.map +1 -1
  541. package/dist/services/definitions/lasuite-meet-backend.mjs +1 -1
  542. package/dist/services/definitions/lasuite-meet-frontend.cjs +2 -3
  543. package/dist/services/definitions/lasuite-meet-frontend.cjs.map +1 -1
  544. package/dist/services/definitions/lasuite-meet-frontend.mjs +1 -1
  545. package/dist/services/definitions/librechat.cjs +2 -3
  546. package/dist/services/definitions/librechat.cjs.map +1 -1
  547. package/dist/services/definitions/librechat.mjs +1 -1
  548. package/dist/services/definitions/lightpanda.cjs +2 -3
  549. package/dist/services/definitions/lightpanda.cjs.map +1 -1
  550. package/dist/services/definitions/lightpanda.mjs +1 -1
  551. package/dist/services/definitions/listmonk.cjs +118 -0
  552. package/dist/services/definitions/listmonk.cjs.map +1 -0
  553. package/dist/services/definitions/listmonk.d.cts +7 -0
  554. package/dist/services/definitions/listmonk.d.cts.map +1 -0
  555. package/dist/services/definitions/listmonk.d.mts +7 -0
  556. package/dist/services/definitions/listmonk.d.mts.map +1 -0
  557. package/dist/services/definitions/listmonk.mjs +117 -0
  558. package/dist/services/definitions/listmonk.mjs.map +1 -0
  559. package/dist/services/definitions/litellm.cjs +2 -3
  560. package/dist/services/definitions/litellm.cjs.map +1 -1
  561. package/dist/services/definitions/litellm.mjs +1 -1
  562. package/dist/services/definitions/livekit.cjs +2 -3
  563. package/dist/services/definitions/livekit.cjs.map +1 -1
  564. package/dist/services/definitions/livekit.mjs +1 -1
  565. package/dist/services/definitions/loki.cjs +2 -3
  566. package/dist/services/definitions/loki.cjs.map +1 -1
  567. package/dist/services/definitions/loki.mjs +1 -1
  568. package/dist/services/definitions/mariadb.cjs +81 -0
  569. package/dist/services/definitions/mariadb.cjs.map +1 -0
  570. package/dist/services/definitions/mariadb.d.cts +7 -0
  571. package/dist/services/definitions/mariadb.d.cts.map +1 -0
  572. package/dist/services/definitions/mariadb.d.mts +7 -0
  573. package/dist/services/definitions/mariadb.d.mts.map +1 -0
  574. package/dist/services/definitions/mariadb.mjs +80 -0
  575. package/dist/services/definitions/mariadb.mjs.map +1 -0
  576. package/dist/services/definitions/matomo.cjs +2 -3
  577. package/dist/services/definitions/matomo.cjs.map +1 -1
  578. package/dist/services/definitions/matomo.mjs +1 -1
  579. package/dist/services/definitions/matrix-synapse.cjs +2 -3
  580. package/dist/services/definitions/matrix-synapse.cjs.map +1 -1
  581. package/dist/services/definitions/matrix-synapse.mjs +1 -1
  582. package/dist/services/definitions/mattermost.cjs +2 -3
  583. package/dist/services/definitions/mattermost.cjs.map +1 -1
  584. package/dist/services/definitions/mattermost.mjs +1 -1
  585. package/dist/services/definitions/mautic.cjs +83 -0
  586. package/dist/services/definitions/mautic.cjs.map +1 -0
  587. package/dist/services/definitions/mautic.d.cts +7 -0
  588. package/dist/services/definitions/mautic.d.cts.map +1 -0
  589. package/dist/services/definitions/mautic.d.mts +7 -0
  590. package/dist/services/definitions/mautic.d.mts.map +1 -0
  591. package/dist/services/definitions/mautic.mjs +82 -0
  592. package/dist/services/definitions/mautic.mjs.map +1 -0
  593. package/dist/services/definitions/medusa.cjs +83 -0
  594. package/dist/services/definitions/medusa.cjs.map +1 -0
  595. package/dist/services/definitions/medusa.d.cts +7 -0
  596. package/dist/services/definitions/medusa.d.cts.map +1 -0
  597. package/dist/services/definitions/medusa.d.mts +7 -0
  598. package/dist/services/definitions/medusa.d.mts.map +1 -0
  599. package/dist/services/definitions/medusa.mjs +82 -0
  600. package/dist/services/definitions/medusa.mjs.map +1 -0
  601. package/dist/services/definitions/meilisearch.cjs +2 -3
  602. package/dist/services/definitions/meilisearch.cjs.map +1 -1
  603. package/dist/services/definitions/meilisearch.mjs +1 -1
  604. package/dist/services/definitions/milvus.cjs +2 -3
  605. package/dist/services/definitions/milvus.cjs.map +1 -1
  606. package/dist/services/definitions/milvus.mjs +1 -1
  607. package/dist/services/definitions/minio.cjs +2 -3
  608. package/dist/services/definitions/minio.cjs.map +1 -1
  609. package/dist/services/definitions/minio.mjs +1 -1
  610. package/dist/services/definitions/mission-control.cjs +2 -3
  611. package/dist/services/definitions/mission-control.cjs.map +1 -1
  612. package/dist/services/definitions/mission-control.mjs +1 -1
  613. package/dist/services/definitions/mixpost.cjs +2 -3
  614. package/dist/services/definitions/mixpost.cjs.map +1 -1
  615. package/dist/services/definitions/mixpost.mjs +1 -1
  616. package/dist/services/definitions/motion-canvas.cjs +2 -3
  617. package/dist/services/definitions/motion-canvas.cjs.map +1 -1
  618. package/dist/services/definitions/motion-canvas.mjs +1 -1
  619. package/dist/services/definitions/mysql.cjs +81 -0
  620. package/dist/services/definitions/mysql.cjs.map +1 -0
  621. package/dist/services/definitions/mysql.d.cts +7 -0
  622. package/dist/services/definitions/mysql.d.cts.map +1 -0
  623. package/dist/services/definitions/mysql.d.mts +7 -0
  624. package/dist/services/definitions/mysql.d.mts.map +1 -0
  625. package/dist/services/definitions/mysql.mjs +80 -0
  626. package/dist/services/definitions/mysql.mjs.map +1 -0
  627. package/dist/services/definitions/n8n.cjs +2 -3
  628. package/dist/services/definitions/n8n.cjs.map +1 -1
  629. package/dist/services/definitions/n8n.mjs +1 -1
  630. package/dist/services/definitions/neo4j.cjs +2 -3
  631. package/dist/services/definitions/neo4j.cjs.map +1 -1
  632. package/dist/services/definitions/neo4j.mjs +1 -1
  633. package/dist/services/definitions/nextcloud.cjs +2 -3
  634. package/dist/services/definitions/nextcloud.cjs.map +1 -1
  635. package/dist/services/definitions/nextcloud.mjs +1 -1
  636. package/dist/services/definitions/nocodb.cjs +2 -3
  637. package/dist/services/definitions/nocodb.cjs.map +1 -1
  638. package/dist/services/definitions/nocodb.mjs +1 -1
  639. package/dist/services/definitions/ntfy.cjs +2 -3
  640. package/dist/services/definitions/ntfy.cjs.map +1 -1
  641. package/dist/services/definitions/ntfy.mjs +1 -1
  642. package/dist/services/definitions/ollama.cjs +2 -3
  643. package/dist/services/definitions/ollama.cjs.map +1 -1
  644. package/dist/services/definitions/ollama.mjs +1 -1
  645. package/dist/services/definitions/open-webui.cjs +2 -3
  646. package/dist/services/definitions/open-webui.cjs.map +1 -1
  647. package/dist/services/definitions/open-webui.mjs +1 -1
  648. package/dist/services/definitions/opencode.cjs +2 -3
  649. package/dist/services/definitions/opencode.cjs.map +1 -1
  650. package/dist/services/definitions/opencode.mjs +1 -1
  651. package/dist/services/definitions/openhands.cjs +58 -0
  652. package/dist/services/definitions/openhands.cjs.map +1 -0
  653. package/dist/services/definitions/openhands.d.cts +7 -0
  654. package/dist/services/definitions/openhands.d.cts.map +1 -0
  655. package/dist/services/definitions/openhands.d.mts +7 -0
  656. package/dist/services/definitions/openhands.d.mts.map +1 -0
  657. package/dist/services/definitions/openhands.mjs +57 -0
  658. package/dist/services/definitions/openhands.mjs.map +1 -0
  659. package/dist/services/definitions/openpanel.cjs +2 -3
  660. package/dist/services/definitions/openpanel.cjs.map +1 -1
  661. package/dist/services/definitions/openpanel.mjs +1 -1
  662. package/dist/services/definitions/opensearch.cjs +94 -0
  663. package/dist/services/definitions/opensearch.cjs.map +1 -0
  664. package/dist/services/definitions/opensearch.d.cts +7 -0
  665. package/dist/services/definitions/opensearch.d.cts.map +1 -0
  666. package/dist/services/definitions/opensearch.d.mts +7 -0
  667. package/dist/services/definitions/opensearch.d.mts.map +1 -0
  668. package/dist/services/definitions/opensearch.mjs +93 -0
  669. package/dist/services/definitions/opensearch.mjs.map +1 -0
  670. package/dist/services/definitions/outline.cjs +2 -3
  671. package/dist/services/definitions/outline.cjs.map +1 -1
  672. package/dist/services/definitions/outline.mjs +1 -1
  673. package/dist/services/definitions/paperless-ngx.cjs +2 -3
  674. package/dist/services/definitions/paperless-ngx.cjs.map +1 -1
  675. package/dist/services/definitions/paperless-ngx.mjs +1 -1
  676. package/dist/services/definitions/pentagi.cjs +2 -3
  677. package/dist/services/definitions/pentagi.cjs.map +1 -1
  678. package/dist/services/definitions/pentagi.mjs +1 -1
  679. package/dist/services/definitions/pentestagent.cjs +2 -3
  680. package/dist/services/definitions/pentestagent.cjs.map +1 -1
  681. package/dist/services/definitions/pentestagent.mjs +1 -1
  682. package/dist/services/definitions/playwright-server.cjs +2 -3
  683. package/dist/services/definitions/playwright-server.cjs.map +1 -1
  684. package/dist/services/definitions/playwright-server.mjs +1 -1
  685. package/dist/services/definitions/pocketbase.cjs +61 -0
  686. package/dist/services/definitions/pocketbase.cjs.map +1 -0
  687. package/dist/services/definitions/pocketbase.d.cts +7 -0
  688. package/dist/services/definitions/pocketbase.d.cts.map +1 -0
  689. package/dist/services/definitions/pocketbase.d.mts +7 -0
  690. package/dist/services/definitions/pocketbase.d.mts.map +1 -0
  691. package/dist/services/definitions/pocketbase.mjs +60 -0
  692. package/dist/services/definitions/pocketbase.mjs.map +1 -0
  693. package/dist/services/definitions/portainer.cjs +2 -3
  694. package/dist/services/definitions/portainer.cjs.map +1 -1
  695. package/dist/services/definitions/portainer.mjs +1 -1
  696. package/dist/services/definitions/postgresql.cjs +2 -3
  697. package/dist/services/definitions/postgresql.cjs.map +1 -1
  698. package/dist/services/definitions/postgresql.mjs +1 -1
  699. package/dist/services/definitions/postiz.cjs +2 -3
  700. package/dist/services/definitions/postiz.cjs.map +1 -1
  701. package/dist/services/definitions/postiz.mjs +1 -1
  702. package/dist/services/definitions/prometheus.cjs +2 -3
  703. package/dist/services/definitions/prometheus.cjs.map +1 -1
  704. package/dist/services/definitions/prometheus.mjs +1 -1
  705. package/dist/services/definitions/qdrant.cjs +2 -3
  706. package/dist/services/definitions/qdrant.cjs.map +1 -1
  707. package/dist/services/definitions/qdrant.mjs +1 -1
  708. package/dist/services/definitions/rabbitmq.cjs +80 -0
  709. package/dist/services/definitions/rabbitmq.cjs.map +1 -0
  710. package/dist/services/definitions/rabbitmq.d.cts +7 -0
  711. package/dist/services/definitions/rabbitmq.d.cts.map +1 -0
  712. package/dist/services/definitions/rabbitmq.d.mts +7 -0
  713. package/dist/services/definitions/rabbitmq.d.mts.map +1 -0
  714. package/dist/services/definitions/rabbitmq.mjs +79 -0
  715. package/dist/services/definitions/rabbitmq.mjs.map +1 -0
  716. package/dist/services/definitions/ragflow.cjs +192 -0
  717. package/dist/services/definitions/ragflow.cjs.map +1 -0
  718. package/dist/services/definitions/ragflow.d.cts +7 -0
  719. package/dist/services/definitions/ragflow.d.cts.map +1 -0
  720. package/dist/services/definitions/ragflow.d.mts +7 -0
  721. package/dist/services/definitions/ragflow.d.mts.map +1 -0
  722. package/dist/services/definitions/ragflow.mjs +191 -0
  723. package/dist/services/definitions/ragflow.mjs.map +1 -0
  724. package/dist/services/definitions/redis.cjs +2 -3
  725. package/dist/services/definitions/redis.cjs.map +1 -1
  726. package/dist/services/definitions/redis.mjs +1 -1
  727. package/dist/services/definitions/remotion.cjs +2 -3
  728. package/dist/services/definitions/remotion.cjs.map +1 -1
  729. package/dist/services/definitions/remotion.mjs +1 -1
  730. package/dist/services/definitions/restic.cjs +58 -0
  731. package/dist/services/definitions/restic.cjs.map +1 -0
  732. package/dist/services/definitions/restic.d.cts +7 -0
  733. package/dist/services/definitions/restic.d.cts.map +1 -0
  734. package/dist/services/definitions/restic.d.mts +7 -0
  735. package/dist/services/definitions/restic.d.mts.map +1 -0
  736. package/dist/services/definitions/restic.mjs +57 -0
  737. package/dist/services/definitions/restic.mjs.map +1 -0
  738. package/dist/services/definitions/rocketchat.cjs +2 -3
  739. package/dist/services/definitions/rocketchat.cjs.map +1 -1
  740. package/dist/services/definitions/rocketchat.mjs +1 -1
  741. package/dist/services/definitions/saleor.cjs +76 -0
  742. package/dist/services/definitions/saleor.cjs.map +1 -0
  743. package/dist/services/definitions/saleor.d.cts +7 -0
  744. package/dist/services/definitions/saleor.d.cts.map +1 -0
  745. package/dist/services/definitions/saleor.d.mts +7 -0
  746. package/dist/services/definitions/saleor.d.mts.map +1 -0
  747. package/dist/services/definitions/saleor.mjs +75 -0
  748. package/dist/services/definitions/saleor.mjs.map +1 -0
  749. package/dist/services/definitions/scrapling.cjs +2 -3
  750. package/dist/services/definitions/scrapling.cjs.map +1 -1
  751. package/dist/services/definitions/scrapling.mjs +1 -1
  752. package/dist/services/definitions/searxng.cjs +2 -3
  753. package/dist/services/definitions/searxng.cjs.map +1 -1
  754. package/dist/services/definitions/searxng.mjs +1 -1
  755. package/dist/services/definitions/signoz.cjs +2 -3
  756. package/dist/services/definitions/signoz.cjs.map +1 -1
  757. package/dist/services/definitions/signoz.mjs +1 -1
  758. package/dist/services/definitions/solidityguard.cjs +2 -3
  759. package/dist/services/definitions/solidityguard.cjs.map +1 -1
  760. package/dist/services/definitions/solidityguard.mjs +1 -1
  761. package/dist/services/definitions/stable-diffusion.cjs +2 -3
  762. package/dist/services/definitions/stable-diffusion.cjs.map +1 -1
  763. package/dist/services/definitions/stable-diffusion.mjs +1 -1
  764. package/dist/services/definitions/steel-browser.cjs +2 -3
  765. package/dist/services/definitions/steel-browser.cjs.map +1 -1
  766. package/dist/services/definitions/steel-browser.mjs +1 -1
  767. package/dist/services/definitions/stirling-pdf.cjs +74 -0
  768. package/dist/services/definitions/stirling-pdf.cjs.map +1 -0
  769. package/dist/services/definitions/stirling-pdf.d.cts +7 -0
  770. package/dist/services/definitions/stirling-pdf.d.cts.map +1 -0
  771. package/dist/services/definitions/stirling-pdf.d.mts +7 -0
  772. package/dist/services/definitions/stirling-pdf.d.mts.map +1 -0
  773. package/dist/services/definitions/stirling-pdf.mjs +73 -0
  774. package/dist/services/definitions/stirling-pdf.mjs.map +1 -0
  775. package/dist/services/definitions/strapi.cjs +124 -0
  776. package/dist/services/definitions/strapi.cjs.map +1 -0
  777. package/dist/services/definitions/strapi.d.cts +7 -0
  778. package/dist/services/definitions/strapi.d.cts.map +1 -0
  779. package/dist/services/definitions/strapi.d.mts +7 -0
  780. package/dist/services/definitions/strapi.d.mts.map +1 -0
  781. package/dist/services/definitions/strapi.mjs +123 -0
  782. package/dist/services/definitions/strapi.mjs.map +1 -0
  783. package/dist/services/definitions/stream-gateway.cjs +2 -3
  784. package/dist/services/definitions/stream-gateway.cjs.map +1 -1
  785. package/dist/services/definitions/stream-gateway.mjs +1 -1
  786. package/dist/services/definitions/supabase.cjs +2 -3
  787. package/dist/services/definitions/supabase.cjs.map +1 -1
  788. package/dist/services/definitions/supabase.mjs +1 -1
  789. package/dist/services/definitions/tailscale.cjs +2 -3
  790. package/dist/services/definitions/tailscale.cjs.map +1 -1
  791. package/dist/services/definitions/tailscale.mjs +1 -1
  792. package/dist/services/definitions/temporal.cjs +2 -3
  793. package/dist/services/definitions/temporal.cjs.map +1 -1
  794. package/dist/services/definitions/temporal.mjs +1 -1
  795. package/dist/services/definitions/traefik.cjs +2 -3
  796. package/dist/services/definitions/traefik.cjs.map +1 -1
  797. package/dist/services/definitions/traefik.mjs +1 -1
  798. package/dist/services/definitions/twenty.cjs +83 -0
  799. package/dist/services/definitions/twenty.cjs.map +1 -0
  800. package/dist/services/definitions/twenty.d.cts +7 -0
  801. package/dist/services/definitions/twenty.d.cts.map +1 -0
  802. package/dist/services/definitions/twenty.d.mts +7 -0
  803. package/dist/services/definitions/twenty.d.mts.map +1 -0
  804. package/dist/services/definitions/twenty.mjs +82 -0
  805. package/dist/services/definitions/twenty.mjs.map +1 -0
  806. package/dist/services/definitions/umami.cjs +2 -3
  807. package/dist/services/definitions/umami.cjs.map +1 -1
  808. package/dist/services/definitions/umami.mjs +1 -1
  809. package/dist/services/definitions/uptime-kuma.cjs +2 -3
  810. package/dist/services/definitions/uptime-kuma.cjs.map +1 -1
  811. package/dist/services/definitions/uptime-kuma.mjs +1 -1
  812. package/dist/services/definitions/usesend.cjs +2 -3
  813. package/dist/services/definitions/usesend.cjs.map +1 -1
  814. package/dist/services/definitions/usesend.mjs +1 -1
  815. package/dist/services/definitions/valkey.cjs +2 -3
  816. package/dist/services/definitions/valkey.cjs.map +1 -1
  817. package/dist/services/definitions/valkey.mjs +1 -1
  818. package/dist/services/definitions/vault.cjs +71 -0
  819. package/dist/services/definitions/vault.cjs.map +1 -0
  820. package/dist/services/definitions/vault.d.cts +7 -0
  821. package/dist/services/definitions/vault.d.cts.map +1 -0
  822. package/dist/services/definitions/vault.d.mts +7 -0
  823. package/dist/services/definitions/vault.d.mts.map +1 -0
  824. package/dist/services/definitions/vault.mjs +70 -0
  825. package/dist/services/definitions/vault.mjs.map +1 -0
  826. package/dist/services/definitions/vaultwarden.cjs +2 -3
  827. package/dist/services/definitions/vaultwarden.cjs.map +1 -1
  828. package/dist/services/definitions/vaultwarden.mjs +1 -1
  829. package/dist/services/definitions/watchtower.cjs +2 -3
  830. package/dist/services/definitions/watchtower.cjs.map +1 -1
  831. package/dist/services/definitions/watchtower.mjs +1 -1
  832. package/dist/services/definitions/weaviate.cjs +2 -3
  833. package/dist/services/definitions/weaviate.cjs.map +1 -1
  834. package/dist/services/definitions/weaviate.mjs +1 -1
  835. package/dist/services/definitions/whisper.cjs +2 -3
  836. package/dist/services/definitions/whisper.cjs.map +1 -1
  837. package/dist/services/definitions/whisper.mjs +1 -1
  838. package/dist/services/definitions/xyops.cjs +2 -3
  839. package/dist/services/definitions/xyops.cjs.map +1 -1
  840. package/dist/services/definitions/xyops.mjs +1 -1
  841. package/dist/services/registry.cjs +3 -4
  842. package/dist/services/registry.cjs.map +1 -1
  843. package/dist/services/registry.d.mts.map +1 -1
  844. package/dist/services/registry.mjs +1 -2
  845. package/dist/services/registry.mjs.map +1 -1
  846. package/dist/services/registry.test.cjs +3 -4
  847. package/dist/services/registry.test.cjs.map +1 -1
  848. package/dist/services/registry.test.mjs +3 -4
  849. package/dist/services/registry.test.mjs.map +1 -1
  850. package/dist/{manifest-4uLbISXV.cjs → skill-manifest--IgY9REK.cjs} +40 -10
  851. package/dist/skill-manifest--IgY9REK.cjs.map +1 -0
  852. package/dist/{manifest-B8UDsVlR.mjs → skill-manifest-BVUXU0__.mjs} +24 -5
  853. package/dist/skill-manifest-BVUXU0__.mjs.map +1 -0
  854. package/dist/skills/registry.cjs +262 -3
  855. package/dist/skills/registry.cjs.map +1 -1
  856. package/dist/skills/registry.d.cts.map +1 -1
  857. package/dist/skills/registry.d.mts.map +1 -1
  858. package/dist/skills/registry.mjs +261 -1
  859. package/dist/skills/registry.mjs.map +1 -1
  860. package/dist/skills/skill-manifest.cjs +5 -23
  861. package/dist/skills/skill-manifest.mjs +1 -19
  862. package/dist/skills-BlzpHmpH.cjs +620 -0
  863. package/dist/skills-BlzpHmpH.cjs.map +1 -0
  864. package/dist/types-CR83OJiq.d.cts +243 -0
  865. package/dist/types-CR83OJiq.d.cts.map +1 -0
  866. package/dist/types-zYjGTuyn.d.mts +243 -0
  867. package/dist/types-zYjGTuyn.d.mts.map +1 -0
  868. package/dist/types.cjs +79 -3
  869. package/dist/types.cjs.map +1 -1
  870. package/dist/types.d.cts +1 -1
  871. package/dist/types.d.mts +1 -1
  872. package/dist/types.mjs +78 -1
  873. package/dist/types.mjs.map +1 -1
  874. package/dist/validator.cjs +3 -4
  875. package/dist/validator.cjs.map +1 -1
  876. package/dist/validator.mjs +1 -2
  877. package/dist/validator.mjs.map +1 -1
  878. package/dist/validator.test.cjs +5 -6
  879. package/dist/validator.test.cjs.map +1 -1
  880. package/dist/validator.test.mjs +3 -4
  881. package/dist/validator.test.mjs.map +1 -1
  882. package/dist/version-manager.cjs +3 -4
  883. package/dist/version-manager.cjs.map +1 -1
  884. package/dist/version-manager.d.mts.map +1 -1
  885. package/dist/version-manager.mjs +1 -2
  886. package/dist/version-manager.mjs.map +1 -1
  887. package/dist/version-manager.test.cjs +5 -6
  888. package/dist/version-manager.test.cjs.map +1 -1
  889. package/dist/version-manager.test.mjs +3 -4
  890. package/dist/version-manager.test.mjs.map +1 -1
  891. package/dist/{vi.2VT5v0um-BmRMvymT.cjs → vi.2VT5v0um-CRqXre87.cjs} +82 -202
  892. package/dist/{vi.2VT5v0um-CFyDIn0m.mjs.map → vi.2VT5v0um-CRqXre87.cjs.map} +1 -1
  893. package/dist/{vi.2VT5v0um-CFyDIn0m.mjs → vi.2VT5v0um-DvC3SVNc.mjs} +67 -186
  894. package/dist/{vi.2VT5v0um-BmRMvymT.cjs.map → vi.2VT5v0um-DvC3SVNc.mjs.map} +1 -1
  895. package/package.json +3 -3
  896. package/src/generators/postgres-init.ts +6 -0
  897. package/src/presets/presets.test.ts +4 -0
  898. package/src/presets/registry.ts +88 -0
  899. package/src/schema.ts +11 -0
  900. package/src/services/definitions/airbyte.ts +75 -0
  901. package/src/services/definitions/airflow.ts +109 -0
  902. package/src/services/definitions/appwrite.ts +181 -0
  903. package/src/services/definitions/authelia.ts +145 -0
  904. package/src/services/definitions/axolotl.ts +65 -0
  905. package/src/services/definitions/chatwoot-worker.ts +93 -0
  906. package/src/services/definitions/chatwoot.ts +106 -0
  907. package/src/services/definitions/dagster.ts +82 -0
  908. package/src/services/definitions/directus.ts +115 -0
  909. package/src/services/definitions/duplicati.ts +77 -0
  910. package/src/services/definitions/excalidraw.ts +46 -0
  911. package/src/services/definitions/firecrawl-playwright.ts +62 -0
  912. package/src/services/definitions/firecrawl.ts +146 -0
  913. package/src/services/definitions/flagsmith.ts +76 -0
  914. package/src/services/definitions/fonoster.ts +67 -0
  915. package/src/services/definitions/formbricks.ts +75 -0
  916. package/src/services/definitions/hedgedoc.ts +81 -0
  917. package/src/services/definitions/heyform.ts +67 -0
  918. package/src/services/definitions/hoppscotch.ts +74 -0
  919. package/src/services/definitions/index.ts +124 -0
  920. package/src/services/definitions/infisical.ts +97 -0
  921. package/src/services/definitions/keycloak.ts +119 -0
  922. package/src/services/definitions/kong.ts +116 -0
  923. package/src/services/definitions/lago.ts +95 -0
  924. package/src/services/definitions/langflow.ts +82 -0
  925. package/src/services/definitions/langfuse.ts +76 -0
  926. package/src/services/definitions/listmonk.ts +118 -0
  927. package/src/services/definitions/mariadb.ts +82 -0
  928. package/src/services/definitions/mautic.ts +82 -0
  929. package/src/services/definitions/medusa.ts +82 -0
  930. package/src/services/definitions/mysql.ts +82 -0
  931. package/src/services/definitions/openhands.ts +60 -0
  932. package/src/services/definitions/opensearch.ts +95 -0
  933. package/src/services/definitions/pocketbase.ts +62 -0
  934. package/src/services/definitions/rabbitmq.ts +81 -0
  935. package/src/services/definitions/ragflow.ts +175 -0
  936. package/src/services/definitions/restic.ts +60 -0
  937. package/src/services/definitions/saleor.ts +75 -0
  938. package/src/services/definitions/stirling-pdf.ts +73 -0
  939. package/src/services/definitions/strapi.ts +124 -0
  940. package/src/services/definitions/twenty.ts +82 -0
  941. package/src/services/definitions/vault.ts +74 -0
  942. package/src/skills/manifest.json +8 -0
  943. package/src/skills/registry.ts +119 -0
  944. package/src/types.ts +91 -2
  945. package/dist/chunk-C0xms8kb.cjs +0 -34
  946. package/dist/deployers/coolify.d.cts.map +0 -1
  947. package/dist/deployers/coolify.d.mts.map +0 -1
  948. package/dist/deployers/dokploy.d.cts.map +0 -1
  949. package/dist/deployers/dokploy.d.mts.map +0 -1
  950. package/dist/deployers/types.d.cts.map +0 -1
  951. package/dist/deployers/types.d.mts.map +0 -1
  952. package/dist/generators/skills.cjs.map +0 -1
  953. package/dist/manifest-4uLbISXV.cjs.map +0 -1
  954. package/dist/manifest-B8UDsVlR.mjs.map +0 -1
  955. package/dist/schema.d.cts.map +0 -1
  956. package/dist/schema.d.mts.map +0 -1
  957. package/dist/skills/skill-manifest.cjs.map +0 -1
  958. package/dist/skills/skill-manifest.mjs.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vault.d.cts","names":[],"sources":["../../../src/services/definitions/vault.ts"],"mappings":";;;cAEa,eAAA,EAAiB,iBAAA"}
@@ -0,0 +1,7 @@
1
+ import { ServiceDefinition } from "../../types.mjs";
2
+
3
+ //#region src/services/definitions/vault.d.ts
4
+ declare const vaultDefinition: ServiceDefinition;
5
+ //#endregion
6
+ export { vaultDefinition };
7
+ //# sourceMappingURL=vault.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vault.d.mts","names":[],"sources":["../../../src/services/definitions/vault.ts"],"mappings":";;;cAEa,eAAA,EAAiB,iBAAA"}
@@ -0,0 +1,70 @@
1
+ //#region src/services/definitions/vault.ts
2
+ const vaultDefinition = {
3
+ id: "vault",
4
+ name: "HashiCorp Vault",
5
+ description: "Industry-standard secrets management with dynamic credentials, encryption-as-a-service, audit logging, and access control policies.",
6
+ category: "security",
7
+ icon: "🔐",
8
+ image: "hashicorp/vault",
9
+ imageTag: "1.18",
10
+ ports: [{
11
+ host: 8200,
12
+ container: 8200,
13
+ description: "Vault API and web UI",
14
+ exposed: true
15
+ }],
16
+ volumes: [{
17
+ name: "vault-data",
18
+ containerPath: "/vault/data",
19
+ description: "Vault data and audit logs"
20
+ }, {
21
+ name: "vault-config",
22
+ containerPath: "/vault/config",
23
+ description: "Vault server configuration"
24
+ }],
25
+ environment: [{
26
+ key: "VAULT_ADDR",
27
+ defaultValue: "http://0.0.0.0:8200",
28
+ secret: false,
29
+ description: "Vault listener address",
30
+ required: true
31
+ }, {
32
+ key: "VAULT_DEV_ROOT_TOKEN_ID",
33
+ defaultValue: "${VAULT_ROOT_TOKEN}",
34
+ secret: true,
35
+ description: "Root token for dev mode",
36
+ required: false
37
+ }],
38
+ command: "server -dev",
39
+ healthcheck: {
40
+ test: "vault status || exit 1",
41
+ interval: "30s",
42
+ timeout: "10s",
43
+ retries: 3,
44
+ startPeriod: "15s"
45
+ },
46
+ dependsOn: [],
47
+ restartPolicy: "unless-stopped",
48
+ networks: ["openclaw-network"],
49
+ skills: [],
50
+ openclawEnvVars: [],
51
+ docsUrl: "https://developer.hashicorp.com/vault/docs",
52
+ tags: [
53
+ "secrets",
54
+ "vault",
55
+ "encryption",
56
+ "credentials",
57
+ "access-control",
58
+ "security"
59
+ ],
60
+ maturity: "stable",
61
+ requires: [],
62
+ recommends: [],
63
+ conflictsWith: [],
64
+ minMemoryMB: 256,
65
+ gpuRequired: false
66
+ };
67
+ //#endregion
68
+ export { vaultDefinition };
69
+
70
+ //# sourceMappingURL=vault.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vault.mjs","names":[],"sources":["../../../src/services/definitions/vault.ts"],"sourcesContent":["import type { ServiceDefinition } from \"../../types.js\";\n\nexport const vaultDefinition: ServiceDefinition = {\n\tid: \"vault\",\n\tname: \"HashiCorp Vault\",\n\tdescription:\n\t\t\"Industry-standard secrets management with dynamic credentials, encryption-as-a-service, audit logging, and access control policies.\",\n\tcategory: \"security\",\n\ticon: \"🔐\",\n\n\timage: \"hashicorp/vault\",\n\timageTag: \"1.18\",\n\tports: [\n\t\t{\n\t\t\thost: 8200,\n\t\t\tcontainer: 8200,\n\t\t\tdescription: \"Vault API and web UI\",\n\t\t\texposed: true,\n\t\t},\n\t],\n\tvolumes: [\n\t\t{\n\t\t\tname: \"vault-data\",\n\t\t\tcontainerPath: \"/vault/data\",\n\t\t\tdescription: \"Vault data and audit logs\",\n\t\t},\n\t\t{\n\t\t\tname: \"vault-config\",\n\t\t\tcontainerPath: \"/vault/config\",\n\t\t\tdescription: \"Vault server configuration\",\n\t\t},\n\t],\n\tenvironment: [\n\t\t{\n\t\t\tkey: \"VAULT_ADDR\",\n\t\t\tdefaultValue: \"http://0.0.0.0:8200\",\n\t\t\tsecret: false,\n\t\t\tdescription: \"Vault listener address\",\n\t\t\trequired: true,\n\t\t},\n\t\t{\n\t\t\tkey: \"VAULT_DEV_ROOT_TOKEN_ID\",\n\t\t\tdefaultValue: \"${VAULT_ROOT_TOKEN}\",\n\t\t\tsecret: true,\n\t\t\tdescription: \"Root token for dev mode\",\n\t\t\trequired: false,\n\t\t},\n\t],\n\tcommand: \"server -dev\",\n\thealthcheck: {\n\t\ttest: \"vault status || 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://developer.hashicorp.com/vault/docs\",\n\ttags: [\"secrets\", \"vault\", \"encryption\", \"credentials\", \"access-control\", \"security\"],\n\tmaturity: \"stable\",\n\n\trequires: [],\n\trecommends: [],\n\tconflictsWith: [],\n\n\tminMemoryMB: 256,\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,CACD;CACD,SAAS,CACR;EACC,MAAM;EACN,eAAe;EACf,aAAa;EACb,EACD;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,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;EAAW;EAAS;EAAc;EAAe;EAAkB;EAAW;CACrF,UAAU;CAEV,UAAU,EAAE;CACZ,YAAY,EAAE;CACd,eAAe,EAAE;CAEjB,aAAa;CACb,aAAa;CACb"}
@@ -1,5 +1,4 @@
1
- Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
2
-
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
2
  //#region src/services/definitions/vaultwarden.ts
4
3
  const vaultwardenDefinition = {
5
4
  id: "vaultwarden",
@@ -59,7 +58,7 @@ const vaultwardenDefinition = {
59
58
  minMemoryMB: 128,
60
59
  gpuRequired: false
61
60
  };
62
-
63
61
  //#endregion
64
62
  exports.vaultwardenDefinition = vaultwardenDefinition;
63
+
65
64
  //# sourceMappingURL=vaultwarden.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"vaultwarden.cjs","names":[],"sources":["../../../src/services/definitions/vaultwarden.ts"],"sourcesContent":["import type { ServiceDefinition } from \"../../types.js\";\n\nexport const vaultwardenDefinition: ServiceDefinition = {\n\tid: \"vaultwarden\",\n\tname: \"Vaultwarden\",\n\tdescription:\n\t\t\"Unofficial Bitwarden compatible server written in Rust, perfect for self-hosted deployments.\",\n\tcategory: \"security\",\n\ticon: \"🔐\",\n\n\timage: \"vaultwarden/server\",\n\timageTag: \"1.33.2-alpine\",\n\tports: [\n\t\t{\n\t\t\thost: 8843,\n\t\t\tcontainer: 80,\n\t\t\tdescription: \"Vaultwarden Web Interface / API\",\n\t\t\texposed: true,\n\t\t},\n\t],\n\tvolumes: [\n\t\t{\n\t\t\tname: \"vaultwarden_data\",\n\t\t\tcontainerPath: \"/data\",\n\t\t\tdescription: \"Persistent Vaultwarden data storage\",\n\t\t},\n\t],\n\tenvironment: [\n\t\t{\n\t\t\tkey: \"WEBSOCKET_ENABLED\",\n\t\t\tdefaultValue: \"true\",\n\t\t\tsecret: false,\n\t\t\tdescription: \"Enable WebSocket notifications\",\n\t\t\trequired: false,\n\t\t},\n\t\t{\n\t\t\tkey: \"SIGNUPS_ALLOWED\",\n\t\t\tdefaultValue: \"true\",\n\t\t\tsecret: false,\n\t\t\tdescription: \"Allow new user signups\",\n\t\t\trequired: false,\n\t\t},\n\t],\n\thealthcheck: {\n\t\ttest: \"curl --fail http://localhost:80/alive || 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://github.com/dani-garcia/vaultwarden/wiki\",\n\ttags: [\"security\", \"passwords\", \"bitwarden\", \"secrets\"],\n\tmaturity: \"stable\",\n\n\trequires: [],\n\trecommends: [\"caddy\", \"traefik\"],\n\tconflictsWith: [],\n\n\tminMemoryMB: 128,\n\tgpuRequired: false,\n};\n"],"mappings":";;;AAEA,MAAa,wBAA2C;CACvD,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;EAAY;EAAa;EAAa;EAAU;CACvD,UAAU;CAEV,UAAU,EAAE;CACZ,YAAY,CAAC,SAAS,UAAU;CAChC,eAAe,EAAE;CAEjB,aAAa;CACb,aAAa;CACb"}
1
+ {"version":3,"file":"vaultwarden.cjs","names":[],"sources":["../../../src/services/definitions/vaultwarden.ts"],"sourcesContent":["import type { ServiceDefinition } from \"../../types.js\";\n\nexport const vaultwardenDefinition: ServiceDefinition = {\n\tid: \"vaultwarden\",\n\tname: \"Vaultwarden\",\n\tdescription:\n\t\t\"Unofficial Bitwarden compatible server written in Rust, perfect for self-hosted deployments.\",\n\tcategory: \"security\",\n\ticon: \"🔐\",\n\n\timage: \"vaultwarden/server\",\n\timageTag: \"1.33.2-alpine\",\n\tports: [\n\t\t{\n\t\t\thost: 8843,\n\t\t\tcontainer: 80,\n\t\t\tdescription: \"Vaultwarden Web Interface / API\",\n\t\t\texposed: true,\n\t\t},\n\t],\n\tvolumes: [\n\t\t{\n\t\t\tname: \"vaultwarden_data\",\n\t\t\tcontainerPath: \"/data\",\n\t\t\tdescription: \"Persistent Vaultwarden data storage\",\n\t\t},\n\t],\n\tenvironment: [\n\t\t{\n\t\t\tkey: \"WEBSOCKET_ENABLED\",\n\t\t\tdefaultValue: \"true\",\n\t\t\tsecret: false,\n\t\t\tdescription: \"Enable WebSocket notifications\",\n\t\t\trequired: false,\n\t\t},\n\t\t{\n\t\t\tkey: \"SIGNUPS_ALLOWED\",\n\t\t\tdefaultValue: \"true\",\n\t\t\tsecret: false,\n\t\t\tdescription: \"Allow new user signups\",\n\t\t\trequired: false,\n\t\t},\n\t],\n\thealthcheck: {\n\t\ttest: \"curl --fail http://localhost:80/alive || 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://github.com/dani-garcia/vaultwarden/wiki\",\n\ttags: [\"security\", \"passwords\", \"bitwarden\", \"secrets\"],\n\tmaturity: \"stable\",\n\n\trequires: [],\n\trecommends: [\"caddy\", \"traefik\"],\n\tconflictsWith: [],\n\n\tminMemoryMB: 128,\n\tgpuRequired: false,\n};\n"],"mappings":";;AAEA,MAAa,wBAA2C;CACvD,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;EAAY;EAAa;EAAa;EAAU;CACvD,UAAU;CAEV,UAAU,EAAE;CACZ,YAAY,CAAC,SAAS,UAAU;CAChC,eAAe,EAAE;CAEjB,aAAa;CACb,aAAa;CACb"}
@@ -57,7 +57,7 @@ const vaultwardenDefinition = {
57
57
  minMemoryMB: 128,
58
58
  gpuRequired: false
59
59
  };
60
-
61
60
  //#endregion
62
61
  export { vaultwardenDefinition };
62
+
63
63
  //# sourceMappingURL=vaultwarden.mjs.map
@@ -1,5 +1,4 @@
1
- Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
2
-
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
2
  //#region src/services/definitions/watchtower.ts
4
3
  const watchtowerDefinition = {
5
4
  id: "watchtower",
@@ -43,7 +42,7 @@ const watchtowerDefinition = {
43
42
  minMemoryMB: 32,
44
43
  gpuRequired: false
45
44
  };
46
-
47
45
  //#endregion
48
46
  exports.watchtowerDefinition = watchtowerDefinition;
47
+
49
48
  //# sourceMappingURL=watchtower.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"watchtower.cjs","names":[],"sources":["../../../src/services/definitions/watchtower.ts"],"sourcesContent":["import type { ServiceDefinition } from \"../../types.js\";\n\nexport const watchtowerDefinition: ServiceDefinition = {\n\tid: \"watchtower\",\n\tname: \"Watchtower\",\n\tdescription: \"Automatically update Docker container images when new versions are released.\",\n\tcategory: \"dev-tools\",\n\ticon: \"🗼\",\n\n\timage: \"containrrr/watchtower\",\n\timageTag: \"latest\",\n\tports: [],\n\tvolumes: [],\n\tenvironment: [\n\t\t{\n\t\t\tkey: \"WATCHTOWER_CLEANUP\",\n\t\t\tdefaultValue: \"true\",\n\t\t\tsecret: false,\n\t\t\tdescription: \"Remove old images after update\",\n\t\t\trequired: false,\n\t\t},\n\t\t{\n\t\t\tkey: \"WATCHTOWER_POLL_INTERVAL\",\n\t\t\tdefaultValue: \"86400\",\n\t\t\tsecret: false,\n\t\t\tdescription: \"Check interval in seconds (default 24h)\",\n\t\t\trequired: false,\n\t\t},\n\t],\n\tdependsOn: [],\n\trestartPolicy: \"unless-stopped\",\n\tnetworks: [\"openclaw-network\"],\n\n\tskills: [],\n\topenclawEnvVars: [],\n\n\tdocsUrl: \"https://containrrr.dev/watchtower/\",\n\ttags: [\"auto-update\", \"docker\", \"maintenance\", \"devops\"],\n\tmaturity: \"stable\",\n\n\trequires: [],\n\trecommends: [],\n\tconflictsWith: [],\n\n\tminMemoryMB: 32,\n\tgpuRequired: false,\n};\n"],"mappings":";;;AAEA,MAAa,uBAA0C;CACtD,IAAI;CACJ,MAAM;CACN,aAAa;CACb,UAAU;CACV,MAAM;CAEN,OAAO;CACP,UAAU;CACV,OAAO,EAAE;CACT,SAAS,EAAE;CACX,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,WAAW,EAAE;CACb,eAAe;CACf,UAAU,CAAC,mBAAmB;CAE9B,QAAQ,EAAE;CACV,iBAAiB,EAAE;CAEnB,SAAS;CACT,MAAM;EAAC;EAAe;EAAU;EAAe;EAAS;CACxD,UAAU;CAEV,UAAU,EAAE;CACZ,YAAY,EAAE;CACd,eAAe,EAAE;CAEjB,aAAa;CACb,aAAa;CACb"}
1
+ {"version":3,"file":"watchtower.cjs","names":[],"sources":["../../../src/services/definitions/watchtower.ts"],"sourcesContent":["import type { ServiceDefinition } from \"../../types.js\";\n\nexport const watchtowerDefinition: ServiceDefinition = {\n\tid: \"watchtower\",\n\tname: \"Watchtower\",\n\tdescription: \"Automatically update Docker container images when new versions are released.\",\n\tcategory: \"dev-tools\",\n\ticon: \"🗼\",\n\n\timage: \"containrrr/watchtower\",\n\timageTag: \"latest\",\n\tports: [],\n\tvolumes: [],\n\tenvironment: [\n\t\t{\n\t\t\tkey: \"WATCHTOWER_CLEANUP\",\n\t\t\tdefaultValue: \"true\",\n\t\t\tsecret: false,\n\t\t\tdescription: \"Remove old images after update\",\n\t\t\trequired: false,\n\t\t},\n\t\t{\n\t\t\tkey: \"WATCHTOWER_POLL_INTERVAL\",\n\t\t\tdefaultValue: \"86400\",\n\t\t\tsecret: false,\n\t\t\tdescription: \"Check interval in seconds (default 24h)\",\n\t\t\trequired: false,\n\t\t},\n\t],\n\tdependsOn: [],\n\trestartPolicy: \"unless-stopped\",\n\tnetworks: [\"openclaw-network\"],\n\n\tskills: [],\n\topenclawEnvVars: [],\n\n\tdocsUrl: \"https://containrrr.dev/watchtower/\",\n\ttags: [\"auto-update\", \"docker\", \"maintenance\", \"devops\"],\n\tmaturity: \"stable\",\n\n\trequires: [],\n\trecommends: [],\n\tconflictsWith: [],\n\n\tminMemoryMB: 32,\n\tgpuRequired: false,\n};\n"],"mappings":";;AAEA,MAAa,uBAA0C;CACtD,IAAI;CACJ,MAAM;CACN,aAAa;CACb,UAAU;CACV,MAAM;CAEN,OAAO;CACP,UAAU;CACV,OAAO,EAAE;CACT,SAAS,EAAE;CACX,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,WAAW,EAAE;CACb,eAAe;CACf,UAAU,CAAC,mBAAmB;CAE9B,QAAQ,EAAE;CACV,iBAAiB,EAAE;CAEnB,SAAS;CACT,MAAM;EAAC;EAAe;EAAU;EAAe;EAAS;CACxD,UAAU;CAEV,UAAU,EAAE;CACZ,YAAY,EAAE;CACd,eAAe,EAAE;CAEjB,aAAa;CACb,aAAa;CACb"}
@@ -41,7 +41,7 @@ const watchtowerDefinition = {
41
41
  minMemoryMB: 32,
42
42
  gpuRequired: false
43
43
  };
44
-
45
44
  //#endregion
46
45
  export { watchtowerDefinition };
46
+
47
47
  //# sourceMappingURL=watchtower.mjs.map
@@ -1,5 +1,4 @@
1
- Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
2
-
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
2
  //#region src/services/definitions/weaviate.ts
4
3
  const weaviateDefinition = {
5
4
  id: "weaviate",
@@ -86,7 +85,7 @@ const weaviateDefinition = {
86
85
  minMemoryMB: 1024,
87
86
  gpuRequired: false
88
87
  };
89
-
90
88
  //#endregion
91
89
  exports.weaviateDefinition = weaviateDefinition;
90
+
92
91
  //# sourceMappingURL=weaviate.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"weaviate.cjs","names":[],"sources":["../../../src/services/definitions/weaviate.ts"],"sourcesContent":["import type { ServiceDefinition } from \"../../types.js\";\n\nexport const weaviateDefinition: ServiceDefinition = {\n\tid: \"weaviate\",\n\tname: \"Weaviate\",\n\tdescription:\n\t\t\"Cloud-native vector database for scalable AI applications with built-in vectorization modules, hybrid search, and GraphQL API.\",\n\tcategory: \"vector-db\",\n\ticon: \"🔷\",\n\n\timage: \"semitechnologies/weaviate\",\n\timageTag: \"v1.36.0\",\n\tports: [\n\t\t{\n\t\t\thost: 8082,\n\t\t\tcontainer: 8080,\n\t\t\tdescription: \"Weaviate REST and GraphQL API\",\n\t\t\texposed: true,\n\t\t},\n\t\t{\n\t\t\thost: 50051,\n\t\t\tcontainer: 50051,\n\t\t\tdescription: \"Weaviate gRPC API\",\n\t\t\texposed: false,\n\t\t},\n\t],\n\tvolumes: [\n\t\t{\n\t\t\tname: \"weaviate-data\",\n\t\t\tcontainerPath: \"/var/lib/weaviate\",\n\t\t\tdescription: \"Persistent Weaviate vector and object storage\",\n\t\t},\n\t],\n\tenvironment: [\n\t\t{\n\t\t\tkey: \"QUERY_DEFAULTS__LIMIT\",\n\t\t\tdefaultValue: \"25\",\n\t\t\tsecret: false,\n\t\t\tdescription: \"Default query result limit\",\n\t\t\trequired: true,\n\t\t},\n\t\t{\n\t\t\tkey: \"AUTHENTICATION_ANONYMOUS_ACCESS_ENABLED\",\n\t\t\tdefaultValue: \"true\",\n\t\t\tsecret: false,\n\t\t\tdescription: \"Enable anonymous access (disable in production)\",\n\t\t\trequired: true,\n\t\t},\n\t\t{\n\t\t\tkey: \"PERSISTENCE_DATA_PATH\",\n\t\t\tdefaultValue: \"/var/lib/weaviate\",\n\t\t\tsecret: false,\n\t\t\tdescription: \"Path for persistent data storage\",\n\t\t\trequired: true,\n\t\t},\n\t],\n\thealthcheck: {\n\t\ttest: \"curl -sf http://localhost:8080/v1/.well-known/ready || 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\t\t{\n\t\t\tkey: \"WEAVIATE_HOST\",\n\t\t\tdefaultValue: \"weaviate\",\n\t\t\tsecret: false,\n\t\t\tdescription: \"Weaviate hostname for OpenClaw\",\n\t\t\trequired: true,\n\t\t},\n\t\t{\n\t\t\tkey: \"WEAVIATE_PORT\",\n\t\t\tdefaultValue: \"8080\",\n\t\t\tsecret: false,\n\t\t\tdescription: \"Weaviate port for OpenClaw\",\n\t\t\trequired: true,\n\t\t},\n\t],\n\n\tdocsUrl: \"https://weaviate.io/developers/weaviate\",\n\ttags: [\"vector\", \"graphql\", \"hybrid-search\", \"ai-native\"],\n\tmaturity: \"stable\",\n\n\trequires: [],\n\trecommends: [],\n\tconflictsWith: [],\n\n\tminMemoryMB: 1024,\n\tgpuRequired: false,\n};\n"],"mappings":";;;AAEA,MAAa,qBAAwC;CACpD,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;EACZ;GACC,KAAK;GACL,cAAc;GACd,QAAQ;GACR,aAAa;GACb,UAAU;GACV;EACD;GACC,KAAK;GACL,cAAc;GACd,QAAQ;GACR,aAAa;GACb,UAAU;GACV;EACD;GACC,KAAK;GACL,cAAc;GACd,QAAQ;GACR,aAAa;GACb,UAAU;GACV;EACD;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,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;EAAU;EAAW;EAAiB;EAAY;CACzD,UAAU;CAEV,UAAU,EAAE;CACZ,YAAY,EAAE;CACd,eAAe,EAAE;CAEjB,aAAa;CACb,aAAa;CACb"}
1
+ {"version":3,"file":"weaviate.cjs","names":[],"sources":["../../../src/services/definitions/weaviate.ts"],"sourcesContent":["import type { ServiceDefinition } from \"../../types.js\";\n\nexport const weaviateDefinition: ServiceDefinition = {\n\tid: \"weaviate\",\n\tname: \"Weaviate\",\n\tdescription:\n\t\t\"Cloud-native vector database for scalable AI applications with built-in vectorization modules, hybrid search, and GraphQL API.\",\n\tcategory: \"vector-db\",\n\ticon: \"🔷\",\n\n\timage: \"semitechnologies/weaviate\",\n\timageTag: \"v1.36.0\",\n\tports: [\n\t\t{\n\t\t\thost: 8082,\n\t\t\tcontainer: 8080,\n\t\t\tdescription: \"Weaviate REST and GraphQL API\",\n\t\t\texposed: true,\n\t\t},\n\t\t{\n\t\t\thost: 50051,\n\t\t\tcontainer: 50051,\n\t\t\tdescription: \"Weaviate gRPC API\",\n\t\t\texposed: false,\n\t\t},\n\t],\n\tvolumes: [\n\t\t{\n\t\t\tname: \"weaviate-data\",\n\t\t\tcontainerPath: \"/var/lib/weaviate\",\n\t\t\tdescription: \"Persistent Weaviate vector and object storage\",\n\t\t},\n\t],\n\tenvironment: [\n\t\t{\n\t\t\tkey: \"QUERY_DEFAULTS__LIMIT\",\n\t\t\tdefaultValue: \"25\",\n\t\t\tsecret: false,\n\t\t\tdescription: \"Default query result limit\",\n\t\t\trequired: true,\n\t\t},\n\t\t{\n\t\t\tkey: \"AUTHENTICATION_ANONYMOUS_ACCESS_ENABLED\",\n\t\t\tdefaultValue: \"true\",\n\t\t\tsecret: false,\n\t\t\tdescription: \"Enable anonymous access (disable in production)\",\n\t\t\trequired: true,\n\t\t},\n\t\t{\n\t\t\tkey: \"PERSISTENCE_DATA_PATH\",\n\t\t\tdefaultValue: \"/var/lib/weaviate\",\n\t\t\tsecret: false,\n\t\t\tdescription: \"Path for persistent data storage\",\n\t\t\trequired: true,\n\t\t},\n\t],\n\thealthcheck: {\n\t\ttest: \"curl -sf http://localhost:8080/v1/.well-known/ready || 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\t\t{\n\t\t\tkey: \"WEAVIATE_HOST\",\n\t\t\tdefaultValue: \"weaviate\",\n\t\t\tsecret: false,\n\t\t\tdescription: \"Weaviate hostname for OpenClaw\",\n\t\t\trequired: true,\n\t\t},\n\t\t{\n\t\t\tkey: \"WEAVIATE_PORT\",\n\t\t\tdefaultValue: \"8080\",\n\t\t\tsecret: false,\n\t\t\tdescription: \"Weaviate port for OpenClaw\",\n\t\t\trequired: true,\n\t\t},\n\t],\n\n\tdocsUrl: \"https://weaviate.io/developers/weaviate\",\n\ttags: [\"vector\", \"graphql\", \"hybrid-search\", \"ai-native\"],\n\tmaturity: \"stable\",\n\n\trequires: [],\n\trecommends: [],\n\tconflictsWith: [],\n\n\tminMemoryMB: 1024,\n\tgpuRequired: false,\n};\n"],"mappings":";;AAEA,MAAa,qBAAwC;CACpD,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;EACZ;GACC,KAAK;GACL,cAAc;GACd,QAAQ;GACR,aAAa;GACb,UAAU;GACV;EACD;GACC,KAAK;GACL,cAAc;GACd,QAAQ;GACR,aAAa;GACb,UAAU;GACV;EACD;GACC,KAAK;GACL,cAAc;GACd,QAAQ;GACR,aAAa;GACb,UAAU;GACV;EACD;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,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;EAAU;EAAW;EAAiB;EAAY;CACzD,UAAU;CAEV,UAAU,EAAE;CACZ,YAAY,EAAE;CACd,eAAe,EAAE;CAEjB,aAAa;CACb,aAAa;CACb"}
@@ -84,7 +84,7 @@ const weaviateDefinition = {
84
84
  minMemoryMB: 1024,
85
85
  gpuRequired: false
86
86
  };
87
-
88
87
  //#endregion
89
88
  export { weaviateDefinition };
89
+
90
90
  //# sourceMappingURL=weaviate.mjs.map
@@ -1,5 +1,4 @@
1
- Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
2
-
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
2
  //#region src/services/definitions/whisper.ts
4
3
  const whisperDefinition = {
5
4
  id: "whisper",
@@ -58,7 +57,7 @@ const whisperDefinition = {
58
57
  minMemoryMB: 1024,
59
58
  gpuRequired: false
60
59
  };
61
-
62
60
  //#endregion
63
61
  exports.whisperDefinition = whisperDefinition;
62
+
64
63
  //# sourceMappingURL=whisper.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"whisper.cjs","names":[],"sources":["../../../src/services/definitions/whisper.ts"],"sourcesContent":["import type { ServiceDefinition } from \"../../types.js\";\n\nexport const whisperDefinition: ServiceDefinition = {\n\tid: \"whisper\",\n\tname: \"Faster Whisper Server\",\n\tdescription:\n\t\t\"Self-hosted speech-to-text transcription service using the Faster Whisper engine for high-performance audio transcription.\",\n\tcategory: \"ai\",\n\ticon: \"🎙️\",\n\n\timage: \"fedirz/faster-whisper-server\",\n\timageTag: \"latest-cpu\",\n\tports: [\n\t\t{\n\t\t\thost: 8001,\n\t\t\tcontainer: 8000,\n\t\t\tdescription: \"Whisper transcription API\",\n\t\t\texposed: true,\n\t\t},\n\t],\n\tvolumes: [],\n\tenvironment: [],\n\thealthcheck: {\n\t\ttest: \"curl -sf http://localhost:8000/health || exit 1\",\n\t\tinterval: \"30s\",\n\t\ttimeout: \"10s\",\n\t\tretries: 3,\n\t\tstartPeriod: \"30s\",\n\t},\n\tdependsOn: [],\n\trestartPolicy: \"unless-stopped\",\n\tnetworks: [\"openclaw-network\"],\n\n\tskills: [{ skillId: \"whisper-transcribe\", autoInstall: true }],\n\topenclawEnvVars: [\n\t\t{\n\t\t\tkey: \"WHISPER_HOST\",\n\t\t\tdefaultValue: \"whisper\",\n\t\t\tsecret: false,\n\t\t\tdescription: \"Whisper hostname for OpenClaw\",\n\t\t\trequired: true,\n\t\t},\n\t\t{\n\t\t\tkey: \"WHISPER_PORT\",\n\t\t\tdefaultValue: \"8000\",\n\t\t\tsecret: false,\n\t\t\tdescription: \"Whisper port for OpenClaw\",\n\t\t\trequired: true,\n\t\t},\n\t],\n\n\tdocsUrl: \"https://github.com/fedirz/faster-whisper-server\",\n\ttags: [\"speech-to-text\", \"transcription\", \"audio\", \"whisper\"],\n\tmaturity: \"beta\",\n\n\trequires: [],\n\trecommends: [],\n\tconflictsWith: [],\n\n\tminMemoryMB: 1024,\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,EAAE;CACX,aAAa,EAAE;CACf,aAAa;EACZ,MAAM;EACN,UAAU;EACV,SAAS;EACT,SAAS;EACT,aAAa;EACb;CACD,WAAW,EAAE;CACb,eAAe;CACf,UAAU,CAAC,mBAAmB;CAE9B,QAAQ,CAAC;EAAE,SAAS;EAAsB,aAAa;EAAM,CAAC;CAC9D,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;EAAkB;EAAiB;EAAS;EAAU;CAC7D,UAAU;CAEV,UAAU,EAAE;CACZ,YAAY,EAAE;CACd,eAAe,EAAE;CAEjB,aAAa;CACb,aAAa;CACb"}
1
+ {"version":3,"file":"whisper.cjs","names":[],"sources":["../../../src/services/definitions/whisper.ts"],"sourcesContent":["import type { ServiceDefinition } from \"../../types.js\";\n\nexport const whisperDefinition: ServiceDefinition = {\n\tid: \"whisper\",\n\tname: \"Faster Whisper Server\",\n\tdescription:\n\t\t\"Self-hosted speech-to-text transcription service using the Faster Whisper engine for high-performance audio transcription.\",\n\tcategory: \"ai\",\n\ticon: \"🎙️\",\n\n\timage: \"fedirz/faster-whisper-server\",\n\timageTag: \"latest-cpu\",\n\tports: [\n\t\t{\n\t\t\thost: 8001,\n\t\t\tcontainer: 8000,\n\t\t\tdescription: \"Whisper transcription API\",\n\t\t\texposed: true,\n\t\t},\n\t],\n\tvolumes: [],\n\tenvironment: [],\n\thealthcheck: {\n\t\ttest: \"curl -sf http://localhost:8000/health || exit 1\",\n\t\tinterval: \"30s\",\n\t\ttimeout: \"10s\",\n\t\tretries: 3,\n\t\tstartPeriod: \"30s\",\n\t},\n\tdependsOn: [],\n\trestartPolicy: \"unless-stopped\",\n\tnetworks: [\"openclaw-network\"],\n\n\tskills: [{ skillId: \"whisper-transcribe\", autoInstall: true }],\n\topenclawEnvVars: [\n\t\t{\n\t\t\tkey: \"WHISPER_HOST\",\n\t\t\tdefaultValue: \"whisper\",\n\t\t\tsecret: false,\n\t\t\tdescription: \"Whisper hostname for OpenClaw\",\n\t\t\trequired: true,\n\t\t},\n\t\t{\n\t\t\tkey: \"WHISPER_PORT\",\n\t\t\tdefaultValue: \"8000\",\n\t\t\tsecret: false,\n\t\t\tdescription: \"Whisper port for OpenClaw\",\n\t\t\trequired: true,\n\t\t},\n\t],\n\n\tdocsUrl: \"https://github.com/fedirz/faster-whisper-server\",\n\ttags: [\"speech-to-text\", \"transcription\", \"audio\", \"whisper\"],\n\tmaturity: \"beta\",\n\n\trequires: [],\n\trecommends: [],\n\tconflictsWith: [],\n\n\tminMemoryMB: 1024,\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,EAAE;CACX,aAAa,EAAE;CACf,aAAa;EACZ,MAAM;EACN,UAAU;EACV,SAAS;EACT,SAAS;EACT,aAAa;EACb;CACD,WAAW,EAAE;CACb,eAAe;CACf,UAAU,CAAC,mBAAmB;CAE9B,QAAQ,CAAC;EAAE,SAAS;EAAsB,aAAa;EAAM,CAAC;CAC9D,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;EAAkB;EAAiB;EAAS;EAAU;CAC7D,UAAU;CAEV,UAAU,EAAE;CACZ,YAAY,EAAE;CACd,eAAe,EAAE;CAEjB,aAAa;CACb,aAAa;CACb"}
@@ -56,7 +56,7 @@ const whisperDefinition = {
56
56
  minMemoryMB: 1024,
57
57
  gpuRequired: false
58
58
  };
59
-
60
59
  //#endregion
61
60
  export { whisperDefinition };
61
+
62
62
  //# sourceMappingURL=whisper.mjs.map
@@ -1,5 +1,4 @@
1
- Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
2
-
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
2
  //#region src/services/definitions/xyops.ts
4
3
  const xyopsDefinition = {
5
4
  id: "xyops",
@@ -82,7 +81,7 @@ const xyopsDefinition = {
82
81
  minMemoryMB: 256,
83
82
  gpuRequired: false
84
83
  };
85
-
86
84
  //#endregion
87
85
  exports.xyopsDefinition = xyopsDefinition;
86
+
88
87
  //# sourceMappingURL=xyops.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"xyops.cjs","names":[],"sources":["../../../src/services/definitions/xyops.ts"],"sourcesContent":["import type { ServiceDefinition } from \"../../types.js\";\n\nexport const xyopsDefinition: ServiceDefinition = {\n\tid: \"xyops\",\n\tname: \"xyOps\",\n\tdescription:\n\t\t\"Job scheduling, workflow automation, server monitoring, alerting, and incident response platform with a visual workflow editor and fleet management.\",\n\tcategory: \"automation\",\n\ticon: \"⚙️\",\n\n\timage: \"ghcr.io/pixlcore/xyops\",\n\timageTag: \"latest\",\n\tports: [\n\t\t{\n\t\t\thost: 5522,\n\t\t\tcontainer: 5522,\n\t\t\tdescription: \"xyOps web interface\",\n\t\t\texposed: true,\n\t\t},\n\t\t{\n\t\t\thost: 5523,\n\t\t\tcontainer: 5523,\n\t\t\tdescription: \"xyOps secondary service\",\n\t\t\texposed: false,\n\t\t},\n\t],\n\tvolumes: [\n\t\t{\n\t\t\tname: \"xyops-data\",\n\t\t\tcontainerPath: \"/opt/xyops/data\",\n\t\t\tdescription: \"Persistent xyOps data and configuration\",\n\t\t},\n\t\t{\n\t\t\tname: \"/var/run/docker.sock\",\n\t\t\tcontainerPath: \"/var/run/docker.sock\",\n\t\t\tdescription: \"Docker socket for container management\",\n\t\t},\n\t],\n\tenvironment: [\n\t\t{\n\t\t\tkey: \"TZ\",\n\t\t\tdefaultValue: \"UTC\",\n\t\t\tsecret: false,\n\t\t\tdescription: \"Timezone for xyOps\",\n\t\t\trequired: false,\n\t\t},\n\t\t{\n\t\t\tkey: \"XYOPS_xysat_local\",\n\t\t\tdefaultValue: \"1\",\n\t\t\tsecret: false,\n\t\t\tdescription: \"Enable local satellite mode for monitoring the host\",\n\t\t\trequired: false,\n\t\t},\n\t],\n\thealthcheck: {\n\t\ttest: \"curl -sf http://localhost:5522 || exit 1\",\n\t\tinterval: \"30s\",\n\t\ttimeout: \"10s\",\n\t\tretries: 3,\n\t\tstartPeriod: \"30s\",\n\t},\n\tdependsOn: [],\n\trestartPolicy: \"unless-stopped\",\n\tnetworks: [\"openclaw-network\"],\n\n\tskills: [],\n\topenclawEnvVars: [\n\t\t{\n\t\t\tkey: \"XYOPS_HOST\",\n\t\t\tdefaultValue: \"xyops\",\n\t\t\tsecret: false,\n\t\t\tdescription: \"xyOps hostname for OpenClaw\",\n\t\t\trequired: true,\n\t\t},\n\t\t{\n\t\t\tkey: \"XYOPS_PORT\",\n\t\t\tdefaultValue: \"5522\",\n\t\t\tsecret: false,\n\t\t\tdescription: \"xyOps port for OpenClaw\",\n\t\t\trequired: true,\n\t\t},\n\t],\n\n\tdocsUrl: \"https://github.com/pixlcore/xyops\",\n\ttags: [\"scheduling\", \"automation\", \"monitoring\", \"alerting\", \"incident-response\", \"workflow\"],\n\tmaturity: \"stable\",\n\n\trequires: [],\n\trecommends: [],\n\tconflictsWith: [],\n\n\tminMemoryMB: 256,\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,EACD;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,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;EAAc;EAAc;EAAc;EAAY;EAAqB;EAAW;CAC7F,UAAU;CAEV,UAAU,EAAE;CACZ,YAAY,EAAE;CACd,eAAe,EAAE;CAEjB,aAAa;CACb,aAAa;CACb"}
1
+ {"version":3,"file":"xyops.cjs","names":[],"sources":["../../../src/services/definitions/xyops.ts"],"sourcesContent":["import type { ServiceDefinition } from \"../../types.js\";\n\nexport const xyopsDefinition: ServiceDefinition = {\n\tid: \"xyops\",\n\tname: \"xyOps\",\n\tdescription:\n\t\t\"Job scheduling, workflow automation, server monitoring, alerting, and incident response platform with a visual workflow editor and fleet management.\",\n\tcategory: \"automation\",\n\ticon: \"⚙️\",\n\n\timage: \"ghcr.io/pixlcore/xyops\",\n\timageTag: \"latest\",\n\tports: [\n\t\t{\n\t\t\thost: 5522,\n\t\t\tcontainer: 5522,\n\t\t\tdescription: \"xyOps web interface\",\n\t\t\texposed: true,\n\t\t},\n\t\t{\n\t\t\thost: 5523,\n\t\t\tcontainer: 5523,\n\t\t\tdescription: \"xyOps secondary service\",\n\t\t\texposed: false,\n\t\t},\n\t],\n\tvolumes: [\n\t\t{\n\t\t\tname: \"xyops-data\",\n\t\t\tcontainerPath: \"/opt/xyops/data\",\n\t\t\tdescription: \"Persistent xyOps data and configuration\",\n\t\t},\n\t\t{\n\t\t\tname: \"/var/run/docker.sock\",\n\t\t\tcontainerPath: \"/var/run/docker.sock\",\n\t\t\tdescription: \"Docker socket for container management\",\n\t\t},\n\t],\n\tenvironment: [\n\t\t{\n\t\t\tkey: \"TZ\",\n\t\t\tdefaultValue: \"UTC\",\n\t\t\tsecret: false,\n\t\t\tdescription: \"Timezone for xyOps\",\n\t\t\trequired: false,\n\t\t},\n\t\t{\n\t\t\tkey: \"XYOPS_xysat_local\",\n\t\t\tdefaultValue: \"1\",\n\t\t\tsecret: false,\n\t\t\tdescription: \"Enable local satellite mode for monitoring the host\",\n\t\t\trequired: false,\n\t\t},\n\t],\n\thealthcheck: {\n\t\ttest: \"curl -sf http://localhost:5522 || exit 1\",\n\t\tinterval: \"30s\",\n\t\ttimeout: \"10s\",\n\t\tretries: 3,\n\t\tstartPeriod: \"30s\",\n\t},\n\tdependsOn: [],\n\trestartPolicy: \"unless-stopped\",\n\tnetworks: [\"openclaw-network\"],\n\n\tskills: [],\n\topenclawEnvVars: [\n\t\t{\n\t\t\tkey: \"XYOPS_HOST\",\n\t\t\tdefaultValue: \"xyops\",\n\t\t\tsecret: false,\n\t\t\tdescription: \"xyOps hostname for OpenClaw\",\n\t\t\trequired: true,\n\t\t},\n\t\t{\n\t\t\tkey: \"XYOPS_PORT\",\n\t\t\tdefaultValue: \"5522\",\n\t\t\tsecret: false,\n\t\t\tdescription: \"xyOps port for OpenClaw\",\n\t\t\trequired: true,\n\t\t},\n\t],\n\n\tdocsUrl: \"https://github.com/pixlcore/xyops\",\n\ttags: [\"scheduling\", \"automation\", \"monitoring\", \"alerting\", \"incident-response\", \"workflow\"],\n\tmaturity: \"stable\",\n\n\trequires: [],\n\trecommends: [],\n\tconflictsWith: [],\n\n\tminMemoryMB: 256,\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,EACD;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,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;EAAc;EAAc;EAAc;EAAY;EAAqB;EAAW;CAC7F,UAAU;CAEV,UAAU,EAAE;CACZ,YAAY,EAAE;CACd,eAAe,EAAE;CAEjB,aAAa;CACb,aAAa;CACb"}
@@ -80,7 +80,7 @@ const xyopsDefinition = {
80
80
  minMemoryMB: 256,
81
81
  gpuRequired: false
82
82
  };
83
-
84
83
  //#endregion
85
84
  export { xyopsDefinition };
85
+
86
86
  //# sourceMappingURL=xyops.mjs.map
@@ -1,6 +1,5 @@
1
- Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
2
- const require_services_definitions_index = require('./definitions/index.cjs');
3
-
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_services_definitions_index = require("./definitions/index.cjs");
4
3
  //#region src/services/registry.ts
5
4
  const registryMap = /* @__PURE__ */ new Map();
6
5
  for (const def of require_services_definitions_index.allServiceDefinitions) {
@@ -25,11 +24,11 @@ function getAllServices() {
25
24
  function getServicesByTag(tag) {
26
25
  return require_services_definitions_index.allServiceDefinitions.filter((s) => s.tags.includes(tag));
27
26
  }
28
-
29
27
  //#endregion
30
28
  exports.getAllServices = getAllServices;
31
29
  exports.getServiceById = getServiceById;
32
30
  exports.getServicesByCategory = getServicesByCategory;
33
31
  exports.getServicesByTag = getServicesByTag;
34
32
  exports.serviceRegistry = serviceRegistry;
33
+
35
34
  //# sourceMappingURL=registry.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"registry.cjs","names":["allServiceDefinitions"],"sources":["../../src/services/registry.ts"],"sourcesContent":["import type { ServiceCategory, ServiceDefinition } from \"../types.js\";\nimport { allServiceDefinitions } from \"./definitions/index.js\";\n\n// Build the registry map and validate no duplicates\nconst registryMap = new Map<string, ServiceDefinition>();\n\nfor (const def of allServiceDefinitions) {\n\tif (registryMap.has(def.id)) {\n\t\tthrow new Error(\n\t\t\t`Duplicate service definition ID: \"${def.id}\". Each service must have a unique ID.`,\n\t\t);\n\t}\n\tregistryMap.set(def.id, def);\n}\n\n/** Readonly map of all registered services indexed by ID */\nexport const serviceRegistry: ReadonlyMap<string, ServiceDefinition> = registryMap;\n\n/** Look up a service by its unique ID */\nexport function getServiceById(id: string): ServiceDefinition | undefined {\n\treturn registryMap.get(id);\n}\n\n/** Get all services in a given category */\nexport function getServicesByCategory(category: ServiceCategory): ServiceDefinition[] {\n\treturn allServiceDefinitions.filter((s) => s.category === category);\n}\n\n/** Get all registered services */\nexport function getAllServices(): ServiceDefinition[] {\n\treturn [...allServiceDefinitions];\n}\n\n/** Get services matching a specific tag */\nexport function getServicesByTag(tag: string): ServiceDefinition[] {\n\treturn allServiceDefinitions.filter((s) => s.tags.includes(tag));\n}\n"],"mappings":";;;;AAIA,MAAM,8BAAc,IAAI,KAAgC;AAExD,KAAK,MAAM,OAAOA,0DAAuB;AACxC,KAAI,YAAY,IAAI,IAAI,GAAG,CAC1B,OAAM,IAAI,MACT,qCAAqC,IAAI,GAAG,wCAC5C;AAEF,aAAY,IAAI,IAAI,IAAI,IAAI;;;AAI7B,MAAa,kBAA0D;;AAGvE,SAAgB,eAAe,IAA2C;AACzE,QAAO,YAAY,IAAI,GAAG;;;AAI3B,SAAgB,sBAAsB,UAAgD;AACrF,QAAOA,yDAAsB,QAAQ,MAAM,EAAE,aAAa,SAAS;;;AAIpE,SAAgB,iBAAsC;AACrD,QAAO,CAAC,GAAGA,yDAAsB;;;AAIlC,SAAgB,iBAAiB,KAAkC;AAClE,QAAOA,yDAAsB,QAAQ,MAAM,EAAE,KAAK,SAAS,IAAI,CAAC"}
1
+ {"version":3,"file":"registry.cjs","names":["allServiceDefinitions"],"sources":["../../src/services/registry.ts"],"sourcesContent":["import type { ServiceCategory, ServiceDefinition } from \"../types.js\";\nimport { allServiceDefinitions } from \"./definitions/index.js\";\n\n// Build the registry map and validate no duplicates\nconst registryMap = new Map<string, ServiceDefinition>();\n\nfor (const def of allServiceDefinitions) {\n\tif (registryMap.has(def.id)) {\n\t\tthrow new Error(\n\t\t\t`Duplicate service definition ID: \"${def.id}\". Each service must have a unique ID.`,\n\t\t);\n\t}\n\tregistryMap.set(def.id, def);\n}\n\n/** Readonly map of all registered services indexed by ID */\nexport const serviceRegistry: ReadonlyMap<string, ServiceDefinition> = registryMap;\n\n/** Look up a service by its unique ID */\nexport function getServiceById(id: string): ServiceDefinition | undefined {\n\treturn registryMap.get(id);\n}\n\n/** Get all services in a given category */\nexport function getServicesByCategory(category: ServiceCategory): ServiceDefinition[] {\n\treturn allServiceDefinitions.filter((s) => s.category === category);\n}\n\n/** Get all registered services */\nexport function getAllServices(): ServiceDefinition[] {\n\treturn [...allServiceDefinitions];\n}\n\n/** Get services matching a specific tag */\nexport function getServicesByTag(tag: string): ServiceDefinition[] {\n\treturn allServiceDefinitions.filter((s) => s.tags.includes(tag));\n}\n"],"mappings":";;;AAIA,MAAM,8BAAc,IAAI,KAAgC;AAExD,KAAK,MAAM,OAAOA,mCAAAA,uBAAuB;AACxC,KAAI,YAAY,IAAI,IAAI,GAAG,CAC1B,OAAM,IAAI,MACT,qCAAqC,IAAI,GAAG,wCAC5C;AAEF,aAAY,IAAI,IAAI,IAAI,IAAI;;;AAI7B,MAAa,kBAA0D;;AAGvE,SAAgB,eAAe,IAA2C;AACzE,QAAO,YAAY,IAAI,GAAG;;;AAI3B,SAAgB,sBAAsB,UAAgD;AACrF,QAAOA,mCAAAA,sBAAsB,QAAQ,MAAM,EAAE,aAAa,SAAS;;;AAIpE,SAAgB,iBAAsC;AACrD,QAAO,CAAC,GAAGA,mCAAAA,sBAAsB;;;AAIlC,SAAgB,iBAAiB,KAAkC;AAClE,QAAOA,mCAAAA,sBAAsB,QAAQ,MAAM,EAAE,KAAK,SAAS,IAAI,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"registry.d.mts","names":[],"sources":["../../src/services/registry.ts"],"mappings":";;;;cAgBa,eAAA,EAAiB,WAAA,SAAoB,iBAAA;AAAlD;AAAA,iBAGgB,cAAA,CAAe,EAAA,WAAa,iBAAA;;iBAK5B,qBAAA,CAAsB,QAAA,EAAU,eAAA,GAAkB,iBAAA;;iBAKlD,cAAA,CAAA,GAAkB,iBAAA;;iBAKlB,gBAAA,CAAiB,GAAA,WAAc,iBAAA"}
1
+ {"version":3,"file":"registry.d.mts","names":[],"sources":["../../src/services/registry.ts"],"mappings":";;;;cAgBa,eAAA,EAAiB,WAAA,SAAoB,iBAAA;;iBAGlC,cAAA,CAAe,EAAA,WAAa,iBAAA;;iBAK5B,qBAAA,CAAsB,QAAA,EAAU,eAAA,GAAkB,iBAAA;;iBAKlD,cAAA,CAAA,GAAkB,iBAAA;AAVlC;AAAA,iBAegB,gBAAA,CAAiB,GAAA,WAAc,iBAAA"}
@@ -1,5 +1,4 @@
1
1
  import { allServiceDefinitions } from "./definitions/index.mjs";
2
-
3
2
  //#region src/services/registry.ts
4
3
  const registryMap = /* @__PURE__ */ new Map();
5
4
  for (const def of allServiceDefinitions) {
@@ -24,7 +23,7 @@ function getAllServices() {
24
23
  function getServicesByTag(tag) {
25
24
  return allServiceDefinitions.filter((s) => s.tags.includes(tag));
26
25
  }
27
-
28
26
  //#endregion
29
27
  export { getAllServices, getServiceById, getServicesByCategory, getServicesByTag, serviceRegistry };
28
+
30
29
  //# sourceMappingURL=registry.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"registry.mjs","names":[],"sources":["../../src/services/registry.ts"],"sourcesContent":["import type { ServiceCategory, ServiceDefinition } from \"../types.js\";\nimport { allServiceDefinitions } from \"./definitions/index.js\";\n\n// Build the registry map and validate no duplicates\nconst registryMap = new Map<string, ServiceDefinition>();\n\nfor (const def of allServiceDefinitions) {\n\tif (registryMap.has(def.id)) {\n\t\tthrow new Error(\n\t\t\t`Duplicate service definition ID: \"${def.id}\". Each service must have a unique ID.`,\n\t\t);\n\t}\n\tregistryMap.set(def.id, def);\n}\n\n/** Readonly map of all registered services indexed by ID */\nexport const serviceRegistry: ReadonlyMap<string, ServiceDefinition> = registryMap;\n\n/** Look up a service by its unique ID */\nexport function getServiceById(id: string): ServiceDefinition | undefined {\n\treturn registryMap.get(id);\n}\n\n/** Get all services in a given category */\nexport function getServicesByCategory(category: ServiceCategory): ServiceDefinition[] {\n\treturn allServiceDefinitions.filter((s) => s.category === category);\n}\n\n/** Get all registered services */\nexport function getAllServices(): ServiceDefinition[] {\n\treturn [...allServiceDefinitions];\n}\n\n/** Get services matching a specific tag */\nexport function getServicesByTag(tag: string): ServiceDefinition[] {\n\treturn allServiceDefinitions.filter((s) => s.tags.includes(tag));\n}\n"],"mappings":";;;AAIA,MAAM,8BAAc,IAAI,KAAgC;AAExD,KAAK,MAAM,OAAO,uBAAuB;AACxC,KAAI,YAAY,IAAI,IAAI,GAAG,CAC1B,OAAM,IAAI,MACT,qCAAqC,IAAI,GAAG,wCAC5C;AAEF,aAAY,IAAI,IAAI,IAAI,IAAI;;;AAI7B,MAAa,kBAA0D;;AAGvE,SAAgB,eAAe,IAA2C;AACzE,QAAO,YAAY,IAAI,GAAG;;;AAI3B,SAAgB,sBAAsB,UAAgD;AACrF,QAAO,sBAAsB,QAAQ,MAAM,EAAE,aAAa,SAAS;;;AAIpE,SAAgB,iBAAsC;AACrD,QAAO,CAAC,GAAG,sBAAsB;;;AAIlC,SAAgB,iBAAiB,KAAkC;AAClE,QAAO,sBAAsB,QAAQ,MAAM,EAAE,KAAK,SAAS,IAAI,CAAC"}
1
+ {"version":3,"file":"registry.mjs","names":[],"sources":["../../src/services/registry.ts"],"sourcesContent":["import type { ServiceCategory, ServiceDefinition } from \"../types.js\";\nimport { allServiceDefinitions } from \"./definitions/index.js\";\n\n// Build the registry map and validate no duplicates\nconst registryMap = new Map<string, ServiceDefinition>();\n\nfor (const def of allServiceDefinitions) {\n\tif (registryMap.has(def.id)) {\n\t\tthrow new Error(\n\t\t\t`Duplicate service definition ID: \"${def.id}\". Each service must have a unique ID.`,\n\t\t);\n\t}\n\tregistryMap.set(def.id, def);\n}\n\n/** Readonly map of all registered services indexed by ID */\nexport const serviceRegistry: ReadonlyMap<string, ServiceDefinition> = registryMap;\n\n/** Look up a service by its unique ID */\nexport function getServiceById(id: string): ServiceDefinition | undefined {\n\treturn registryMap.get(id);\n}\n\n/** Get all services in a given category */\nexport function getServicesByCategory(category: ServiceCategory): ServiceDefinition[] {\n\treturn allServiceDefinitions.filter((s) => s.category === category);\n}\n\n/** Get all registered services */\nexport function getAllServices(): ServiceDefinition[] {\n\treturn [...allServiceDefinitions];\n}\n\n/** Get services matching a specific tag */\nexport function getServicesByTag(tag: string): ServiceDefinition[] {\n\treturn allServiceDefinitions.filter((s) => s.tags.includes(tag));\n}\n"],"mappings":";;AAIA,MAAM,8BAAc,IAAI,KAAgC;AAExD,KAAK,MAAM,OAAO,uBAAuB;AACxC,KAAI,YAAY,IAAI,IAAI,GAAG,CAC1B,OAAM,IAAI,MACT,qCAAqC,IAAI,GAAG,wCAC5C;AAEF,aAAY,IAAI,IAAI,IAAI,IAAI;;;AAI7B,MAAa,kBAA0D;;AAGvE,SAAgB,eAAe,IAA2C;AACzE,QAAO,YAAY,IAAI,GAAG;;;AAI3B,SAAgB,sBAAsB,UAAgD;AACrF,QAAO,sBAAsB,QAAQ,MAAM,EAAE,aAAa,SAAS;;;AAIpE,SAAgB,iBAAsC;AACrD,QAAO,CAAC,GAAG,sBAAsB;;;AAIlC,SAAgB,iBAAiB,KAAkC;AAClE,QAAO,sBAAsB,QAAQ,MAAM,EAAE,KAAK,SAAS,IAAI,CAAC"}
@@ -1,6 +1,5 @@
1
- const require_vi_2VT5v0um = require('../vi.2VT5v0um-BmRMvymT.cjs');
2
- const require_services_registry = require('./registry.cjs');
3
-
1
+ const require_vi_2VT5v0um = require("../vi.2VT5v0um-CRqXre87.cjs");
2
+ const require_services_registry = require("./registry.cjs");
4
3
  //#region src/services/registry.test.ts
5
4
  require_vi_2VT5v0um.describe("service registry", () => {
6
5
  require_vi_2VT5v0um.it("has at least 60 services registered", () => {
@@ -58,6 +57,6 @@ require_vi_2VT5v0um.describe("service registry", () => {
58
57
  require_vi_2VT5v0um.globalExpect(portMap.size).toBeGreaterThan(0);
59
58
  });
60
59
  });
61
-
62
60
  //#endregion
61
+
63
62
  //# sourceMappingURL=registry.test.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"registry.test.cjs","names":["describe","getAllServices","getServiceById","getServicesByCategory","getServicesByTag"],"sources":["../../src/services/registry.test.ts"],"sourcesContent":["import { describe, expect, it } from \"vitest\";\nimport {\n\tgetAllServices,\n\tgetServiceById,\n\tgetServicesByCategory,\n\tgetServicesByTag,\n} from \"../services/registry.js\";\n\ndescribe(\"service registry\", () => {\n\tit(\"has at least 60 services registered\", () => {\n\t\tconst services = getAllServices();\n\t\texpect(services.length).toBeGreaterThanOrEqual(60);\n\t});\n\n\tit(\"finds redis by ID\", () => {\n\t\tconst redis = getServiceById(\"redis\");\n\t\texpect(redis).toBeDefined();\n\t\texpect(redis!.id).toBe(\"redis\");\n\t\texpect(redis!.name).toBe(\"Redis\");\n\t});\n\n\tit(\"returns undefined for unknown ID\", () => {\n\t\tconst result = getServiceById(\"nonexistent\");\n\t\texpect(result).toBeUndefined();\n\t});\n\n\tit(\"finds tailscale and it is mandatory\", () => {\n\t\tconst tailscale = getServiceById(\"tailscale\");\n\t\texpect(tailscale).toBeDefined();\n\t\texpect(tailscale!.id).toBe(\"tailscale\");\n\t\texpect(tailscale!.mandatory).toBe(true);\n\t});\n\n\tit(\"finds coolify, dokploy, livekit, and La Suite Meet services by ID\", () => {\n\t\texpect(getServiceById(\"coolify\")).toBeDefined();\n\t\texpect(getServiceById(\"dokploy\")).toBeDefined();\n\t\texpect(getServiceById(\"livekit\")).toBeDefined();\n\t\texpect(getServiceById(\"lasuite-meet-backend\")).toBeDefined();\n\t\texpect(getServiceById(\"lasuite-meet-frontend\")).toBeDefined();\n\t\texpect(getServiceById(\"lasuite-meet-agents\")).toBeDefined();\n\t});\n\n\tit(\"filters by category\", () => {\n\t\tconst databases = getServicesByCategory(\"database\");\n\t\tconst ids = databases.map((s) => s.id);\n\t\texpect(ids).toContain(\"redis\");\n\t\texpect(databases.length).toBeGreaterThanOrEqual(1);\n\t});\n\n\tit(\"filters by tag\", () => {\n\t\tconst cacheServices = getServicesByTag(\"cache\");\n\t\tconst ids = cacheServices.map((s) => s.id);\n\t\texpect(ids).toContain(\"redis\");\n\t\texpect(cacheServices.length).toBeGreaterThanOrEqual(1);\n\t});\n\n\tit(\"all service IDs are unique\", () => {\n\t\tconst services = getAllServices();\n\t\tconst ids = services.map((s) => s.id);\n\t\tconst uniqueIds = new Set(ids);\n\t\texpect(uniqueIds.size).toBe(ids.length);\n\t});\n\n\tit(\"no two services have the same exposed host port\", () => {\n\t\tconst services = getAllServices();\n\t\tconst portMap = new Map<number, string[]>();\n\n\t\tfor (const svc of services) {\n\t\t\tfor (const port of svc.ports) {\n\t\t\t\tif (!port.exposed) continue;\n\t\t\t\tconst existing = portMap.get(port.host) ?? [];\n\t\t\t\texisting.push(svc.id);\n\t\t\t\tportMap.set(port.host, existing);\n\t\t\t}\n\t\t}\n\n\t\t// Informational: log any shared ports but don't hard-fail,\n\t\t// since users may not enable all services simultaneously.\n\t\tconst conflicts: string[] = [];\n\t\tfor (const [port, serviceIds] of portMap) {\n\t\t\tif (serviceIds.length > 1) {\n\t\t\t\tconflicts.push(`Port ${port} shared by: ${serviceIds.join(\", \")}`);\n\t\t\t}\n\t\t}\n\n\t\t// This is informational — warn if there are conflicts but still pass.\n\t\t// If you want to enforce unique ports, change the next line to:\n\t\t// expect(conflicts).toHaveLength(0);\n\t\tif (conflicts.length > 0) {\n\t\t\tconsole.warn(\n\t\t\t\t`[informational] ${conflicts.length} port overlap(s) detected:\\n ${conflicts.join(\"\\n \")}`,\n\t\t\t);\n\t\t}\n\n\t\t// At minimum, verify we checked something\n\t\texpect(portMap.size).toBeGreaterThan(0);\n\t});\n});\n"],"mappings":";;;;AAQAA,6BAAS,0BAA0B;AAClC,wBAAG,6CAA6C;AAE/C,mCADiBC,0CAAgB,CACjB,OAAO,CAAC,uBAAuB,GAAG;GACjD;AAEF,wBAAG,2BAA2B;EAC7B,MAAM,QAAQC,yCAAe,QAAQ;AACrC,mCAAO,MAAM,CAAC,aAAa;AAC3B,mCAAO,MAAO,GAAG,CAAC,KAAK,QAAQ;AAC/B,mCAAO,MAAO,KAAK,CAAC,KAAK,QAAQ;GAChC;AAEF,wBAAG,0CAA0C;AAE5C,mCADeA,yCAAe,cAAc,CAC9B,CAAC,eAAe;GAC7B;AAEF,wBAAG,6CAA6C;EAC/C,MAAM,YAAYA,yCAAe,YAAY;AAC7C,mCAAO,UAAU,CAAC,aAAa;AAC/B,mCAAO,UAAW,GAAG,CAAC,KAAK,YAAY;AACvC,mCAAO,UAAW,UAAU,CAAC,KAAK,KAAK;GACtC;AAEF,wBAAG,2EAA2E;AAC7E,mCAAOA,yCAAe,UAAU,CAAC,CAAC,aAAa;AAC/C,mCAAOA,yCAAe,UAAU,CAAC,CAAC,aAAa;AAC/C,mCAAOA,yCAAe,UAAU,CAAC,CAAC,aAAa;AAC/C,mCAAOA,yCAAe,uBAAuB,CAAC,CAAC,aAAa;AAC5D,mCAAOA,yCAAe,wBAAwB,CAAC,CAAC,aAAa;AAC7D,mCAAOA,yCAAe,sBAAsB,CAAC,CAAC,aAAa;GAC1D;AAEF,wBAAG,6BAA6B;EAC/B,MAAM,YAAYC,gDAAsB,WAAW;AAEnD,mCADY,UAAU,KAAK,MAAM,EAAE,GAAG,CAC3B,CAAC,UAAU,QAAQ;AAC9B,mCAAO,UAAU,OAAO,CAAC,uBAAuB,EAAE;GACjD;AAEF,wBAAG,wBAAwB;EAC1B,MAAM,gBAAgBC,2CAAiB,QAAQ;AAE/C,mCADY,cAAc,KAAK,MAAM,EAAE,GAAG,CAC/B,CAAC,UAAU,QAAQ;AAC9B,mCAAO,cAAc,OAAO,CAAC,uBAAuB,EAAE;GACrD;AAEF,wBAAG,oCAAoC;EAEtC,MAAM,MADWH,0CAAgB,CACZ,KAAK,MAAM,EAAE,GAAG;AAErC,mCADkB,IAAI,IAAI,IAAI,CACb,KAAK,CAAC,KAAK,IAAI,OAAO;GACtC;AAEF,wBAAG,yDAAyD;EAC3D,MAAM,WAAWA,0CAAgB;EACjC,MAAM,0BAAU,IAAI,KAAuB;AAE3C,OAAK,MAAM,OAAO,SACjB,MAAK,MAAM,QAAQ,IAAI,OAAO;AAC7B,OAAI,CAAC,KAAK,QAAS;GACnB,MAAM,WAAW,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE;AAC7C,YAAS,KAAK,IAAI,GAAG;AACrB,WAAQ,IAAI,KAAK,MAAM,SAAS;;EAMlC,MAAM,YAAsB,EAAE;AAC9B,OAAK,MAAM,CAAC,MAAM,eAAe,QAChC,KAAI,WAAW,SAAS,EACvB,WAAU,KAAK,QAAQ,KAAK,cAAc,WAAW,KAAK,KAAK,GAAG;AAOpE,MAAI,UAAU,SAAS,EACtB,SAAQ,KACP,mBAAmB,UAAU,OAAO,gCAAgC,UAAU,KAAK,OAAO,GAC1F;AAIF,mCAAO,QAAQ,KAAK,CAAC,gBAAgB,EAAE;GACtC;EACD"}
1
+ {"version":3,"file":"registry.test.cjs","names":["describe","getAllServices","getServiceById","getServicesByCategory","getServicesByTag"],"sources":["../../src/services/registry.test.ts"],"sourcesContent":["import { describe, expect, it } from \"vitest\";\nimport {\n\tgetAllServices,\n\tgetServiceById,\n\tgetServicesByCategory,\n\tgetServicesByTag,\n} from \"../services/registry.js\";\n\ndescribe(\"service registry\", () => {\n\tit(\"has at least 60 services registered\", () => {\n\t\tconst services = getAllServices();\n\t\texpect(services.length).toBeGreaterThanOrEqual(60);\n\t});\n\n\tit(\"finds redis by ID\", () => {\n\t\tconst redis = getServiceById(\"redis\");\n\t\texpect(redis).toBeDefined();\n\t\texpect(redis!.id).toBe(\"redis\");\n\t\texpect(redis!.name).toBe(\"Redis\");\n\t});\n\n\tit(\"returns undefined for unknown ID\", () => {\n\t\tconst result = getServiceById(\"nonexistent\");\n\t\texpect(result).toBeUndefined();\n\t});\n\n\tit(\"finds tailscale and it is mandatory\", () => {\n\t\tconst tailscale = getServiceById(\"tailscale\");\n\t\texpect(tailscale).toBeDefined();\n\t\texpect(tailscale!.id).toBe(\"tailscale\");\n\t\texpect(tailscale!.mandatory).toBe(true);\n\t});\n\n\tit(\"finds coolify, dokploy, livekit, and La Suite Meet services by ID\", () => {\n\t\texpect(getServiceById(\"coolify\")).toBeDefined();\n\t\texpect(getServiceById(\"dokploy\")).toBeDefined();\n\t\texpect(getServiceById(\"livekit\")).toBeDefined();\n\t\texpect(getServiceById(\"lasuite-meet-backend\")).toBeDefined();\n\t\texpect(getServiceById(\"lasuite-meet-frontend\")).toBeDefined();\n\t\texpect(getServiceById(\"lasuite-meet-agents\")).toBeDefined();\n\t});\n\n\tit(\"filters by category\", () => {\n\t\tconst databases = getServicesByCategory(\"database\");\n\t\tconst ids = databases.map((s) => s.id);\n\t\texpect(ids).toContain(\"redis\");\n\t\texpect(databases.length).toBeGreaterThanOrEqual(1);\n\t});\n\n\tit(\"filters by tag\", () => {\n\t\tconst cacheServices = getServicesByTag(\"cache\");\n\t\tconst ids = cacheServices.map((s) => s.id);\n\t\texpect(ids).toContain(\"redis\");\n\t\texpect(cacheServices.length).toBeGreaterThanOrEqual(1);\n\t});\n\n\tit(\"all service IDs are unique\", () => {\n\t\tconst services = getAllServices();\n\t\tconst ids = services.map((s) => s.id);\n\t\tconst uniqueIds = new Set(ids);\n\t\texpect(uniqueIds.size).toBe(ids.length);\n\t});\n\n\tit(\"no two services have the same exposed host port\", () => {\n\t\tconst services = getAllServices();\n\t\tconst portMap = new Map<number, string[]>();\n\n\t\tfor (const svc of services) {\n\t\t\tfor (const port of svc.ports) {\n\t\t\t\tif (!port.exposed) continue;\n\t\t\t\tconst existing = portMap.get(port.host) ?? [];\n\t\t\t\texisting.push(svc.id);\n\t\t\t\tportMap.set(port.host, existing);\n\t\t\t}\n\t\t}\n\n\t\t// Informational: log any shared ports but don't hard-fail,\n\t\t// since users may not enable all services simultaneously.\n\t\tconst conflicts: string[] = [];\n\t\tfor (const [port, serviceIds] of portMap) {\n\t\t\tif (serviceIds.length > 1) {\n\t\t\t\tconflicts.push(`Port ${port} shared by: ${serviceIds.join(\", \")}`);\n\t\t\t}\n\t\t}\n\n\t\t// This is informational — warn if there are conflicts but still pass.\n\t\t// If you want to enforce unique ports, change the next line to:\n\t\t// expect(conflicts).toHaveLength(0);\n\t\tif (conflicts.length > 0) {\n\t\t\tconsole.warn(\n\t\t\t\t`[informational] ${conflicts.length} port overlap(s) detected:\\n ${conflicts.join(\"\\n \")}`,\n\t\t\t);\n\t\t}\n\n\t\t// At minimum, verify we checked something\n\t\texpect(portMap.size).toBeGreaterThan(0);\n\t});\n});\n"],"mappings":";;;AAQAA,oBAAAA,SAAS,0BAA0B;AAClC,qBAAA,GAAG,6CAA6C;AAE/C,sBAAA,aADiBC,0BAAAA,gBAAgB,CACjB,OAAO,CAAC,uBAAuB,GAAG;GACjD;AAEF,qBAAA,GAAG,2BAA2B;EAC7B,MAAM,QAAQC,0BAAAA,eAAe,QAAQ;AACrC,sBAAA,aAAO,MAAM,CAAC,aAAa;AAC3B,sBAAA,aAAO,MAAO,GAAG,CAAC,KAAK,QAAQ;AAC/B,sBAAA,aAAO,MAAO,KAAK,CAAC,KAAK,QAAQ;GAChC;AAEF,qBAAA,GAAG,0CAA0C;AAE5C,sBAAA,aADeA,0BAAAA,eAAe,cAAc,CAC9B,CAAC,eAAe;GAC7B;AAEF,qBAAA,GAAG,6CAA6C;EAC/C,MAAM,YAAYA,0BAAAA,eAAe,YAAY;AAC7C,sBAAA,aAAO,UAAU,CAAC,aAAa;AAC/B,sBAAA,aAAO,UAAW,GAAG,CAAC,KAAK,YAAY;AACvC,sBAAA,aAAO,UAAW,UAAU,CAAC,KAAK,KAAK;GACtC;AAEF,qBAAA,GAAG,2EAA2E;AAC7E,sBAAA,aAAOA,0BAAAA,eAAe,UAAU,CAAC,CAAC,aAAa;AAC/C,sBAAA,aAAOA,0BAAAA,eAAe,UAAU,CAAC,CAAC,aAAa;AAC/C,sBAAA,aAAOA,0BAAAA,eAAe,UAAU,CAAC,CAAC,aAAa;AAC/C,sBAAA,aAAOA,0BAAAA,eAAe,uBAAuB,CAAC,CAAC,aAAa;AAC5D,sBAAA,aAAOA,0BAAAA,eAAe,wBAAwB,CAAC,CAAC,aAAa;AAC7D,sBAAA,aAAOA,0BAAAA,eAAe,sBAAsB,CAAC,CAAC,aAAa;GAC1D;AAEF,qBAAA,GAAG,6BAA6B;EAC/B,MAAM,YAAYC,0BAAAA,sBAAsB,WAAW;AAEnD,sBAAA,aADY,UAAU,KAAK,MAAM,EAAE,GAAG,CAC3B,CAAC,UAAU,QAAQ;AAC9B,sBAAA,aAAO,UAAU,OAAO,CAAC,uBAAuB,EAAE;GACjD;AAEF,qBAAA,GAAG,wBAAwB;EAC1B,MAAM,gBAAgBC,0BAAAA,iBAAiB,QAAQ;AAE/C,sBAAA,aADY,cAAc,KAAK,MAAM,EAAE,GAAG,CAC/B,CAAC,UAAU,QAAQ;AAC9B,sBAAA,aAAO,cAAc,OAAO,CAAC,uBAAuB,EAAE;GACrD;AAEF,qBAAA,GAAG,oCAAoC;EAEtC,MAAM,MADWH,0BAAAA,gBAAgB,CACZ,KAAK,MAAM,EAAE,GAAG;AAErC,sBAAA,aADkB,IAAI,IAAI,IAAI,CACb,KAAK,CAAC,KAAK,IAAI,OAAO;GACtC;AAEF,qBAAA,GAAG,yDAAyD;EAC3D,MAAM,WAAWA,0BAAAA,gBAAgB;EACjC,MAAM,0BAAU,IAAI,KAAuB;AAE3C,OAAK,MAAM,OAAO,SACjB,MAAK,MAAM,QAAQ,IAAI,OAAO;AAC7B,OAAI,CAAC,KAAK,QAAS;GACnB,MAAM,WAAW,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE;AAC7C,YAAS,KAAK,IAAI,GAAG;AACrB,WAAQ,IAAI,KAAK,MAAM,SAAS;;EAMlC,MAAM,YAAsB,EAAE;AAC9B,OAAK,MAAM,CAAC,MAAM,eAAe,QAChC,KAAI,WAAW,SAAS,EACvB,WAAU,KAAK,QAAQ,KAAK,cAAc,WAAW,KAAK,KAAK,GAAG;AAOpE,MAAI,UAAU,SAAS,EACtB,SAAQ,KACP,mBAAmB,UAAU,OAAO,gCAAgC,UAAU,KAAK,OAAO,GAC1F;AAIF,sBAAA,aAAO,QAAQ,KAAK,CAAC,gBAAgB,EAAE;GACtC;EACD"}
@@ -1,6 +1,5 @@
1
- import { n as describe, r as it, t as globalExpect } from "../vi.2VT5v0um-CFyDIn0m.mjs";
1
+ import { n as describe, r as it, t as globalExpect } from "../vi.2VT5v0um-DvC3SVNc.mjs";
2
2
  import { getAllServices, getServiceById, getServicesByCategory, getServicesByTag } from "./registry.mjs";
3
-
4
3
  //#region src/services/registry.test.ts
5
4
  describe("service registry", () => {
6
5
  it("has at least 60 services registered", () => {
@@ -58,7 +57,7 @@ describe("service registry", () => {
58
57
  globalExpect(portMap.size).toBeGreaterThan(0);
59
58
  });
60
59
  });
61
-
62
60
  //#endregion
63
- export { };
61
+ export {};
62
+
64
63
  //# sourceMappingURL=registry.test.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"registry.test.mjs","names":[],"sources":["../../src/services/registry.test.ts"],"sourcesContent":["import { describe, expect, it } from \"vitest\";\nimport {\n\tgetAllServices,\n\tgetServiceById,\n\tgetServicesByCategory,\n\tgetServicesByTag,\n} from \"../services/registry.js\";\n\ndescribe(\"service registry\", () => {\n\tit(\"has at least 60 services registered\", () => {\n\t\tconst services = getAllServices();\n\t\texpect(services.length).toBeGreaterThanOrEqual(60);\n\t});\n\n\tit(\"finds redis by ID\", () => {\n\t\tconst redis = getServiceById(\"redis\");\n\t\texpect(redis).toBeDefined();\n\t\texpect(redis!.id).toBe(\"redis\");\n\t\texpect(redis!.name).toBe(\"Redis\");\n\t});\n\n\tit(\"returns undefined for unknown ID\", () => {\n\t\tconst result = getServiceById(\"nonexistent\");\n\t\texpect(result).toBeUndefined();\n\t});\n\n\tit(\"finds tailscale and it is mandatory\", () => {\n\t\tconst tailscale = getServiceById(\"tailscale\");\n\t\texpect(tailscale).toBeDefined();\n\t\texpect(tailscale!.id).toBe(\"tailscale\");\n\t\texpect(tailscale!.mandatory).toBe(true);\n\t});\n\n\tit(\"finds coolify, dokploy, livekit, and La Suite Meet services by ID\", () => {\n\t\texpect(getServiceById(\"coolify\")).toBeDefined();\n\t\texpect(getServiceById(\"dokploy\")).toBeDefined();\n\t\texpect(getServiceById(\"livekit\")).toBeDefined();\n\t\texpect(getServiceById(\"lasuite-meet-backend\")).toBeDefined();\n\t\texpect(getServiceById(\"lasuite-meet-frontend\")).toBeDefined();\n\t\texpect(getServiceById(\"lasuite-meet-agents\")).toBeDefined();\n\t});\n\n\tit(\"filters by category\", () => {\n\t\tconst databases = getServicesByCategory(\"database\");\n\t\tconst ids = databases.map((s) => s.id);\n\t\texpect(ids).toContain(\"redis\");\n\t\texpect(databases.length).toBeGreaterThanOrEqual(1);\n\t});\n\n\tit(\"filters by tag\", () => {\n\t\tconst cacheServices = getServicesByTag(\"cache\");\n\t\tconst ids = cacheServices.map((s) => s.id);\n\t\texpect(ids).toContain(\"redis\");\n\t\texpect(cacheServices.length).toBeGreaterThanOrEqual(1);\n\t});\n\n\tit(\"all service IDs are unique\", () => {\n\t\tconst services = getAllServices();\n\t\tconst ids = services.map((s) => s.id);\n\t\tconst uniqueIds = new Set(ids);\n\t\texpect(uniqueIds.size).toBe(ids.length);\n\t});\n\n\tit(\"no two services have the same exposed host port\", () => {\n\t\tconst services = getAllServices();\n\t\tconst portMap = new Map<number, string[]>();\n\n\t\tfor (const svc of services) {\n\t\t\tfor (const port of svc.ports) {\n\t\t\t\tif (!port.exposed) continue;\n\t\t\t\tconst existing = portMap.get(port.host) ?? [];\n\t\t\t\texisting.push(svc.id);\n\t\t\t\tportMap.set(port.host, existing);\n\t\t\t}\n\t\t}\n\n\t\t// Informational: log any shared ports but don't hard-fail,\n\t\t// since users may not enable all services simultaneously.\n\t\tconst conflicts: string[] = [];\n\t\tfor (const [port, serviceIds] of portMap) {\n\t\t\tif (serviceIds.length > 1) {\n\t\t\t\tconflicts.push(`Port ${port} shared by: ${serviceIds.join(\", \")}`);\n\t\t\t}\n\t\t}\n\n\t\t// This is informational — warn if there are conflicts but still pass.\n\t\t// If you want to enforce unique ports, change the next line to:\n\t\t// expect(conflicts).toHaveLength(0);\n\t\tif (conflicts.length > 0) {\n\t\t\tconsole.warn(\n\t\t\t\t`[informational] ${conflicts.length} port overlap(s) detected:\\n ${conflicts.join(\"\\n \")}`,\n\t\t\t);\n\t\t}\n\n\t\t// At minimum, verify we checked something\n\t\texpect(portMap.size).toBeGreaterThan(0);\n\t});\n});\n"],"mappings":";;;;AAQA,SAAS,0BAA0B;AAClC,IAAG,6CAA6C;AAE/C,eADiB,gBAAgB,CACjB,OAAO,CAAC,uBAAuB,GAAG;GACjD;AAEF,IAAG,2BAA2B;EAC7B,MAAM,QAAQ,eAAe,QAAQ;AACrC,eAAO,MAAM,CAAC,aAAa;AAC3B,eAAO,MAAO,GAAG,CAAC,KAAK,QAAQ;AAC/B,eAAO,MAAO,KAAK,CAAC,KAAK,QAAQ;GAChC;AAEF,IAAG,0CAA0C;AAE5C,eADe,eAAe,cAAc,CAC9B,CAAC,eAAe;GAC7B;AAEF,IAAG,6CAA6C;EAC/C,MAAM,YAAY,eAAe,YAAY;AAC7C,eAAO,UAAU,CAAC,aAAa;AAC/B,eAAO,UAAW,GAAG,CAAC,KAAK,YAAY;AACvC,eAAO,UAAW,UAAU,CAAC,KAAK,KAAK;GACtC;AAEF,IAAG,2EAA2E;AAC7E,eAAO,eAAe,UAAU,CAAC,CAAC,aAAa;AAC/C,eAAO,eAAe,UAAU,CAAC,CAAC,aAAa;AAC/C,eAAO,eAAe,UAAU,CAAC,CAAC,aAAa;AAC/C,eAAO,eAAe,uBAAuB,CAAC,CAAC,aAAa;AAC5D,eAAO,eAAe,wBAAwB,CAAC,CAAC,aAAa;AAC7D,eAAO,eAAe,sBAAsB,CAAC,CAAC,aAAa;GAC1D;AAEF,IAAG,6BAA6B;EAC/B,MAAM,YAAY,sBAAsB,WAAW;AAEnD,eADY,UAAU,KAAK,MAAM,EAAE,GAAG,CAC3B,CAAC,UAAU,QAAQ;AAC9B,eAAO,UAAU,OAAO,CAAC,uBAAuB,EAAE;GACjD;AAEF,IAAG,wBAAwB;EAC1B,MAAM,gBAAgB,iBAAiB,QAAQ;AAE/C,eADY,cAAc,KAAK,MAAM,EAAE,GAAG,CAC/B,CAAC,UAAU,QAAQ;AAC9B,eAAO,cAAc,OAAO,CAAC,uBAAuB,EAAE;GACrD;AAEF,IAAG,oCAAoC;EAEtC,MAAM,MADW,gBAAgB,CACZ,KAAK,MAAM,EAAE,GAAG;AAErC,eADkB,IAAI,IAAI,IAAI,CACb,KAAK,CAAC,KAAK,IAAI,OAAO;GACtC;AAEF,IAAG,yDAAyD;EAC3D,MAAM,WAAW,gBAAgB;EACjC,MAAM,0BAAU,IAAI,KAAuB;AAE3C,OAAK,MAAM,OAAO,SACjB,MAAK,MAAM,QAAQ,IAAI,OAAO;AAC7B,OAAI,CAAC,KAAK,QAAS;GACnB,MAAM,WAAW,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE;AAC7C,YAAS,KAAK,IAAI,GAAG;AACrB,WAAQ,IAAI,KAAK,MAAM,SAAS;;EAMlC,MAAM,YAAsB,EAAE;AAC9B,OAAK,MAAM,CAAC,MAAM,eAAe,QAChC,KAAI,WAAW,SAAS,EACvB,WAAU,KAAK,QAAQ,KAAK,cAAc,WAAW,KAAK,KAAK,GAAG;AAOpE,MAAI,UAAU,SAAS,EACtB,SAAQ,KACP,mBAAmB,UAAU,OAAO,gCAAgC,UAAU,KAAK,OAAO,GAC1F;AAIF,eAAO,QAAQ,KAAK,CAAC,gBAAgB,EAAE;GACtC;EACD"}
1
+ {"version":3,"file":"registry.test.mjs","names":[],"sources":["../../src/services/registry.test.ts"],"sourcesContent":["import { describe, expect, it } from \"vitest\";\nimport {\n\tgetAllServices,\n\tgetServiceById,\n\tgetServicesByCategory,\n\tgetServicesByTag,\n} from \"../services/registry.js\";\n\ndescribe(\"service registry\", () => {\n\tit(\"has at least 60 services registered\", () => {\n\t\tconst services = getAllServices();\n\t\texpect(services.length).toBeGreaterThanOrEqual(60);\n\t});\n\n\tit(\"finds redis by ID\", () => {\n\t\tconst redis = getServiceById(\"redis\");\n\t\texpect(redis).toBeDefined();\n\t\texpect(redis!.id).toBe(\"redis\");\n\t\texpect(redis!.name).toBe(\"Redis\");\n\t});\n\n\tit(\"returns undefined for unknown ID\", () => {\n\t\tconst result = getServiceById(\"nonexistent\");\n\t\texpect(result).toBeUndefined();\n\t});\n\n\tit(\"finds tailscale and it is mandatory\", () => {\n\t\tconst tailscale = getServiceById(\"tailscale\");\n\t\texpect(tailscale).toBeDefined();\n\t\texpect(tailscale!.id).toBe(\"tailscale\");\n\t\texpect(tailscale!.mandatory).toBe(true);\n\t});\n\n\tit(\"finds coolify, dokploy, livekit, and La Suite Meet services by ID\", () => {\n\t\texpect(getServiceById(\"coolify\")).toBeDefined();\n\t\texpect(getServiceById(\"dokploy\")).toBeDefined();\n\t\texpect(getServiceById(\"livekit\")).toBeDefined();\n\t\texpect(getServiceById(\"lasuite-meet-backend\")).toBeDefined();\n\t\texpect(getServiceById(\"lasuite-meet-frontend\")).toBeDefined();\n\t\texpect(getServiceById(\"lasuite-meet-agents\")).toBeDefined();\n\t});\n\n\tit(\"filters by category\", () => {\n\t\tconst databases = getServicesByCategory(\"database\");\n\t\tconst ids = databases.map((s) => s.id);\n\t\texpect(ids).toContain(\"redis\");\n\t\texpect(databases.length).toBeGreaterThanOrEqual(1);\n\t});\n\n\tit(\"filters by tag\", () => {\n\t\tconst cacheServices = getServicesByTag(\"cache\");\n\t\tconst ids = cacheServices.map((s) => s.id);\n\t\texpect(ids).toContain(\"redis\");\n\t\texpect(cacheServices.length).toBeGreaterThanOrEqual(1);\n\t});\n\n\tit(\"all service IDs are unique\", () => {\n\t\tconst services = getAllServices();\n\t\tconst ids = services.map((s) => s.id);\n\t\tconst uniqueIds = new Set(ids);\n\t\texpect(uniqueIds.size).toBe(ids.length);\n\t});\n\n\tit(\"no two services have the same exposed host port\", () => {\n\t\tconst services = getAllServices();\n\t\tconst portMap = new Map<number, string[]>();\n\n\t\tfor (const svc of services) {\n\t\t\tfor (const port of svc.ports) {\n\t\t\t\tif (!port.exposed) continue;\n\t\t\t\tconst existing = portMap.get(port.host) ?? [];\n\t\t\t\texisting.push(svc.id);\n\t\t\t\tportMap.set(port.host, existing);\n\t\t\t}\n\t\t}\n\n\t\t// Informational: log any shared ports but don't hard-fail,\n\t\t// since users may not enable all services simultaneously.\n\t\tconst conflicts: string[] = [];\n\t\tfor (const [port, serviceIds] of portMap) {\n\t\t\tif (serviceIds.length > 1) {\n\t\t\t\tconflicts.push(`Port ${port} shared by: ${serviceIds.join(\", \")}`);\n\t\t\t}\n\t\t}\n\n\t\t// This is informational — warn if there are conflicts but still pass.\n\t\t// If you want to enforce unique ports, change the next line to:\n\t\t// expect(conflicts).toHaveLength(0);\n\t\tif (conflicts.length > 0) {\n\t\t\tconsole.warn(\n\t\t\t\t`[informational] ${conflicts.length} port overlap(s) detected:\\n ${conflicts.join(\"\\n \")}`,\n\t\t\t);\n\t\t}\n\n\t\t// At minimum, verify we checked something\n\t\texpect(portMap.size).toBeGreaterThan(0);\n\t});\n});\n"],"mappings":";;;AAQA,SAAS,0BAA0B;AAClC,IAAG,6CAA6C;AAE/C,eADiB,gBAAgB,CACjB,OAAO,CAAC,uBAAuB,GAAG;GACjD;AAEF,IAAG,2BAA2B;EAC7B,MAAM,QAAQ,eAAe,QAAQ;AACrC,eAAO,MAAM,CAAC,aAAa;AAC3B,eAAO,MAAO,GAAG,CAAC,KAAK,QAAQ;AAC/B,eAAO,MAAO,KAAK,CAAC,KAAK,QAAQ;GAChC;AAEF,IAAG,0CAA0C;AAE5C,eADe,eAAe,cAAc,CAC9B,CAAC,eAAe;GAC7B;AAEF,IAAG,6CAA6C;EAC/C,MAAM,YAAY,eAAe,YAAY;AAC7C,eAAO,UAAU,CAAC,aAAa;AAC/B,eAAO,UAAW,GAAG,CAAC,KAAK,YAAY;AACvC,eAAO,UAAW,UAAU,CAAC,KAAK,KAAK;GACtC;AAEF,IAAG,2EAA2E;AAC7E,eAAO,eAAe,UAAU,CAAC,CAAC,aAAa;AAC/C,eAAO,eAAe,UAAU,CAAC,CAAC,aAAa;AAC/C,eAAO,eAAe,UAAU,CAAC,CAAC,aAAa;AAC/C,eAAO,eAAe,uBAAuB,CAAC,CAAC,aAAa;AAC5D,eAAO,eAAe,wBAAwB,CAAC,CAAC,aAAa;AAC7D,eAAO,eAAe,sBAAsB,CAAC,CAAC,aAAa;GAC1D;AAEF,IAAG,6BAA6B;EAC/B,MAAM,YAAY,sBAAsB,WAAW;AAEnD,eADY,UAAU,KAAK,MAAM,EAAE,GAAG,CAC3B,CAAC,UAAU,QAAQ;AAC9B,eAAO,UAAU,OAAO,CAAC,uBAAuB,EAAE;GACjD;AAEF,IAAG,wBAAwB;EAC1B,MAAM,gBAAgB,iBAAiB,QAAQ;AAE/C,eADY,cAAc,KAAK,MAAM,EAAE,GAAG,CAC/B,CAAC,UAAU,QAAQ;AAC9B,eAAO,cAAc,OAAO,CAAC,uBAAuB,EAAE;GACrD;AAEF,IAAG,oCAAoC;EAEtC,MAAM,MADW,gBAAgB,CACZ,KAAK,MAAM,EAAE,GAAG;AAErC,eADkB,IAAI,IAAI,IAAI,CACb,KAAK,CAAC,KAAK,IAAI,OAAO;GACtC;AAEF,IAAG,yDAAyD;EAC3D,MAAM,WAAW,gBAAgB;EACjC,MAAM,0BAAU,IAAI,KAAuB;AAE3C,OAAK,MAAM,OAAO,SACjB,MAAK,MAAM,QAAQ,IAAI,OAAO;AAC7B,OAAI,CAAC,KAAK,QAAS;GACnB,MAAM,WAAW,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE;AAC7C,YAAS,KAAK,IAAI,GAAG;AACrB,WAAQ,IAAI,KAAK,MAAM,SAAS;;EAMlC,MAAM,YAAsB,EAAE;AAC9B,OAAK,MAAM,CAAC,MAAM,eAAe,QAChC,KAAI,WAAW,SAAS,EACvB,WAAU,KAAK,QAAQ,KAAK,cAAc,WAAW,KAAK,KAAK,GAAG;AAOpE,MAAI,UAAU,SAAS,EACtB,SAAQ,KACP,mBAAmB,UAAU,OAAO,gCAAgC,UAAU,KAAK,OAAO,GAC1F;AAIF,eAAO,QAAQ,KAAK,CAAC,gBAAgB,EAAE;GACtC;EACD"}
@@ -1,6 +1,6 @@
1
-
2
- //#region src/skills/manifest.json
3
- var manifest_default = {
1
+ //#endregion
2
+ //#region src/skills/skill-manifest.ts
3
+ const manifestData = {
4
4
  $schema: "./manifest.schema.json",
5
5
  version: "1.0.0",
6
6
  description: "OpenClaw skill templates — compiled at generation time via Handlebars.",
@@ -711,6 +711,12 @@ var manifest_default = {
711
711
  "emoji": "🛡️",
712
712
  "services": ["authentik"]
713
713
  },
714
+ {
715
+ "id": "authelia-auth",
716
+ "path": "authelia-auth/SKILL.md",
717
+ "emoji": "🔒",
718
+ "services": ["authelia"]
719
+ },
714
720
  {
715
721
  "id": "haystack-rag",
716
722
  "path": "haystack-rag/SKILL.md",
@@ -1179,12 +1185,36 @@ var manifest_default = {
1179
1185
  }
1180
1186
  ]
1181
1187
  };
1182
-
1188
+ /** Return all skills defined in the local manifest.json */
1189
+ function getAllManifestSkills() {
1190
+ return manifestData.skills;
1191
+ }
1192
+ /** Look up a single skill by ID */
1193
+ function getManifestSkillById(id) {
1194
+ return manifestData.skills.find((s) => s.id === id);
1195
+ }
1196
+ /** Return the total count of curated skills */
1197
+ function getManifestSkillCount() {
1198
+ return manifestData.skills.length;
1199
+ }
1183
1200
  //#endregion
1184
- Object.defineProperty(exports, 'manifest_default', {
1185
- enumerable: true,
1186
- get: function () {
1187
- return manifest_default;
1188
- }
1201
+ Object.defineProperty(exports, "getAllManifestSkills", {
1202
+ enumerable: true,
1203
+ get: function() {
1204
+ return getAllManifestSkills;
1205
+ }
1206
+ });
1207
+ Object.defineProperty(exports, "getManifestSkillById", {
1208
+ enumerable: true,
1209
+ get: function() {
1210
+ return getManifestSkillById;
1211
+ }
1189
1212
  });
1190
- //# sourceMappingURL=manifest-4uLbISXV.cjs.map
1213
+ Object.defineProperty(exports, "getManifestSkillCount", {
1214
+ enumerable: true,
1215
+ get: function() {
1216
+ return getManifestSkillCount;
1217
+ }
1218
+ });
1219
+
1220
+ //# sourceMappingURL=skill-manifest--IgY9REK.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skill-manifest--IgY9REK.cjs","names":["manifestJson"],"sources":["../src/skills/manifest.json","../src/skills/skill-manifest.ts"],"sourcesContent":["","// import { readFileSync } from \"node:fs\";\n// import { dirname, resolve } from \"node:path\";\n// import { fileURLToPath } from \"node:url\";\n//import manifestJson from \"../../../../skills/manifest.json\" with { type: \"json\" };\nimport manifestJson from \"./manifest.json\" with { type: \"json\" };\n\n// ── Types ───────────────────────────────────────────────────────────────────\n\nexport interface SkillManifestEntry {\n\t/** Unique skill identifier, e.g. \"gsap-animate\" */\n\tid: string;\n\t/** Relative path to the SKILL.md file */\n\tpath: string;\n\t/** Display emoji */\n\temoji: string;\n\t/** Docker service IDs this skill depends on (empty for frontend-only skills) */\n\tservices: string[];\n}\n\ninterface SkillManifest {\n\tskills: SkillManifestEntry[];\n}\n\nconst manifestData = manifestJson as SkillManifest;\n\n// ── Manifest loader ─────────────────────────────────────────────────────────\n// let _cache: SkillManifestEntry[] | null = null;\n\n// function loadManifest(): SkillManifestEntry[] {\n// \tif (_cache) return _cache;\n// \t// Resolve the manifest relative to this file's location\n// \t// This file is at packages/core/src/skills/skill-manifest.ts\n// \t// The manifest is at skills/manifest.json (repo root / skills /)\n// \tconst thisDir = dirname(fileURLToPath(import.meta.url));\n// \tconst manifestPath = resolve(thisDir, \"../../../../skills/manifest.json\");\n// \tconst raw = readFileSync(manifestPath, \"utf-8\");\n// \tconst data = JSON.parse(raw) as SkillManifest;\n// \t_cache = data.skills;\n// \treturn _cache;\n// }\n/** Return all skills defined in the local manifest.json */\nexport function getAllManifestSkills(): SkillManifestEntry[] {\n\treturn manifestData.skills;\n\t//return loadManifest();\n}\n\n/** Look up a single skill by ID */\nexport function getManifestSkillById(id: string): SkillManifestEntry | undefined {\n\treturn manifestData.skills.find((s) => s.id === id);\n\t//return loadManifest().find((s) => s.id === id);\n}\n\n/** Return the total count of curated skills */\nexport function getManifestSkillCount(): number {\n\treturn manifestData.skills.length;\n\t//return loadManifest().length;\n}\n"],"mappings":";;ACuBA,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkBN,SAAgB,uBAA6C;AAC5D,QAAO,aAAa;;;AAKrB,SAAgB,qBAAqB,IAA4C;AAChF,QAAO,aAAa,OAAO,MAAM,MAAM,EAAE,OAAO,GAAG;;;AAKpD,SAAgB,wBAAgC;AAC/C,QAAO,aAAa,OAAO"}
@@ -1,5 +1,6 @@
1
- //#region src/skills/manifest.json
2
- var manifest_default = {
1
+ //#endregion
2
+ //#region src/skills/skill-manifest.ts
3
+ const manifestData = {
3
4
  $schema: "./manifest.schema.json",
4
5
  version: "1.0.0",
5
6
  description: "OpenClaw skill templates — compiled at generation time via Handlebars.",
@@ -710,6 +711,12 @@ var manifest_default = {
710
711
  "emoji": "🛡️",
711
712
  "services": ["authentik"]
712
713
  },
714
+ {
715
+ "id": "authelia-auth",
716
+ "path": "authelia-auth/SKILL.md",
717
+ "emoji": "🔒",
718
+ "services": ["authelia"]
719
+ },
713
720
  {
714
721
  "id": "haystack-rag",
715
722
  "path": "haystack-rag/SKILL.md",
@@ -1178,7 +1185,19 @@ var manifest_default = {
1178
1185
  }
1179
1186
  ]
1180
1187
  };
1181
-
1188
+ /** Return all skills defined in the local manifest.json */
1189
+ function getAllManifestSkills() {
1190
+ return manifestData.skills;
1191
+ }
1192
+ /** Look up a single skill by ID */
1193
+ function getManifestSkillById(id) {
1194
+ return manifestData.skills.find((s) => s.id === id);
1195
+ }
1196
+ /** Return the total count of curated skills */
1197
+ function getManifestSkillCount() {
1198
+ return manifestData.skills.length;
1199
+ }
1182
1200
  //#endregion
1183
- export { manifest_default as t };
1184
- //# sourceMappingURL=manifest-B8UDsVlR.mjs.map
1201
+ export { getManifestSkillById as n, getManifestSkillCount as r, getAllManifestSkills as t };
1202
+
1203
+ //# sourceMappingURL=skill-manifest-BVUXU0__.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skill-manifest-BVUXU0__.mjs","names":["manifestJson"],"sources":["../src/skills/manifest.json","../src/skills/skill-manifest.ts"],"sourcesContent":["","// import { readFileSync } from \"node:fs\";\n// import { dirname, resolve } from \"node:path\";\n// import { fileURLToPath } from \"node:url\";\n//import manifestJson from \"../../../../skills/manifest.json\" with { type: \"json\" };\nimport manifestJson from \"./manifest.json\" with { type: \"json\" };\n\n// ── Types ───────────────────────────────────────────────────────────────────\n\nexport interface SkillManifestEntry {\n\t/** Unique skill identifier, e.g. \"gsap-animate\" */\n\tid: string;\n\t/** Relative path to the SKILL.md file */\n\tpath: string;\n\t/** Display emoji */\n\temoji: string;\n\t/** Docker service IDs this skill depends on (empty for frontend-only skills) */\n\tservices: string[];\n}\n\ninterface SkillManifest {\n\tskills: SkillManifestEntry[];\n}\n\nconst manifestData = manifestJson as SkillManifest;\n\n// ── Manifest loader ─────────────────────────────────────────────────────────\n// let _cache: SkillManifestEntry[] | null = null;\n\n// function loadManifest(): SkillManifestEntry[] {\n// \tif (_cache) return _cache;\n// \t// Resolve the manifest relative to this file's location\n// \t// This file is at packages/core/src/skills/skill-manifest.ts\n// \t// The manifest is at skills/manifest.json (repo root / skills /)\n// \tconst thisDir = dirname(fileURLToPath(import.meta.url));\n// \tconst manifestPath = resolve(thisDir, \"../../../../skills/manifest.json\");\n// \tconst raw = readFileSync(manifestPath, \"utf-8\");\n// \tconst data = JSON.parse(raw) as SkillManifest;\n// \t_cache = data.skills;\n// \treturn _cache;\n// }\n/** Return all skills defined in the local manifest.json */\nexport function getAllManifestSkills(): SkillManifestEntry[] {\n\treturn manifestData.skills;\n\t//return loadManifest();\n}\n\n/** Look up a single skill by ID */\nexport function getManifestSkillById(id: string): SkillManifestEntry | undefined {\n\treturn manifestData.skills.find((s) => s.id === id);\n\t//return loadManifest().find((s) => s.id === id);\n}\n\n/** Return the total count of curated skills */\nexport function getManifestSkillCount(): number {\n\treturn manifestData.skills.length;\n\t//return loadManifest().length;\n}\n"],"mappings":";;ACuBA,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkBN,SAAgB,uBAA6C;AAC5D,QAAO,aAAa;;;AAKrB,SAAgB,qBAAqB,IAA4C;AAChF,QAAO,aAAa,OAAO,MAAM,MAAM,EAAE,OAAO,GAAG;;;AAKpD,SAAgB,wBAAgC;AAC/C,QAAO,aAAa,OAAO"}