@clawops/cli 1.4.0 → 1.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. package/README.md +40 -0
  2. package/dist/{apply-5RREMN3L.js → apply-SI3JKS4Z.js} +2 -2
  3. package/dist/automation-RULUSJBW.js +0 -0
  4. package/dist/{aws-FRE2JVAZ.js → aws-D7Y6LCGK.js} +52 -90
  5. package/dist/{azure-PVC3AQVC.js → azure-JQAMNVHN.js} +15 -56
  6. package/dist/{bootstrap-G4UZ2FKH.js → bootstrap-RY4VOSDJ.js} +2 -2
  7. package/dist/chunk-3QJBNAHW.js +0 -0
  8. package/dist/chunk-6ZFIFDBJ.js +0 -0
  9. package/dist/{chunk-UAA6YOOP.js → chunk-72FF7IK2.js} +2 -2
  10. package/dist/chunk-A2I76FTA.js +0 -0
  11. package/dist/chunk-BOPSG2LI.js +0 -0
  12. package/dist/{chunk-JYQZJMD3.js → chunk-C5NDLOK2.js} +41 -33
  13. package/dist/chunk-CX5SL5HP.js +0 -0
  14. package/dist/{chunk-4U3LTLWZ.js → chunk-GJEF6UQA.js} +1 -0
  15. package/dist/chunk-KGXPLI7W.js +0 -0
  16. package/dist/{chunk-ZVOEQCNW.js → chunk-LCKD7L7X.js} +1 -1
  17. package/dist/chunk-OIGTOLB3.js +0 -0
  18. package/dist/{chunk-ZONXY3C6.js → chunk-QHGFENYR.js} +2 -2
  19. package/dist/{chunk-T5EX55GP.js → chunk-QI75OVJK.js} +3 -3
  20. package/dist/chunk-XKT42M34.js +72 -0
  21. package/dist/chunk-YTH4L2GN.js +0 -0
  22. package/dist/chunk-ZFNPM2WG.js +0 -0
  23. package/dist/cli.js +311 -54
  24. package/dist/{context-PSGEX2D7.js → context-KPKBOWOP.js} +1 -1
  25. package/dist/errors-OK47MQFD.js +0 -0
  26. package/dist/firewall-XQGO7HWK.js +51 -0
  27. package/dist/{gcp-BXDTC6EK.js → gcp-6FT2A45S.js} +14 -63
  28. package/dist/{generate-Z7DBMANX.js → generate-YV7226Q7.js} +2 -2
  29. package/dist/js-yaml-PTEEG4FO.js +0 -0
  30. package/dist/local-DXBEVZ5C.js +0 -0
  31. package/dist/mcp-apps-KY44ED3Y.js +0 -0
  32. package/dist/mcp-wire-ZWIYMLEW.js +45 -0
  33. package/dist/outputs-DJHBY7EE.js +0 -0
  34. package/dist/overlay-store-ADZPD7EU.js +0 -0
  35. package/dist/{package-WAJRGBBM.js → package-EW3FS257.js} +1 -1
  36. package/dist/{pool-FBFHATDG.js → pool-JZGKPP6K.js} +2 -2
  37. package/dist/providers-2OABPW2E.js +0 -0
  38. package/dist/remote-config-QF5TT7GU.js +0 -0
  39. package/dist/secrets-SVZWNAPK.js +0 -0
  40. package/dist/{server-IWLZJ4EU.js → server-3DEZHUWB.js} +9 -9
  41. package/dist/{ssh-IQXNME3D.js → ssh-E2AMBPZY.js} +1 -1
  42. package/dist/state-PRBIIN7I.js +0 -0
  43. package/dist/store-SDUR52Z5.js +0 -0
  44. package/dist/validate-T5M5EHSJ.js +0 -0
  45. package/package.json +26 -14
  46. package/dist/firewall-YYDOWDDP.js +0 -36
@@ -92,6 +92,7 @@ var Ssh2Session = class {
92
92
  server.close();
93
93
  };
94
94
  server.on("error", (err) => {
95
+ closeAll();
95
96
  const msg = err.code === "EADDRINUSE" ? `Port ${localPort} is already in use` : `Tunnel server error: ${err.message}`;
96
97
  reject(new NetworkError(msg));
97
98
  });
File without changes
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  connect
4
- } from "./chunk-4U3LTLWZ.js";
4
+ } from "./chunk-GJEF6UQA.js";
5
5
  import {
6
6
  NetworkError
7
7
  } from "./chunk-KGXPLI7W.js";
File without changes
@@ -10,7 +10,7 @@ import {
10
10
  } from "./chunk-BOPSG2LI.js";
11
11
  import {
12
12
  buildContext
13
- } from "./chunk-T5EX55GP.js";
13
+ } from "./chunk-QI75OVJK.js";
14
14
  import {
15
15
  atomicWriteConfig,
16
16
  deepMerge,
@@ -86,7 +86,7 @@ The diff you reviewed may no longer reflect what will be applied.
86
86
  };
87
87
  }
