@better-openclaw/core 1.0.6 → 1.0.8
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.
- package/.github/workflows/publish-core.yml +1 -1
- package/dist/bare-metal-partition.d.mts +0 -1
- package/dist/bare-metal-partition.d.mts.map +1 -1
- package/dist/bare-metal-partition.mjs +47 -2
- package/dist/bare-metal-partition.mjs.map +1 -0
- package/dist/bare-metal-partition.test.mjs +3 -3
- package/dist/composer.d.mts +0 -1
- package/dist/composer.d.mts.map +1 -1
- package/dist/composer.mjs +286 -2
- package/dist/composer.mjs.map +1 -0
- package/dist/composer.snapshot.test.mjs +3 -3
- package/dist/composer.test.mjs +3 -3
- package/dist/generate.d.mts +0 -2
- package/dist/generate.d.mts.map +1 -1
- package/dist/generate.mjs +15 -15
- package/dist/generate.test.mjs +1 -1
- package/dist/generators/bare-metal-install.d.mts +0 -2
- package/dist/generators/bare-metal-install.d.mts.map +1 -1
- package/dist/generators/bare-metal-install.mjs +223 -2
- package/dist/generators/bare-metal-install.mjs.map +1 -0
- package/dist/generators/bare-metal-install.test.mjs +2 -2
- package/dist/generators/caddy.d.mts +0 -2
- package/dist/generators/caddy.d.mts.map +1 -1
- package/dist/generators/caddy.mjs +76 -2
- package/dist/generators/caddy.mjs.map +1 -0
- package/dist/generators/env.d.mts +0 -1
- package/dist/generators/env.d.mts.map +1 -1
- package/dist/generators/env.mjs +249 -2
- package/dist/generators/env.mjs.map +1 -0
- package/dist/generators/grafana.d.mts.map +1 -1
- package/dist/generators/grafana.mjs +292 -2
- package/dist/generators/grafana.mjs.map +1 -0
- package/dist/generators/n8n-workflows.d.mts +0 -2
- package/dist/generators/n8n-workflows.d.mts.map +1 -1
- package/dist/generators/n8n-workflows.mjs +74 -2
- package/dist/generators/n8n-workflows.mjs.map +1 -0
- package/dist/generators/native-services.d.mts +0 -1
- package/dist/generators/native-services.d.mts.map +1 -1
- package/dist/generators/native-services.mjs +77 -2
- package/dist/generators/native-services.mjs.map +1 -0
- package/dist/generators/postgres-init.d.mts +0 -1
- package/dist/generators/postgres-init.d.mts.map +1 -1
- package/dist/generators/postgres-init.mjs +150 -2
- package/dist/generators/postgres-init.mjs.map +1 -0
- package/dist/generators/prometheus.d.mts +0 -2
- package/dist/generators/prometheus.d.mts.map +1 -1
- package/dist/generators/prometheus.mjs +106 -2
- package/dist/generators/prometheus.mjs.map +1 -0
- package/dist/generators/readme.d.mts +0 -1
- package/dist/generators/readme.d.mts.map +1 -1
- package/dist/generators/readme.mjs +198 -2
- package/dist/generators/readme.mjs.map +1 -0
- package/dist/generators/scripts.d.mts.map +1 -1
- package/dist/generators/scripts.mjs +350 -2
- package/dist/generators/scripts.mjs.map +1 -0
- package/dist/generators/skills.d.mts +0 -2
- package/dist/generators/skills.d.mts.map +1 -1
- package/dist/generators/skills.mjs +586 -2
- package/dist/generators/skills.mjs.map +1 -0
- package/dist/index.d.mts +1 -1
- package/dist/index.mjs +15 -15
- package/dist/{magic-string.es-Dew0Rnsa.mjs → magic-string.es-1uTtupLe.mjs} +14 -14
- package/dist/magic-string.es-1uTtupLe.mjs.map +1 -0
- package/dist/presets/registry.d.mts +0 -1
- package/dist/presets/registry.d.mts.map +1 -1
- package/dist/presets/registry.test.mjs +1 -1
- package/dist/resolver.d.mts +0 -2
- package/dist/resolver.d.mts.map +1 -1
- package/dist/resolver.mjs +193 -2
- package/dist/resolver.mjs.map +1 -0
- package/dist/resolver.test.mjs +2 -2
- package/dist/schema.d.mts +714 -2
- package/dist/schema.d.mts.map +1 -0
- package/dist/schema.mjs +6 -2
- package/dist/schema.mjs.map +1 -1
- package/dist/schema.test.mjs +1 -1
- package/dist/services/definitions/anything-llm.d.mts +0 -1
- package/dist/services/definitions/anything-llm.d.mts.map +1 -1
- package/dist/services/definitions/anything-llm.mjs +43 -2
- package/dist/services/definitions/anything-llm.mjs.map +1 -0
- package/dist/services/definitions/appflowy.d.mts +0 -1
- package/dist/services/definitions/appflowy.d.mts.map +1 -1
- package/dist/services/definitions/appflowy.mjs +44 -2
- package/dist/services/definitions/appflowy.mjs.map +1 -0
- package/dist/services/definitions/beszel.d.mts +0 -1
- package/dist/services/definitions/beszel.d.mts.map +1 -1
- package/dist/services/definitions/beszel.mjs +44 -2
- package/dist/services/definitions/beszel.mjs.map +1 -0
- package/dist/services/definitions/browserless.d.mts +0 -1
- package/dist/services/definitions/browserless.d.mts.map +1 -1
- package/dist/services/definitions/browserless.mjs +84 -2
- package/dist/services/definitions/browserless.mjs.map +1 -0
- package/dist/services/definitions/caddy.d.mts +0 -1
- package/dist/services/definitions/caddy.d.mts.map +1 -1
- package/dist/services/definitions/caddy.mjs +51 -2
- package/dist/services/definitions/caddy.mjs.map +1 -0
- package/dist/services/definitions/chromadb.d.mts +0 -1
- package/dist/services/definitions/chromadb.d.mts.map +1 -1
- package/dist/services/definitions/chromadb.mjs +62 -2
- package/dist/services/definitions/chromadb.mjs.map +1 -0
- package/dist/services/definitions/claude-code.d.mts +0 -1
- package/dist/services/definitions/claude-code.d.mts.map +1 -1
- package/dist/services/definitions/claude-code.mjs +51 -2
- package/dist/services/definitions/claude-code.mjs.map +1 -0
- package/dist/services/definitions/code-server.d.mts +0 -1
- package/dist/services/definitions/code-server.d.mts.map +1 -1
- package/dist/services/definitions/code-server.mjs +65 -2
- package/dist/services/definitions/code-server.mjs.map +1 -0
- package/dist/services/definitions/codex.d.mts +0 -1
- package/dist/services/definitions/codex.d.mts.map +1 -1
- package/dist/services/definitions/codex.mjs +44 -2
- package/dist/services/definitions/codex.mjs.map +1 -0
- package/dist/services/definitions/comfyui.d.mts +7 -0
- package/dist/services/definitions/comfyui.d.mts.map +1 -0
- package/dist/services/definitions/comfyui.mjs +83 -0
- package/dist/services/definitions/comfyui.mjs.map +1 -0
- package/dist/services/definitions/convex-dashboard.d.mts +7 -0
- package/dist/services/definitions/convex-dashboard.d.mts.map +1 -0
- package/dist/services/definitions/convex-dashboard.mjs +46 -0
- package/dist/services/definitions/convex-dashboard.mjs.map +1 -0
- package/dist/services/definitions/convex.d.mts +7 -0
- package/dist/services/definitions/convex.d.mts.map +1 -0
- package/dist/services/definitions/convex.mjs +118 -0
- package/dist/services/definitions/convex.mjs.map +1 -0
- package/dist/services/definitions/coolify.d.mts +0 -1
- package/dist/services/definitions/coolify.d.mts.map +1 -1
- package/dist/services/definitions/coolify.mjs +48 -2
- package/dist/services/definitions/coolify.mjs.map +1 -0
- package/dist/services/definitions/desktop-environment.d.mts +7 -0
- package/dist/services/definitions/desktop-environment.d.mts.map +1 -0
- package/dist/services/definitions/desktop-environment.mjs +153 -0
- package/dist/services/definitions/desktop-environment.mjs.map +1 -0
- package/dist/services/definitions/dify.d.mts +0 -1
- package/dist/services/definitions/dify.d.mts.map +1 -1
- package/dist/services/definitions/dify.mjs +80 -2
- package/dist/services/definitions/dify.mjs.map +1 -0
- package/dist/services/definitions/docsgpt.d.mts +0 -1
- package/dist/services/definitions/docsgpt.d.mts.map +1 -1
- package/dist/services/definitions/docsgpt.mjs +44 -2
- package/dist/services/definitions/docsgpt.mjs.map +1 -0
- package/dist/services/definitions/dokploy.d.mts +0 -1
- package/dist/services/definitions/dokploy.d.mts.map +1 -1
- package/dist/services/definitions/dokploy.mjs +48 -2
- package/dist/services/definitions/dokploy.mjs.map +1 -0
- package/dist/services/definitions/dozzle.d.mts +0 -1
- package/dist/services/definitions/dozzle.d.mts.map +1 -1
- package/dist/services/definitions/dozzle.mjs +40 -2
- package/dist/services/definitions/dozzle.mjs.map +1 -0
- package/dist/services/definitions/ffmpeg.d.mts +0 -1
- package/dist/services/definitions/ffmpeg.d.mts.map +1 -1
- package/dist/services/definitions/ffmpeg.mjs +65 -2
- package/dist/services/definitions/ffmpeg.mjs.map +1 -0
- package/dist/services/definitions/flowise.d.mts +0 -1
- package/dist/services/definitions/flowise.d.mts.map +1 -1
- package/dist/services/definitions/flowise.mjs +44 -2
- package/dist/services/definitions/flowise.mjs.map +1 -0
- package/dist/services/definitions/gemini-cli.d.mts +0 -1
- package/dist/services/definitions/gemini-cli.d.mts.map +1 -1
- package/dist/services/definitions/gemini-cli.mjs +45 -2
- package/dist/services/definitions/gemini-cli.mjs.map +1 -0
- package/dist/services/definitions/gitea.d.mts +0 -1
- package/dist/services/definitions/gitea.d.mts.map +1 -1
- package/dist/services/definitions/gitea.mjs +48 -2
- package/dist/services/definitions/gitea.mjs.map +1 -0
- package/dist/services/definitions/gotify.d.mts +0 -1
- package/dist/services/definitions/gotify.d.mts.map +1 -1
- package/dist/services/definitions/gotify.mjs +61 -2
- package/dist/services/definitions/gotify.mjs.map +1 -0
- package/dist/services/definitions/grafana.d.mts +0 -1
- package/dist/services/definitions/grafana.d.mts.map +1 -1
- package/dist/services/definitions/grafana.mjs +62 -2
- package/dist/services/definitions/grafana.mjs.map +1 -0
- package/dist/services/definitions/index.d.mts +8 -2
- package/dist/services/definitions/index.d.mts.map +1 -1
- package/dist/services/definitions/index.mjs +151 -67
- package/dist/services/definitions/index.mjs.map +1 -0
- package/dist/services/definitions/kimi.d.mts +0 -1
- package/dist/services/definitions/kimi.d.mts.map +1 -1
- package/dist/services/definitions/kimi.mjs +45 -2
- package/dist/services/definitions/kimi.mjs.map +1 -0
- package/dist/services/definitions/lasuite-meet-agents.d.mts +0 -1
- package/dist/services/definitions/lasuite-meet-agents.d.mts.map +1 -1
- package/dist/services/definitions/lasuite-meet-agents.mjs +35 -2
- package/dist/services/definitions/lasuite-meet-agents.mjs.map +1 -0
- package/dist/services/definitions/lasuite-meet-backend.d.mts +0 -1
- package/dist/services/definitions/lasuite-meet-backend.d.mts.map +1 -1
- package/dist/services/definitions/lasuite-meet-backend.mjs +133 -2
- package/dist/services/definitions/lasuite-meet-backend.mjs.map +1 -0
- package/dist/services/definitions/lasuite-meet-frontend.d.mts +0 -1
- package/dist/services/definitions/lasuite-meet-frontend.d.mts.map +1 -1
- package/dist/services/definitions/lasuite-meet-frontend.mjs +47 -2
- package/dist/services/definitions/lasuite-meet-frontend.mjs.map +1 -0
- package/dist/services/definitions/librechat.d.mts +0 -1
- package/dist/services/definitions/librechat.d.mts.map +1 -1
- package/dist/services/definitions/librechat.mjs +49 -2
- package/dist/services/definitions/librechat.mjs.map +1 -0
- package/dist/services/definitions/lightpanda.d.mts +0 -1
- package/dist/services/definitions/lightpanda.d.mts.map +1 -1
- package/dist/services/definitions/lightpanda.mjs +58 -2
- package/dist/services/definitions/lightpanda.mjs.map +1 -0
- package/dist/services/definitions/litellm.d.mts +0 -1
- package/dist/services/definitions/litellm.d.mts.map +1 -1
- package/dist/services/definitions/litellm.mjs +46 -2
- package/dist/services/definitions/litellm.mjs.map +1 -0
- package/dist/services/definitions/livekit.d.mts +0 -1
- package/dist/services/definitions/livekit.d.mts.map +1 -1
- package/dist/services/definitions/livekit.mjs +55 -2
- package/dist/services/definitions/livekit.mjs.map +1 -0
- package/dist/services/definitions/matomo.d.mts +0 -1
- package/dist/services/definitions/matomo.d.mts.map +1 -1
- package/dist/services/definitions/matomo.mjs +79 -2
- package/dist/services/definitions/matomo.mjs.map +1 -0
- package/dist/services/definitions/matrix-synapse.d.mts +0 -1
- package/dist/services/definitions/matrix-synapse.d.mts.map +1 -1
- package/dist/services/definitions/matrix-synapse.mjs +87 -2
- package/dist/services/definitions/matrix-synapse.mjs.map +1 -0
- package/dist/services/definitions/mattermost.d.mts +0 -1
- package/dist/services/definitions/mattermost.d.mts.map +1 -1
- package/dist/services/definitions/mattermost.mjs +60 -2
- package/dist/services/definitions/mattermost.mjs.map +1 -0
- package/dist/services/definitions/meilisearch.d.mts +0 -1
- package/dist/services/definitions/meilisearch.d.mts.map +1 -1
- package/dist/services/definitions/meilisearch.mjs +77 -2
- package/dist/services/definitions/meilisearch.mjs.map +1 -0
- package/dist/services/definitions/minio.d.mts +0 -1
- package/dist/services/definitions/minio.d.mts.map +1 -1
- package/dist/services/definitions/minio.mjs +101 -2
- package/dist/services/definitions/minio.mjs.map +1 -0
- package/dist/services/definitions/mission-control.d.mts +7 -0
- package/dist/services/definitions/mission-control.d.mts.map +1 -0
- package/dist/services/definitions/mission-control.mjs +67 -0
- package/dist/services/definitions/mission-control.mjs.map +1 -0
- package/dist/services/definitions/mixpost.d.mts +0 -1
- package/dist/services/definitions/mixpost.d.mts.map +1 -1
- package/dist/services/definitions/mixpost.mjs +86 -2
- package/dist/services/definitions/mixpost.mjs.map +1 -0
- package/dist/services/definitions/motion-canvas.d.mts +0 -1
- package/dist/services/definitions/motion-canvas.d.mts.map +1 -1
- package/dist/services/definitions/motion-canvas.mjs +51 -2
- package/dist/services/definitions/motion-canvas.mjs.map +1 -0
- package/dist/services/definitions/n8n.d.mts +0 -1
- package/dist/services/definitions/n8n.d.mts.map +1 -1
- package/dist/services/definitions/n8n.mjs +153 -2
- package/dist/services/definitions/n8n.mjs.map +1 -0
- package/dist/services/definitions/nocodb.d.mts +0 -1
- package/dist/services/definitions/nocodb.d.mts.map +1 -1
- package/dist/services/definitions/nocodb.mjs +44 -2
- package/dist/services/definitions/nocodb.mjs.map +1 -0
- package/dist/services/definitions/ntfy.d.mts +0 -1
- package/dist/services/definitions/ntfy.d.mts.map +1 -1
- package/dist/services/definitions/ntfy.mjs +62 -2
- package/dist/services/definitions/ntfy.mjs.map +1 -0
- package/dist/services/definitions/ollama.d.mts +0 -1
- package/dist/services/definitions/ollama.d.mts.map +1 -1
- package/dist/services/definitions/ollama.mjs +65 -2
- package/dist/services/definitions/ollama.mjs.map +1 -0
- package/dist/services/definitions/open-webui.d.mts +0 -1
- package/dist/services/definitions/open-webui.d.mts.map +1 -1
- package/dist/services/definitions/open-webui.mjs +49 -2
- package/dist/services/definitions/open-webui.mjs.map +1 -0
- package/dist/services/definitions/opencode.d.mts +0 -1
- package/dist/services/definitions/opencode.d.mts.map +1 -1
- package/dist/services/definitions/opencode.mjs +49 -2
- package/dist/services/definitions/opencode.mjs.map +1 -0
- package/dist/services/definitions/openpanel.d.mts +0 -1
- package/dist/services/definitions/openpanel.d.mts.map +1 -1
- package/dist/services/definitions/openpanel.mjs +45 -2
- package/dist/services/definitions/openpanel.mjs.map +1 -0
- package/dist/services/definitions/outline.d.mts +0 -1
- package/dist/services/definitions/outline.d.mts.map +1 -1
- package/dist/services/definitions/outline.mjs +73 -2
- package/dist/services/definitions/outline.mjs.map +1 -0
- package/dist/services/definitions/paperless-ngx.d.mts +0 -1
- package/dist/services/definitions/paperless-ngx.d.mts.map +1 -1
- package/dist/services/definitions/paperless-ngx.mjs +92 -2
- package/dist/services/definitions/paperless-ngx.mjs.map +1 -0
- package/dist/services/definitions/playwright-server.d.mts +0 -1
- package/dist/services/definitions/playwright-server.d.mts.map +1 -1
- package/dist/services/definitions/playwright-server.mjs +41 -2
- package/dist/services/definitions/playwright-server.mjs.map +1 -0
- package/dist/services/definitions/portainer.d.mts +0 -1
- package/dist/services/definitions/portainer.d.mts.map +1 -1
- package/dist/services/definitions/portainer.mjs +48 -2
- package/dist/services/definitions/portainer.mjs.map +1 -0
- package/dist/services/definitions/postgresql.d.mts +0 -1
- package/dist/services/definitions/postgresql.d.mts.map +1 -1
- package/dist/services/definitions/postgresql.mjs +83 -2
- package/dist/services/definitions/postgresql.mjs.map +1 -0
- package/dist/services/definitions/postiz.d.mts +0 -1
- package/dist/services/definitions/postiz.d.mts.map +1 -1
- package/dist/services/definitions/postiz.mjs +82 -2
- package/dist/services/definitions/postiz.mjs.map +1 -0
- package/dist/services/definitions/prometheus.d.mts +0 -1
- package/dist/services/definitions/prometheus.d.mts.map +1 -1
- package/dist/services/definitions/prometheus.mjs +51 -2
- package/dist/services/definitions/prometheus.mjs.map +1 -0
- package/dist/services/definitions/qdrant.d.mts +0 -1
- package/dist/services/definitions/qdrant.d.mts.map +1 -1
- package/dist/services/definitions/qdrant.mjs +76 -2
- package/dist/services/definitions/qdrant.mjs.map +1 -0
- package/dist/services/definitions/redis.d.mts +0 -1
- package/dist/services/definitions/redis.d.mts.map +1 -1
- package/dist/services/definitions/redis.mjs +90 -2
- package/dist/services/definitions/redis.mjs.map +1 -0
- package/dist/services/definitions/remotion.d.mts +0 -1
- package/dist/services/definitions/remotion.d.mts.map +1 -1
- package/dist/services/definitions/remotion.mjs +54 -2
- package/dist/services/definitions/remotion.mjs.map +1 -0
- package/dist/services/definitions/rocketchat.d.mts +0 -1
- package/dist/services/definitions/rocketchat.d.mts.map +1 -1
- package/dist/services/definitions/rocketchat.mjs +56 -2
- package/dist/services/definitions/rocketchat.mjs.map +1 -0
- package/dist/services/definitions/searxng.d.mts +0 -1
- package/dist/services/definitions/searxng.d.mts.map +1 -1
- package/dist/services/definitions/searxng.mjs +64 -2
- package/dist/services/definitions/searxng.mjs.map +1 -0
- package/dist/services/definitions/stable-diffusion.d.mts +0 -1
- package/dist/services/definitions/stable-diffusion.d.mts.map +1 -1
- package/dist/services/definitions/stable-diffusion.mjs +47 -2
- package/dist/services/definitions/stable-diffusion.mjs.map +1 -0
- package/dist/services/definitions/steel-browser.d.mts +0 -1
- package/dist/services/definitions/steel-browser.d.mts.map +1 -1
- package/dist/services/definitions/steel-browser.mjs +76 -2
- package/dist/services/definitions/steel-browser.mjs.map +1 -0
- package/dist/services/definitions/stream-gateway.d.mts +7 -0
- package/dist/services/definitions/stream-gateway.d.mts.map +1 -0
- package/dist/services/definitions/stream-gateway.mjs +133 -0
- package/dist/services/definitions/stream-gateway.mjs.map +1 -0
- package/dist/services/definitions/tailscale.d.mts +0 -1
- package/dist/services/definitions/tailscale.d.mts.map +1 -1
- package/dist/services/definitions/tailscale.mjs +69 -2
- package/dist/services/definitions/tailscale.mjs.map +1 -0
- package/dist/services/definitions/temporal.d.mts +0 -1
- package/dist/services/definitions/temporal.d.mts.map +1 -1
- package/dist/services/definitions/temporal.mjs +99 -2
- package/dist/services/definitions/temporal.mjs.map +1 -0
- package/dist/services/definitions/traefik.d.mts +0 -1
- package/dist/services/definitions/traefik.d.mts.map +1 -1
- package/dist/services/definitions/traefik.mjs +57 -2
- package/dist/services/definitions/traefik.mjs.map +1 -0
- package/dist/services/definitions/umami.d.mts +0 -1
- package/dist/services/definitions/umami.d.mts.map +1 -1
- package/dist/services/definitions/umami.mjs +45 -2
- package/dist/services/definitions/umami.mjs.map +1 -0
- package/dist/services/definitions/uptime-kuma.d.mts +0 -1
- package/dist/services/definitions/uptime-kuma.d.mts.map +1 -1
- package/dist/services/definitions/uptime-kuma.mjs +50 -2
- package/dist/services/definitions/uptime-kuma.mjs.map +1 -0
- package/dist/services/definitions/usesend.d.mts +7 -0
- package/dist/services/definitions/usesend.d.mts.map +1 -0
- package/dist/services/definitions/usesend.mjs +99 -0
- package/dist/services/definitions/usesend.mjs.map +1 -0
- package/dist/services/definitions/valkey.d.mts +0 -1
- package/dist/services/definitions/valkey.d.mts.map +1 -1
- package/dist/services/definitions/valkey.mjs +60 -2
- package/dist/services/definitions/valkey.mjs.map +1 -0
- package/dist/services/definitions/watchtower.d.mts +0 -1
- package/dist/services/definitions/watchtower.d.mts.map +1 -1
- package/dist/services/definitions/watchtower.mjs +46 -2
- package/dist/services/definitions/watchtower.mjs.map +1 -0
- package/dist/services/definitions/weaviate.d.mts +0 -1
- package/dist/services/definitions/weaviate.d.mts.map +1 -1
- package/dist/services/definitions/weaviate.mjs +89 -2
- package/dist/services/definitions/weaviate.mjs.map +1 -0
- package/dist/services/definitions/whisper.d.mts +0 -1
- package/dist/services/definitions/whisper.d.mts.map +1 -1
- package/dist/services/definitions/whisper.mjs +61 -2
- package/dist/services/definitions/whisper.mjs.map +1 -0
- package/dist/services/registry.d.mts +0 -1
- package/dist/services/registry.d.mts.map +1 -1
- package/dist/services/registry.mjs +29 -2
- package/dist/services/registry.mjs.map +1 -0
- package/dist/services/registry.test.mjs +2 -2
- package/dist/skills/registry.d.mts +0 -1
- package/dist/skills/registry.d.mts.map +1 -1
- package/dist/skills/registry.mjs +214 -2
- package/dist/skills/registry.mjs.map +1 -0
- package/dist/types.d.mts +1 -1
- package/dist/types.d.mts.map +1 -1
- package/dist/types.mjs +10 -0
- package/dist/types.mjs.map +1 -1
- package/dist/validator.d.mts +0 -1
- package/dist/validator.d.mts.map +1 -1
- package/dist/validator.mjs +110 -2
- package/dist/validator.mjs.map +1 -0
- package/dist/validator.test.mjs +4 -4
- package/dist/version-manager.d.mts +0 -1
- package/dist/version-manager.d.mts.map +1 -1
- package/dist/version-manager.mjs +1 -1
- package/dist/{vi.2VT5v0um-Cs3Z_fCB.mjs → vi.2VT5v0um-Qk6MgAnK.mjs} +1183 -1183
- package/dist/vi.2VT5v0um-Qk6MgAnK.mjs.map +1 -0
- package/package.json +14 -13
- package/src/schema.ts +4 -1
- package/src/services/definitions/comfyui.ts +90 -0
- package/src/services/definitions/convex-dashboard.ts +48 -0
- package/src/services/definitions/convex.ts +123 -0
- package/src/services/definitions/desktop-environment.ts +163 -0
- package/src/services/definitions/index.ts +21 -0
- package/src/services/definitions/mission-control.ts +71 -0
- package/src/services/definitions/stream-gateway.ts +148 -0
- package/src/services/definitions/tailscale.ts +2 -0
- package/src/services/definitions/usesend.ts +98 -0
- package/src/types.ts +2 -0
- package/tsdown.config.ts +1 -0
- package/dist/anything-llm-DIIPhz6K.mjs +0 -44
- package/dist/anything-llm-DIIPhz6K.mjs.map +0 -1
- package/dist/appflowy-DdoE-dKg.mjs +0 -45
- package/dist/appflowy-DdoE-dKg.mjs.map +0 -1
- package/dist/bare-metal-install-DpYZDoGq.mjs +0 -224
- package/dist/bare-metal-install-DpYZDoGq.mjs.map +0 -1
- package/dist/bare-metal-partition-CYlOxf9B.mjs +0 -48
- package/dist/bare-metal-partition-CYlOxf9B.mjs.map +0 -1
- package/dist/beszel-DHAG1zl0.mjs +0 -45
- package/dist/beszel-DHAG1zl0.mjs.map +0 -1
- package/dist/browserless-gUuvGmMD.mjs +0 -85
- package/dist/browserless-gUuvGmMD.mjs.map +0 -1
- package/dist/caddy-BJDrqnmw.mjs +0 -77
- package/dist/caddy-BJDrqnmw.mjs.map +0 -1
- package/dist/caddy-_NIdWKrf.mjs +0 -52
- package/dist/caddy-_NIdWKrf.mjs.map +0 -1
- package/dist/chromadb-g4rIsfAl.mjs +0 -63
- package/dist/chromadb-g4rIsfAl.mjs.map +0 -1
- package/dist/claude-code-DPRA1fy_.mjs +0 -52
- package/dist/claude-code-DPRA1fy_.mjs.map +0 -1
- package/dist/code-server-BdZZxxm5.mjs +0 -66
- package/dist/code-server-BdZZxxm5.mjs.map +0 -1
- package/dist/codex-DFVzfrfX.mjs +0 -45
- package/dist/codex-DFVzfrfX.mjs.map +0 -1
- package/dist/composer-CSM5YycB.mjs +0 -287
- package/dist/composer-CSM5YycB.mjs.map +0 -1
- package/dist/coolify-Z5_zDgM3.mjs +0 -49
- package/dist/coolify-Z5_zDgM3.mjs.map +0 -1
- package/dist/definitions-BXpb1kzs.mjs +0 -138
- package/dist/definitions-BXpb1kzs.mjs.map +0 -1
- package/dist/dify-jDc9U6Ku.mjs +0 -81
- package/dist/dify-jDc9U6Ku.mjs.map +0 -1
- package/dist/docsgpt-BXM1c2JC.mjs +0 -45
- package/dist/docsgpt-BXM1c2JC.mjs.map +0 -1
- package/dist/dokploy-Ci8_fb0_.mjs +0 -49
- package/dist/dokploy-Ci8_fb0_.mjs.map +0 -1
- package/dist/dozzle-fAt2sLRL.mjs +0 -41
- package/dist/dozzle-fAt2sLRL.mjs.map +0 -1
- package/dist/env-D2h46lHT.mjs +0 -250
- package/dist/env-D2h46lHT.mjs.map +0 -1
- package/dist/ffmpeg-BCtnA8m_.mjs +0 -66
- package/dist/ffmpeg-BCtnA8m_.mjs.map +0 -1
- package/dist/flowise-CJTTBa7J.mjs +0 -45
- package/dist/flowise-CJTTBa7J.mjs.map +0 -1
- package/dist/gemini-cli-Bfwv6hYe.mjs +0 -46
- package/dist/gemini-cli-Bfwv6hYe.mjs.map +0 -1
- package/dist/gitea-BGkqa-sD.mjs +0 -49
- package/dist/gitea-BGkqa-sD.mjs.map +0 -1
- package/dist/gotify-D7p8oNM3.mjs +0 -62
- package/dist/gotify-D7p8oNM3.mjs.map +0 -1
- package/dist/grafana-BlnWc6js.mjs +0 -63
- package/dist/grafana-BlnWc6js.mjs.map +0 -1
- package/dist/grafana-D3kIm8RX.mjs +0 -293
- package/dist/grafana-D3kIm8RX.mjs.map +0 -1
- package/dist/kimi-BFu1v1sU.mjs +0 -46
- package/dist/kimi-BFu1v1sU.mjs.map +0 -1
- package/dist/lasuite-meet-agents-nlPhMEaN.mjs +0 -36
- package/dist/lasuite-meet-agents-nlPhMEaN.mjs.map +0 -1
- package/dist/lasuite-meet-backend-9H7rZ8Pc.mjs +0 -134
- package/dist/lasuite-meet-backend-9H7rZ8Pc.mjs.map +0 -1
- package/dist/lasuite-meet-frontend-B4xNbnBa.mjs +0 -48
- package/dist/lasuite-meet-frontend-B4xNbnBa.mjs.map +0 -1
- package/dist/librechat-CoPIHXKK.mjs +0 -50
- package/dist/librechat-CoPIHXKK.mjs.map +0 -1
- package/dist/lightpanda-QchAPgNX.mjs +0 -59
- package/dist/lightpanda-QchAPgNX.mjs.map +0 -1
- package/dist/litellm-Dgl6iTry.mjs +0 -47
- package/dist/litellm-Dgl6iTry.mjs.map +0 -1
- package/dist/livekit-C13SxlVB.mjs +0 -56
- package/dist/livekit-C13SxlVB.mjs.map +0 -1
- package/dist/magic-string.es-Dew0Rnsa.mjs.map +0 -1
- package/dist/matomo-CiOoggYl.mjs +0 -80
- package/dist/matomo-CiOoggYl.mjs.map +0 -1
- package/dist/matrix-synapse-CP20A7NN.mjs +0 -88
- package/dist/matrix-synapse-CP20A7NN.mjs.map +0 -1
- package/dist/mattermost-CeFVuhIr.mjs +0 -61
- package/dist/mattermost-CeFVuhIr.mjs.map +0 -1
- package/dist/meilisearch-CLiQiTdN.mjs +0 -78
- package/dist/meilisearch-CLiQiTdN.mjs.map +0 -1
- package/dist/minio-_QuguAeo.mjs +0 -102
- package/dist/minio-_QuguAeo.mjs.map +0 -1
- package/dist/mixpost-eSFPM9XK.mjs +0 -87
- package/dist/mixpost-eSFPM9XK.mjs.map +0 -1
- package/dist/motion-canvas-Bk1ruvuX.mjs +0 -52
- package/dist/motion-canvas-Bk1ruvuX.mjs.map +0 -1
- package/dist/n8n-W5qeU34C.mjs +0 -154
- package/dist/n8n-W5qeU34C.mjs.map +0 -1
- package/dist/n8n-workflows-BPmKVx8z.mjs +0 -75
- package/dist/n8n-workflows-BPmKVx8z.mjs.map +0 -1
- package/dist/native-services-CwOCM-Xz.mjs +0 -78
- package/dist/native-services-CwOCM-Xz.mjs.map +0 -1
- package/dist/nocodb-DQNbSYh_.mjs +0 -45
- package/dist/nocodb-DQNbSYh_.mjs.map +0 -1
- package/dist/ntfy-B8_cZAx2.mjs +0 -63
- package/dist/ntfy-B8_cZAx2.mjs.map +0 -1
- package/dist/ollama-BiKAypcO.mjs +0 -66
- package/dist/ollama-BiKAypcO.mjs.map +0 -1
- package/dist/open-webui-DZOG4_xL.mjs +0 -50
- package/dist/open-webui-DZOG4_xL.mjs.map +0 -1
- package/dist/opencode-Dvfh5KvA.mjs +0 -50
- package/dist/opencode-Dvfh5KvA.mjs.map +0 -1
- package/dist/openpanel-BuWHhDze.mjs +0 -46
- package/dist/openpanel-BuWHhDze.mjs.map +0 -1
- package/dist/outline-Dy-YzdYS.mjs +0 -74
- package/dist/outline-Dy-YzdYS.mjs.map +0 -1
- package/dist/paperless-ngx-DVtWWpKg.mjs +0 -93
- package/dist/paperless-ngx-DVtWWpKg.mjs.map +0 -1
- package/dist/playwright-server-Boiz8--G.mjs +0 -42
- package/dist/playwright-server-Boiz8--G.mjs.map +0 -1
- package/dist/portainer-D9MU96UI.mjs +0 -49
- package/dist/portainer-D9MU96UI.mjs.map +0 -1
- package/dist/postgres-init-BiM-xZtq.mjs +0 -151
- package/dist/postgres-init-BiM-xZtq.mjs.map +0 -1
- package/dist/postgresql-s65Z9RqR.mjs +0 -84
- package/dist/postgresql-s65Z9RqR.mjs.map +0 -1
- package/dist/postiz-U6EK23EY.mjs +0 -83
- package/dist/postiz-U6EK23EY.mjs.map +0 -1
- package/dist/prometheus-WOlk-a1G.mjs +0 -107
- package/dist/prometheus-WOlk-a1G.mjs.map +0 -1
- package/dist/prometheus-x901F67p.mjs +0 -52
- package/dist/prometheus-x901F67p.mjs.map +0 -1
- package/dist/qdrant-DZW9uW4e.mjs +0 -77
- package/dist/qdrant-DZW9uW4e.mjs.map +0 -1
- package/dist/readme-C7M3QE9a.mjs +0 -199
- package/dist/readme-C7M3QE9a.mjs.map +0 -1
- package/dist/redis-DPMOf237.mjs +0 -91
- package/dist/redis-DPMOf237.mjs.map +0 -1
- package/dist/registry-CqLarEm5.mjs +0 -30
- package/dist/registry-CqLarEm5.mjs.map +0 -1
- package/dist/registry-DLX9Q4VQ.mjs +0 -215
- package/dist/registry-DLX9Q4VQ.mjs.map +0 -1
- package/dist/remotion-COkr0wpr.mjs +0 -55
- package/dist/remotion-COkr0wpr.mjs.map +0 -1
- package/dist/resolver-Dl5clk-d.mjs +0 -194
- package/dist/resolver-Dl5clk-d.mjs.map +0 -1
- package/dist/rocketchat-BebQT1MZ.mjs +0 -57
- package/dist/rocketchat-BebQT1MZ.mjs.map +0 -1
- package/dist/schema-PSUY6yJU.d.mts +0 -700
- package/dist/schema-PSUY6yJU.d.mts.map +0 -1
- package/dist/scripts-DsljWbP4.mjs +0 -351
- package/dist/scripts-DsljWbP4.mjs.map +0 -1
- package/dist/searxng-tJpBkchC.mjs +0 -65
- package/dist/searxng-tJpBkchC.mjs.map +0 -1
- package/dist/skills-DWG72Y3X.mjs +0 -587
- package/dist/skills-DWG72Y3X.mjs.map +0 -1
- package/dist/stable-diffusion-BulAzkyT.mjs +0 -48
- package/dist/stable-diffusion-BulAzkyT.mjs.map +0 -1
- package/dist/steel-browser-Cc0bYBjM.mjs +0 -77
- package/dist/steel-browser-Cc0bYBjM.mjs.map +0 -1
- package/dist/tailscale-CrM4EZlF.mjs +0 -69
- package/dist/tailscale-CrM4EZlF.mjs.map +0 -1
- package/dist/temporal-49gA0msh.mjs +0 -100
- package/dist/temporal-49gA0msh.mjs.map +0 -1
- package/dist/traefik-Da-c1f55.mjs +0 -58
- package/dist/traefik-Da-c1f55.mjs.map +0 -1
- package/dist/umami-csBSsHqO.mjs +0 -46
- package/dist/umami-csBSsHqO.mjs.map +0 -1
- package/dist/uptime-kuma-D0NvVuXD.mjs +0 -51
- package/dist/uptime-kuma-D0NvVuXD.mjs.map +0 -1
- package/dist/validator-2FspYNva.mjs +0 -111
- package/dist/validator-2FspYNva.mjs.map +0 -1
- package/dist/valkey-BCZqGJ0L.mjs +0 -61
- package/dist/valkey-BCZqGJ0L.mjs.map +0 -1
- package/dist/vi.2VT5v0um-Cs3Z_fCB.mjs.map +0 -1
- package/dist/watchtower-BWuvFGpA.mjs +0 -47
- package/dist/watchtower-BWuvFGpA.mjs.map +0 -1
- package/dist/weaviate-DttY1Hn7.mjs +0 -90
- package/dist/weaviate-DttY1Hn7.mjs.map +0 -1
- package/dist/whisper-CLu7-Vd8.mjs +0 -62
- package/dist/whisper-CLu7-Vd8.mjs.map +0 -1
|
@@ -1,3 +1,48 @@
|
|
|
1
|
-
|
|
1
|
+
//#region src/services/definitions/stable-diffusion.ts
|
|
2
|
+
const stableDiffusionDefinition = {
|
|
3
|
+
id: "stable-diffusion",
|
|
4
|
+
name: "Stable Diffusion WebUI",
|
|
5
|
+
description: "Local AI image generation with a web interface. Generate images from text prompts.",
|
|
6
|
+
category: "ai",
|
|
7
|
+
icon: "🎨",
|
|
8
|
+
image: "ghcr.io/stable-diffusion-webui/stable-diffusion-webui",
|
|
9
|
+
imageTag: "latest",
|
|
10
|
+
ports: [{
|
|
11
|
+
host: 7860,
|
|
12
|
+
container: 7860,
|
|
13
|
+
description: "Stable Diffusion WebUI",
|
|
14
|
+
exposed: true
|
|
15
|
+
}],
|
|
16
|
+
volumes: [{
|
|
17
|
+
name: "sd-models",
|
|
18
|
+
containerPath: "/models",
|
|
19
|
+
description: "Stable Diffusion model checkpoint files"
|
|
20
|
+
}, {
|
|
21
|
+
name: "sd-outputs",
|
|
22
|
+
containerPath: "/outputs",
|
|
23
|
+
description: "Generated images and output files"
|
|
24
|
+
}],
|
|
25
|
+
environment: [],
|
|
26
|
+
dependsOn: [],
|
|
27
|
+
restartPolicy: "unless-stopped",
|
|
28
|
+
networks: ["openclaw-network"],
|
|
29
|
+
skills: [],
|
|
30
|
+
openclawEnvVars: [],
|
|
31
|
+
docsUrl: "https://github.com/AUTOMATIC1111/stable-diffusion-webui",
|
|
32
|
+
tags: [
|
|
33
|
+
"image-generation",
|
|
34
|
+
"ai-art",
|
|
35
|
+
"stable-diffusion",
|
|
36
|
+
"text-to-image"
|
|
37
|
+
],
|
|
38
|
+
maturity: "experimental",
|
|
39
|
+
requires: [],
|
|
40
|
+
recommends: [],
|
|
41
|
+
conflictsWith: [],
|
|
42
|
+
minMemoryMB: 4096,
|
|
43
|
+
gpuRequired: true
|
|
44
|
+
};
|
|
2
45
|
|
|
3
|
-
|
|
46
|
+
//#endregion
|
|
47
|
+
export { stableDiffusionDefinition };
|
|
48
|
+
//# sourceMappingURL=stable-diffusion.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stable-diffusion.mjs","names":[],"sources":["../../../src/services/definitions/stable-diffusion.ts"],"sourcesContent":["import type { ServiceDefinition } from \"../../types.js\";\n\nexport const stableDiffusionDefinition: ServiceDefinition = {\n\tid: \"stable-diffusion\",\n\tname: \"Stable Diffusion WebUI\",\n\tdescription: \"Local AI image generation with a web interface. Generate images from text prompts.\",\n\tcategory: \"ai\",\n\ticon: \"🎨\",\n\n\timage: \"ghcr.io/stable-diffusion-webui/stable-diffusion-webui\",\n\timageTag: \"latest\",\n\tports: [\n\t\t{\n\t\t\thost: 7860,\n\t\t\tcontainer: 7860,\n\t\t\tdescription: \"Stable Diffusion WebUI\",\n\t\t\texposed: true,\n\t\t},\n\t],\n\tvolumes: [\n\t\t{\n\t\t\tname: \"sd-models\",\n\t\t\tcontainerPath: \"/models\",\n\t\t\tdescription: \"Stable Diffusion model checkpoint files\",\n\t\t},\n\t\t{\n\t\t\tname: \"sd-outputs\",\n\t\t\tcontainerPath: \"/outputs\",\n\t\t\tdescription: \"Generated images and output files\",\n\t\t},\n\t],\n\tenvironment: [],\n\tdependsOn: [],\n\trestartPolicy: \"unless-stopped\",\n\tnetworks: [\"openclaw-network\"],\n\n\tskills: [],\n\topenclawEnvVars: [],\n\n\tdocsUrl: \"https://github.com/AUTOMATIC1111/stable-diffusion-webui\",\n\ttags: [\"image-generation\", \"ai-art\", \"stable-diffusion\", \"text-to-image\"],\n\tmaturity: \"experimental\",\n\n\trequires: [],\n\trecommends: [],\n\tconflictsWith: [],\n\n\tminMemoryMB: 4096,\n\tgpuRequired: true,\n};\n"],"mappings":";AAEA,MAAa,4BAA+C;CAC3D,IAAI;CACJ,MAAM;CACN,aAAa;CACb,UAAU;CACV,MAAM;CAEN,OAAO;CACP,UAAU;CACV,OAAO,CACN;EACC,MAAM;EACN,WAAW;EACX,aAAa;EACb,SAAS;EACT,CACD;CACD,SAAS,CACR;EACC,MAAM;EACN,eAAe;EACf,aAAa;EACb,EACD;EACC,MAAM;EACN,eAAe;EACf,aAAa;EACb,CACD;CACD,aAAa,EAAE;CACf,WAAW,EAAE;CACb,eAAe;CACf,UAAU,CAAC,mBAAmB;CAE9B,QAAQ,EAAE;CACV,iBAAiB,EAAE;CAEnB,SAAS;CACT,MAAM;EAAC;EAAoB;EAAU;EAAoB;EAAgB;CACzE,UAAU;CAEV,UAAU,EAAE;CACZ,YAAY,EAAE;CACd,eAAe,EAAE;CAEjB,aAAa;CACb,aAAa;CACb"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"steel-browser.d.mts","names":[],"sources":["../../../src/services/definitions/steel-browser.ts"],"
|
|
1
|
+
{"version":3,"file":"steel-browser.d.mts","names":[],"sources":["../../../src/services/definitions/steel-browser.ts"],"mappings":";;;cAEa,sBAAA,EAAwB,iBAAA"}
|
|
@@ -1,3 +1,77 @@
|
|
|
1
|
-
|
|
1
|
+
//#region src/services/definitions/steel-browser.ts
|
|
2
|
+
const steelBrowserDefinition = {
|
|
3
|
+
id: "steel-browser",
|
|
4
|
+
name: "Steel Browser",
|
|
5
|
+
description: "Open-source browser API for AI agents. Full session management, anti-detection, proxy support, CAPTCHA solving, and compatibility with Puppeteer, Playwright, and Selenium.",
|
|
6
|
+
category: "browser",
|
|
7
|
+
icon: "🔥",
|
|
8
|
+
image: "ghcr.io/steel-dev/steel-browser",
|
|
9
|
+
imageTag: "latest",
|
|
10
|
+
ports: [{
|
|
11
|
+
host: 3070,
|
|
12
|
+
container: 3e3,
|
|
13
|
+
description: "Steel Browser REST API",
|
|
14
|
+
exposed: true
|
|
15
|
+
}, {
|
|
16
|
+
host: 9223,
|
|
17
|
+
container: 9223,
|
|
18
|
+
description: "CDP debugger",
|
|
19
|
+
exposed: true
|
|
20
|
+
}],
|
|
21
|
+
volumes: [],
|
|
22
|
+
environment: [{
|
|
23
|
+
key: "STEEL_LOG_LEVEL",
|
|
24
|
+
defaultValue: "info",
|
|
25
|
+
secret: false,
|
|
26
|
+
description: "Steel Browser log level",
|
|
27
|
+
required: false
|
|
28
|
+
}],
|
|
29
|
+
healthcheck: {
|
|
30
|
+
test: "wget -q --spider http://localhost:3000/health || exit 1",
|
|
31
|
+
interval: "30s",
|
|
32
|
+
timeout: "10s",
|
|
33
|
+
retries: 3,
|
|
34
|
+
startPeriod: "15s"
|
|
35
|
+
},
|
|
36
|
+
dependsOn: [],
|
|
37
|
+
restartPolicy: "unless-stopped",
|
|
38
|
+
networks: ["openclaw-network"],
|
|
39
|
+
skills: [{
|
|
40
|
+
skillId: "steel-browse",
|
|
41
|
+
autoInstall: true
|
|
42
|
+
}],
|
|
43
|
+
openclawEnvVars: [{
|
|
44
|
+
key: "STEEL_HOST",
|
|
45
|
+
defaultValue: "steel-browser",
|
|
46
|
+
secret: false,
|
|
47
|
+
description: "Steel Browser hostname for OpenClaw",
|
|
48
|
+
required: true
|
|
49
|
+
}, {
|
|
50
|
+
key: "STEEL_PORT",
|
|
51
|
+
defaultValue: "3070",
|
|
52
|
+
secret: false,
|
|
53
|
+
description: "Steel Browser API port for OpenClaw",
|
|
54
|
+
required: true
|
|
55
|
+
}],
|
|
56
|
+
docsUrl: "https://docs.steel.dev/",
|
|
57
|
+
tags: [
|
|
58
|
+
"browser-api",
|
|
59
|
+
"ai-agents",
|
|
60
|
+
"anti-detection",
|
|
61
|
+
"sessions",
|
|
62
|
+
"puppeteer",
|
|
63
|
+
"playwright",
|
|
64
|
+
"selenium",
|
|
65
|
+
"captcha"
|
|
66
|
+
],
|
|
67
|
+
maturity: "stable",
|
|
68
|
+
requires: [],
|
|
69
|
+
recommends: [],
|
|
70
|
+
conflictsWith: [],
|
|
71
|
+
minMemoryMB: 512,
|
|
72
|
+
gpuRequired: false
|
|
73
|
+
};
|
|
2
74
|
|
|
3
|
-
|
|
75
|
+
//#endregion
|
|
76
|
+
export { steelBrowserDefinition };
|
|
77
|
+
//# sourceMappingURL=steel-browser.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"steel-browser.mjs","names":[],"sources":["../../../src/services/definitions/steel-browser.ts"],"sourcesContent":["import type { ServiceDefinition } from \"../../types.js\";\n\nexport const steelBrowserDefinition: ServiceDefinition = {\n\tid: \"steel-browser\",\n\tname: \"Steel Browser\",\n\tdescription:\n\t\t\"Open-source browser API for AI agents. Full session management, anti-detection, proxy support, CAPTCHA solving, and compatibility with Puppeteer, Playwright, and Selenium.\",\n\tcategory: \"browser\",\n\ticon: \"🔥\",\n\timage: \"ghcr.io/steel-dev/steel-browser\",\n\timageTag: \"latest\",\n\tports: [\n\t\t{ host: 3070, container: 3000, description: \"Steel Browser REST API\", exposed: true },\n\t\t{ host: 9223, container: 9223, description: \"CDP debugger\", exposed: true },\n\t],\n\tvolumes: [],\n\tenvironment: [\n\t\t{\n\t\t\tkey: \"STEEL_LOG_LEVEL\",\n\t\t\tdefaultValue: \"info\",\n\t\t\tsecret: false,\n\t\t\tdescription: \"Steel Browser log level\",\n\t\t\trequired: false,\n\t\t},\n\t],\n\thealthcheck: {\n\t\ttest: \"wget -q --spider http://localhost:3000/health || exit 1\",\n\t\tinterval: \"30s\",\n\t\ttimeout: \"10s\",\n\t\tretries: 3,\n\t\tstartPeriod: \"15s\",\n\t},\n\tdependsOn: [],\n\trestartPolicy: \"unless-stopped\",\n\tnetworks: [\"openclaw-network\"],\n\tskills: [{ skillId: \"steel-browse\", autoInstall: true }],\n\topenclawEnvVars: [\n\t\t{\n\t\t\tkey: \"STEEL_HOST\",\n\t\t\tdefaultValue: \"steel-browser\",\n\t\t\tsecret: false,\n\t\t\tdescription: \"Steel Browser hostname for OpenClaw\",\n\t\t\trequired: true,\n\t\t},\n\t\t{\n\t\t\tkey: \"STEEL_PORT\",\n\t\t\tdefaultValue: \"3070\",\n\t\t\tsecret: false,\n\t\t\tdescription: \"Steel Browser API port for OpenClaw\",\n\t\t\trequired: true,\n\t\t},\n\t],\n\tdocsUrl: \"https://docs.steel.dev/\",\n\ttags: [\n\t\t\"browser-api\",\n\t\t\"ai-agents\",\n\t\t\"anti-detection\",\n\t\t\"sessions\",\n\t\t\"puppeteer\",\n\t\t\"playwright\",\n\t\t\"selenium\",\n\t\t\"captcha\",\n\t],\n\tmaturity: \"stable\",\n\trequires: [],\n\trecommends: [],\n\tconflictsWith: [],\n\tminMemoryMB: 512,\n\tgpuRequired: false,\n};\n"],"mappings":";AAEA,MAAa,yBAA4C;CACxD,IAAI;CACJ,MAAM;CACN,aACC;CACD,UAAU;CACV,MAAM;CACN,OAAO;CACP,UAAU;CACV,OAAO,CACN;EAAE,MAAM;EAAM,WAAW;EAAM,aAAa;EAA0B,SAAS;EAAM,EACrF;EAAE,MAAM;EAAM,WAAW;EAAM,aAAa;EAAgB,SAAS;EAAM,CAC3E;CACD,SAAS,EAAE;CACX,aAAa,CACZ;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;CAC9B,QAAQ,CAAC;EAAE,SAAS;EAAgB,aAAa;EAAM,CAAC;CACxD,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;CACD,SAAS;CACT,MAAM;EACL;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACD,UAAU;CACV,UAAU,EAAE;CACZ,YAAY,EAAE;CACd,eAAe,EAAE;CACjB,aAAa;CACb,aAAa;CACb"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { ServiceDefinition } from "../../types.mjs";
|
|
2
|
+
|
|
3
|
+
//#region src/services/definitions/stream-gateway.d.ts
|
|
4
|
+
declare const streamGatewayDefinition: ServiceDefinition;
|
|
5
|
+
//#endregion
|
|
6
|
+
export { streamGatewayDefinition };
|
|
7
|
+
//# sourceMappingURL=stream-gateway.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stream-gateway.d.mts","names":[],"sources":["../../../src/services/definitions/stream-gateway.ts"],"mappings":";;;cAEa,uBAAA,EAAyB,iBAAA"}
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
//#region src/services/definitions/stream-gateway.ts
|
|
2
|
+
const streamGatewayDefinition = {
|
|
3
|
+
id: "stream-gateway",
|
|
4
|
+
name: "Stream Gateway",
|
|
5
|
+
description: "NGINX-RTMP relay server that receives a local RTMP stream (e.g. from OBS in the desktop-environment) and fans it out to YouTube, Twitch, TikTok, and Telegram simultaneously. Also serves an HLS preview on HTTP for local viewing.",
|
|
6
|
+
category: "streaming",
|
|
7
|
+
icon: "📺",
|
|
8
|
+
image: "tiangolo/nginx-rtmp",
|
|
9
|
+
imageTag: "latest",
|
|
10
|
+
ports: [{
|
|
11
|
+
host: 1935,
|
|
12
|
+
container: 1935,
|
|
13
|
+
description: "RTMP ingest (receives stream from OBS or ffmpeg)",
|
|
14
|
+
exposed: true
|
|
15
|
+
}, {
|
|
16
|
+
host: 8080,
|
|
17
|
+
container: 8080,
|
|
18
|
+
description: "HTTP server for HLS preview and stats",
|
|
19
|
+
exposed: true
|
|
20
|
+
}],
|
|
21
|
+
volumes: [{
|
|
22
|
+
name: "stream-gateway-hls",
|
|
23
|
+
containerPath: "/tmp/hls",
|
|
24
|
+
description: "HLS segment storage for live preview playback"
|
|
25
|
+
}],
|
|
26
|
+
environment: [
|
|
27
|
+
{
|
|
28
|
+
key: "YOUTUBE_STREAM_KEY",
|
|
29
|
+
defaultValue: "",
|
|
30
|
+
secret: true,
|
|
31
|
+
description: "YouTube Live stream key (leave empty to skip YouTube relay)",
|
|
32
|
+
required: false
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
key: "TWITCH_STREAM_KEY",
|
|
36
|
+
defaultValue: "",
|
|
37
|
+
secret: true,
|
|
38
|
+
description: "Twitch stream key (leave empty to skip Twitch relay)",
|
|
39
|
+
required: false
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
key: "TIKTOK_STREAM_URL",
|
|
43
|
+
defaultValue: "",
|
|
44
|
+
secret: true,
|
|
45
|
+
description: "Full TikTok RTMP URL from TikTok Studio (leave empty to skip TikTok relay)",
|
|
46
|
+
required: false
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
key: "TELEGRAM_STREAM_URL",
|
|
50
|
+
defaultValue: "",
|
|
51
|
+
secret: true,
|
|
52
|
+
description: "Full Telegram RTMPS URL including stream key (leave empty to skip Telegram relay)",
|
|
53
|
+
required: false
|
|
54
|
+
}
|
|
55
|
+
],
|
|
56
|
+
healthcheck: {
|
|
57
|
+
test: "curl -sf http://localhost:8080/health || exit 1",
|
|
58
|
+
interval: "15s",
|
|
59
|
+
timeout: "5s",
|
|
60
|
+
retries: 3
|
|
61
|
+
},
|
|
62
|
+
dependsOn: [],
|
|
63
|
+
restartPolicy: "unless-stopped",
|
|
64
|
+
networks: ["openclaw-network"],
|
|
65
|
+
deploy: { resources: {
|
|
66
|
+
limits: {
|
|
67
|
+
cpus: "2.0",
|
|
68
|
+
memory: "2G"
|
|
69
|
+
},
|
|
70
|
+
reservations: {
|
|
71
|
+
cpus: "0.5",
|
|
72
|
+
memory: "512M"
|
|
73
|
+
}
|
|
74
|
+
} },
|
|
75
|
+
skills: [],
|
|
76
|
+
openclawEnvVars: [
|
|
77
|
+
{
|
|
78
|
+
key: "STREAM_GATEWAY_HOST",
|
|
79
|
+
defaultValue: "stream-gateway",
|
|
80
|
+
secret: false,
|
|
81
|
+
description: "Hostname of the stream-gateway container",
|
|
82
|
+
required: true
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
key: "STREAM_GATEWAY_RTMP_PORT",
|
|
86
|
+
defaultValue: "1935",
|
|
87
|
+
secret: false,
|
|
88
|
+
description: "RTMP ingest port on the stream-gateway",
|
|
89
|
+
required: true
|
|
90
|
+
},
|
|
91
|
+
{
|
|
92
|
+
key: "STREAM_GATEWAY_HLS_PORT",
|
|
93
|
+
defaultValue: "8080",
|
|
94
|
+
secret: false,
|
|
95
|
+
description: "HTTP port for HLS preview on the stream-gateway",
|
|
96
|
+
required: true
|
|
97
|
+
}
|
|
98
|
+
],
|
|
99
|
+
docsUrl: "https://github.com/tiangolo/nginx-rtmp-docker",
|
|
100
|
+
tags: [
|
|
101
|
+
"streaming",
|
|
102
|
+
"rtmp",
|
|
103
|
+
"hls",
|
|
104
|
+
"relay",
|
|
105
|
+
"youtube",
|
|
106
|
+
"twitch",
|
|
107
|
+
"tiktok",
|
|
108
|
+
"telegram",
|
|
109
|
+
"obs",
|
|
110
|
+
"nginx"
|
|
111
|
+
],
|
|
112
|
+
maturity: "experimental",
|
|
113
|
+
requires: [],
|
|
114
|
+
recommends: ["desktop-environment"],
|
|
115
|
+
conflictsWith: [],
|
|
116
|
+
removalWarning: "⚠️ STREAMING KEYS REQUIRED: To relay to platforms you must provide at least one stream key. Without any keys configured the gateway will still accept RTMP input and serve HLS locally but nothing will be forwarded.",
|
|
117
|
+
minMemoryMB: 512,
|
|
118
|
+
gpuRequired: false,
|
|
119
|
+
nativeSupported: true,
|
|
120
|
+
nativeRecipes: [{
|
|
121
|
+
platform: "linux",
|
|
122
|
+
installSteps: ["command -v nginx >/dev/null 2>&1 || (command -v apt-get >/dev/null 2>&1 && sudo apt-get update -qq && sudo apt-get install -y -qq nginx libnginx-mod-rtmp ffmpeg)", "command -v nginx >/dev/null 2>&1 || (command -v dnf >/dev/null 2>&1 && sudo dnf install -y nginx nginx-mod-rtmp ffmpeg)"],
|
|
123
|
+
startCommand: "sudo systemctl start nginx",
|
|
124
|
+
stopCommand: "sudo systemctl stop nginx",
|
|
125
|
+
configPath: "/etc/nginx/nginx.conf",
|
|
126
|
+
configTemplate: "# Generated for OpenClaw bare-metal\nworker_processes auto;\nrtmp_auto_push on;\n\nevents { worker_connections 1024; }\n\nrtmp {\n server {\n listen 1935;\n chunk_size 4096;\n application live {\n live on;\n record off;\n hls on;\n hls_path /tmp/hls;\n hls_fragment 3;\n hls_playlist_length 60;\n }\n }\n}\n\nhttp {\n server {\n listen 8080;\n location /hls { types { application/vnd.apple.mpegurl m3u8; video/mp2t ts; } root /tmp; add_header Cache-Control no-cache; }\n location /health { return 200 \"OK\"; }\n }\n}\n",
|
|
127
|
+
systemdUnit: "nginx"
|
|
128
|
+
}]
|
|
129
|
+
};
|
|
130
|
+
|
|
131
|
+
//#endregion
|
|
132
|
+
export { streamGatewayDefinition };
|
|
133
|
+
//# sourceMappingURL=stream-gateway.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stream-gateway.mjs","names":[],"sources":["../../../src/services/definitions/stream-gateway.ts"],"sourcesContent":["import type { ServiceDefinition } from \"../../types.js\";\n\nexport const streamGatewayDefinition: ServiceDefinition = {\n\tid: \"stream-gateway\",\n\tname: \"Stream Gateway\",\n\tdescription:\n\t\t\"NGINX-RTMP relay server that receives a local RTMP stream (e.g. from OBS in the desktop-environment) and fans it out to YouTube, Twitch, TikTok, and Telegram simultaneously. Also serves an HLS preview on HTTP for local viewing.\",\n\tcategory: \"streaming\",\n\ticon: \"📺\",\n\n\timage: \"tiangolo/nginx-rtmp\",\n\timageTag: \"latest\",\n\tports: [\n\t\t{\n\t\t\thost: 1935,\n\t\t\tcontainer: 1935,\n\t\t\tdescription: \"RTMP ingest (receives stream from OBS or ffmpeg)\",\n\t\t\texposed: true,\n\t\t},\n\t\t{\n\t\t\thost: 8080,\n\t\t\tcontainer: 8080,\n\t\t\tdescription: \"HTTP server for HLS preview and stats\",\n\t\t\texposed: true,\n\t\t},\n\t],\n\tvolumes: [\n\t\t{\n\t\t\tname: \"stream-gateway-hls\",\n\t\t\tcontainerPath: \"/tmp/hls\",\n\t\t\tdescription: \"HLS segment storage for live preview playback\",\n\t\t},\n\t],\n\tenvironment: [\n\t\t{\n\t\t\tkey: \"YOUTUBE_STREAM_KEY\",\n\t\t\tdefaultValue: \"\",\n\t\t\tsecret: true,\n\t\t\tdescription: \"YouTube Live stream key (leave empty to skip YouTube relay)\",\n\t\t\trequired: false,\n\t\t},\n\t\t{\n\t\t\tkey: \"TWITCH_STREAM_KEY\",\n\t\t\tdefaultValue: \"\",\n\t\t\tsecret: true,\n\t\t\tdescription: \"Twitch stream key (leave empty to skip Twitch relay)\",\n\t\t\trequired: false,\n\t\t},\n\t\t{\n\t\t\tkey: \"TIKTOK_STREAM_URL\",\n\t\t\tdefaultValue: \"\",\n\t\t\tsecret: true,\n\t\t\tdescription:\n\t\t\t\t\"Full TikTok RTMP URL from TikTok Studio (leave empty to skip TikTok relay)\",\n\t\t\trequired: false,\n\t\t},\n\t\t{\n\t\t\tkey: \"TELEGRAM_STREAM_URL\",\n\t\t\tdefaultValue: \"\",\n\t\t\tsecret: true,\n\t\t\tdescription:\n\t\t\t\t\"Full Telegram RTMPS URL including stream key (leave empty to skip Telegram relay)\",\n\t\t\trequired: false,\n\t\t},\n\t],\n\thealthcheck: {\n\t\ttest: \"curl -sf http://localhost:8080/health || exit 1\",\n\t\tinterval: \"15s\",\n\t\ttimeout: \"5s\",\n\t\tretries: 3,\n\t},\n\tdependsOn: [],\n\trestartPolicy: \"unless-stopped\",\n\tnetworks: [\"openclaw-network\"],\n\n\tdeploy: {\n\t\tresources: {\n\t\t\tlimits: { cpus: \"2.0\", memory: \"2G\" },\n\t\t\treservations: { cpus: \"0.5\", memory: \"512M\" },\n\t\t},\n\t},\n\n\tskills: [],\n\topenclawEnvVars: [\n\t\t{\n\t\t\tkey: \"STREAM_GATEWAY_HOST\",\n\t\t\tdefaultValue: \"stream-gateway\",\n\t\t\tsecret: false,\n\t\t\tdescription: \"Hostname of the stream-gateway container\",\n\t\t\trequired: true,\n\t\t},\n\t\t{\n\t\t\tkey: \"STREAM_GATEWAY_RTMP_PORT\",\n\t\t\tdefaultValue: \"1935\",\n\t\t\tsecret: false,\n\t\t\tdescription: \"RTMP ingest port on the stream-gateway\",\n\t\t\trequired: true,\n\t\t},\n\t\t{\n\t\t\tkey: \"STREAM_GATEWAY_HLS_PORT\",\n\t\t\tdefaultValue: \"8080\",\n\t\t\tsecret: false,\n\t\t\tdescription: \"HTTP port for HLS preview on the stream-gateway\",\n\t\t\trequired: true,\n\t\t},\n\t],\n\n\tdocsUrl: \"https://github.com/tiangolo/nginx-rtmp-docker\",\n\ttags: [\n\t\t\"streaming\",\n\t\t\"rtmp\",\n\t\t\"hls\",\n\t\t\"relay\",\n\t\t\"youtube\",\n\t\t\"twitch\",\n\t\t\"tiktok\",\n\t\t\"telegram\",\n\t\t\"obs\",\n\t\t\"nginx\",\n\t],\n\tmaturity: \"experimental\",\n\n\trequires: [],\n\trecommends: [\"desktop-environment\"],\n\tconflictsWith: [],\n\n\tremovalWarning:\n\t\t\"⚠️ STREAMING KEYS REQUIRED: To relay to platforms you must provide at least one stream key. Without any keys configured the gateway will still accept RTMP input and serve HLS locally but nothing will be forwarded.\",\n\tminMemoryMB: 512,\n\tgpuRequired: false,\n\n\tnativeSupported: true,\n\tnativeRecipes: [\n\t\t{\n\t\t\tplatform: \"linux\",\n\t\t\tinstallSteps: [\n\t\t\t\t\"command -v nginx >/dev/null 2>&1 || (command -v apt-get >/dev/null 2>&1 && sudo apt-get update -qq && sudo apt-get install -y -qq nginx libnginx-mod-rtmp ffmpeg)\",\n\t\t\t\t\"command -v nginx >/dev/null 2>&1 || (command -v dnf >/dev/null 2>&1 && sudo dnf install -y nginx nginx-mod-rtmp ffmpeg)\",\n\t\t\t],\n\t\t\tstartCommand: \"sudo systemctl start nginx\",\n\t\t\tstopCommand: \"sudo systemctl stop nginx\",\n\t\t\tconfigPath: \"/etc/nginx/nginx.conf\",\n\t\t\tconfigTemplate:\n\t\t\t\t'# Generated for OpenClaw bare-metal\\nworker_processes auto;\\nrtmp_auto_push on;\\n\\nevents { worker_connections 1024; }\\n\\nrtmp {\\n server {\\n listen 1935;\\n chunk_size 4096;\\n application live {\\n live on;\\n record off;\\n hls on;\\n hls_path /tmp/hls;\\n hls_fragment 3;\\n hls_playlist_length 60;\\n }\\n }\\n}\\n\\nhttp {\\n server {\\n listen 8080;\\n location /hls { types { application/vnd.apple.mpegurl m3u8; video/mp2t ts; } root /tmp; add_header Cache-Control no-cache; }\\n location /health { return 200 \"OK\"; }\\n }\\n}\\n',\n\t\t\tsystemdUnit: \"nginx\",\n\t\t},\n\t],\n};\n"],"mappings":";AAEA,MAAa,0BAA6C;CACzD,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,aACC;GACD,UAAU;GACV;EACD;GACC,KAAK;GACL,cAAc;GACd,QAAQ;GACR,aACC;GACD,UAAU;GACV;EACD;CACD,aAAa;EACZ,MAAM;EACN,UAAU;EACV,SAAS;EACT,SAAS;EACT;CACD,WAAW,EAAE;CACb,eAAe;CACf,UAAU,CAAC,mBAAmB;CAE9B,QAAQ,EACP,WAAW;EACV,QAAQ;GAAE,MAAM;GAAO,QAAQ;GAAM;EACrC,cAAc;GAAE,MAAM;GAAO,QAAQ;GAAQ;EAC7C,EACD;CAED,QAAQ,EAAE;CACV,iBAAiB;EAChB;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;CAED,SAAS;CACT,MAAM;EACL;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACD,UAAU;CAEV,UAAU,EAAE;CACZ,YAAY,CAAC,sBAAsB;CACnC,eAAe,EAAE;CAEjB,gBACC;CACD,aAAa;CACb,aAAa;CAEb,iBAAiB;CACjB,eAAe,CACd;EACC,UAAU;EACV,cAAc,CACb,qKACA,0HACA;EACD,cAAc;EACd,aAAa;EACb,YAAY;EACZ,gBACC;EACD,aAAa;EACb,CACD;CACD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tailscale.d.mts","names":[],"sources":["../../../src/services/definitions/tailscale.ts"],"
|
|
1
|
+
{"version":3,"file":"tailscale.d.mts","names":[],"sources":["../../../src/services/definitions/tailscale.ts"],"mappings":";;;cAEa,mBAAA,EAAqB,iBAAA"}
|
|
@@ -1,3 +1,70 @@
|
|
|
1
|
-
|
|
1
|
+
//#region src/services/definitions/tailscale.ts
|
|
2
|
+
const tailscaleDefinition = {
|
|
3
|
+
id: "tailscale",
|
|
4
|
+
name: "Tailscale",
|
|
5
|
+
description: "Zero-config VPN and secure mesh network for private access to your stack. Uses WireGuard; connect devices and users without opening ports.",
|
|
6
|
+
category: "dev-tools",
|
|
7
|
+
icon: "🔒",
|
|
8
|
+
image: "tailscale/tailscale",
|
|
9
|
+
imageTag: "latest",
|
|
10
|
+
ports: [],
|
|
11
|
+
volumes: [{
|
|
12
|
+
name: "tailscale-state",
|
|
13
|
+
containerPath: "/var/lib",
|
|
14
|
+
description: "Tailscale state and identity"
|
|
15
|
+
}],
|
|
16
|
+
environment: [
|
|
17
|
+
{
|
|
18
|
+
key: "TS_AUTHKEY",
|
|
19
|
+
defaultValue: "",
|
|
20
|
+
secret: true,
|
|
21
|
+
description: "Auth key for headless login (create at admin.tailscale.com)",
|
|
22
|
+
required: true
|
|
23
|
+
},
|
|
24
|
+
{
|
|
25
|
+
key: "TS_HOSTNAME",
|
|
26
|
+
defaultValue: "openclaw-tailscale",
|
|
27
|
+
secret: false,
|
|
28
|
+
description: "Hostname for this node in the Tailscale network",
|
|
29
|
+
required: false
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
key: "TS_ACCEPT_DNS",
|
|
33
|
+
defaultValue: "true",
|
|
34
|
+
secret: false,
|
|
35
|
+
description: "Accept DNS configuration from Tailscale",
|
|
36
|
+
required: false
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
key: "TS_AUTH_ONCE",
|
|
40
|
+
defaultValue: "true",
|
|
41
|
+
secret: false,
|
|
42
|
+
description: "Exit after initial auth (for ephemeral nodes)",
|
|
43
|
+
required: false
|
|
44
|
+
}
|
|
45
|
+
],
|
|
46
|
+
dependsOn: [],
|
|
47
|
+
restartPolicy: "unless-stopped",
|
|
48
|
+
networks: ["openclaw-network"],
|
|
49
|
+
skills: [],
|
|
50
|
+
openclawEnvVars: [],
|
|
51
|
+
docsUrl: "https://tailscale.com/kb/1282/docker",
|
|
52
|
+
tags: [
|
|
53
|
+
"vpn",
|
|
54
|
+
"wireguard",
|
|
55
|
+
"networking",
|
|
56
|
+
"secure-access"
|
|
57
|
+
],
|
|
58
|
+
maturity: "stable",
|
|
59
|
+
requires: [],
|
|
60
|
+
recommends: [],
|
|
61
|
+
conflictsWith: [],
|
|
62
|
+
mandatory: true,
|
|
63
|
+
removalWarning: "Tailscale provides secure VPN access to your stack via WireGuard. Without it, services will be directly exposed to the network and accessible without authentication.",
|
|
64
|
+
minMemoryMB: 64,
|
|
65
|
+
gpuRequired: false
|
|
66
|
+
};
|
|
2
67
|
|
|
3
|
-
|
|
68
|
+
//#endregion
|
|
69
|
+
export { tailscaleDefinition };
|
|
70
|
+
//# sourceMappingURL=tailscale.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tailscale.mjs","names":[],"sources":["../../../src/services/definitions/tailscale.ts"],"sourcesContent":["import type { ServiceDefinition } from \"../../types.js\";\n\nexport const tailscaleDefinition: ServiceDefinition = {\n\tid: \"tailscale\",\n\tname: \"Tailscale\",\n\tdescription:\n\t\t\"Zero-config VPN and secure mesh network for private access to your stack. Uses WireGuard; connect devices and users without opening ports.\",\n\tcategory: \"dev-tools\",\n\ticon: \"🔒\",\n\n\timage: \"tailscale/tailscale\",\n\timageTag: \"latest\",\n\tports: [],\n\tvolumes: [\n\t\t{\n\t\t\tname: \"tailscale-state\",\n\t\t\tcontainerPath: \"/var/lib\",\n\t\t\tdescription: \"Tailscale state and identity\",\n\t\t},\n\t],\n\tenvironment: [\n\t\t{\n\t\t\tkey: \"TS_AUTHKEY\",\n\t\t\tdefaultValue: \"\",\n\t\t\tsecret: true,\n\t\t\tdescription: \"Auth key for headless login (create at admin.tailscale.com)\",\n\t\t\trequired: true,\n\t\t},\n\t\t{\n\t\t\tkey: \"TS_HOSTNAME\",\n\t\t\tdefaultValue: \"openclaw-tailscale\",\n\t\t\tsecret: false,\n\t\t\tdescription: \"Hostname for this node in the Tailscale network\",\n\t\t\trequired: false,\n\t\t},\n\t\t{\n\t\t\tkey: \"TS_ACCEPT_DNS\",\n\t\t\tdefaultValue: \"true\",\n\t\t\tsecret: false,\n\t\t\tdescription: \"Accept DNS configuration from Tailscale\",\n\t\t\trequired: false,\n\t\t},\n\t\t{\n\t\t\tkey: \"TS_AUTH_ONCE\",\n\t\t\tdefaultValue: \"true\",\n\t\t\tsecret: false,\n\t\t\tdescription: \"Exit after initial auth (for ephemeral nodes)\",\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://tailscale.com/kb/1282/docker\",\n\ttags: [\"vpn\", \"wireguard\", \"networking\", \"secure-access\"],\n\tmaturity: \"stable\",\n\n\trequires: [],\n\trecommends: [],\n\tconflictsWith: [],\n\tmandatory: true,\n\tremovalWarning:\n\t\t\"Tailscale provides secure VPN access to your stack via WireGuard. Without it, services will be directly exposed to the network and accessible without authentication.\",\n\n\tminMemoryMB: 64,\n\tgpuRequired: false,\n};\n"],"mappings":";AAEA,MAAa,sBAAyC;CACrD,IAAI;CACJ,MAAM;CACN,aACC;CACD,UAAU;CACV,MAAM;CAEN,OAAO;CACP,UAAU;CACV,OAAO,EAAE;CACT,SAAS,CACR;EACC,MAAM;EACN,eAAe;EACf,aAAa;EACb,CACD;CACD,aAAa;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;GACC,KAAK;GACL,cAAc;GACd,QAAQ;GACR,aAAa;GACb,UAAU;GACV;EACD;CACD,WAAW,EAAE;CACb,eAAe;CACf,UAAU,CAAC,mBAAmB;CAE9B,QAAQ,EAAE;CACV,iBAAiB,EAAE;CAEnB,SAAS;CACT,MAAM;EAAC;EAAO;EAAa;EAAc;EAAgB;CACzD,UAAU;CAEV,UAAU,EAAE;CACZ,YAAY,EAAE;CACd,eAAe,EAAE;CACjB,WAAW;CACX,gBACC;CAED,aAAa;CACb,aAAa;CACb"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"temporal.d.mts","names":[],"sources":["../../../src/services/definitions/temporal.ts"],"
|
|
1
|
+
{"version":3,"file":"temporal.d.mts","names":[],"sources":["../../../src/services/definitions/temporal.ts"],"mappings":";;;cAEa,kBAAA,EAAoB,iBAAA"}
|
|
@@ -1,3 +1,100 @@
|
|
|
1
|
-
|
|
1
|
+
//#region src/services/definitions/temporal.ts
|
|
2
|
+
const temporalDefinition = {
|
|
3
|
+
id: "temporal",
|
|
4
|
+
name: "Temporal",
|
|
5
|
+
description: "Durable workflow execution platform for long-running, reliable tasks. OpenClaw can trigger and monitor Temporal workflows for complex multi-step operations.",
|
|
6
|
+
category: "automation",
|
|
7
|
+
icon: "⏱️",
|
|
8
|
+
image: "temporalio/auto-setup",
|
|
9
|
+
imageTag: "latest",
|
|
10
|
+
ports: [{
|
|
11
|
+
host: 7233,
|
|
12
|
+
container: 7233,
|
|
13
|
+
description: "Temporal gRPC frontend",
|
|
14
|
+
exposed: true
|
|
15
|
+
}, {
|
|
16
|
+
host: 8233,
|
|
17
|
+
container: 8233,
|
|
18
|
+
description: "Temporal Web UI",
|
|
19
|
+
exposed: true
|
|
20
|
+
}],
|
|
21
|
+
volumes: [],
|
|
22
|
+
environment: [
|
|
23
|
+
{
|
|
24
|
+
key: "DB",
|
|
25
|
+
defaultValue: "postgresql",
|
|
26
|
+
secret: false,
|
|
27
|
+
description: "Database type for Temporal persistence",
|
|
28
|
+
required: true
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
key: "DB_PORT",
|
|
32
|
+
defaultValue: "5432",
|
|
33
|
+
secret: false,
|
|
34
|
+
description: "Database port",
|
|
35
|
+
required: true
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
key: "POSTGRES_USER",
|
|
39
|
+
defaultValue: "temporal",
|
|
40
|
+
secret: false,
|
|
41
|
+
description: "PostgreSQL user for Temporal",
|
|
42
|
+
required: true
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
key: "POSTGRES_PWD",
|
|
46
|
+
defaultValue: "${TEMPORAL_DB_PASSWORD}",
|
|
47
|
+
secret: true,
|
|
48
|
+
description: "PostgreSQL password for Temporal",
|
|
49
|
+
required: true
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
key: "POSTGRES_SEEDS",
|
|
53
|
+
defaultValue: "postgresql",
|
|
54
|
+
secret: false,
|
|
55
|
+
description: "PostgreSQL host(s) for Temporal",
|
|
56
|
+
required: true
|
|
57
|
+
}
|
|
58
|
+
],
|
|
59
|
+
healthcheck: {
|
|
60
|
+
test: "temporal operator cluster health || exit 1",
|
|
61
|
+
interval: "30s",
|
|
62
|
+
timeout: "10s",
|
|
63
|
+
retries: 5,
|
|
64
|
+
startPeriod: "60s"
|
|
65
|
+
},
|
|
66
|
+
dependsOn: ["postgresql"],
|
|
67
|
+
restartPolicy: "unless-stopped",
|
|
68
|
+
networks: ["openclaw-network"],
|
|
69
|
+
skills: [],
|
|
70
|
+
openclawEnvVars: [{
|
|
71
|
+
key: "TEMPORAL_HOST",
|
|
72
|
+
defaultValue: "temporal",
|
|
73
|
+
secret: false,
|
|
74
|
+
description: "Temporal server hostname for OpenClaw",
|
|
75
|
+
required: true
|
|
76
|
+
}, {
|
|
77
|
+
key: "TEMPORAL_PORT",
|
|
78
|
+
defaultValue: "7233",
|
|
79
|
+
secret: false,
|
|
80
|
+
description: "Temporal gRPC port for OpenClaw",
|
|
81
|
+
required: true
|
|
82
|
+
}],
|
|
83
|
+
docsUrl: "https://docs.temporal.io/",
|
|
84
|
+
tags: [
|
|
85
|
+
"workflow",
|
|
86
|
+
"durable-execution",
|
|
87
|
+
"orchestration",
|
|
88
|
+
"long-running-tasks"
|
|
89
|
+
],
|
|
90
|
+
maturity: "beta",
|
|
91
|
+
requires: ["postgresql"],
|
|
92
|
+
recommends: [],
|
|
93
|
+
conflictsWith: [],
|
|
94
|
+
minMemoryMB: 512,
|
|
95
|
+
gpuRequired: false
|
|
96
|
+
};
|
|
2
97
|
|
|
3
|
-
|
|
98
|
+
//#endregion
|
|
99
|
+
export { temporalDefinition };
|
|
100
|
+
//# sourceMappingURL=temporal.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"temporal.mjs","names":[],"sources":["../../../src/services/definitions/temporal.ts"],"sourcesContent":["import type { ServiceDefinition } from \"../../types.js\";\n\nexport const temporalDefinition: ServiceDefinition = {\n\tid: \"temporal\",\n\tname: \"Temporal\",\n\tdescription:\n\t\t\"Durable workflow execution platform for long-running, reliable tasks. OpenClaw can trigger and monitor Temporal workflows for complex multi-step operations.\",\n\tcategory: \"automation\",\n\ticon: \"⏱️\",\n\n\timage: \"temporalio/auto-setup\",\n\timageTag: \"latest\",\n\tports: [\n\t\t{\n\t\t\thost: 7233,\n\t\t\tcontainer: 7233,\n\t\t\tdescription: \"Temporal gRPC frontend\",\n\t\t\texposed: true,\n\t\t},\n\t\t{\n\t\t\thost: 8233,\n\t\t\tcontainer: 8233,\n\t\t\tdescription: \"Temporal Web UI\",\n\t\t\texposed: true,\n\t\t},\n\t],\n\tvolumes: [],\n\tenvironment: [\n\t\t{\n\t\t\tkey: \"DB\",\n\t\t\tdefaultValue: \"postgresql\",\n\t\t\tsecret: false,\n\t\t\tdescription: \"Database type for Temporal persistence\",\n\t\t\trequired: true,\n\t\t},\n\t\t{\n\t\t\tkey: \"DB_PORT\",\n\t\t\tdefaultValue: \"5432\",\n\t\t\tsecret: false,\n\t\t\tdescription: \"Database port\",\n\t\t\trequired: true,\n\t\t},\n\t\t{\n\t\t\tkey: \"POSTGRES_USER\",\n\t\t\tdefaultValue: \"temporal\",\n\t\t\tsecret: false,\n\t\t\tdescription: \"PostgreSQL user for Temporal\",\n\t\t\trequired: true,\n\t\t},\n\t\t{\n\t\t\tkey: \"POSTGRES_PWD\",\n\t\t\tdefaultValue: \"${TEMPORAL_DB_PASSWORD}\",\n\t\t\tsecret: true,\n\t\t\tdescription: \"PostgreSQL password for Temporal\",\n\t\t\trequired: true,\n\t\t},\n\t\t{\n\t\t\tkey: \"POSTGRES_SEEDS\",\n\t\t\tdefaultValue: \"postgresql\",\n\t\t\tsecret: false,\n\t\t\tdescription: \"PostgreSQL host(s) for Temporal\",\n\t\t\trequired: true,\n\t\t},\n\t],\n\thealthcheck: {\n\t\ttest: \"temporal operator cluster health || exit 1\",\n\t\tinterval: \"30s\",\n\t\ttimeout: \"10s\",\n\t\tretries: 5,\n\t\tstartPeriod: \"60s\",\n\t},\n\tdependsOn: [\"postgresql\"],\n\trestartPolicy: \"unless-stopped\",\n\tnetworks: [\"openclaw-network\"],\n\n\tskills: [],\n\topenclawEnvVars: [\n\t\t{\n\t\t\tkey: \"TEMPORAL_HOST\",\n\t\t\tdefaultValue: \"temporal\",\n\t\t\tsecret: false,\n\t\t\tdescription: \"Temporal server hostname for OpenClaw\",\n\t\t\trequired: true,\n\t\t},\n\t\t{\n\t\t\tkey: \"TEMPORAL_PORT\",\n\t\t\tdefaultValue: \"7233\",\n\t\t\tsecret: false,\n\t\t\tdescription: \"Temporal gRPC port for OpenClaw\",\n\t\t\trequired: true,\n\t\t},\n\t],\n\n\tdocsUrl: \"https://docs.temporal.io/\",\n\ttags: [\"workflow\", \"durable-execution\", \"orchestration\", \"long-running-tasks\"],\n\tmaturity: \"beta\",\n\n\trequires: [\"postgresql\"],\n\trecommends: [],\n\tconflictsWith: [],\n\n\tminMemoryMB: 512,\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,EAAE;CACX,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;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,CAAC,aAAa;CACzB,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;EAAY;EAAqB;EAAiB;EAAqB;CAC9E,UAAU;CAEV,UAAU,CAAC,aAAa;CACxB,YAAY,EAAE;CACd,eAAe,EAAE;CAEjB,aAAa;CACb,aAAa;CACb"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"traefik.d.mts","names":[],"sources":["../../../src/services/definitions/traefik.ts"],"
|
|
1
|
+
{"version":3,"file":"traefik.d.mts","names":[],"sources":["../../../src/services/definitions/traefik.ts"],"mappings":";;;cAEa,iBAAA,EAAmB,iBAAA"}
|
|
@@ -1,3 +1,58 @@
|
|
|
1
|
-
|
|
1
|
+
//#region src/services/definitions/traefik.ts
|
|
2
|
+
const traefikDefinition = {
|
|
3
|
+
id: "traefik",
|
|
4
|
+
name: "Traefik",
|
|
5
|
+
description: "Cloud-native reverse proxy and load balancer with automatic service discovery, Let's Encrypt integration, and a built-in dashboard.",
|
|
6
|
+
category: "proxy",
|
|
7
|
+
icon: "🔀",
|
|
8
|
+
image: "traefik",
|
|
9
|
+
imageTag: "v3.3",
|
|
10
|
+
ports: [
|
|
11
|
+
{
|
|
12
|
+
host: 80,
|
|
13
|
+
container: 80,
|
|
14
|
+
description: "HTTP entrypoint",
|
|
15
|
+
exposed: true
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
host: 443,
|
|
19
|
+
container: 443,
|
|
20
|
+
description: "HTTPS entrypoint",
|
|
21
|
+
exposed: true
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
host: 8085,
|
|
25
|
+
container: 8080,
|
|
26
|
+
description: "Traefik dashboard",
|
|
27
|
+
exposed: true
|
|
28
|
+
}
|
|
29
|
+
],
|
|
30
|
+
volumes: [{
|
|
31
|
+
name: "traefik-certs",
|
|
32
|
+
containerPath: "/letsencrypt",
|
|
33
|
+
description: "Let's Encrypt certificate storage"
|
|
34
|
+
}],
|
|
35
|
+
environment: [],
|
|
36
|
+
command: "--api.dashboard=true --providers.docker=true --entrypoints.web.address=:80 --entrypoints.websecure.address=:443",
|
|
37
|
+
dependsOn: [],
|
|
38
|
+
restartPolicy: "unless-stopped",
|
|
39
|
+
networks: ["openclaw-network"],
|
|
40
|
+
skills: [],
|
|
41
|
+
openclawEnvVars: [],
|
|
42
|
+
docsUrl: "https://doc.traefik.io/traefik/",
|
|
43
|
+
tags: [
|
|
44
|
+
"reverse-proxy",
|
|
45
|
+
"load-balancer",
|
|
46
|
+
"service-discovery"
|
|
47
|
+
],
|
|
48
|
+
maturity: "stable",
|
|
49
|
+
requires: [],
|
|
50
|
+
recommends: [],
|
|
51
|
+
conflictsWith: ["caddy"],
|
|
52
|
+
minMemoryMB: 64,
|
|
53
|
+
gpuRequired: false
|
|
54
|
+
};
|
|
2
55
|
|
|
3
|
-
|
|
56
|
+
//#endregion
|
|
57
|
+
export { traefikDefinition };
|
|
58
|
+
//# sourceMappingURL=traefik.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"traefik.mjs","names":[],"sources":["../../../src/services/definitions/traefik.ts"],"sourcesContent":["import type { ServiceDefinition } from \"../../types.js\";\n\nexport const traefikDefinition: ServiceDefinition = {\n\tid: \"traefik\",\n\tname: \"Traefik\",\n\tdescription:\n\t\t\"Cloud-native reverse proxy and load balancer with automatic service discovery, Let's Encrypt integration, and a built-in dashboard.\",\n\tcategory: \"proxy\",\n\ticon: \"🔀\",\n\n\timage: \"traefik\",\n\timageTag: \"v3.3\",\n\tports: [\n\t\t{\n\t\t\thost: 80,\n\t\t\tcontainer: 80,\n\t\t\tdescription: \"HTTP entrypoint\",\n\t\t\texposed: true,\n\t\t},\n\t\t{\n\t\t\thost: 443,\n\t\t\tcontainer: 443,\n\t\t\tdescription: \"HTTPS entrypoint\",\n\t\t\texposed: true,\n\t\t},\n\t\t{\n\t\t\thost: 8085,\n\t\t\tcontainer: 8080,\n\t\t\tdescription: \"Traefik dashboard\",\n\t\t\texposed: true,\n\t\t},\n\t],\n\tvolumes: [\n\t\t{\n\t\t\tname: \"traefik-certs\",\n\t\t\tcontainerPath: \"/letsencrypt\",\n\t\t\tdescription: \"Let's Encrypt certificate storage\",\n\t\t},\n\t],\n\tenvironment: [],\n\tcommand:\n\t\t\"--api.dashboard=true --providers.docker=true --entrypoints.web.address=:80 --entrypoints.websecure.address=:443\",\n\tdependsOn: [],\n\trestartPolicy: \"unless-stopped\",\n\tnetworks: [\"openclaw-network\"],\n\n\tskills: [],\n\topenclawEnvVars: [],\n\n\tdocsUrl: \"https://doc.traefik.io/traefik/\",\n\ttags: [\"reverse-proxy\", \"load-balancer\", \"service-discovery\"],\n\tmaturity: \"stable\",\n\n\trequires: [],\n\trecommends: [],\n\tconflictsWith: [\"caddy\"],\n\n\tminMemoryMB: 64,\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;EACN;GACC,MAAM;GACN,WAAW;GACX,aAAa;GACb,SAAS;GACT;EACD;GACC,MAAM;GACN,WAAW;GACX,aAAa;GACb,SAAS;GACT;EACD;GACC,MAAM;GACN,WAAW;GACX,aAAa;GACb,SAAS;GACT;EACD;CACD,SAAS,CACR;EACC,MAAM;EACN,eAAe;EACf,aAAa;EACb,CACD;CACD,aAAa,EAAE;CACf,SACC;CACD,WAAW,EAAE;CACb,eAAe;CACf,UAAU,CAAC,mBAAmB;CAE9B,QAAQ,EAAE;CACV,iBAAiB,EAAE;CAEnB,SAAS;CACT,MAAM;EAAC;EAAiB;EAAiB;EAAoB;CAC7D,UAAU;CAEV,UAAU,EAAE;CACZ,YAAY,EAAE;CACd,eAAe,CAAC,QAAQ;CAExB,aAAa;CACb,aAAa;CACb"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"umami.d.mts","names":[],"sources":["../../../src/services/definitions/umami.ts"],"
|
|
1
|
+
{"version":3,"file":"umami.d.mts","names":[],"sources":["../../../src/services/definitions/umami.ts"],"mappings":";;;cAEa,eAAA,EAAiB,iBAAA"}
|