jishushell 0.6.5 → 0.6.18
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/apps/anythingllm-container.yaml +15 -170
- package/apps/browserless-chromium-container.yaml +15 -10
- package/apps/filebrowser-container.yaml +14 -9
- package/apps/hermes-container.yaml +23 -2
- package/apps/jishu-kb-container.yaml +29 -161
- package/apps/ollama-binary.yaml +32 -28
- package/apps/ollama-cpu-container.yaml +5 -0
- package/apps/ollama-with-hollama-binary.yaml +33 -28
- package/apps/openclaw-binary.yaml +34 -10
- package/apps/openclaw-container.yaml +31 -7
- package/apps/openclaw-with-ollama-container.yaml +8 -2
- package/apps/openclaw-with-searxng-container.yaml +18 -6
- package/apps/searxng-container.yaml +11 -6
- package/apps/weknora-container.yaml +21 -21
- package/dependencies/jishushell-panel-0.6.18.tgz +0 -0
- package/dist/cli/app.js +244 -213
- package/dist/cli/app.js.map +1 -1
- package/dist/cli/backup.js +15 -12
- package/dist/cli/backup.js.map +1 -1
- package/dist/cli/core.d.ts +4 -3
- package/dist/cli/core.js +392 -227
- package/dist/cli/core.js.map +1 -1
- package/dist/cli/doctor.d.ts +1 -1
- package/dist/cli/doctor.js +17 -10
- package/dist/cli/doctor.js.map +1 -1
- package/dist/cli/job.js +62 -14
- package/dist/cli/job.js.map +1 -1
- package/dist/cli/llm.js +80 -11
- package/dist/cli/llm.js.map +1 -1
- package/dist/cli/managed-list.d.ts +1 -3
- package/dist/cli/managed-list.js +18 -16
- package/dist/cli/managed-list.js.map +1 -1
- package/dist/cli/migrate.d.ts +2 -0
- package/dist/cli/migrate.js +160 -0
- package/dist/cli/migrate.js.map +1 -0
- package/dist/cli.js +1 -0
- package/dist/cli.js.map +1 -1
- package/dist/config.d.ts +23 -19
- package/dist/config.js +60 -49
- package/dist/config.js.map +1 -1
- package/dist/control.d.ts +6 -6
- package/dist/control.js +31 -23
- package/dist/control.js.map +1 -1
- package/dist/core.d.ts +5 -5
- package/dist/core.js +5 -5
- package/dist/core.js.map +1 -1
- package/dist/install.d.ts +2 -2
- package/dist/install.js +18 -18
- package/dist/install.js.map +1 -1
- package/dist/routes/apps.d.ts +1 -1
- package/dist/routes/apps.js +101 -193
- package/dist/routes/apps.js.map +1 -1
- package/dist/routes/auth.js +1 -1
- package/dist/routes/auth.js.map +1 -1
- package/dist/routes/backup.js +1 -1
- package/dist/routes/backup.js.map +1 -1
- package/dist/routes/external-mounts.d.ts +1 -1
- package/dist/routes/external-mounts.js +1 -1
- package/dist/routes/external-mounts.js.map +1 -1
- package/dist/routes/file-mounts.d.ts +4 -3
- package/dist/routes/file-mounts.js +51 -30
- package/dist/routes/file-mounts.js.map +1 -1
- package/dist/routes/files-organize.d.ts +2 -2
- package/dist/routes/files-organize.js +5 -5
- package/dist/routes/files-organize.js.map +1 -1
- package/dist/routes/files.d.ts +1 -1
- package/dist/routes/files.js +1 -1
- package/dist/routes/files.js.map +1 -1
- package/dist/routes/instances.d.ts +10 -4
- package/dist/routes/instances.js +323 -541
- package/dist/routes/instances.js.map +1 -1
- package/dist/routes/integration-apps.d.ts +14 -0
- package/dist/routes/integration-apps.js +81 -0
- package/dist/routes/integration-apps.js.map +1 -0
- package/dist/routes/integrations.d.ts +9 -0
- package/dist/routes/integrations.js +12 -0
- package/dist/routes/integrations.js.map +1 -0
- package/dist/routes/llm-proxy.js +26 -3
- package/dist/routes/llm-proxy.js.map +1 -1
- package/dist/routes/setup.js +53 -38
- package/dist/routes/setup.js.map +1 -1
- package/dist/routes/system.js +108 -68
- package/dist/routes/system.js.map +1 -1
- package/dist/routes/webdav.d.ts +1 -1
- package/dist/routes/webdav.js +2 -2
- package/dist/routes/webdav.js.map +1 -1
- package/dist/server.js +315 -213
- package/dist/server.js.map +1 -1
- package/dist/services/app-common/app-compiler.js +186 -0
- package/dist/services/app-common/app-compiler.js.map +1 -0
- package/dist/services/app-common/app-shared.d.ts +15 -0
- package/dist/services/app-common/app-shared.js +64 -0
- package/dist/services/app-common/app-shared.js.map +1 -0
- package/dist/services/app-common/capability-service.d.ts +45 -0
- package/dist/services/app-common/capability-service.js +331 -0
- package/dist/services/app-common/capability-service.js.map +1 -0
- package/dist/services/app-common/catalog-service.d.ts +59 -0
- package/dist/services/app-common/catalog-service.js +308 -0
- package/dist/services/app-common/catalog-service.js.map +1 -0
- package/dist/services/app-common/create-pipeline.d.ts +26 -0
- package/dist/services/app-common/create-pipeline.js +298 -0
- package/dist/services/app-common/create-pipeline.js.map +1 -0
- package/dist/services/app-common/delete-service.d.ts +5 -0
- package/dist/services/app-common/delete-service.js +104 -0
- package/dist/services/app-common/delete-service.js.map +1 -0
- package/dist/services/app-common/execution-owner.d.ts +23 -0
- package/dist/services/app-common/execution-owner.js +124 -0
- package/dist/services/app-common/execution-owner.js.map +1 -0
- package/dist/services/app-common/execution-service.d.ts +23 -0
- package/dist/services/app-common/execution-service.js +105 -0
- package/dist/services/app-common/execution-service.js.map +1 -0
- package/dist/services/app-common/id-normalizer.d.ts +31 -0
- package/dist/services/app-common/id-normalizer.js +83 -0
- package/dist/services/app-common/id-normalizer.js.map +1 -0
- package/dist/services/app-common/install-store.d.ts +34 -0
- package/dist/services/app-common/install-store.js +261 -0
- package/dist/services/app-common/install-store.js.map +1 -0
- package/dist/services/app-common/instance-store.d.ts +78 -0
- package/dist/services/app-common/instance-store.js +495 -0
- package/dist/services/app-common/instance-store.js.map +1 -0
- package/dist/services/app-common/integration-refs.d.ts +17 -0
- package/dist/services/app-common/integration-refs.js +47 -0
- package/dist/services/app-common/integration-refs.js.map +1 -0
- package/dist/services/app-common/lifecycle-pipeline.d.ts +62 -0
- package/dist/services/app-common/lifecycle-pipeline.js +317 -0
- package/dist/services/app-common/lifecycle-pipeline.js.map +1 -0
- package/dist/services/app-common/lifecycle-scripts.d.ts +38 -0
- package/dist/services/app-common/lifecycle-scripts.js +935 -0
- package/dist/services/app-common/lifecycle-scripts.js.map +1 -0
- package/dist/services/app-common/lifecycle-service.d.ts +68 -0
- package/dist/services/app-common/lifecycle-service.js +467 -0
- package/dist/services/app-common/lifecycle-service.js.map +1 -0
- package/dist/services/app-common/paths.d.ts +29 -0
- package/dist/services/app-common/paths.js +34 -0
- package/dist/services/app-common/paths.js.map +1 -0
- package/dist/services/app-common/platform-transform.d.ts +32 -0
- package/dist/services/app-common/platform-transform.js +65 -0
- package/dist/services/app-common/platform-transform.js.map +1 -0
- package/dist/services/app-common/provide-resolver.d.ts +29 -0
- package/dist/services/app-common/provide-resolver.js +129 -0
- package/dist/services/app-common/provide-resolver.js.map +1 -0
- package/dist/services/app-common/remote-spec.d.ts +14 -0
- package/dist/services/app-common/remote-spec.js +58 -0
- package/dist/services/app-common/remote-spec.js.map +1 -0
- package/dist/services/app-common/runtime-builder.d.ts +1 -0
- package/dist/services/app-common/runtime-builder.js +2 -0
- package/dist/services/app-common/runtime-builder.js.map +1 -0
- package/dist/services/app-common/runtime-facts.d.ts +19 -0
- package/dist/services/app-common/runtime-facts.js +126 -0
- package/dist/services/app-common/runtime-facts.js.map +1 -0
- package/dist/services/app-common/service.d.ts +9 -0
- package/dist/services/app-common/service.js +10 -0
- package/dist/services/app-common/service.js.map +1 -0
- package/dist/services/app-common/spec-materializer.d.ts +9 -0
- package/dist/services/app-common/spec-materializer.js +361 -0
- package/dist/services/app-common/spec-materializer.js.map +1 -0
- package/dist/services/app-common/status-refresh.d.ts +33 -0
- package/dist/services/app-common/status-refresh.js +759 -0
- package/dist/services/app-common/status-refresh.js.map +1 -0
- package/dist/services/app-common/task-service.d.ts +29 -0
- package/dist/services/app-common/task-service.js +93 -0
- package/dist/services/app-common/task-service.js.map +1 -0
- package/dist/services/app-common/terminal-session-manager.js +157 -0
- package/dist/services/app-common/terminal-session-manager.js.map +1 -0
- package/dist/services/app-modules/browserless/routes.d.ts +9 -0
- package/dist/services/app-modules/browserless/routes.js +517 -0
- package/dist/services/app-modules/browserless/routes.js.map +1 -0
- package/dist/services/app-modules/routes.d.ts +2 -0
- package/dist/services/app-modules/routes.js +5 -0
- package/dist/services/app-modules/routes.js.map +1 -0
- package/dist/services/backup/backup-admin.d.ts +95 -0
- package/dist/services/backup/backup-admin.js +246 -0
- package/dist/services/backup/backup-admin.js.map +1 -0
- package/dist/services/backup/backup-manager.d.ts +264 -0
- package/dist/services/backup/backup-manager.js +2318 -0
- package/dist/services/backup/backup-manager.js.map +1 -0
- package/dist/services/backup/backup-verify.js +240 -0
- package/dist/services/backup/backup-verify.js.map +1 -0
- package/dist/services/capabilities/browser-policy.d.ts +14 -0
- package/dist/services/capabilities/browser-policy.js +141 -0
- package/dist/services/capabilities/browser-policy.js.map +1 -0
- package/dist/services/capabilities/contract.d.ts +50 -0
- package/dist/services/capabilities/contract.js +129 -0
- package/dist/services/capabilities/contract.js.map +1 -0
- package/dist/services/capabilities/endpoint-validator.d.ts +42 -0
- package/dist/services/capabilities/endpoint-validator.js +114 -0
- package/dist/services/capabilities/endpoint-validator.js.map +1 -0
- package/dist/services/capabilities/health.d.ts +16 -0
- package/dist/services/capabilities/health.js +121 -0
- package/dist/services/capabilities/health.js.map +1 -0
- package/dist/services/capabilities/registry.d.ts +56 -0
- package/dist/services/capabilities/registry.js +222 -0
- package/dist/services/capabilities/registry.js.map +1 -0
- package/dist/services/capabilities/sync.d.ts +7 -0
- package/dist/services/capabilities/sync.js +223 -0
- package/dist/services/capabilities/sync.js.map +1 -0
- package/dist/services/capability-proxy/html-rewriters/browserless.d.ts +1 -0
- package/dist/services/capability-proxy/html-rewriters/browserless.js +83 -0
- package/dist/services/capability-proxy/html-rewriters/browserless.js.map +1 -0
- package/dist/services/capability-proxy/html-rewriters/index.d.ts +12 -0
- package/dist/services/capability-proxy/html-rewriters/index.js +25 -0
- package/dist/services/capability-proxy/html-rewriters/index.js.map +1 -0
- package/dist/services/capability-proxy/html-rewriters/jishukb.d.ts +1 -0
- package/dist/services/capability-proxy/html-rewriters/jishukb.js +161 -0
- package/dist/services/capability-proxy/html-rewriters/jishukb.js.map +1 -0
- package/dist/services/connections/admin.d.ts +80 -0
- package/dist/services/connections/admin.js +327 -0
- package/dist/services/connections/admin.js.map +1 -0
- package/dist/services/connections/apply.d.ts +110 -0
- package/dist/services/connections/apply.js +444 -0
- package/dist/services/connections/apply.js.map +1 -0
- package/dist/services/connections/resolver.d.ts +82 -0
- package/dist/services/connections/resolver.js +289 -0
- package/dist/services/connections/resolver.js.map +1 -0
- package/dist/services/connections/suggestions.d.ts +27 -0
- package/dist/services/connections/suggestions.js +124 -0
- package/dist/services/connections/suggestions.js.map +1 -0
- package/dist/services/connections/transactor.d.ts +39 -0
- package/dist/services/connections/transactor.js +307 -0
- package/dist/services/connections/transactor.js.map +1 -0
- package/dist/services/files/external-mounts.js +187 -0
- package/dist/services/files/external-mounts.js.map +1 -0
- package/dist/services/files/files-manager.d.ts +265 -0
- package/dist/services/files/files-manager.js +1189 -0
- package/dist/services/files/files-manager.js.map +1 -0
- package/dist/services/files/files-mounts.d.ts +42 -0
- package/dist/services/files/files-mounts.js +207 -0
- package/dist/services/files/files-mounts.js.map +1 -0
- package/dist/services/files/organize/applier.js +218 -0
- package/dist/services/files/organize/applier.js.map +1 -0
- package/dist/services/files/organize/rules.js +286 -0
- package/dist/services/files/organize/rules.js.map +1 -0
- package/dist/services/files/organize/scanner.js +366 -0
- package/dist/services/files/organize/scanner.js.map +1 -0
- package/dist/services/files/organize/store.js +82 -0
- package/dist/services/files/organize/store.js.map +1 -0
- package/dist/services/files/webdav/server.d.ts +47 -0
- package/dist/services/files/webdav/server.js +329 -0
- package/dist/services/files/webdav/server.js.map +1 -0
- package/dist/services/files/webdav/xml-builder.js.map +1 -0
- package/dist/services/instances/admin.d.ts +23 -0
- package/dist/services/instances/admin.js +218 -0
- package/dist/services/instances/admin.js.map +1 -0
- package/dist/services/instances/clone.d.ts +26 -0
- package/dist/services/instances/clone.js +78 -0
- package/dist/services/instances/clone.js.map +1 -0
- package/dist/services/instances/config-admin.d.ts +17 -0
- package/dist/services/instances/config-admin.js +181 -0
- package/dist/services/instances/config-admin.js.map +1 -0
- package/dist/services/instances/manager.d.ts +231 -0
- package/dist/services/instances/manager.js +1348 -0
- package/dist/services/instances/manager.js.map +1 -0
- package/dist/services/instances/passwords.js +173 -0
- package/dist/services/instances/passwords.js.map +1 -0
- package/dist/services/instances/types.d.ts +21 -0
- package/dist/services/instances/types.js +2 -0
- package/dist/services/instances/types.js.map +1 -0
- package/dist/services/integrations/anythingllm/integration.d.ts +25 -0
- package/dist/services/integrations/anythingllm/integration.js +251 -0
- package/dist/services/integrations/anythingllm/integration.js.map +1 -0
- package/dist/services/integrations/catalog.d.ts +3 -0
- package/dist/services/integrations/catalog.js +73 -0
- package/dist/services/integrations/catalog.js.map +1 -0
- package/dist/services/integrations/custom/integration.d.ts +28 -0
- package/dist/services/integrations/custom/integration.js +179 -0
- package/dist/services/integrations/custom/integration.js.map +1 -0
- package/dist/services/integrations/hermes/integration.d.ts +194 -0
- package/dist/services/integrations/hermes/integration.js +1669 -0
- package/dist/services/integrations/hermes/integration.js.map +1 -0
- package/dist/services/integrations/index.d.ts +40 -0
- package/dist/services/integrations/index.js +59 -0
- package/dist/services/integrations/index.js.map +1 -0
- package/dist/services/integrations/installable/catalog.d.ts +33 -0
- package/dist/services/integrations/installable/catalog.js +88 -0
- package/dist/services/integrations/installable/catalog.js.map +1 -0
- package/dist/services/integrations/installable/index.d.ts +35 -0
- package/dist/services/integrations/installable/index.js +170 -0
- package/dist/services/integrations/installable/index.js.map +1 -0
- package/dist/services/integrations/installable/installers/integration-probes.d.ts +50 -0
- package/dist/services/integrations/installable/installers/integration-probes.js +231 -0
- package/dist/services/integrations/installable/installers/integration-probes.js.map +1 -0
- package/dist/services/integrations/installable/installers/integration.d.ts +30 -0
- package/dist/services/integrations/installable/installers/integration.js +177 -0
- package/dist/services/integrations/installable/installers/integration.js.map +1 -0
- package/dist/services/integrations/installable/installers/registry-probe.js.map +1 -0
- package/dist/services/integrations/installable/installers/shell-script.d.ts +46 -0
- package/dist/services/integrations/installable/installers/shell-script.js +487 -0
- package/dist/services/integrations/installable/installers/shell-script.js.map +1 -0
- package/dist/services/integrations/installable/types.d.ts +130 -0
- package/dist/services/integrations/installable/types.js +19 -0
- package/dist/services/integrations/installable/types.js.map +1 -0
- package/dist/services/integrations/jishukb/integration.d.ts +22 -0
- package/dist/services/integrations/jishukb/integration.js +189 -0
- package/dist/services/integrations/jishukb/integration.js.map +1 -0
- package/dist/services/integrations/openclaw/anythingllm-shim.d.ts +46 -0
- package/dist/services/integrations/openclaw/anythingllm-shim.js +281 -0
- package/dist/services/integrations/openclaw/anythingllm-shim.js.map +1 -0
- package/dist/services/integrations/openclaw/drive-shim.js +490 -0
- package/dist/services/integrations/openclaw/drive-shim.js.map +1 -0
- package/dist/services/integrations/openclaw/integration.d.ts +424 -0
- package/dist/services/integrations/openclaw/integration.js +4402 -0
- package/dist/services/integrations/openclaw/integration.js.map +1 -0
- package/dist/services/integrations/openclaw/jishukb-shim.d.ts +48 -0
- package/dist/services/integrations/openclaw/jishukb-shim.js +750 -0
- package/dist/services/integrations/openclaw/jishukb-shim.js.map +1 -0
- package/dist/services/integrations/openclaw/mcporter-lite.js +276 -0
- package/dist/services/integrations/openclaw/mcporter-lite.js.map +1 -0
- package/dist/services/integrations/openclaw/mcporter.d.ts +46 -0
- package/dist/services/integrations/openclaw/mcporter.js +112 -0
- package/dist/services/integrations/openclaw/mcporter.js.map +1 -0
- package/dist/services/integrations/openclaw/routes.d.ts +21 -0
- package/dist/services/integrations/openclaw/routes.js +1191 -0
- package/dist/services/integrations/openclaw/routes.js.map +1 -0
- package/dist/services/integrations/registry.d.ts +17 -0
- package/dist/services/integrations/registry.js +36 -0
- package/dist/services/integrations/registry.js.map +1 -0
- package/dist/services/integrations/routes.d.ts +2 -0
- package/dist/services/integrations/routes.js +9 -0
- package/dist/services/integrations/routes.js.map +1 -0
- package/dist/services/integrations/types.d.ts +469 -0
- package/dist/services/integrations/types.js +2 -0
- package/dist/services/integrations/types.js.map +1 -0
- package/dist/services/legacy-migrator/classifier.d.ts +44 -0
- package/dist/services/legacy-migrator/classifier.js +309 -0
- package/dist/services/legacy-migrator/classifier.js.map +1 -0
- package/dist/services/legacy-migrator/executor.d.ts +42 -0
- package/dist/services/legacy-migrator/executor.js +637 -0
- package/dist/services/legacy-migrator/executor.js.map +1 -0
- package/dist/services/legacy-migrator/index.d.ts +31 -0
- package/dist/services/legacy-migrator/index.js +34 -0
- package/dist/services/legacy-migrator/index.js.map +1 -0
- package/dist/services/legacy-migrator/planner.d.ts +8 -0
- package/dist/services/legacy-migrator/planner.js +154 -0
- package/dist/services/legacy-migrator/planner.js.map +1 -0
- package/dist/services/legacy-migrator/provider-settings.d.ts +6 -0
- package/dist/services/legacy-migrator/provider-settings.js +72 -0
- package/dist/services/legacy-migrator/provider-settings.js.map +1 -0
- package/dist/services/legacy-migrator/report.d.ts +9 -0
- package/dist/services/legacy-migrator/report.js +99 -0
- package/dist/services/legacy-migrator/report.js.map +1 -0
- package/dist/services/legacy-migrator/scanner.d.ts +13 -0
- package/dist/services/legacy-migrator/scanner.js +157 -0
- package/dist/services/legacy-migrator/scanner.js.map +1 -0
- package/dist/services/legacy-migrator/types.d.ts +97 -0
- package/dist/services/legacy-migrator/types.js +23 -0
- package/dist/services/legacy-migrator/types.js.map +1 -0
- package/dist/services/llm-proxy/instance-proxy.d.ts +17 -1
- package/dist/services/llm-proxy/instance-proxy.js +171 -44
- package/dist/services/llm-proxy/instance-proxy.js.map +1 -1
- package/dist/services/llm-proxy/probe.js +5 -14
- package/dist/services/llm-proxy/probe.js.map +1 -1
- package/dist/services/llm-proxy/providers.js +23 -31
- package/dist/services/llm-proxy/providers.js.map +1 -1
- package/dist/services/llm-proxy/ssrf.d.ts +11 -4
- package/dist/services/llm-proxy/ssrf.js +45 -7
- package/dist/services/llm-proxy/ssrf.js.map +1 -1
- package/dist/services/llm-proxy/validate-key.js +16 -37
- package/dist/services/llm-proxy/validate-key.js.map +1 -1
- package/dist/services/repair/runtime-repair.d.ts +22 -0
- package/dist/services/repair/runtime-repair.js +307 -0
- package/dist/services/repair/runtime-repair.js.map +1 -0
- package/dist/services/runtime/driver-registry.d.ts +21 -0
- package/dist/services/runtime/driver-registry.js +22 -0
- package/dist/services/runtime/driver-registry.js.map +1 -0
- package/dist/services/runtime/drivers/nomad.d.ts +260 -0
- package/dist/services/runtime/drivers/nomad.js +3092 -0
- package/dist/services/runtime/drivers/nomad.js.map +1 -0
- package/dist/services/runtime/errors.d.ts +3 -3
- package/dist/services/runtime/errors.js +3 -3
- package/dist/services/runtime/instance.d.ts +14 -16
- package/dist/services/runtime/instance.js +93 -123
- package/dist/services/runtime/instance.js.map +1 -1
- package/dist/services/runtime/job-id.d.ts +1 -1
- package/dist/services/runtime/job-id.js +1 -1
- package/dist/services/runtime/mcp-shims/firewall.d.ts +2 -2
- package/dist/services/runtime/mcp-shims/firewall.js +2 -2
- package/dist/services/runtime/mcp-shims/searxng-shim.d.ts +3 -5
- package/dist/services/runtime/mcp-shims/searxng-shim.js +3 -5
- package/dist/services/runtime/mcp-shims/searxng-shim.js.map +1 -1
- package/dist/services/runtime/mcp-shims/write-mcp-entry.d.ts +20 -20
- package/dist/services/runtime/mcp-shims/write-mcp-entry.js +16 -16
- package/dist/services/runtime/mcp-shims/write-mcp-entry.js.map +1 -1
- package/dist/services/runtime/ownership-marker.d.ts +83 -0
- package/dist/services/runtime/ownership-marker.js +109 -0
- package/dist/services/runtime/ownership-marker.js.map +1 -0
- package/dist/services/runtime/types.d.ts +22 -501
- package/dist/services/runtime/types.js +0 -12
- package/dist/services/runtime/types.js.map +1 -1
- package/dist/services/runtime/workload-compiler.d.ts +17 -0
- package/dist/services/runtime/workload-compiler.js +525 -0
- package/dist/services/runtime/workload-compiler.js.map +1 -0
- package/dist/services/runtime/workload-types.d.ts +11 -0
- package/dist/services/runtime/workload-types.js +2 -0
- package/dist/services/runtime/workload-types.js.map +1 -0
- package/dist/services/setup/core-manager.d.ts +50 -0
- package/dist/services/setup/core-manager.js +456 -0
- package/dist/services/setup/core-manager.js.map +1 -0
- package/dist/services/setup/plugin-installer.js +136 -0
- package/dist/services/setup/plugin-installer.js.map +1 -0
- package/dist/services/setup/setup-manager.d.ts +158 -0
- package/dist/services/setup/setup-manager.js +2768 -0
- package/dist/services/setup/setup-manager.js.map +1 -0
- package/dist/services/system/cli-command.d.ts +5 -0
- package/dist/services/system/cli-command.js +18 -0
- package/dist/services/system/cli-command.js.map +1 -0
- package/dist/services/system/macos-launchd.js +312 -0
- package/dist/services/system/macos-launchd.js.map +1 -0
- package/dist/services/system/repair-orchestrator.d.ts +71 -0
- package/dist/services/system/repair-orchestrator.js +412 -0
- package/dist/services/system/repair-orchestrator.js.map +1 -0
- package/dist/services/system/system-monitor.js +96 -0
- package/dist/services/system/system-monitor.js.map +1 -0
- package/dist/services/system/system-ollama-provider.d.ts +14 -0
- package/dist/services/system/system-ollama-provider.js +129 -0
- package/dist/services/system/system-ollama-provider.js.map +1 -0
- package/dist/services/system/system-reconciler.d.ts +59 -0
- package/dist/services/system/system-reconciler.js +710 -0
- package/dist/services/system/system-reconciler.js.map +1 -0
- package/dist/services/system/update-manager.d.ts +43 -0
- package/dist/services/system/update-manager.js +315 -0
- package/dist/services/system/update-manager.js.map +1 -0
- package/dist/services/system/upgrade-finalize.d.ts +80 -0
- package/dist/services/system/upgrade-finalize.js +507 -0
- package/dist/services/system/upgrade-finalize.js.map +1 -0
- package/dist/services/tasks/registry.d.ts +44 -0
- package/dist/services/tasks/registry.js +90 -0
- package/dist/services/tasks/registry.js.map +1 -0
- package/dist/services/telemetry/activation.d.ts +6 -2
- package/dist/services/telemetry/activation.js +6 -2
- package/dist/services/telemetry/activation.js.map +1 -1
- package/dist/services/telemetry/heartbeat.d.ts +6 -2
- package/dist/services/telemetry/heartbeat.js +6 -2
- package/dist/services/telemetry/heartbeat.js.map +1 -1
- package/dist/services/workspaces/builder.d.ts +29 -0
- package/dist/services/workspaces/builder.js +186 -0
- package/dist/services/workspaces/builder.js.map +1 -0
- package/dist/types.d.ts +331 -45
- package/dist/utils/instance-lock.d.ts +2 -2
- package/dist/utils/instance-lock.js +2 -2
- package/install/jishu-install.sh +107 -26
- package/install/jishu-uninstall.sh +8 -0
- package/install/post-install.sh +162 -185
- package/install/post-uninstall.sh +6 -0
- package/node_modules/@fastify/static/.github/workflows/ci.yml +1 -1
- package/node_modules/@fastify/static/.github/workflows/lock-threads.yml +19 -0
- package/node_modules/@fastify/static/LICENSE +1 -3
- package/node_modules/@fastify/static/example/server-benchmark.js +39 -0
- package/node_modules/@fastify/static/index.js +169 -23
- package/node_modules/@fastify/static/lib/dirList.js +20 -6
- package/node_modules/@fastify/static/package.json +10 -8
- package/node_modules/@fastify/static/test/dir-list.test.js +82 -0
- package/node_modules/@fastify/static/test/static.test.js +326 -4
- package/node_modules/@fastify/static/types/index.d.ts +0 -4
- package/node_modules/@fastify/static/types/index.test-d.ts +1 -1
- package/node_modules/content-disposition/README.md +21 -22
- package/node_modules/content-disposition/index.js +122 -44
- package/node_modules/content-disposition/package.json +16 -20
- package/node_modules/glob/README.md +39 -130
- package/node_modules/glob/dist/commonjs/glob.d.ts +8 -0
- package/node_modules/glob/dist/commonjs/glob.d.ts.map +1 -1
- package/node_modules/glob/dist/commonjs/glob.js +2 -1
- package/node_modules/glob/dist/commonjs/glob.js.map +1 -1
- package/node_modules/glob/dist/commonjs/index.min.js +4 -0
- package/node_modules/glob/dist/commonjs/index.min.js.map +7 -0
- package/node_modules/glob/dist/commonjs/pattern.d.ts +3 -0
- package/node_modules/glob/dist/commonjs/pattern.d.ts.map +1 -1
- package/node_modules/glob/dist/commonjs/pattern.js +4 -0
- package/node_modules/glob/dist/commonjs/pattern.js.map +1 -1
- package/node_modules/glob/dist/esm/glob.d.ts +8 -0
- package/node_modules/glob/dist/esm/glob.d.ts.map +1 -1
- package/node_modules/glob/dist/esm/glob.js +2 -1
- package/node_modules/glob/dist/esm/glob.js.map +1 -1
- package/node_modules/glob/dist/esm/index.min.js +4 -0
- package/node_modules/glob/dist/esm/index.min.js.map +7 -0
- package/node_modules/glob/dist/esm/pattern.d.ts +3 -0
- package/node_modules/glob/dist/esm/pattern.d.ts.map +1 -1
- package/node_modules/glob/dist/esm/pattern.js +4 -0
- package/node_modules/glob/dist/esm/pattern.js.map +1 -1
- package/node_modules/glob/package.json +38 -37
- package/node_modules/jishushell-panel/README.md +4 -4
- package/node_modules/jishushell-panel/output/dist/server.js +17 -6
- package/node_modules/jishushell-panel/output/dist/server.js.map +1 -1
- package/node_modules/jishushell-panel/output/public/assets/ApiKeyField-NKcbHjNz.js +1 -0
- package/node_modules/jishushell-panel/output/public/assets/Dashboard-Da1fL38t.js +1 -0
- package/node_modules/jishushell-panel/output/public/assets/HermesChatPanel-DZvmYsoh.js +1 -0
- package/node_modules/jishushell-panel/output/public/assets/HermesConfigForm-BLUWlKwm.js +4 -0
- package/node_modules/jishushell-panel/output/public/assets/InitPassword-BAKsshzk.js +1 -0
- package/node_modules/jishushell-panel/output/public/assets/InstanceDetail-Dgyc_TX5.js +14 -0
- package/node_modules/jishushell-panel/output/public/assets/Login-DHeOmwI8.js +1 -0
- package/node_modules/jishushell-panel/output/public/assets/NewInstance-CIy0cYtp.js +1 -0
- package/node_modules/jishushell-panel/output/public/assets/ProviderRecommendations-H0ByEYF0.js +1 -0
- package/node_modules/jishushell-panel/output/public/assets/Settings-DAT-UMfP.js +1 -0
- package/node_modules/jishushell-panel/output/public/assets/Setup-g3uckFYR.js +1 -0
- package/node_modules/jishushell-panel/output/public/assets/WeixinLoginPanel-D-T6BxkQ.js +1 -0
- package/node_modules/jishushell-panel/output/public/assets/api-C70Gt678.js +4 -0
- package/node_modules/jishushell-panel/output/public/assets/index-DnnqTf7s.css +1 -0
- package/node_modules/jishushell-panel/output/public/assets/index-ERt6_ngA.js +23 -0
- package/node_modules/jishushell-panel/output/public/assets/registry-DF93EzIb.js +2 -0
- package/node_modules/jishushell-panel/output/public/assets/rolldown-runtime-QTnfLwEv.js +1 -0
- package/node_modules/jishushell-panel/output/public/assets/setup-task-q21GnI0E.js +1 -0
- package/node_modules/jishushell-panel/output/public/assets/usePolling-DeoThIQn.js +1 -0
- package/node_modules/jishushell-panel/output/public/assets/vendor-i18n-CS8DFbkQ.js +1 -0
- package/node_modules/jishushell-panel/output/public/assets/vendor-react-Cc84NArf.js +8 -0
- package/node_modules/jishushell-panel/output/public/index.html +6 -4
- package/node_modules/jishushell-panel/package.json +2 -2
- package/node_modules/semver/classes/range.js +11 -2
- package/node_modules/semver/package.json +2 -2
- package/package.json +12 -64
- package/scripts/check-app-path-boundaries.mjs +121 -0
- package/scripts/check-app-spec.mjs +127 -25
- package/scripts/check-colima-launchd.mjs +10 -8
- package/scripts/check-integration-isolation.ts +541 -0
- package/scripts/check-new-file-tests.mjs +11 -3
- package/scripts/check-open-core-boundaries.mjs +60 -10
- package/scripts/check-test-layering.sh +1 -1
- package/scripts/fixtures/instances/hermes-sample/instance.json +3 -2
- package/scripts/fixtures/instances/legacy-openclaw-sample/instance.json +1 -1
- package/scripts/local-web-upgrade-test.README +4 -3
- package/scripts/local-web-upgrade-test.example.env +2 -2
- package/scripts/local-web-upgrade-test.sh +14 -1
- package/scripts/pack-gui-and-send-pi.sh +41 -0
- package/scripts/perf/instances.js +1 -1
- package/scripts/prune-open-core-dist.mjs +89 -2
- package/scripts/smoke/hermes-bootstrap.sh +5 -5
- package/templates/hermes-entrypoint.sh +19 -29
- package/apps/openwebui-container.yaml +0 -97
- package/apps/playwright-container.yaml +0 -126
- package/dependencies/jishushell-panel-0.6.5.tgz +0 -0
- package/dist/crypto-shim.d.ts +0 -1
- package/dist/crypto-shim.js +0 -2
- package/dist/crypto-shim.js.map +0 -1
- package/dist/routes/agent-apps.d.ts +0 -14
- package/dist/routes/agent-apps.js +0 -77
- package/dist/routes/agent-apps.js.map +0 -1
- package/dist/routes/internal.d.ts +0 -2
- package/dist/routes/internal.js +0 -55
- package/dist/routes/internal.js.map +0 -1
- package/dist/routes/openclaw-routes.d.ts +0 -22
- package/dist/routes/openclaw-routes.js +0 -1020
- package/dist/routes/openclaw-routes.js.map +0 -1
- package/dist/routes/runtime.d.ts +0 -15
- package/dist/routes/runtime.js +0 -76
- package/dist/routes/runtime.js.map +0 -1
- package/dist/services/agent-apps/catalog.d.ts +0 -33
- package/dist/services/agent-apps/catalog.js +0 -88
- package/dist/services/agent-apps/catalog.js.map +0 -1
- package/dist/services/agent-apps/index.d.ts +0 -36
- package/dist/services/agent-apps/index.js +0 -171
- package/dist/services/agent-apps/index.js.map +0 -1
- package/dist/services/agent-apps/installers/adapter-probes.d.ts +0 -49
- package/dist/services/agent-apps/installers/adapter-probes.js +0 -230
- package/dist/services/agent-apps/installers/adapter-probes.js.map +0 -1
- package/dist/services/agent-apps/installers/adapter.d.ts +0 -30
- package/dist/services/agent-apps/installers/adapter.js +0 -171
- package/dist/services/agent-apps/installers/adapter.js.map +0 -1
- package/dist/services/agent-apps/installers/registry-probe.js.map +0 -1
- package/dist/services/agent-apps/installers/shell-script.d.ts +0 -47
- package/dist/services/agent-apps/installers/shell-script.js +0 -488
- package/dist/services/agent-apps/installers/shell-script.js.map +0 -1
- package/dist/services/agent-apps/types.d.ts +0 -128
- package/dist/services/agent-apps/types.js +0 -17
- package/dist/services/agent-apps/types.js.map +0 -1
- package/dist/services/app/app-compiler.js +0 -185
- package/dist/services/app/app-compiler.js.map +0 -1
- package/dist/services/app/app-manager.d.ts +0 -184
- package/dist/services/app/app-manager.js +0 -2933
- package/dist/services/app/app-manager.js.map +0 -1
- package/dist/services/app/custom-manager.d.ts +0 -27
- package/dist/services/app/custom-manager.js +0 -382
- package/dist/services/app/custom-manager.js.map +0 -1
- package/dist/services/app/hermes-agent-manager.d.ts +0 -20
- package/dist/services/app/hermes-agent-manager.js +0 -299
- package/dist/services/app/hermes-agent-manager.js.map +0 -1
- package/dist/services/app/id-normalizer.d.ts +0 -27
- package/dist/services/app/id-normalizer.js +0 -77
- package/dist/services/app/id-normalizer.js.map +0 -1
- package/dist/services/app/ollama-manager.d.ts +0 -18
- package/dist/services/app/ollama-manager.js +0 -224
- package/dist/services/app/ollama-manager.js.map +0 -1
- package/dist/services/app/openclaw-manager.d.ts +0 -63
- package/dist/services/app/openclaw-manager.js +0 -1215
- package/dist/services/app/openclaw-manager.js.map +0 -1
- package/dist/services/app/paths.d.ts +0 -27
- package/dist/services/app/paths.js +0 -40
- package/dist/services/app/paths.js.map +0 -1
- package/dist/services/app/platform-transform.d.ts +0 -32
- package/dist/services/app/platform-transform.js +0 -65
- package/dist/services/app/platform-transform.js.map +0 -1
- package/dist/services/app/provide-resolver.d.ts +0 -29
- package/dist/services/app/provide-resolver.js +0 -135
- package/dist/services/app/provide-resolver.js.map +0 -1
- package/dist/services/app/registry.d.ts +0 -17
- package/dist/services/app/registry.js +0 -31
- package/dist/services/app/registry.js.map +0 -1
- package/dist/services/app/remote-spec.d.ts +0 -14
- package/dist/services/app/remote-spec.js +0 -58
- package/dist/services/app/remote-spec.js.map +0 -1
- package/dist/services/app/terminal-session-manager.js +0 -157
- package/dist/services/app/terminal-session-manager.js.map +0 -1
- package/dist/services/app/types.d.ts +0 -74
- package/dist/services/app/types.js +0 -16
- package/dist/services/app/types.js.map +0 -1
- package/dist/services/app-config-admin.d.ts +0 -17
- package/dist/services/app-config-admin.js +0 -177
- package/dist/services/app-config-admin.js.map +0 -1
- package/dist/services/app-create-from-installed.d.ts +0 -23
- package/dist/services/app-create-from-installed.js +0 -75
- package/dist/services/app-create-from-installed.js.map +0 -1
- package/dist/services/app-passwords.js +0 -173
- package/dist/services/app-passwords.js.map +0 -1
- package/dist/services/backup-admin.d.ts +0 -101
- package/dist/services/backup-admin.js +0 -259
- package/dist/services/backup-admin.js.map +0 -1
- package/dist/services/backup-manager.d.ts +0 -264
- package/dist/services/backup-manager.js +0 -2263
- package/dist/services/backup-manager.js.map +0 -1
- package/dist/services/backup-verify.js +0 -240
- package/dist/services/backup-verify.js.map +0 -1
- package/dist/services/capability-endpoint-validator.d.ts +0 -41
- package/dist/services/capability-endpoint-validator.js +0 -114
- package/dist/services/capability-endpoint-validator.js.map +0 -1
- package/dist/services/capability-health.d.ts +0 -16
- package/dist/services/capability-health.js +0 -121
- package/dist/services/capability-health.js.map +0 -1
- package/dist/services/capability-registry.d.ts +0 -29
- package/dist/services/capability-registry.js +0 -176
- package/dist/services/capability-registry.js.map +0 -1
- package/dist/services/capability-sync.d.ts +0 -4
- package/dist/services/capability-sync.js +0 -220
- package/dist/services/capability-sync.js.map +0 -1
- package/dist/services/connection-admin.d.ts +0 -74
- package/dist/services/connection-admin.js +0 -287
- package/dist/services/connection-admin.js.map +0 -1
- package/dist/services/connection-apply.d.ts +0 -91
- package/dist/services/connection-apply.js +0 -471
- package/dist/services/connection-apply.js.map +0 -1
- package/dist/services/connection-resolver.d.ts +0 -65
- package/dist/services/connection-resolver.js +0 -281
- package/dist/services/connection-resolver.js.map +0 -1
- package/dist/services/connection-transactor.d.ts +0 -39
- package/dist/services/connection-transactor.js +0 -354
- package/dist/services/connection-transactor.js.map +0 -1
- package/dist/services/core-manager.d.ts +0 -50
- package/dist/services/core-manager.js +0 -411
- package/dist/services/core-manager.js.map +0 -1
- package/dist/services/external-mounts.js +0 -187
- package/dist/services/external-mounts.js.map +0 -1
- package/dist/services/files-manager.d.ts +0 -252
- package/dist/services/files-manager.js +0 -1156
- package/dist/services/files-manager.js.map +0 -1
- package/dist/services/files-mounts.d.ts +0 -42
- package/dist/services/files-mounts.js +0 -207
- package/dist/services/files-mounts.js.map +0 -1
- package/dist/services/instance-admin.d.ts +0 -26
- package/dist/services/instance-admin.js +0 -218
- package/dist/services/instance-admin.js.map +0 -1
- package/dist/services/instance-manager.d.ts +0 -192
- package/dist/services/instance-manager.js +0 -1289
- package/dist/services/instance-manager.js.map +0 -1
- package/dist/services/macos-launchd.js +0 -312
- package/dist/services/macos-launchd.js.map +0 -1
- package/dist/services/nomad-manager.d.ts +0 -307
- package/dist/services/nomad-manager.js +0 -3958
- package/dist/services/nomad-manager.js.map +0 -1
- package/dist/services/organize/applier.js +0 -218
- package/dist/services/organize/applier.js.map +0 -1
- package/dist/services/organize/rules.js +0 -286
- package/dist/services/organize/rules.js.map +0 -1
- package/dist/services/organize/scanner.js +0 -366
- package/dist/services/organize/scanner.js.map +0 -1
- package/dist/services/organize/store.js +0 -82
- package/dist/services/organize/store.js.map +0 -1
- package/dist/services/plugin-installer.js +0 -128
- package/dist/services/plugin-installer.js.map +0 -1
- package/dist/services/process-manager.d.ts +0 -25
- package/dist/services/process-manager.js +0 -568
- package/dist/services/process-manager.js.map +0 -1
- package/dist/services/runtime/adapters/custom.d.ts +0 -20
- package/dist/services/runtime/adapters/custom.js +0 -188
- package/dist/services/runtime/adapters/custom.js.map +0 -1
- package/dist/services/runtime/adapters/hermes.d.ts +0 -204
- package/dist/services/runtime/adapters/hermes.js +0 -1684
- package/dist/services/runtime/adapters/hermes.js.map +0 -1
- package/dist/services/runtime/adapters/openclaw-mcporter.d.ts +0 -45
- package/dist/services/runtime/adapters/openclaw-mcporter.js +0 -108
- package/dist/services/runtime/adapters/openclaw-mcporter.js.map +0 -1
- package/dist/services/runtime/adapters/openclaw.d.ts +0 -426
- package/dist/services/runtime/adapters/openclaw.js +0 -3975
- package/dist/services/runtime/adapters/openclaw.js.map +0 -1
- package/dist/services/runtime/index.d.ts +0 -34
- package/dist/services/runtime/index.js +0 -51
- package/dist/services/runtime/index.js.map +0 -1
- package/dist/services/runtime/mcp-shims/anythingllm-shim.d.ts +0 -46
- package/dist/services/runtime/mcp-shims/anythingllm-shim.js +0 -281
- package/dist/services/runtime/mcp-shims/anythingllm-shim.js.map +0 -1
- package/dist/services/runtime/mcp-shims/drive-shim.js +0 -490
- package/dist/services/runtime/mcp-shims/drive-shim.js.map +0 -1
- package/dist/services/runtime/mcp-shims/jishukb-shim.d.ts +0 -48
- package/dist/services/runtime/mcp-shims/jishukb-shim.js +0 -723
- package/dist/services/runtime/mcp-shims/jishukb-shim.js.map +0 -1
- package/dist/services/runtime/mcp-shims/mcporter-lite.js +0 -276
- package/dist/services/runtime/mcp-shims/mcporter-lite.js.map +0 -1
- package/dist/services/runtime/migrations.d.ts +0 -23
- package/dist/services/runtime/migrations.js +0 -125
- package/dist/services/runtime/migrations.js.map +0 -1
- package/dist/services/runtime/registry.d.ts +0 -13
- package/dist/services/runtime/registry.js +0 -32
- package/dist/services/runtime/registry.js.map +0 -1
- package/dist/services/runtime-identity.d.ts +0 -13
- package/dist/services/runtime-identity.js +0 -166
- package/dist/services/runtime-identity.js.map +0 -1
- package/dist/services/runtime-repair.d.ts +0 -52
- package/dist/services/runtime-repair.js +0 -352
- package/dist/services/runtime-repair.js.map +0 -1
- package/dist/services/setup-manager.d.ts +0 -158
- package/dist/services/setup-manager.js +0 -2740
- package/dist/services/setup-manager.js.map +0 -1
- package/dist/services/suggestions.d.ts +0 -27
- package/dist/services/suggestions.js +0 -133
- package/dist/services/suggestions.js.map +0 -1
- package/dist/services/system-monitor.js +0 -79
- package/dist/services/system-monitor.js.map +0 -1
- package/dist/services/system-ollama-provider.d.ts +0 -14
- package/dist/services/system-ollama-provider.js +0 -125
- package/dist/services/system-ollama-provider.js.map +0 -1
- package/dist/services/system-reconciler.d.ts +0 -72
- package/dist/services/system-reconciler.js +0 -600
- package/dist/services/system-reconciler.js.map +0 -1
- package/dist/services/task-registry.d.ts +0 -44
- package/dist/services/task-registry.js +0 -76
- package/dist/services/task-registry.js.map +0 -1
- package/dist/services/types-shim.d.ts +0 -16
- package/dist/services/types-shim.js +0 -2
- package/dist/services/types-shim.js.map +0 -1
- package/dist/services/update-manager.d.ts +0 -47
- package/dist/services/update-manager.js +0 -351
- package/dist/services/update-manager.js.map +0 -1
- package/dist/services/webdav/server.d.ts +0 -24
- package/dist/services/webdav/server.js +0 -420
- package/dist/services/webdav/server.js.map +0 -1
- package/dist/services/webdav/xml-builder.js.map +0 -1
- package/dist/services/workspace-builder.d.ts +0 -29
- package/dist/services/workspace-builder.js +0 -188
- package/dist/services/workspace-builder.js.map +0 -1
- package/node_modules/@fastify/static/.github/stale.yml +0 -21
- package/node_modules/@isaacs/cliui/LICENSE.md +0 -63
- package/node_modules/@isaacs/cliui/README.md +0 -151
- package/node_modules/@isaacs/cliui/dist/commonjs/ansi-regex/index.d.ts +0 -4
- package/node_modules/@isaacs/cliui/dist/commonjs/ansi-regex/index.d.ts.map +0 -1
- package/node_modules/@isaacs/cliui/dist/commonjs/ansi-regex/index.js +0 -16
- package/node_modules/@isaacs/cliui/dist/commonjs/ansi-regex/index.js.map +0 -1
- package/node_modules/@isaacs/cliui/dist/commonjs/ansi-styles/index.d.ts +0 -34
- package/node_modules/@isaacs/cliui/dist/commonjs/ansi-styles/index.d.ts.map +0 -1
- package/node_modules/@isaacs/cliui/dist/commonjs/ansi-styles/index.js +0 -170
- package/node_modules/@isaacs/cliui/dist/commonjs/ansi-styles/index.js.map +0 -1
- package/node_modules/@isaacs/cliui/dist/commonjs/eastasianwidth/index.d.ts +0 -6
- package/node_modules/@isaacs/cliui/dist/commonjs/eastasianwidth/index.d.ts.map +0 -1
- package/node_modules/@isaacs/cliui/dist/commonjs/eastasianwidth/index.js +0 -307
- package/node_modules/@isaacs/cliui/dist/commonjs/eastasianwidth/index.js.map +0 -1
- package/node_modules/@isaacs/cliui/dist/commonjs/emoji-regex/index.d.ts +0 -2
- package/node_modules/@isaacs/cliui/dist/commonjs/emoji-regex/index.d.ts.map +0 -1
- package/node_modules/@isaacs/cliui/dist/commonjs/emoji-regex/index.js +0 -7
- package/node_modules/@isaacs/cliui/dist/commonjs/emoji-regex/index.js.map +0 -1
- package/node_modules/@isaacs/cliui/dist/commonjs/index.d.ts +0 -41
- package/node_modules/@isaacs/cliui/dist/commonjs/index.d.ts.map +0 -1
- package/node_modules/@isaacs/cliui/dist/commonjs/index.js +0 -322
- package/node_modules/@isaacs/cliui/dist/commonjs/index.js.map +0 -1
- package/node_modules/@isaacs/cliui/dist/commonjs/index.min.js +0 -12
- package/node_modules/@isaacs/cliui/dist/commonjs/index.min.js.map +0 -7
- package/node_modules/@isaacs/cliui/dist/commonjs/package.json +0 -3
- package/node_modules/@isaacs/cliui/dist/commonjs/string-width/index.d.ts +0 -5
- package/node_modules/@isaacs/cliui/dist/commonjs/string-width/index.d.ts.map +0 -1
- package/node_modules/@isaacs/cliui/dist/commonjs/string-width/index.js +0 -49
- package/node_modules/@isaacs/cliui/dist/commonjs/string-width/index.js.map +0 -1
- package/node_modules/@isaacs/cliui/dist/commonjs/strip-ansi/index.d.ts +0 -2
- package/node_modules/@isaacs/cliui/dist/commonjs/strip-ansi/index.d.ts.map +0 -1
- package/node_modules/@isaacs/cliui/dist/commonjs/strip-ansi/index.js +0 -8
- package/node_modules/@isaacs/cliui/dist/commonjs/strip-ansi/index.js.map +0 -1
- package/node_modules/@isaacs/cliui/dist/commonjs/wrap-ansi/index.d.ts +0 -7
- package/node_modules/@isaacs/cliui/dist/commonjs/wrap-ansi/index.d.ts.map +0 -1
- package/node_modules/@isaacs/cliui/dist/commonjs/wrap-ansi/index.js +0 -176
- package/node_modules/@isaacs/cliui/dist/commonjs/wrap-ansi/index.js.map +0 -1
- package/node_modules/@isaacs/cliui/dist/esm/ansi-regex/index.d.ts +0 -4
- package/node_modules/@isaacs/cliui/dist/esm/ansi-regex/index.d.ts.map +0 -1
- package/node_modules/@isaacs/cliui/dist/esm/ansi-regex/index.js +0 -12
- package/node_modules/@isaacs/cliui/dist/esm/ansi-regex/index.js.map +0 -1
- package/node_modules/@isaacs/cliui/dist/esm/ansi-styles/index.d.ts +0 -34
- package/node_modules/@isaacs/cliui/dist/esm/ansi-styles/index.d.ts.map +0 -1
- package/node_modules/@isaacs/cliui/dist/esm/ansi-styles/index.js +0 -167
- package/node_modules/@isaacs/cliui/dist/esm/ansi-styles/index.js.map +0 -1
- package/node_modules/@isaacs/cliui/dist/esm/eastasianwidth/index.d.ts +0 -6
- package/node_modules/@isaacs/cliui/dist/esm/eastasianwidth/index.d.ts.map +0 -1
- package/node_modules/@isaacs/cliui/dist/esm/eastasianwidth/index.js +0 -299
- package/node_modules/@isaacs/cliui/dist/esm/eastasianwidth/index.js.map +0 -1
- package/node_modules/@isaacs/cliui/dist/esm/emoji-regex/index.d.ts +0 -2
- package/node_modules/@isaacs/cliui/dist/esm/emoji-regex/index.d.ts.map +0 -1
- package/node_modules/@isaacs/cliui/dist/esm/emoji-regex/index.js +0 -3
- package/node_modules/@isaacs/cliui/dist/esm/emoji-regex/index.js.map +0 -1
- package/node_modules/@isaacs/cliui/dist/esm/index.d.ts +0 -41
- package/node_modules/@isaacs/cliui/dist/esm/index.d.ts.map +0 -1
- package/node_modules/@isaacs/cliui/dist/esm/index.js +0 -317
- package/node_modules/@isaacs/cliui/dist/esm/index.js.map +0 -1
- package/node_modules/@isaacs/cliui/dist/esm/index.min.js +0 -12
- package/node_modules/@isaacs/cliui/dist/esm/index.min.js.map +0 -7
- package/node_modules/@isaacs/cliui/dist/esm/package.json +0 -3
- package/node_modules/@isaacs/cliui/dist/esm/string-width/index.d.ts +0 -5
- package/node_modules/@isaacs/cliui/dist/esm/string-width/index.d.ts.map +0 -1
- package/node_modules/@isaacs/cliui/dist/esm/string-width/index.js +0 -46
- package/node_modules/@isaacs/cliui/dist/esm/string-width/index.js.map +0 -1
- package/node_modules/@isaacs/cliui/dist/esm/strip-ansi/index.d.ts +0 -2
- package/node_modules/@isaacs/cliui/dist/esm/strip-ansi/index.d.ts.map +0 -1
- package/node_modules/@isaacs/cliui/dist/esm/strip-ansi/index.js +0 -4
- package/node_modules/@isaacs/cliui/dist/esm/strip-ansi/index.js.map +0 -1
- package/node_modules/@isaacs/cliui/dist/esm/wrap-ansi/index.d.ts +0 -7
- package/node_modules/@isaacs/cliui/dist/esm/wrap-ansi/index.d.ts.map +0 -1
- package/node_modules/@isaacs/cliui/dist/esm/wrap-ansi/index.js +0 -172
- package/node_modules/@isaacs/cliui/dist/esm/wrap-ansi/index.js.map +0 -1
- package/node_modules/@isaacs/cliui/package.json +0 -163
- package/node_modules/content-disposition/HISTORY.md +0 -60
- package/node_modules/cross-spawn/LICENSE +0 -21
- package/node_modules/cross-spawn/README.md +0 -89
- package/node_modules/cross-spawn/index.js +0 -39
- package/node_modules/cross-spawn/lib/enoent.js +0 -59
- package/node_modules/cross-spawn/lib/parse.js +0 -91
- package/node_modules/cross-spawn/lib/util/escape.js +0 -47
- package/node_modules/cross-spawn/lib/util/readShebang.js +0 -23
- package/node_modules/cross-spawn/lib/util/resolveCommand.js +0 -52
- package/node_modules/cross-spawn/package.json +0 -73
- package/node_modules/foreground-child/LICENSE +0 -15
- package/node_modules/foreground-child/README.md +0 -128
- package/node_modules/foreground-child/dist/commonjs/all-signals.d.ts +0 -2
- package/node_modules/foreground-child/dist/commonjs/all-signals.d.ts.map +0 -1
- package/node_modules/foreground-child/dist/commonjs/all-signals.js +0 -58
- package/node_modules/foreground-child/dist/commonjs/all-signals.js.map +0 -1
- package/node_modules/foreground-child/dist/commonjs/index.d.ts +0 -58
- package/node_modules/foreground-child/dist/commonjs/index.d.ts.map +0 -1
- package/node_modules/foreground-child/dist/commonjs/index.js +0 -123
- package/node_modules/foreground-child/dist/commonjs/index.js.map +0 -1
- package/node_modules/foreground-child/dist/commonjs/package.json +0 -3
- package/node_modules/foreground-child/dist/commonjs/proxy-signals.d.ts +0 -6
- package/node_modules/foreground-child/dist/commonjs/proxy-signals.d.ts.map +0 -1
- package/node_modules/foreground-child/dist/commonjs/proxy-signals.js +0 -38
- package/node_modules/foreground-child/dist/commonjs/proxy-signals.js.map +0 -1
- package/node_modules/foreground-child/dist/commonjs/watchdog.d.ts +0 -10
- package/node_modules/foreground-child/dist/commonjs/watchdog.d.ts.map +0 -1
- package/node_modules/foreground-child/dist/commonjs/watchdog.js +0 -50
- package/node_modules/foreground-child/dist/commonjs/watchdog.js.map +0 -1
- package/node_modules/foreground-child/dist/esm/all-signals.d.ts +0 -2
- package/node_modules/foreground-child/dist/esm/all-signals.d.ts.map +0 -1
- package/node_modules/foreground-child/dist/esm/all-signals.js +0 -52
- package/node_modules/foreground-child/dist/esm/all-signals.js.map +0 -1
- package/node_modules/foreground-child/dist/esm/index.d.ts +0 -58
- package/node_modules/foreground-child/dist/esm/index.d.ts.map +0 -1
- package/node_modules/foreground-child/dist/esm/index.js +0 -115
- package/node_modules/foreground-child/dist/esm/index.js.map +0 -1
- package/node_modules/foreground-child/dist/esm/package.json +0 -3
- package/node_modules/foreground-child/dist/esm/proxy-signals.d.ts +0 -6
- package/node_modules/foreground-child/dist/esm/proxy-signals.d.ts.map +0 -1
- package/node_modules/foreground-child/dist/esm/proxy-signals.js +0 -34
- package/node_modules/foreground-child/dist/esm/proxy-signals.js.map +0 -1
- package/node_modules/foreground-child/dist/esm/watchdog.d.ts +0 -10
- package/node_modules/foreground-child/dist/esm/watchdog.d.ts.map +0 -1
- package/node_modules/foreground-child/dist/esm/watchdog.js +0 -46
- package/node_modules/foreground-child/dist/esm/watchdog.js.map +0 -1
- package/node_modules/foreground-child/package.json +0 -106
- package/node_modules/glob/dist/esm/bin.d.mts +0 -3
- package/node_modules/glob/dist/esm/bin.d.mts.map +0 -1
- package/node_modules/glob/dist/esm/bin.mjs +0 -346
- package/node_modules/glob/dist/esm/bin.mjs.map +0 -1
- package/node_modules/isexe/.npmignore +0 -2
- package/node_modules/isexe/LICENSE +0 -15
- package/node_modules/isexe/README.md +0 -51
- package/node_modules/isexe/index.js +0 -57
- package/node_modules/isexe/mode.js +0 -41
- package/node_modules/isexe/package.json +0 -31
- package/node_modules/isexe/test/basic.js +0 -221
- package/node_modules/isexe/windows.js +0 -42
- package/node_modules/jackspeak/LICENSE.md +0 -55
- package/node_modules/jackspeak/README.md +0 -394
- package/node_modules/jackspeak/dist/commonjs/index.d.ts +0 -323
- package/node_modules/jackspeak/dist/commonjs/index.d.ts.map +0 -1
- package/node_modules/jackspeak/dist/commonjs/index.js +0 -944
- package/node_modules/jackspeak/dist/commonjs/index.js.map +0 -1
- package/node_modules/jackspeak/dist/commonjs/index.min.js +0 -33
- package/node_modules/jackspeak/dist/commonjs/index.min.js.map +0 -7
- package/node_modules/jackspeak/dist/commonjs/package.json +0 -3
- package/node_modules/jackspeak/dist/esm/index.d.ts +0 -323
- package/node_modules/jackspeak/dist/esm/index.d.ts.map +0 -1
- package/node_modules/jackspeak/dist/esm/index.js +0 -936
- package/node_modules/jackspeak/dist/esm/index.js.map +0 -1
- package/node_modules/jackspeak/dist/esm/index.min.js +0 -33
- package/node_modules/jackspeak/dist/esm/index.min.js.map +0 -7
- package/node_modules/jackspeak/dist/esm/package.json +0 -3
- package/node_modules/jackspeak/package.json +0 -115
- package/node_modules/jishushell-panel/output/public/assets/ApiKeyField-D1i7zWXR.js +0 -1
- package/node_modules/jishushell-panel/output/public/assets/Dashboard-sWIvL43F.js +0 -1
- package/node_modules/jishushell-panel/output/public/assets/HermesChatPanel-DQ8RyvQY.js +0 -1
- package/node_modules/jishushell-panel/output/public/assets/HermesConfigForm-tIbPP1sB.js +0 -4
- package/node_modules/jishushell-panel/output/public/assets/InitPassword-C3Slq3Dd.js +0 -1
- package/node_modules/jishushell-panel/output/public/assets/InstanceDetail-7JqY9tq4.js +0 -92
- package/node_modules/jishushell-panel/output/public/assets/Login-BXLDJlQN.js +0 -1
- package/node_modules/jishushell-panel/output/public/assets/NewInstance-dLc5Xrpx.js +0 -1
- package/node_modules/jishushell-panel/output/public/assets/ProviderRecommendations-DIAXxesl.js +0 -1
- package/node_modules/jishushell-panel/output/public/assets/Settings-Bd5utbBh.js +0 -1
- package/node_modules/jishushell-panel/output/public/assets/Setup-Yn9_20FL.js +0 -1
- package/node_modules/jishushell-panel/output/public/assets/WeixinLoginPanel-C21doQTJ.js +0 -9
- package/node_modules/jishushell-panel/output/public/assets/index-CCkaIEjn.js +0 -20
- package/node_modules/jishushell-panel/output/public/assets/index-D7qxy-Vh.css +0 -1
- package/node_modules/jishushell-panel/output/public/assets/registry-B2ZQZXWL.js +0 -2
- package/node_modules/jishushell-panel/output/public/assets/usePolling-BFZm4do_.js +0 -1
- package/node_modules/jishushell-panel/output/public/assets/vendor-i18n-DqPtOicc.js +0 -9
- package/node_modules/jishushell-panel/output/public/assets/vendor-react-DW5juQin.js +0 -59
- package/node_modules/package-json-from-dist/LICENSE.md +0 -63
- package/node_modules/package-json-from-dist/README.md +0 -110
- package/node_modules/package-json-from-dist/dist/commonjs/index.d.ts +0 -89
- package/node_modules/package-json-from-dist/dist/commonjs/index.d.ts.map +0 -1
- package/node_modules/package-json-from-dist/dist/commonjs/index.js +0 -134
- package/node_modules/package-json-from-dist/dist/commonjs/index.js.map +0 -1
- package/node_modules/package-json-from-dist/dist/commonjs/package.json +0 -3
- package/node_modules/package-json-from-dist/dist/esm/index.d.ts +0 -89
- package/node_modules/package-json-from-dist/dist/esm/index.d.ts.map +0 -1
- package/node_modules/package-json-from-dist/dist/esm/index.js +0 -129
- package/node_modules/package-json-from-dist/dist/esm/index.js.map +0 -1
- package/node_modules/package-json-from-dist/dist/esm/package.json +0 -3
- package/node_modules/package-json-from-dist/package.json +0 -68
- package/node_modules/path-key/index.d.ts +0 -40
- package/node_modules/path-key/index.js +0 -16
- package/node_modules/path-key/license +0 -9
- package/node_modules/path-key/package.json +0 -39
- package/node_modules/path-key/readme.md +0 -61
- package/node_modules/safe-buffer/LICENSE +0 -21
- package/node_modules/safe-buffer/README.md +0 -584
- package/node_modules/safe-buffer/index.d.ts +0 -187
- package/node_modules/safe-buffer/index.js +0 -65
- package/node_modules/safe-buffer/package.json +0 -51
- package/node_modules/shebang-command/index.js +0 -19
- package/node_modules/shebang-command/license +0 -9
- package/node_modules/shebang-command/package.json +0 -34
- package/node_modules/shebang-command/readme.md +0 -34
- package/node_modules/shebang-regex/index.d.ts +0 -22
- package/node_modules/shebang-regex/index.js +0 -2
- package/node_modules/shebang-regex/license +0 -9
- package/node_modules/shebang-regex/package.json +0 -35
- package/node_modules/shebang-regex/readme.md +0 -33
- package/node_modules/signal-exit/LICENSE.txt +0 -16
- package/node_modules/signal-exit/README.md +0 -74
- package/node_modules/signal-exit/dist/cjs/browser.d.ts +0 -12
- package/node_modules/signal-exit/dist/cjs/browser.d.ts.map +0 -1
- package/node_modules/signal-exit/dist/cjs/browser.js +0 -10
- package/node_modules/signal-exit/dist/cjs/browser.js.map +0 -1
- package/node_modules/signal-exit/dist/cjs/index.d.ts +0 -48
- package/node_modules/signal-exit/dist/cjs/index.d.ts.map +0 -1
- package/node_modules/signal-exit/dist/cjs/index.js +0 -279
- package/node_modules/signal-exit/dist/cjs/index.js.map +0 -1
- package/node_modules/signal-exit/dist/cjs/package.json +0 -3
- package/node_modules/signal-exit/dist/cjs/signals.d.ts +0 -29
- package/node_modules/signal-exit/dist/cjs/signals.d.ts.map +0 -1
- package/node_modules/signal-exit/dist/cjs/signals.js +0 -42
- package/node_modules/signal-exit/dist/cjs/signals.js.map +0 -1
- package/node_modules/signal-exit/dist/mjs/browser.d.ts +0 -12
- package/node_modules/signal-exit/dist/mjs/browser.d.ts.map +0 -1
- package/node_modules/signal-exit/dist/mjs/browser.js +0 -4
- package/node_modules/signal-exit/dist/mjs/browser.js.map +0 -1
- package/node_modules/signal-exit/dist/mjs/index.d.ts +0 -48
- package/node_modules/signal-exit/dist/mjs/index.d.ts.map +0 -1
- package/node_modules/signal-exit/dist/mjs/index.js +0 -275
- package/node_modules/signal-exit/dist/mjs/index.js.map +0 -1
- package/node_modules/signal-exit/dist/mjs/package.json +0 -3
- package/node_modules/signal-exit/dist/mjs/signals.d.ts +0 -29
- package/node_modules/signal-exit/dist/mjs/signals.d.ts.map +0 -1
- package/node_modules/signal-exit/dist/mjs/signals.js +0 -39
- package/node_modules/signal-exit/dist/mjs/signals.js.map +0 -1
- package/node_modules/signal-exit/package.json +0 -106
- package/node_modules/which/CHANGELOG.md +0 -166
- package/node_modules/which/LICENSE +0 -15
- package/node_modules/which/README.md +0 -54
- package/node_modules/which/bin/node-which +0 -52
- package/node_modules/which/package.json +0 -43
- package/node_modules/which/which.js +0 -125
- package/scripts/check-adapter-isolation.ts +0 -293
- /package/dist/services/{app → app-common}/app-compiler.d.ts +0 -0
- /package/dist/services/{app → app-common}/terminal-session-manager.d.ts +0 -0
- /package/dist/services/{backup-verify.d.ts → backup/backup-verify.d.ts} +0 -0
- /package/dist/services/{external-mounts.d.ts → files/external-mounts.d.ts} +0 -0
- /package/dist/services/{organize → files/organize}/applier.d.ts +0 -0
- /package/dist/services/{organize → files/organize}/rules.d.ts +0 -0
- /package/dist/services/{organize → files/organize}/scanner.d.ts +0 -0
- /package/dist/services/{organize → files/organize}/store.d.ts +0 -0
- /package/dist/services/{webdav → files/webdav}/xml-builder.d.ts +0 -0
- /package/dist/services/{webdav → files/webdav}/xml-builder.js +0 -0
- /package/dist/services/{app-passwords.d.ts → instances/passwords.d.ts} +0 -0
- /package/dist/services/{agent-apps → integrations/installable}/installers/registry-probe.d.ts +0 -0
- /package/dist/services/{agent-apps → integrations/installable}/installers/registry-probe.js +0 -0
- /package/dist/services/{runtime/mcp-shims → integrations/openclaw}/drive-shim.d.ts +0 -0
- /package/dist/services/{runtime/mcp-shims → integrations/openclaw}/mcporter-lite.d.ts +0 -0
- /package/dist/services/{plugin-installer.d.ts → setup/plugin-installer.d.ts} +0 -0
- /package/dist/services/{macos-launchd.d.ts → system/macos-launchd.d.ts} +0 -0
- /package/dist/services/{system-monitor.d.ts → system/system-monitor.d.ts} +0 -0
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Canonical path resolver for app instance directories.
|
|
3
|
+
*
|
|
4
|
+
* `~/.jishushell/apps/<id>/` is the single root for instance state. This
|
|
5
|
+
* module is the only allowed place to obtain an instance directory path;
|
|
6
|
+
* call sites must not call `join(APPS_DIR, id)` directly.
|
|
7
|
+
*/
|
|
8
|
+
/**
|
|
9
|
+
* Per-instance persisted file roles.
|
|
10
|
+
*
|
|
11
|
+
* These four files may repeat ids/digests for validation, but they do not own
|
|
12
|
+
* the same facts:
|
|
13
|
+
* - definition.yaml: original AppSpec/template snapshot
|
|
14
|
+
* - resolved-spec.yaml: install-time materialized AppSpec snapshot
|
|
15
|
+
* - manifest.json: install resources and ownership ledger
|
|
16
|
+
* - instance.json: current instance identity, desired/status, runtime ports,
|
|
17
|
+
* connections, and operation/error state
|
|
18
|
+
*
|
|
19
|
+
* Do not read template snapshots as runtime facts, and do not infer ownership
|
|
20
|
+
* from instance.json.
|
|
21
|
+
*/
|
|
22
|
+
export declare const DEFINITION_FILENAME = "definition.yaml";
|
|
23
|
+
export declare const RESOLVED_SPEC_FILENAME = "resolved-spec.yaml";
|
|
24
|
+
export declare const MANIFEST_FILENAME = "manifest.json";
|
|
25
|
+
export declare const INSTANCE_METADATA_FILENAME = "instance.json";
|
|
26
|
+
/**
|
|
27
|
+
* Returns the canonical instance directory: `APPS_DIR/<id>/`.
|
|
28
|
+
*/
|
|
29
|
+
export declare function resolveAppDir(instanceId: string): string;
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Canonical path resolver for app instance directories.
|
|
3
|
+
*
|
|
4
|
+
* `~/.jishushell/apps/<id>/` is the single root for instance state. This
|
|
5
|
+
* module is the only allowed place to obtain an instance directory path;
|
|
6
|
+
* call sites must not call `join(APPS_DIR, id)` directly.
|
|
7
|
+
*/
|
|
8
|
+
import { join } from "node:path";
|
|
9
|
+
import { APPS_DIR } from "../../config.js";
|
|
10
|
+
/**
|
|
11
|
+
* Per-instance persisted file roles.
|
|
12
|
+
*
|
|
13
|
+
* These four files may repeat ids/digests for validation, but they do not own
|
|
14
|
+
* the same facts:
|
|
15
|
+
* - definition.yaml: original AppSpec/template snapshot
|
|
16
|
+
* - resolved-spec.yaml: install-time materialized AppSpec snapshot
|
|
17
|
+
* - manifest.json: install resources and ownership ledger
|
|
18
|
+
* - instance.json: current instance identity, desired/status, runtime ports,
|
|
19
|
+
* connections, and operation/error state
|
|
20
|
+
*
|
|
21
|
+
* Do not read template snapshots as runtime facts, and do not infer ownership
|
|
22
|
+
* from instance.json.
|
|
23
|
+
*/
|
|
24
|
+
export const DEFINITION_FILENAME = "definition.yaml";
|
|
25
|
+
export const RESOLVED_SPEC_FILENAME = "resolved-spec.yaml";
|
|
26
|
+
export const MANIFEST_FILENAME = "manifest.json";
|
|
27
|
+
export const INSTANCE_METADATA_FILENAME = "instance.json";
|
|
28
|
+
/**
|
|
29
|
+
* Returns the canonical instance directory: `APPS_DIR/<id>/`.
|
|
30
|
+
*/
|
|
31
|
+
export function resolveAppDir(instanceId) {
|
|
32
|
+
return join(APPS_DIR, instanceId);
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=paths.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"paths.js","sourceRoot":"","sources":["../../../src/services/app-common/paths.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAE3C;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,iBAAiB,CAAC;AACrD,MAAM,CAAC,MAAM,sBAAsB,GAAG,oBAAoB,CAAC;AAC3D,MAAM,CAAC,MAAM,iBAAiB,GAAG,eAAe,CAAC;AACjD,MAAM,CAAC,MAAM,0BAA0B,GAAG,eAAe,CAAC;AAE1D;;GAEG;AACH,MAAM,UAAU,aAAa,CAAC,UAAkB;IAC9C,OAAO,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;AACpC,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import type { AppSpec } from "../../types.js";
|
|
2
|
+
/**
|
|
3
|
+
* Adapt a resolved AppSpec snapshot to the host platform before persistence.
|
|
4
|
+
*
|
|
5
|
+
* Non-darwin platforms are an identity pass-through (return the input
|
|
6
|
+
* spec by reference) — Linux/Pi/CIX install behavior must remain
|
|
7
|
+
* byte-identical to the pre-transformer code path.
|
|
8
|
+
*
|
|
9
|
+
* On darwin two spec patterns that work on Linux fail:
|
|
10
|
+
*
|
|
11
|
+
* 1. `port.host_network: "docker_bridge"`. The bridge interface lives
|
|
12
|
+
* inside Docker Desktop's Linux VM, not on the macOS host. Nomad
|
|
13
|
+
* enumerates host interfaces matching CIDR 172.17.0.0/16 and finds
|
|
14
|
+
* none, so job placement fails with "no addresses available for
|
|
15
|
+
* docker_bridge network". Strip the field — `hostNetworkForPort`
|
|
16
|
+
* in the Nomad driver falls back to `external`, and Docker Desktop's
|
|
17
|
+
* built-in `host.docker.internal` keeps cross-container calls
|
|
18
|
+
* reachable.
|
|
19
|
+
*
|
|
20
|
+
* 2. `task.user: "host"`. `resolveUidGid()` falls back to
|
|
21
|
+
* `process.getuid()` on darwin because /etc/passwd has no "host"
|
|
22
|
+
* entry; macOS accounts run as UID 501, but PostgreSQL/Redis
|
|
23
|
+
* container images expect their own service UIDs and crash with
|
|
24
|
+
* "data directory has invalid permissions". Strip the field — the
|
|
25
|
+
* image entrypoints (postgres, redis) drop privileges via
|
|
26
|
+
* gosu/su-exec when no `--user` flag is supplied.
|
|
27
|
+
*
|
|
28
|
+
* Source `apps/*.yaml` files stay written in Linux-native form; this
|
|
29
|
+
* transform only mutates the *materialized* spec persisted at
|
|
30
|
+
* `~/.jishushell/apps/<id>/resolved-spec.yaml` on darwin hosts.
|
|
31
|
+
*/
|
|
32
|
+
export declare function platformTransformSpec(spec: AppSpec, platform?: NodeJS.Platform): AppSpec;
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Adapt a resolved AppSpec snapshot to the host platform before persistence.
|
|
3
|
+
*
|
|
4
|
+
* Non-darwin platforms are an identity pass-through (return the input
|
|
5
|
+
* spec by reference) — Linux/Pi/CIX install behavior must remain
|
|
6
|
+
* byte-identical to the pre-transformer code path.
|
|
7
|
+
*
|
|
8
|
+
* On darwin two spec patterns that work on Linux fail:
|
|
9
|
+
*
|
|
10
|
+
* 1. `port.host_network: "docker_bridge"`. The bridge interface lives
|
|
11
|
+
* inside Docker Desktop's Linux VM, not on the macOS host. Nomad
|
|
12
|
+
* enumerates host interfaces matching CIDR 172.17.0.0/16 and finds
|
|
13
|
+
* none, so job placement fails with "no addresses available for
|
|
14
|
+
* docker_bridge network". Strip the field — `hostNetworkForPort`
|
|
15
|
+
* in the Nomad driver falls back to `external`, and Docker Desktop's
|
|
16
|
+
* built-in `host.docker.internal` keeps cross-container calls
|
|
17
|
+
* reachable.
|
|
18
|
+
*
|
|
19
|
+
* 2. `task.user: "host"`. `resolveUidGid()` falls back to
|
|
20
|
+
* `process.getuid()` on darwin because /etc/passwd has no "host"
|
|
21
|
+
* entry; macOS accounts run as UID 501, but PostgreSQL/Redis
|
|
22
|
+
* container images expect their own service UIDs and crash with
|
|
23
|
+
* "data directory has invalid permissions". Strip the field — the
|
|
24
|
+
* image entrypoints (postgres, redis) drop privileges via
|
|
25
|
+
* gosu/su-exec when no `--user` flag is supplied.
|
|
26
|
+
*
|
|
27
|
+
* Source `apps/*.yaml` files stay written in Linux-native form; this
|
|
28
|
+
* transform only mutates the *materialized* spec persisted at
|
|
29
|
+
* `~/.jishushell/apps/<id>/resolved-spec.yaml` on darwin hosts.
|
|
30
|
+
*/
|
|
31
|
+
export function platformTransformSpec(spec, platform = process.platform) {
|
|
32
|
+
if (platform !== "darwin")
|
|
33
|
+
return spec;
|
|
34
|
+
return transformForDarwin(spec);
|
|
35
|
+
}
|
|
36
|
+
function transformForDarwin(spec) {
|
|
37
|
+
let anyChanged = false;
|
|
38
|
+
const tasks = spec.tasks.map((task) => {
|
|
39
|
+
let next = task;
|
|
40
|
+
let taskChanged = false;
|
|
41
|
+
if (task.user === "host") {
|
|
42
|
+
const { user: _stripped, ...rest } = task;
|
|
43
|
+
next = rest;
|
|
44
|
+
taskChanged = true;
|
|
45
|
+
}
|
|
46
|
+
if (Array.isArray(next.ports)) {
|
|
47
|
+
const needsPortRewrite = next.ports.some((port) => port.host_network === "docker_bridge");
|
|
48
|
+
if (needsPortRewrite) {
|
|
49
|
+
const ports = next.ports.map((port) => {
|
|
50
|
+
if (port.host_network !== "docker_bridge")
|
|
51
|
+
return port;
|
|
52
|
+
const { host_network: _stripped, ...rest } = port;
|
|
53
|
+
return rest;
|
|
54
|
+
});
|
|
55
|
+
next = { ...next, ports };
|
|
56
|
+
taskChanged = true;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
if (taskChanged)
|
|
60
|
+
anyChanged = true;
|
|
61
|
+
return next;
|
|
62
|
+
});
|
|
63
|
+
return anyChanged ? { ...spec, tasks } : spec;
|
|
64
|
+
}
|
|
65
|
+
//# sourceMappingURL=platform-transform.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"platform-transform.js","sourceRoot":"","sources":["../../../src/services/app-common/platform-transform.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,UAAU,qBAAqB,CACnC,IAAa,EACb,WAA4B,OAAO,CAAC,QAAQ;IAE5C,IAAI,QAAQ,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IACvC,OAAO,kBAAkB,CAAC,IAAI,CAAC,CAAC;AAClC,CAAC;AAED,SAAS,kBAAkB,CAAC,IAAa;IACvC,IAAI,UAAU,GAAG,KAAK,CAAC;IAEvB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACpC,IAAI,IAAI,GAAgB,IAAI,CAAC;QAC7B,IAAI,WAAW,GAAG,KAAK,CAAC;QAExB,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YACzB,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,GAAG,IAAI,CAAC;YAC1C,IAAI,GAAG,IAAmB,CAAC;YAC3B,WAAW,GAAG,IAAI,CAAC;QACrB,CAAC;QAED,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YAC9B,MAAM,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CACtC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,KAAK,eAAe,CAChD,CAAC;YACF,IAAI,gBAAgB,EAAE,CAAC;gBACrB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;oBACpC,IAAI,IAAI,CAAC,YAAY,KAAK,eAAe;wBAAE,OAAO,IAAI,CAAC;oBACvD,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,GAAG,IAAI,CAAC;oBAClD,OAAO,IAAmB,CAAC;gBAC7B,CAAC,CAAC,CAAC;gBACH,IAAI,GAAG,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,CAAC;gBAC1B,WAAW,GAAG,IAAI,CAAC;YACrB,CAAC;QACH,CAAC;QAED,IAAI,WAAW;YAAE,UAAU,GAAG,IAAI,CAAC;QACnC,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CAAC;IAEH,OAAO,UAAU,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AAChD,CAAC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* resolveProvideEndpoint — answer the question "what host:port does this
|
|
3
|
+
* provide actually listen on?" for a given app instance (§5.5).
|
|
4
|
+
*
|
|
5
|
+
* Replaces the old ad-hoc address builder that previously assumed a single
|
|
6
|
+
* primary port per instance. The new resolver reads the instance's canonical
|
|
7
|
+
* runtime port allocation. AppSpec declared
|
|
8
|
+
* ports are template metadata only; they may help identify a named runtime
|
|
9
|
+
* port, but they must never become the hostPort returned to proxy/status/
|
|
10
|
+
* capability hot paths.
|
|
11
|
+
*
|
|
12
|
+
* Returns null for url-only provides (§5.1 boundary clause): those cannot
|
|
13
|
+
* be bound through the Connections UI in this iteration; they only show up
|
|
14
|
+
* as embedded UI links.
|
|
15
|
+
*/
|
|
16
|
+
import type { AppProvide, AppSpec } from "../../types.js";
|
|
17
|
+
export interface ResolvedEndpoint {
|
|
18
|
+
host: string;
|
|
19
|
+
hostPort: number;
|
|
20
|
+
path?: string;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Resolve the provide's actual endpoint for a given instance.
|
|
24
|
+
*
|
|
25
|
+
* - Returns null for url-only provides (cannot enter capability registry,
|
|
26
|
+
* §5.1 boundary).
|
|
27
|
+
* - Returns null when no port can be determined from spec or runtime.
|
|
28
|
+
*/
|
|
29
|
+
export declare function resolveProvideEndpoint(instanceId: string, spec: AppSpec, provide: AppProvide): ResolvedEndpoint | null;
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
import { getAdvertisedHostForPort, getInstanceRuntime, CanonicalRuntimePortRequiredError, } from "../instances/manager.js";
|
|
2
|
+
function isServiceTask(task) {
|
|
3
|
+
return (task.role ?? "service") === "service";
|
|
4
|
+
}
|
|
5
|
+
function pickTask(spec, provide) {
|
|
6
|
+
if (typeof provide.task === "string" && provide.task) {
|
|
7
|
+
return spec.tasks?.find((t) => t.name === provide.task);
|
|
8
|
+
}
|
|
9
|
+
return spec.tasks?.find(isServiceTask);
|
|
10
|
+
}
|
|
11
|
+
function portHintOf(p) {
|
|
12
|
+
// AppSpec port declarations only disambiguate which runtime.ports[] entry
|
|
13
|
+
// to read. This value must never be returned as the actual hostPort.
|
|
14
|
+
if (typeof p.host_port === "number" && p.host_port > 0)
|
|
15
|
+
return p.host_port;
|
|
16
|
+
if (typeof p.port === "number" && p.port > 0)
|
|
17
|
+
return p.port;
|
|
18
|
+
return undefined;
|
|
19
|
+
}
|
|
20
|
+
function pickPortHint(task, provide) {
|
|
21
|
+
const ports = Array.isArray(task.ports) ? task.ports : [];
|
|
22
|
+
if (ports.length === 0)
|
|
23
|
+
return undefined;
|
|
24
|
+
// 1. Explicit endpoint.portName disambiguation. endpoint currently only
|
|
25
|
+
// selects the named runtime port; protocol/path stay top-level AppSpec
|
|
26
|
+
// fields so endpoint cannot become a second partial fact source.
|
|
27
|
+
const endpoint = provide.endpoint && typeof provide.endpoint === "object" ? provide.endpoint : null;
|
|
28
|
+
const portName = endpoint?.portName ?? provide.portName;
|
|
29
|
+
if (typeof portName === "string" && portName) {
|
|
30
|
+
const named = ports.find((p) => p.name === portName);
|
|
31
|
+
return named ? portHintOf(named) : undefined;
|
|
32
|
+
}
|
|
33
|
+
// 2. Match legacy provide.port against the task port definition. This value
|
|
34
|
+
// only identifies which runtime.ports[] entry to read; it is not a hostPort
|
|
35
|
+
// fact source for status/proxy/capability hot paths.
|
|
36
|
+
if (typeof provide.port === "number") {
|
|
37
|
+
const matched = ports.find((p) => portHintOf(p) === provide.port);
|
|
38
|
+
if (matched)
|
|
39
|
+
return portHintOf(matched);
|
|
40
|
+
return undefined;
|
|
41
|
+
}
|
|
42
|
+
// 3. No provide.port — first port on the chosen task.
|
|
43
|
+
return portHintOf(ports[0]);
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Read the actual allocated host port from the instance's canonical runtime
|
|
47
|
+
* record. This is the main status/proxy/capability path, not a migration
|
|
48
|
+
* repair path, so missing runtime.ports[].hostPort is surfaced as
|
|
49
|
+
* INSTANCE_NEEDS_MIGRATION instead of falling back to AppSpec template ports.
|
|
50
|
+
*/
|
|
51
|
+
function readRuntimePort(instanceId, taskName, portName, portHint) {
|
|
52
|
+
const runtime = getInstanceRuntime(instanceId);
|
|
53
|
+
if (!runtime || typeof runtime !== "object") {
|
|
54
|
+
throw new CanonicalRuntimePortRequiredError(instanceId);
|
|
55
|
+
}
|
|
56
|
+
// Scan runtime.ports[] by BOTH taskName and name (RuntimeSpec
|
|
57
|
+
// shape). Multi-service-task apps (e.g. WeKnora's `app` + `ui`, both with a
|
|
58
|
+
// port named "http") record every external port tagged with its owning
|
|
59
|
+
// taskName, so a name-only match would resolve the wrong task's host port.
|
|
60
|
+
// Require taskName === <provide task> AND name === portName so the `ui`
|
|
61
|
+
// provide can only ever resolve to the `ui` task's port.
|
|
62
|
+
const runtimePorts = Array.isArray(runtime.ports) ? runtime.ports : [];
|
|
63
|
+
if (portName) {
|
|
64
|
+
if (taskName) {
|
|
65
|
+
const exact = runtimePorts.find((p) => p?.taskName === taskName && p?.name === portName);
|
|
66
|
+
if (exact && Number.isInteger(exact.hostPort) && exact.hostPort > 0) {
|
|
67
|
+
return exact.hostPort;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
// Legacy runtime records (pre-taskName) carry no taskName field; only then
|
|
71
|
+
// is a name-only match safe, and only when the name is unambiguous.
|
|
72
|
+
const untaggedNamed = runtimePorts.filter((p) => p?.name === portName && p?.taskName === undefined);
|
|
73
|
+
if (untaggedNamed.length === 1) {
|
|
74
|
+
const named = untaggedNamed[0];
|
|
75
|
+
if (Number.isInteger(named.hostPort) && named.hostPort > 0) {
|
|
76
|
+
return named.hostPort;
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
// Single-runtime-port fallback within canonical runtime only — runtime
|
|
81
|
+
// allocation may have reassigned the host port. This never returns the
|
|
82
|
+
// AppSpec declared port; it only uses task/port shape to choose among
|
|
83
|
+
// already-persisted runtime.ports[] entries.
|
|
84
|
+
if (typeof portHint === "number") {
|
|
85
|
+
const sameTaskPorts = taskName
|
|
86
|
+
? runtimePorts.filter((p) => p?.taskName === taskName)
|
|
87
|
+
: runtimePorts;
|
|
88
|
+
const candidates = sameTaskPorts.length > 0 ? sameTaskPorts : runtimePorts;
|
|
89
|
+
if (candidates.length === 1
|
|
90
|
+
&& Number.isInteger(candidates[0]?.hostPort)
|
|
91
|
+
&& candidates[0].hostPort > 0) {
|
|
92
|
+
return candidates[0].hostPort;
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
throw new CanonicalRuntimePortRequiredError(instanceId);
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Resolve the provide's actual endpoint for a given instance.
|
|
99
|
+
*
|
|
100
|
+
* - Returns null for url-only provides (cannot enter capability registry,
|
|
101
|
+
* §5.1 boundary).
|
|
102
|
+
* - Returns null when no port can be determined from spec or runtime.
|
|
103
|
+
*/
|
|
104
|
+
export function resolveProvideEndpoint(instanceId, spec, provide) {
|
|
105
|
+
// url-only provide — out of capability registry scope (see §5.1).
|
|
106
|
+
if (typeof provide.url === "string" && provide.url.trim())
|
|
107
|
+
return null;
|
|
108
|
+
const task = pickTask(spec, provide);
|
|
109
|
+
if (!task)
|
|
110
|
+
return null;
|
|
111
|
+
const portHint = pickPortHint(task, provide);
|
|
112
|
+
if (typeof portHint !== "number" || portHint <= 0)
|
|
113
|
+
return null;
|
|
114
|
+
const endpoint = provide.endpoint && typeof provide.endpoint === "object" ? provide.endpoint : null;
|
|
115
|
+
const portName = endpoint?.portName ?? provide.portName ?? findPortName(task, portHint);
|
|
116
|
+
const actual = readRuntimePort(instanceId, task.name, portName, portHint);
|
|
117
|
+
const host = getAdvertisedHostForPort(actual);
|
|
118
|
+
return {
|
|
119
|
+
host,
|
|
120
|
+
hostPort: actual,
|
|
121
|
+
...(provide.path ? { path: provide.path } : {}),
|
|
122
|
+
};
|
|
123
|
+
}
|
|
124
|
+
function findPortName(task, hostPort) {
|
|
125
|
+
const ports = Array.isArray(task.ports) ? task.ports : [];
|
|
126
|
+
const matched = ports.find((p) => portHintOf(p) === hostPort);
|
|
127
|
+
return matched?.name;
|
|
128
|
+
}
|
|
129
|
+
//# sourceMappingURL=provide-resolver.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"provide-resolver.js","sourceRoot":"","sources":["../../../src/services/app-common/provide-resolver.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared remote AppSpec downloader.
|
|
3
|
+
*
|
|
4
|
+
* Remote AppSpec import is an install-source capability, not an instance
|
|
5
|
+
* creation protocol. Any route or CLI flow that accepts a remote AppSpec URL
|
|
6
|
+
* must go through this helper so SSRF protection, DNS pinning, size limits,
|
|
7
|
+
* and content checks stay identical across install entry points.
|
|
8
|
+
*/
|
|
9
|
+
/** Maximum accepted YAML payload — same ceiling as instances.ts remote fetch. */
|
|
10
|
+
export declare const REMOTE_APP_SPEC_MAX_BYTES = 1000000;
|
|
11
|
+
export declare function loadRemoteAppSpecYaml(urlText: string, opts?: {
|
|
12
|
+
providerId?: string;
|
|
13
|
+
fieldName?: string;
|
|
14
|
+
}): Promise<string>;
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared remote AppSpec downloader.
|
|
3
|
+
*
|
|
4
|
+
* Remote AppSpec import is an install-source capability, not an instance
|
|
5
|
+
* creation protocol. Any route or CLI flow that accepts a remote AppSpec URL
|
|
6
|
+
* must go through this helper so SSRF protection, DNS pinning, size limits,
|
|
7
|
+
* and content checks stay identical across install entry points.
|
|
8
|
+
*/
|
|
9
|
+
import { pinnedFetch, validateUpstreamUrl } from "../llm-proxy/ssrf.js";
|
|
10
|
+
/** Maximum accepted YAML payload — same ceiling as instances.ts remote fetch. */
|
|
11
|
+
export const REMOTE_APP_SPEC_MAX_BYTES = 1_000_000;
|
|
12
|
+
const DEFAULT_TIMEOUT_MS = 15_000;
|
|
13
|
+
export async function loadRemoteAppSpecYaml(urlText, opts = {}) {
|
|
14
|
+
const fieldName = opts.fieldName ?? "app spec URL";
|
|
15
|
+
const providerId = opts.providerId ?? "remote-app-spec";
|
|
16
|
+
let parsed;
|
|
17
|
+
try {
|
|
18
|
+
parsed = new URL(urlText);
|
|
19
|
+
}
|
|
20
|
+
catch {
|
|
21
|
+
throw new Error(`Invalid ${fieldName}`);
|
|
22
|
+
}
|
|
23
|
+
if (parsed.protocol !== "https:" && parsed.protocol !== "http:") {
|
|
24
|
+
throw new Error(`${fieldName} must use http:// or https://`);
|
|
25
|
+
}
|
|
26
|
+
// SSRF: reject private / loopback / link-local and pin DNS. The synthetic
|
|
27
|
+
// providerId is NOT in LOCAL_PROVIDER_IDS so validateUpstreamUrl takes the
|
|
28
|
+
// strict "public remote" branch. AppSpec download must never reach the
|
|
29
|
+
// panel's own host services (nomad API, docker API, localhost panel).
|
|
30
|
+
let resolved;
|
|
31
|
+
try {
|
|
32
|
+
resolved = await validateUpstreamUrl(urlText, providerId);
|
|
33
|
+
}
|
|
34
|
+
catch (err) {
|
|
35
|
+
throw new Error(`${fieldName} refused: ${err?.message ?? "SSRF check failed"}`);
|
|
36
|
+
}
|
|
37
|
+
if (!resolved) {
|
|
38
|
+
throw new Error(`${fieldName} must not target localhost or private addresses`);
|
|
39
|
+
}
|
|
40
|
+
const response = await pinnedFetch(urlText, {
|
|
41
|
+
method: "GET",
|
|
42
|
+
headers: { accept: "application/yaml, text/yaml, text/plain, */*" },
|
|
43
|
+
body: "",
|
|
44
|
+
signal: AbortSignal.timeout(DEFAULT_TIMEOUT_MS),
|
|
45
|
+
}, resolved);
|
|
46
|
+
if (!response.ok) {
|
|
47
|
+
throw new Error(`Failed to download app spec: HTTP ${response.status}`);
|
|
48
|
+
}
|
|
49
|
+
const yamlText = await response.text();
|
|
50
|
+
if (!yamlText.trim()) {
|
|
51
|
+
throw new Error("Downloaded app spec is empty");
|
|
52
|
+
}
|
|
53
|
+
if (yamlText.length > REMOTE_APP_SPEC_MAX_BYTES) {
|
|
54
|
+
throw new Error("Downloaded app spec is too large");
|
|
55
|
+
}
|
|
56
|
+
return yamlText;
|
|
57
|
+
}
|
|
58
|
+
//# sourceMappingURL=remote-spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"remote-spec.js","sourceRoot":"","sources":["../../../src/services/app-common/remote-spec.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAExE,iFAAiF;AACjF,MAAM,CAAC,MAAM,yBAAyB,GAAG,SAAS,CAAC;AACnD,MAAM,kBAAkB,GAAG,MAAM,CAAC;AAElC,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,OAAe,EACf,OAAoD,EAAE;IAEtD,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,cAAc,CAAC;IACnD,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,iBAAiB,CAAC;IAExD,IAAI,MAAW,CAAC;IAChB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC;IAC5B,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,KAAK,CAAC,WAAW,SAAS,EAAE,CAAC,CAAC;IAC1C,CAAC;IAED,IAAI,MAAM,CAAC,QAAQ,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;QAChE,MAAM,IAAI,KAAK,CAAC,GAAG,SAAS,+BAA+B,CAAC,CAAC;IAC/D,CAAC;IAED,0EAA0E;IAC1E,2EAA2E;IAC3E,uEAAuE;IACvE,sEAAsE;IACtE,IAAI,QAAmD,CAAC;IACxD,IAAI,CAAC;QACH,QAAQ,GAAG,MAAM,mBAAmB,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IAC5D,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,GAAG,SAAS,aAAa,GAAG,EAAE,OAAO,IAAI,mBAAmB,EAAE,CAAC,CAAC;IAClF,CAAC;IACD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,GAAG,SAAS,iDAAiD,CAAC,CAAC;IACjF,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,WAAW,CAChC,OAAO,EACP;QACE,MAAM,EAAE,KAAK;QACb,OAAO,EAAE,EAAE,MAAM,EAAE,8CAA8C,EAAE;QACnE,IAAI,EAAE,EAAE;QACR,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,kBAAkB,CAAC;KAChD,EACD,QAAQ,CACT,CAAC;IACF,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,qCAAqC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;IAC1E,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;IACvC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;IAClD,CAAC;IACD,IAAI,QAAQ,CAAC,MAAM,GAAG,yBAAyB,EAAE,CAAC;QAChD,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;IACtD,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { allocateCanonicalRuntimeHostPorts as allocateGenericRuntimeHostPorts, buildCanonicalRuntimeFromSpec, commitCanonicalRuntimeHostPorts as commitRuntimeHostPortAllocations, releaseCanonicalRuntimeHostPorts as releaseRuntimeHostPortAllocations, stripCanonicalRuntimeHostPortSeeds as stripRuntimeHostPortSeeds, } from "./runtime-facts.js";
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export { allocateCanonicalRuntimeHostPorts as allocateGenericRuntimeHostPorts, buildCanonicalRuntimeFromSpec, commitCanonicalRuntimeHostPorts as commitRuntimeHostPortAllocations, releaseCanonicalRuntimeHostPorts as releaseRuntimeHostPortAllocations, stripCanonicalRuntimeHostPortSeeds as stripRuntimeHostPortSeeds, } from "./runtime-facts.js";
|
|
2
|
+
//# sourceMappingURL=runtime-builder.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime-builder.js","sourceRoot":"","sources":["../../../src/services/app-common/runtime-builder.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iCAAiC,IAAI,+BAA+B,EACpE,6BAA6B,EAC7B,+BAA+B,IAAI,gCAAgC,EACnE,gCAAgC,IAAI,iCAAiC,EACrE,kCAAkC,IAAI,yBAAyB,GAChE,MAAM,oBAAoB,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { AppSpec } from "../../types.js";
|
|
2
|
+
export declare function buildCanonicalRuntimeFromSpec(spec: AppSpec, instanceId: string): Record<string, any>;
|
|
3
|
+
export declare function allocateCanonicalRuntimeHostPorts(instanceId: string, runtime: Record<string, any>, options?: {
|
|
4
|
+
ignoreIncompleteCanonicalInstanceIds?: ReadonlySet<string>;
|
|
5
|
+
preserveExistingHostPorts?: boolean;
|
|
6
|
+
}): Promise<{
|
|
7
|
+
runtime: Record<string, any>;
|
|
8
|
+
allocations: Array<{
|
|
9
|
+
commit: () => number;
|
|
10
|
+
release: () => void;
|
|
11
|
+
}>;
|
|
12
|
+
}>;
|
|
13
|
+
export declare function commitCanonicalRuntimeHostPorts(allocations: Array<{
|
|
14
|
+
commit: () => number;
|
|
15
|
+
}>): void;
|
|
16
|
+
export declare function releaseCanonicalRuntimeHostPorts(allocations: Array<{
|
|
17
|
+
release: () => void;
|
|
18
|
+
}>): void;
|
|
19
|
+
export declare function stripCanonicalRuntimeHostPortSeeds(runtime: Record<string, any>): Record<string, any>;
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
import { homedir } from "os";
|
|
2
|
+
import * as instanceServices from "../instances/manager.js";
|
|
3
|
+
import { compileTaskRuntime } from "./app-compiler.js";
|
|
4
|
+
const JISHUSHELL_HOME = process.env.JISHUSHELL_HOME?.trim()
|
|
5
|
+
|| `${process.env.HOME ?? homedir()}/.jishushell`;
|
|
6
|
+
function expandPath(p) {
|
|
7
|
+
if (/^~\/\.jishushell(?:\/|$)/.test(p)) {
|
|
8
|
+
return p.replace(/^~\/\.jishushell(?=\/|$)/, JISHUSHELL_HOME);
|
|
9
|
+
}
|
|
10
|
+
return p.replace(/^~(?=\/|$)/, process.env.HOME ?? homedir());
|
|
11
|
+
}
|
|
12
|
+
export function buildCanonicalRuntimeFromSpec(spec, instanceId) {
|
|
13
|
+
const serviceTask = spec.tasks.find((task) => (task.role ?? "service") === "service");
|
|
14
|
+
if (!serviceTask)
|
|
15
|
+
return {};
|
|
16
|
+
const runtime = compileTaskRuntime(serviceTask, instanceId);
|
|
17
|
+
const orderedTasks = [serviceTask, ...spec.tasks.filter((task) => task !== serviceTask)];
|
|
18
|
+
const allPorts = orderedTasks.flatMap((task) => (task.ports ?? [])
|
|
19
|
+
.filter((port) => (port.visibility ?? "external") !== "internal")
|
|
20
|
+
.map((port) => ({
|
|
21
|
+
taskName: task.name,
|
|
22
|
+
name: port.name,
|
|
23
|
+
containerPort: port.container_port ?? port.port,
|
|
24
|
+
// Temporary allocator seed only; callers must strip it before
|
|
25
|
+
// persisting runtime facts.
|
|
26
|
+
hostPortSeed: port.host_port ?? port.port,
|
|
27
|
+
visibility: port.visibility ?? "external",
|
|
28
|
+
...(port.host_network ? { host_network: port.host_network } : {}),
|
|
29
|
+
})));
|
|
30
|
+
if (allPorts.length > 0) {
|
|
31
|
+
runtime.ports = allPorts;
|
|
32
|
+
}
|
|
33
|
+
if (serviceTask.health?.http) {
|
|
34
|
+
const healthPortEntry = serviceTask.ports?.find((port) => port.port === serviceTask.health?.http?.port
|
|
35
|
+
|| port.host_port === serviceTask.health?.http?.port
|
|
36
|
+
|| port.container_port === serviceTask.health?.http?.port);
|
|
37
|
+
runtime.health = {
|
|
38
|
+
type: "http",
|
|
39
|
+
path: serviceTask.health.http.path,
|
|
40
|
+
port: healthPortEntry?.container_port ?? healthPortEntry?.port ?? serviceTask.health.http.port,
|
|
41
|
+
interval: serviceTask.health.interval,
|
|
42
|
+
timeout: serviceTask.health.timeout,
|
|
43
|
+
retries: serviceTask.health.retries,
|
|
44
|
+
start_period: serviceTask.health.start_period,
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
if (Array.isArray(serviceTask.volumes)) {
|
|
48
|
+
runtime.volumes = serviceTask.volumes.map((volume) => ({
|
|
49
|
+
hostPath: expandPath(String(volume.source ?? "")),
|
|
50
|
+
containerPath: String(volume.target ?? ""),
|
|
51
|
+
mode: volume.readonly ? "ro" : "rw",
|
|
52
|
+
}));
|
|
53
|
+
}
|
|
54
|
+
return runtime;
|
|
55
|
+
}
|
|
56
|
+
export async function allocateCanonicalRuntimeHostPorts(instanceId, runtime, options = {}) {
|
|
57
|
+
const ports = Array.isArray(runtime.ports) ? runtime.ports : [];
|
|
58
|
+
if (ports.length === 0)
|
|
59
|
+
return { runtime, allocations: [] };
|
|
60
|
+
const allocations = [];
|
|
61
|
+
const nextPorts = [...ports];
|
|
62
|
+
try {
|
|
63
|
+
for (const [index, port] of ports.entries()) {
|
|
64
|
+
if ((port?.visibility ?? "external") === "internal")
|
|
65
|
+
continue;
|
|
66
|
+
if (options.preserveExistingHostPorts === true
|
|
67
|
+
&& Number.isInteger(port?.hostPort)
|
|
68
|
+
&& port.hostPort > 0) {
|
|
69
|
+
const { hostPortSeed: _hostPortSeed, ...persistedPort } = port;
|
|
70
|
+
nextPorts[index] = persistedPort;
|
|
71
|
+
continue;
|
|
72
|
+
}
|
|
73
|
+
const seed = Number.isInteger(port?.hostPortSeed) && port.hostPortSeed > 0
|
|
74
|
+
? port.hostPortSeed
|
|
75
|
+
: Number.isInteger(port?.hostPort) && port.hostPort > 0
|
|
76
|
+
? port.hostPort
|
|
77
|
+
: Number.isInteger(port?.containerPort) && port.containerPort > 0
|
|
78
|
+
? port.containerPort
|
|
79
|
+
: null;
|
|
80
|
+
if (seed == null) {
|
|
81
|
+
throw new Error(`Instance '${instanceId}' has an invalid runtime port seed for ${port?.taskName ?? "task"}/${port?.name ?? "port"}`);
|
|
82
|
+
}
|
|
83
|
+
const allocation = await instanceServices.allocateHostPort(instanceId, seed, undefined, options);
|
|
84
|
+
allocations.push(allocation);
|
|
85
|
+
const { hostPortSeed: _hostPortSeed, ...persistedPort } = port;
|
|
86
|
+
nextPorts[index] = {
|
|
87
|
+
...persistedPort,
|
|
88
|
+
hostPort: allocation.port,
|
|
89
|
+
};
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
catch (error) {
|
|
93
|
+
for (const allocation of allocations)
|
|
94
|
+
allocation.release();
|
|
95
|
+
throw error;
|
|
96
|
+
}
|
|
97
|
+
return {
|
|
98
|
+
runtime: {
|
|
99
|
+
...runtime,
|
|
100
|
+
ports: nextPorts,
|
|
101
|
+
},
|
|
102
|
+
allocations,
|
|
103
|
+
};
|
|
104
|
+
}
|
|
105
|
+
export function commitCanonicalRuntimeHostPorts(allocations) {
|
|
106
|
+
for (const allocation of allocations)
|
|
107
|
+
allocation.commit();
|
|
108
|
+
}
|
|
109
|
+
export function releaseCanonicalRuntimeHostPorts(allocations) {
|
|
110
|
+
for (const allocation of allocations)
|
|
111
|
+
allocation.release();
|
|
112
|
+
}
|
|
113
|
+
export function stripCanonicalRuntimeHostPortSeeds(runtime) {
|
|
114
|
+
if (!Array.isArray(runtime.ports))
|
|
115
|
+
return runtime;
|
|
116
|
+
return {
|
|
117
|
+
...runtime,
|
|
118
|
+
ports: runtime.ports.map((port) => {
|
|
119
|
+
if (!port || typeof port !== "object")
|
|
120
|
+
return port;
|
|
121
|
+
const { hostPortSeed: _hostPortSeed, ...persistedPort } = port;
|
|
122
|
+
return persistedPort;
|
|
123
|
+
}),
|
|
124
|
+
};
|
|
125
|
+
}
|
|
126
|
+
//# sourceMappingURL=runtime-facts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime-facts.js","sourceRoot":"","sources":["../../../src/services/app-common/runtime-facts.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export { onConfigChange, notifyConfigChange, instanceDir, instanceMetaPath, defaultModelEnvFile, normalizePath, extractPrimaryHostPort, isPortInUse, allocateHostPort, releasePendingPort, resolveServiceUser, chownToServiceUser, parseEnvFile, updateEnvFile, inferProviderApiKeyEnvName, listInstances, getInstance, updateInstanceMeta, deleteInstance, getConfig, getStoredConfig, saveConfig, isChannelPluginInstalled, saveFeishuCredentials, saveWeixinCredentials, getWeixinAccounts, getInstanceRuntime, getRuntimeEnvFiles, getPrimaryHostPort, getPrimaryHostForInstance, isCanonicalRuntimePortRequiredError, getListeningHostForPort, getHostForAppPort, urlHost, findInstancesSharingIntegrationHome, reallocatePrimaryHostPort, reallocateRuntimeHostPort, findInstancesSharingPrimaryHostPort, getRuntimeEnv, } from "../instances/manager.js";
|
|
2
|
+
export * from "./catalog-service.js";
|
|
3
|
+
export * from "./capability-service.js";
|
|
4
|
+
export * from "./create-pipeline.js";
|
|
5
|
+
export * from "./delete-service.js";
|
|
6
|
+
export * from "./execution-service.js";
|
|
7
|
+
export * from "./install-store.js";
|
|
8
|
+
export * from "./lifecycle-scripts.js";
|
|
9
|
+
export * from "./task-service.js";
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export { onConfigChange, notifyConfigChange, instanceDir, instanceMetaPath, defaultModelEnvFile, normalizePath, extractPrimaryHostPort, isPortInUse, allocateHostPort, releasePendingPort, resolveServiceUser, chownToServiceUser, parseEnvFile, updateEnvFile, inferProviderApiKeyEnvName, listInstances, getInstance, updateInstanceMeta, deleteInstance, getConfig, getStoredConfig, saveConfig, isChannelPluginInstalled, saveFeishuCredentials, saveWeixinCredentials, getWeixinAccounts, getInstanceRuntime, getRuntimeEnvFiles, getPrimaryHostPort, getPrimaryHostForInstance, isCanonicalRuntimePortRequiredError, getListeningHostForPort, getHostForAppPort, urlHost, findInstancesSharingIntegrationHome, reallocatePrimaryHostPort, reallocateRuntimeHostPort, findInstancesSharingPrimaryHostPort, getRuntimeEnv, } from "../instances/manager.js";
|
|
2
|
+
export * from "./catalog-service.js";
|
|
3
|
+
export * from "./capability-service.js";
|
|
4
|
+
export * from "./create-pipeline.js";
|
|
5
|
+
export * from "./delete-service.js";
|
|
6
|
+
export * from "./execution-service.js";
|
|
7
|
+
export * from "./install-store.js";
|
|
8
|
+
export * from "./lifecycle-scripts.js";
|
|
9
|
+
export * from "./task-service.js";
|
|
10
|
+
//# sourceMappingURL=service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../../src/services/app-common/service.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,kBAAkB,EAClB,WAAW,EACX,gBAAgB,EAChB,mBAAmB,EACnB,aAAa,EACb,sBAAsB,EACtB,WAAW,EACX,gBAAgB,EAChB,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,YAAY,EACZ,aAAa,EACb,0BAA0B,EAC1B,aAAa,EACb,WAAW,EACX,kBAAkB,EAClB,cAAc,EACd,SAAS,EACT,eAAe,EACf,UAAU,EACV,wBAAwB,EACxB,qBAAqB,EACrB,qBAAqB,EACrB,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,yBAAyB,EACzB,mCAAmC,EACnC,uBAAuB,EACvB,iBAAiB,EACjB,OAAO,EACP,mCAAmC,EACnC,yBAAyB,EACzB,yBAAyB,EACzB,mCAAmC,EACnC,aAAa,GACd,MAAM,yBAAyB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { AppSpec } from "../../types.js";
|
|
2
|
+
export declare function normalizeAppSpec(spec: AppSpec): AppSpec;
|
|
3
|
+
export declare function collectDeclaredPorts(spec: AppSpec): number[];
|
|
4
|
+
export declare function materializeAppSpecForInstance(spec: AppSpec, instanceId: string): AppSpec;
|
|
5
|
+
export declare function resolveInstallTarget(spec: AppSpec, requestedInstanceId?: string): Promise<{
|
|
6
|
+
instanceId: string;
|
|
7
|
+
installedSpec: AppSpec;
|
|
8
|
+
installedSpecYaml: string;
|
|
9
|
+
}>;
|