88
88
  async function applyConfigOverlay(plan, outputs, ctx, signal) {
89
- const { connect } = await import("./ssh-IQXNME3D.js");
89
+ const { connect } = await import("./ssh-E2AMBPZY.js");
90
90
  const connInfo = ctx.adapter.getConnectionInfo(outputs);
91
91
  const session = await connect({
92
92
  host: connInfo.host,
@@ -56,17 +56,17 @@ function makeProviderProxy(name) {
56
56
  if (resolved) return resolved;
57
57
  switch (name) {
58
58
  case "gcp": {
59
- const mod = await import("./gcp-BXDTC6EK.js");
59
+ const mod = await import("./gcp-6FT2A45S.js");
60
60
  resolved = mod.default;
61
61
  return resolved;
62
62
  }
63
63
  case "aws": {
64
- const mod = await import("./aws-FRE2JVAZ.js");
64
+ const mod = await import("./aws-D7Y6LCGK.js");
65
65
  resolved = mod.default;
66
66
  return resolved;
67
67
  }
68
68
  case "azure": {
69
- const mod = await import("./azure-PVC3AQVC.js");
69
+ const mod = await import("./azure-JQAMNVHN.js");
70
70
  resolved = mod.default;
71
71
  return resolved;
72
72
  }
@@ -0,0 +1,72 @@
1
+ #!/usr/bin/env node
2
+
3
+ // src/providers/startup.ts
4
+ function makeStartupScript(opts) {
5
+ const { openclawVersion, os, bedrockEnabled = false } = opts;
6
+ const dockerDistro = os === "ubuntu" ? "ubuntu" : "debian";
7
+ const bedrockEnvBlock = bedrockEnabled ? makeBedrockEnvBlock() : "";
8
+ return `#!/bin/bash
9
+ set -euo pipefail
10
+
11
+ # \u2500\u2500 User setup \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
12
+ id -u clawops &>/dev/null || useradd -m -s /bin/bash clawops
13
+ mkdir -p /home/clawops/.ssh
14
+ chmod 700 /home/clawops/.ssh
15
+ chown clawops:clawops /home/clawops/.ssh
16
+
17
+ # \u2500\u2500 Docker installation \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
18
+ if ! command -v docker &>/dev/null; then
19
+ export DEBIAN_FRONTEND=noninteractive
20
+ apt-get update -q
21
+ apt-get install -y -q ca-certificates curl gnupg lsb-release
22
+ install -m 0755 -d /etc/apt/keyrings
23
+ curl -fsSL https://download.docker.com/linux/${dockerDistro}/gpg \\
24
+ -o /etc/apt/keyrings/docker.asc
25
+ chmod a+r /etc/apt/keyrings/docker.asc
26
+ echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] \\
27
+ https://download.docker.com/linux/${dockerDistro} $(lsb_release -cs) stable" \\
28
+ > /etc/apt/sources.list.d/docker.list
29
+ apt-get update -q
30
+ apt-get install -y -q \\
31
+ docker-ce \\
32
+ docker-ce-cli \\
33
+ containerd.io \\
34
+ docker-buildx-plugin \\
35
+ docker-compose-plugin
36
+ systemctl enable --now docker
37
+ fi
38
+
39
+ usermod -aG docker clawops
40
+
41
+ # \u2500\u2500 OpenClaw image \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
42
+ OPENCLAW_VERSION="${openclawVersion}"
43
+ docker pull ghcr.io/openclaw/openclaw:\${OPENCLAW_VERSION}
44
+
45
+ # \u2500\u2500 Default config (apply.ts will overwrite with plan overlay) \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
46
+ OPENCLAW_CONFIG=/home/clawops/openclaw.json
47
+ if [ ! -f "\${OPENCLAW_CONFIG}" ]; then
48
+ cat > "\${OPENCLAW_CONFIG}" <<'OPENCLAWJSON'
49
+ {"meta":{"lastTouchedVersion":"2026.4"},"gateway":{"port":18789,"auth":{"mode":"token"}},"models":{},"channels":{}}
50
+ OPENCLAWJSON
51
+ chown clawops:clawops "\${OPENCLAW_CONFIG}"
52
+ fi
53
+
54
+ # \u2500\u2500 Start OpenClaw container \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
55
+ docker stop openclaw 2>/dev/null || true
56
+ docker rm openclaw 2>/dev/null || true
57
+ docker run -d \\
58
+ --name openclaw \\
59
+ --restart unless-stopped \\
60
+ -p 18789:18789 \\
61
+ -v "\${OPENCLAW_CONFIG}":/app/config.json:ro \\
62
+ ${bedrockEnvBlock} ghcr.io/openclaw/openclaw:\${OPENCLAW_VERSION} \\
63
+ node openclaw.mjs gateway run --allow-unconfigured
64
+ `;
65
+ }
66
+ function makeBedrockEnvBlock() {
67
+ return ' -e AWS_DEFAULT_REGION=$( \\\n IMDS_TOKEN=$(curl -sf -X PUT \\\n "http://169.254.169.254/latest/api/token" \\\n -H "X-aws-ec2-metadata-token-ttl-seconds: 60") && \\\n curl -sf \\\n -H "X-aws-ec2-metadata-token: ${IMDS_TOKEN}" \\\n "http://169.254.169.254/latest/meta-data/placement/region" \\\n || echo us-east-1) \\\n';
68
+ }
69
+
70
+ export {
71
+ makeStartupScript
72
+ };
File without changes
File without changes