@clawops/cli 2.0.1 → 2.0.2

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/README.md CHANGED
@@ -1019,6 +1019,7 @@ pnpm lint # eslint src/ tests/ scripts/ (--max-warnings=0)
1019
1019
  pnpm gen:schemas # regenerate src/providers/types.ts + src/mcp/tools/_generated.ts
1020
1020
  pnpm gen:schemas --check # CI guard: committed generated files match spec
1021
1021
  pnpm graph # local coupling report (--base <ref> for this branch's delta)
1022
+ pnpm verify:pack # install the packed tarball elsewhere and run it (CI gate)
1022
1023
  pnpm changeset # record a release note before merging
1023
1024
  ```
1024
1025
 
@@ -1,14 +1,14 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  applyPlan
4
- } from "./chunk-LBE6COC4.js";
4
+ } from "./chunk-ZMMRIWFS.js";
5
5
  import "./chunk-BOPSG2LI.js";
6
6
  import "./chunk-6ZFIFDBJ.js";
7
7
  import "./chunk-2I7KCMXZ.js";
8
8
  import "./chunk-HSPHXG6W.js";
9
9
  import "./chunk-AEEMRFZV.js";
10
10
  import "./chunk-BSLIYB5Q.js";
11
- import "./chunk-5XT5IAJK.js";
11
+ import "./chunk-WTZ2CT35.js";
12
12
  import "./chunk-NUDIHZEH.js";
13
13
  import "./chunk-JW5A7E3X.js";
14
14
  import "./chunk-LEVIW2PV.js";
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  ensurePulumiCli
4
- } from "./chunk-W3OLNNJW.js";
4
+ } from "./chunk-PSOSBJVO.js";
5
5
  import {
6
6
  ensurePassphrase
7
7
  } from "./chunk-V25QRZRB.js";
@@ -12,7 +12,7 @@ import "./chunk-KGXPLI7W.js";
12
12
 
13
13
  // src/pulumi/automation.ts
14
14
  import path from "path";
15
- import { LocalWorkspace } from "@pulumi/pulumi/automation";
15
+ import { LocalWorkspace } from "@pulumi/pulumi/automation/index.js";
16
16
  async function getOrCreateStack(opts) {
17
17
  const configDir = opts.configDir ?? getConfigDir();
18
18
  const pulumiCommand = await ensurePulumiCli({ configDir, onInstall: opts.onInstall });
@@ -146,7 +146,7 @@ function renderSnapshot(snap, opts) {
146
146
  return lines.join("\n");
147
147
  }
148
148
  async function probeEntries() {
149
- const { buildContext } = await import("./context-7EVC6W45.js");
149
+ const { buildContext } = await import("./context-M4JBBIAV.js");
150
150
  const { getConfig } = await import("./store-SDUR52Z5.js");
151
151
  const config = getConfig();
152
152
  if (!config) return [];
@@ -373,7 +373,7 @@ var monitor_default = defineCommand({
373
373
  const tailLines = Math.max(1, parseInt(String(args.tail ?? "10"), 10) || 10);
374
374
  const isTTY = Boolean(process.stdout.isTTY);
375
375
  const noColor = Boolean(args["no-color"]) || !isTTY;
376
- const { buildContext } = await import("./context-7EVC6W45.js");
376
+ const { buildContext } = await import("./context-M4JBBIAV.js");
377
377
  const { acquireSession, drainPool } = await import("./pool-PIIKJ4L2.js");
378
378
  const ac = new AbortController();
379
379
  process.on("SIGINT", () => ac.abort());
@@ -576,7 +576,7 @@ async function runtimeChecks(configDir) {
576
576
  } catch {
577
577
  checks.push({ name: "Pulumi home", status: "fail", detail: `${pulumiHome} (not writable)` });
578
578
  }
579
- const { pulumiCliStatus } = await import("./cli-WLD3EBEM.js");
579
+ const { pulumiCliStatus } = await import("./cli-NH7VUNOU.js");
580
580
  const cli = await pulumiCliStatus(configDir);
581
581
  checks.push(
582
582
  cli.kind === "managed" ? { name: "Pulumi CLI", status: "pass", detail: `${cli.version} (${cli.root})` } : cli.kind === "path" ? { name: "Pulumi CLI", status: "pass", detail: `${cli.version} (on PATH)` } : {
@@ -809,7 +809,7 @@ async function deployedVersionCheck(image, deployedVersion) {
809
809
  async function hardeningChecks(conn, stack, signal) {
810
810
  try {
811
811
  const { MODULE_CATALOG, resolveModules, withRemoteExec } = await import("./harden-72JMRT4E.js");
812
- const { buildContext } = await import("./context-7EVC6W45.js");
812
+ const { buildContext } = await import("./context-M4JBBIAV.js");
813
813
  const provider = buildContext({ stack }).adapter.name;
814
814
  const modules = resolveModules(MODULE_CATALOG, void 0, provider);
815
815
  const checks = [];
@@ -832,7 +832,7 @@ async function hardeningChecks(conn, stack, signal) {
832
832
  }
833
833
  async function defaultOpenSession(stack, signal) {
834
834
  const { getConfig } = await import("./store-SDUR52Z5.js");
835
- const { buildContext } = await import("./context-7EVC6W45.js");
835
+ const { buildContext } = await import("./context-M4JBBIAV.js");
836
836
  const { extractBaseOutputs } = await import("./outputs-DJHBY7EE.js");
837
837
  const { acquireSession } = await import("./pool-PIIKJ4L2.js");
838
838
  const config = getConfig();
@@ -3,7 +3,7 @@
3
3
  // src/pulumi/cli.ts
4
4
  import path from "path";
5
5
  import process from "process";
6
- import { PulumiCommand } from "@pulumi/pulumi/automation";
6
+ import { PulumiCommand } from "@pulumi/pulumi/automation/index.js";
7
7
  function pulumiCliRoot(configDir) {
8
8
  return path.join(configDir, ".pulumi-cli");
9
9
  }
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  applyPlan
4
- } from "./chunk-LBE6COC4.js";
4
+ } from "./chunk-ZMMRIWFS.js";
5
5
  import {
6
6
  extractBaseOutputs
7
7
  } from "./chunk-3QJBNAHW.js";
@@ -12,7 +12,7 @@ import {
12
12
  } from "./chunk-2I7KCMXZ.js";
13
13
  import {
14
14
  generatePlan
15
- } from "./chunk-STLRHLLV.js";
15
+ } from "./chunk-SDZKCICH.js";
16
16
  import {
17
17
  validatePlan
18
18
  } from "./chunk-BSLIYB5Q.js";
@@ -22,12 +22,12 @@ import {
22
22
  } from "./chunk-2Z7J3ERQ.js";
23
23
  import {
24
24
  buildContext
25
- } from "./chunk-5XT5IAJK.js";
25
+ } from "./chunk-WTZ2CT35.js";
26
26
  import {
27
27
  formatUptime,
28
28
  gatherSnapshot,
29
29
  runDiagnostics
30
- } from "./chunk-IVWP4QUJ.js";
30
+ } from "./chunk-5TXCUOZV.js";
31
31
  import {
32
32
  GATEWAY_LOGS_PROBE,
33
33
  chooseLogSource,
@@ -851,8 +851,8 @@ async function handleUp(input, server) {
851
851
  const progressToken = void 0;
852
852
  const emit = makeProgressEmitter(server, progressToken);
853
853
  startTask(taskId, `clawops_up stack=${ctx.stackName}`);
854
- const { generatePlan: generatePlan2 } = await import("./generate-I6YQ5V2T.js");
855
- const { applyPlan: applyPlan2 } = await import("./apply-KYFPWI5U.js");
854
+ const { generatePlan: generatePlan2 } = await import("./generate-J6MIJGII.js");
855
+ const { applyPlan: applyPlan2 } = await import("./apply-WOUTUUQH.js");
856
856
  const { resolveNetworkFlags } = await import("./network-args-PYJRJBYO.js");
857
857
  const { detectEgressIp } = await import("./firewall-5VKZ4WBH.js");
858
858
  const network = await resolveNetworkFlags(
@@ -1532,7 +1532,7 @@ function bearerFrom(header) {
1532
1532
  return match?.[1]?.trim();
1533
1533
  }
1534
1534
  async function serveMcp(opts) {
1535
- const { version } = await import("./package-5BCMEBTE.js");
1535
+ const { version } = await import("./package-3A6BOALU.js");
1536
1536
  const makeServer = () => {
1537
1537
  const server = new McpServer({ name: "clawops", version });
1538
1538
  registerTools(server, opts);
@@ -5,7 +5,7 @@ import {
5
5
  import {
6
6
  buildContext,
7
7
  loadAdapterModule
8
- } from "./chunk-5XT5IAJK.js";
8
+ } from "./chunk-WTZ2CT35.js";
9
9
  import {
10
10
  getConfig
11
11
  } from "./chunk-CX5SL5HP.js";
@@ -68,7 +68,7 @@ async function generatePlan(intent, _opts) {
68
68
  "plan/apply is not supported for the local provider. Use `clawops up` directly."
69
69
  );
70
70
  }
71
- const { version } = await import("./package-5BCMEBTE.js");
71
+ const { version } = await import("./package-3A6BOALU.js");
72
72
  const config = getConfig();
73
73
  const instanceType = await resolveInstanceType(intent);
74
74
  const { guardOpenclawVersion, defaultOpenclawVersion } = await import("./version-guard-XVYW5WFJ.js");
@@ -39,7 +39,7 @@ function buildContext(args) {
39
39
  `Stack "${stackName}" not found in config. Run \`clawops init\` or use \`--stack\` to specify a different stack.`
40
40
  );
41
41
  }
42
- const { getOrCreateStack } = await import("./automation-RMAIBNVC.js");
42
+ const { getOrCreateStack } = await import("./automation-UKRM3BD2.js");
43
43
  stackCache = await getOrCreateStack({
44
44
  stack: stackName,
45
45
  stateUrl: stackConfig.stateUrl,
@@ -19,7 +19,7 @@ import {
19
19
  } from "./chunk-BSLIYB5Q.js";
20
20
  import {
21
21
  buildContext
22
- } from "./chunk-5XT5IAJK.js";
22
+ } from "./chunk-WTZ2CT35.js";
23
23
  import {
24
24
  GATEWAY_PORT
25
25
  } from "./chunk-VOEJYRIK.js";
@@ -3,7 +3,7 @@ import {
3
3
  ensurePulumiCli,
4
4
  pulumiCliRoot,
5
5
  pulumiCliStatus
6
- } from "./chunk-W3OLNNJW.js";
6
+ } from "./chunk-PSOSBJVO.js";
7
7
  export {
8
8
  ensurePulumiCli,
9
9
  pulumiCliRoot,
package/dist/cli.js CHANGED
@@ -2,7 +2,7 @@
2
2
  import {
3
3
  monitor_default,
4
4
  runDiagnostics
5
- } from "./chunk-IVWP4QUJ.js";
5
+ } from "./chunk-5TXCUOZV.js";
6
6
  import {
7
7
  GATEWAY_LOGS_PROBE,
8
8
  chooseLogSource,
@@ -339,7 +339,7 @@ var up_default = defineCommand2({
339
339
  "publish-gateway": { type: "string", description: 'loopback (default) or all. "all" serves plaintext HTTP \u2014 put TLS in front of it' }
340
340
  },
341
341
  async run({ args }) {
342
- const { buildContext } = await import("./context-7EVC6W45.js");
342
+ const { buildContext } = await import("./context-M4JBBIAV.js");
343
343
  const { guardOpenclawVersion, defaultOpenclawVersion } = await import("./version-guard-XVYW5WFJ.js");
344
344
  const ctx = buildContext(args);
345
345
  const requestedVersion = typeof args["openclaw-version"] === "string" ? args["openclaw-version"] : await defaultOpenclawVersion();
@@ -392,8 +392,8 @@ var up_default = defineCommand2({
392
392
  }
393
393
  return;
394
394
  }
395
- const { generatePlan } = await import("./generate-I6YQ5V2T.js");
396
- const { applyPlan } = await import("./apply-KYFPWI5U.js");
395
+ const { generatePlan } = await import("./generate-J6MIJGII.js");
396
+ const { applyPlan } = await import("./apply-WOUTUUQH.js");
397
397
  const { resolveNetworkFlags } = await import("./network-args-PYJRJBYO.js");
398
398
  const { detectEgressIp } = await import("./firewall-5VKZ4WBH.js");
399
399
  const isDryRun = Boolean(args["dry-run"]);
@@ -523,7 +523,7 @@ var down_default = defineCommand3({
523
523
  "dry-run": { type: "boolean", description: "Show what would be destroyed without destroying" }
524
524
  },
525
525
  async run({ args }) {
526
- const { buildContext } = await import("./context-7EVC6W45.js");
526
+ const { buildContext } = await import("./context-M4JBBIAV.js");
527
527
  const ctx = buildContext(args);
528
528
  if (args["dry-run"]) {
529
529
  info(`Dry run \u2014 would destroy stack "${ctx.stackName}"`);
@@ -587,7 +587,7 @@ var status_default = defineCommand4({
587
587
  json: { type: "boolean", description: "Emit JSON" }
588
588
  },
589
589
  async run({ args }) {
590
- const { buildContext } = await import("./context-7EVC6W45.js");
590
+ const { buildContext } = await import("./context-M4JBBIAV.js");
591
591
  const ctx = buildContext(args);
592
592
  if (ctx.adapter.name === "local") {
593
593
  const state = ctx.localState;
@@ -662,8 +662,8 @@ var plan_default = defineCommand5({
662
662
  out: { type: "string", description: "Write plan JSON to this absolute path (default: stdout)" }
663
663
  },
664
664
  async run({ args }) {
665
- const { buildContext } = await import("./context-7EVC6W45.js");
666
- const { generatePlan } = await import("./generate-I6YQ5V2T.js");
665
+ const { buildContext } = await import("./context-M4JBBIAV.js");
666
+ const { generatePlan } = await import("./generate-J6MIJGII.js");
667
667
  const { resolveNetworkFlags } = await import("./network-args-PYJRJBYO.js");
668
668
  const { detectEgressIp } = await import("./firewall-5VKZ4WBH.js");
669
669
  const ctx = buildContext(args);
@@ -769,7 +769,7 @@ var apply_default = defineCommand6({
769
769
  },
770
770
  async run({ args }) {
771
771
  const { validatePlan } = await import("./validate-YVI3BJ55.js");
772
- const { applyPlan } = await import("./apply-KYFPWI5U.js");
772
+ const { applyPlan } = await import("./apply-WOUTUUQH.js");
773
773
  const planPath = args._?.[0];
774
774
  if (!planPath) {
775
775
  throw new UsageError("Usage: clawops apply <plan.json>");
@@ -895,7 +895,7 @@ var destroy_default = defineCommand7({
895
895
  "dry-run": { type: "boolean", description: "Show what would be destroyed without destroying" }
896
896
  },
897
897
  async run({ args }) {
898
- const { buildContext } = await import("./context-7EVC6W45.js");
898
+ const { buildContext } = await import("./context-M4JBBIAV.js");
899
899
  const ctx = buildContext(args);
900
900
  if (ctx.adapter.name === "local") {
901
901
  throw new UsageError(
@@ -990,7 +990,7 @@ var ssh_default = defineCommand8({
990
990
  command: { type: "string", description: "Remote command to run (instead of interactive shell)" }
991
991
  },
992
992
  async run({ args }) {
993
- const { buildContext } = await import("./context-7EVC6W45.js");
993
+ const { buildContext } = await import("./context-M4JBBIAV.js");
994
994
  const { acquireSession, drainPool } = await import("./pool-PIIKJ4L2.js");
995
995
  const ctx = buildContext(args);
996
996
  let conn;
@@ -1077,7 +1077,7 @@ var tunnel_default = defineCommand9({
1077
1077
  "no-open": { type: "boolean", description: "Do not open browser after tunnel is ready" }
1078
1078
  },
1079
1079
  async run({ args }) {
1080
- const { buildContext } = await import("./context-7EVC6W45.js");
1080
+ const { buildContext } = await import("./context-M4JBBIAV.js");
1081
1081
  const { extractBaseOutputs } = await import("./outputs-DJHBY7EE.js");
1082
1082
  const { acquireSession } = await import("./pool-PIIKJ4L2.js");
1083
1083
  const ctx = buildContext(args);
@@ -1146,7 +1146,7 @@ var logs_default = defineCommand10({
1146
1146
  json: { type: "boolean", description: "Emit the gateway's structured JSON log lines" }
1147
1147
  },
1148
1148
  async run({ args }) {
1149
- const { buildContext } = await import("./context-7EVC6W45.js");
1149
+ const { buildContext } = await import("./context-M4JBBIAV.js");
1150
1150
  const { extractBaseOutputs } = await import("./outputs-DJHBY7EE.js");
1151
1151
  const { acquireSession, drainPool } = await import("./pool-PIIKJ4L2.js");
1152
1152
  const ctx = buildContext(args);
@@ -1252,7 +1252,7 @@ var config_default = defineCommand11({
1252
1252
  "dry-run": { type: "boolean", description: "Show what would change without writing" }
1253
1253
  },
1254
1254
  async run({ args }) {
1255
- const { buildContext } = await import("./context-7EVC6W45.js");
1255
+ const { buildContext } = await import("./context-M4JBBIAV.js");
1256
1256
  const { extractBaseOutputs } = await import("./outputs-DJHBY7EE.js");
1257
1257
  const { acquireSession, drainPool } = await import("./pool-PIIKJ4L2.js");
1258
1258
  const [action, key, value] = args._ ?? [];
@@ -1387,7 +1387,7 @@ var agents_default = defineCommand12({
1387
1387
  cursor: { type: "string", description: "Continue from a previous `logs` result cursor" }
1388
1388
  },
1389
1389
  async run({ args }) {
1390
- const { buildContext } = await import("./context-7EVC6W45.js");
1390
+ const { buildContext } = await import("./context-M4JBBIAV.js");
1391
1391
  const { extractBaseOutputs } = await import("./outputs-DJHBY7EE.js");
1392
1392
  const { acquireSession, drainPool } = await import("./pool-PIIKJ4L2.js");
1393
1393
  const [action, name] = args._ ?? [];
@@ -1619,7 +1619,7 @@ var migrate_default = defineCommand13({
1619
1619
  yes: { type: "boolean", description: "Skip the confirmation prompt" }
1620
1620
  },
1621
1621
  async run({ args }) {
1622
- const { buildContext } = await import("./context-7EVC6W45.js");
1622
+ const { buildContext } = await import("./context-M4JBBIAV.js");
1623
1623
  const { extractBaseOutputs } = await import("./outputs-DJHBY7EE.js");
1624
1624
  const { acquireSession, drainPool } = await import("./pool-PIIKJ4L2.js");
1625
1625
  const { guardOpenclawVersion, defaultOpenclawVersion } = await import("./version-guard-XVYW5WFJ.js");
@@ -1758,7 +1758,7 @@ var gateway_default = defineCommand14({
1758
1758
  json: { type: "boolean", description: "Emit JSON (for status)" }
1759
1759
  },
1760
1760
  async run({ args }) {
1761
- const { buildContext } = await import("./context-7EVC6W45.js");
1761
+ const { buildContext } = await import("./context-M4JBBIAV.js");
1762
1762
  const { extractBaseOutputs } = await import("./outputs-DJHBY7EE.js");
1763
1763
  const { acquireSession, drainPool } = await import("./pool-PIIKJ4L2.js");
1764
1764
  const [action, versionArg] = args._ ?? [];
@@ -1990,7 +1990,7 @@ var backup_default = defineCommand15({
1990
1990
  yes: { type: "boolean", description: "[restore] Skip confirmation prompt" }
1991
1991
  },
1992
1992
  async run({ args }) {
1993
- const { buildContext } = await import("./context-7EVC6W45.js");
1993
+ const { buildContext } = await import("./context-M4JBBIAV.js");
1994
1994
  const { acquireSession, drainPool } = await import("./pool-PIIKJ4L2.js");
1995
1995
  const action = args.action;
1996
1996
  if (action !== "create" && action !== "restore") {
@@ -2201,7 +2201,7 @@ var stacks_default = defineCommand16({
2201
2201
  let isDeployed = false;
2202
2202
  if (!args.force) {
2203
2203
  try {
2204
- const { buildContext } = await import("./context-7EVC6W45.js");
2204
+ const { buildContext } = await import("./context-M4JBBIAV.js");
2205
2205
  const ctx = buildContext({ stack: name });
2206
2206
  if (ctx.adapter.name === "local") {
2207
2207
  isDeployed = !!ctx.localState;
@@ -2342,7 +2342,7 @@ var serveCmd = defineCommand18({
2342
2342
  inspector: { type: "boolean", description: "Enable MCP inspector" }
2343
2343
  },
2344
2344
  async run({ args }) {
2345
- const { serveMcp } = await import("./server-GBA7BJGK.js");
2345
+ const { serveMcp } = await import("./server-RWM2JI3D.js");
2346
2346
  await serveMcp({
2347
2347
  port: args.http ? Number(args.http) : void 0,
2348
2348
  bind: args.bind,
@@ -2420,11 +2420,11 @@ var wireCmd = defineCommand18({
2420
2420
  rewire: { type: "boolean", description: "Replace an existing clawops entry" }
2421
2421
  },
2422
2422
  async run({ args }) {
2423
- const { buildContext } = await import("./context-7EVC6W45.js");
2423
+ const { buildContext } = await import("./context-M4JBBIAV.js");
2424
2424
  const { acquireSession, drainPool } = await import("./pool-PIIKJ4L2.js");
2425
2425
  const { extractBaseOutputs } = await import("./outputs-DJHBY7EE.js");
2426
- const { wireGatewayMcp } = await import("./mcp-wire-3SWBM7D6.js");
2427
- const { MCP_HTTP_PORT } = await import("./server-GBA7BJGK.js");
2426
+ const { wireGatewayMcp } = await import("./mcp-wire-NTGL5ITF.js");
2427
+ const { MCP_HTTP_PORT } = await import("./server-RWM2JI3D.js");
2428
2428
  const ac = new AbortController();
2429
2429
  process20.on("SIGINT", () => {
2430
2430
  ac.abort();
@@ -3024,7 +3024,7 @@ var setup_default = defineCommand19({
3024
3024
  default: false
3025
3025
  }]);
3026
3026
  if (applyNow) {
3027
- const { applyPlan } = await import("./apply-KYFPWI5U.js");
3027
+ const { applyPlan } = await import("./apply-WOUTUUQH.js");
3028
3028
  const plan = JSON.parse(readFileSync3(outputPath, "utf-8"));
3029
3029
  try {
3030
3030
  await applyPlan(plan, {
@@ -3528,7 +3528,7 @@ async function maybeWireGatewayMcp(opts) {
3528
3528
  if (!wireGateway) return;
3529
3529
  const { connect } = await import("./ssh-VAI5DU5M.js");
3530
3530
  const { getConfigDir: getConfigDir2 } = await import("./store-SDUR52Z5.js");
3531
- const { wireGatewayMcp } = await import("./mcp-wire-3SWBM7D6.js");
3531
+ const { wireGatewayMcp } = await import("./mcp-wire-NTGL5ITF.js");
3532
3532
  const knownHostsPath = path2.join(getConfigDir2(), "known_hosts");
3533
3533
  const spin = spinner("Wiring gateway MCP client...");
3534
3534
  const session = await connect({
@@ -3671,7 +3671,7 @@ async function maybeHarden(opts) {
3671
3671
  const modules = availableModules.filter((m) => selectedIds.includes(m.id));
3672
3672
  process21.stdout.write("\nApplying hardening modules...\n\n");
3673
3673
  try {
3674
- const { buildContext } = await import("./context-7EVC6W45.js");
3674
+ const { buildContext } = await import("./context-M4JBBIAV.js");
3675
3675
  const { extractBaseOutputs } = await import("./outputs-DJHBY7EE.js");
3676
3676
  const ctx = buildContext({ stack: opts.stackName });
3677
3677
  const stackObj = await ctx.getStack();
@@ -3963,7 +3963,7 @@ var rotateCmd = defineCommand20({
3963
3963
  }
3964
3964
  info(`Re-applying config overlay to stack "${targetStack}"\u2026`);
3965
3965
  try {
3966
- const { buildContext } = await import("./context-7EVC6W45.js");
3966
+ const { buildContext } = await import("./context-M4JBBIAV.js");
3967
3967
  const { readRemoteConfig, atomicWriteConfig, restartGateway, deepMerge } = await import("./remote-config-3HZLUWEA.js");
3968
3968
  const { resolveSecrets } = await import("./secrets-SVZWNAPK.js");
3969
3969
  const { acquireSession, drainPool } = await import("./pool-PIIKJ4L2.js");
@@ -4150,7 +4150,7 @@ import { accessSync, constants } from "fs";
4150
4150
  import { execSync as execSync2 } from "child_process";
4151
4151
  var ISSUES_URL = `${REPO_URL}/issues/new`;
4152
4152
  var BODY_CAP = 2e3;
4153
- var VERSION = true ? "2.0.1" : "dev";
4153
+ var VERSION = true ? "2.0.2" : "dev";
4154
4154
  async function collectContext() {
4155
4155
  const nodeVersion = process23.version;
4156
4156
  const os3 = `${process23.platform} ${process23.arch}`;
@@ -4268,7 +4268,7 @@ var harden_default = defineCommand23({
4268
4268
  },
4269
4269
  async run({ args }) {
4270
4270
  const { MODULE_CATALOG, resolveModules, runHardening, formatHardenSummary } = await import("./harden-72JMRT4E.js");
4271
- const { buildContext } = await import("./context-7EVC6W45.js");
4271
+ const { buildContext } = await import("./context-M4JBBIAV.js");
4272
4272
  const { getConfig: getConfig2 } = await import("./store-SDUR52Z5.js");
4273
4273
  if (args.list) {
4274
4274
  process24.stdout.write("\nAvailable hardening modules:\n\n");
@@ -4390,7 +4390,7 @@ function handleError(err) {
4390
4390
  }
4391
4391
 
4392
4392
  // src/cli/index.ts
4393
- var CLI_VERSION = true ? "2.0.1" : "dev";
4393
+ var CLI_VERSION = true ? "2.0.2" : "dev";
4394
4394
  var main = defineCommand24({
4395
4395
  meta: {
4396
4396
  name: "clawops",
@@ -2,7 +2,7 @@
2
2
  import {
3
3
  buildContext,
4
4
  loadAdapterModule
5
- } from "./chunk-5XT5IAJK.js";
5
+ } from "./chunk-WTZ2CT35.js";
6
6
  import "./chunk-LEVIW2PV.js";
7
7
  import "./chunk-GIEVAGEK.js";
8
8
  import "./chunk-VOEJYRIK.js";
@@ -5,9 +5,9 @@ import {
5
5
  isInstanceAlias,
6
6
  parseDiffForTest,
7
7
  planId
8
- } from "./chunk-STLRHLLV.js";
8
+ } from "./chunk-SDZKCICH.js";
9
9
  import "./chunk-BSLIYB5Q.js";
10
- import "./chunk-5XT5IAJK.js";
10
+ import "./chunk-WTZ2CT35.js";
11
11
  import "./chunk-JW5A7E3X.js";
12
12
  import "./chunk-LEVIW2PV.js";
13
13
  import "./chunk-GIEVAGEK.js";
@@ -1,21 +1,21 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  MCP_HTTP_PORT
4
- } from "./chunk-KC3GC3PE.js";
5
- import "./chunk-LBE6COC4.js";
4
+ } from "./chunk-RATEIAFU.js";
5
+ import "./chunk-ZMMRIWFS.js";
6
6
  import "./chunk-BOPSG2LI.js";
7
7
  import "./chunk-6ZFIFDBJ.js";
8
8
  import "./chunk-3QJBNAHW.js";
9
9
  import "./chunk-2I7KCMXZ.js";
10
10
  import "./chunk-HSPHXG6W.js";
11
11
  import "./chunk-AEEMRFZV.js";
12
- import "./chunk-STLRHLLV.js";
12
+ import "./chunk-SDZKCICH.js";
13
13
  import "./chunk-BSLIYB5Q.js";
14
14
  import "./chunk-2Z7J3ERQ.js";
15
15
  import "./chunk-E4NJSJ54.js";
16
16
  import "./chunk-MC5ATCXS.js";
17
- import "./chunk-5XT5IAJK.js";
18
- import "./chunk-IVWP4QUJ.js";
17
+ import "./chunk-WTZ2CT35.js";
18
+ import "./chunk-5TXCUOZV.js";
19
19
  import "./chunk-NUL5F6YV.js";
20
20
  import "./chunk-3OLUJPCB.js";
21
21
  import {
@@ -2,7 +2,7 @@
2
2
 
3
3
  // package.json
4
4
  var name = "@clawops/cli";
5
- var version = "2.0.1";
5
+ var version = "2.0.2";
6
6
  var description = "Deploy and manage self-hosted OpenClaw instances across clouds";
7
7
  var type = "module";
8
8
  var bin = {
@@ -43,7 +43,8 @@ var scripts = {
43
43
  changeset: "changeset",
44
44
  release: "pnpm build && changeset publish",
45
45
  "test:mutation": "node scripts/dev/mutation-check.mjs",
46
- graph: "node scripts/dev/graph.mjs"
46
+ graph: "node scripts/dev/graph.mjs",
47
+ "verify:pack": "node scripts/dev/verify-pack.mjs"
47
48
  };
48
49
  var dependencies = {
49
50
  "@aws-sdk/client-bedrock": "^3.1063.0",
@@ -5,21 +5,21 @@ import {
5
5
  bearerFrom,
6
6
  isLoopbackBind,
7
7
  serveMcp
8
- } from "./chunk-KC3GC3PE.js";
9
- import "./chunk-LBE6COC4.js";
8
+ } from "./chunk-RATEIAFU.js";
9
+ import "./chunk-ZMMRIWFS.js";
10
10
  import "./chunk-BOPSG2LI.js";
11
11
  import "./chunk-6ZFIFDBJ.js";
12
12
  import "./chunk-3QJBNAHW.js";
13
13
  import "./chunk-2I7KCMXZ.js";
14
14
  import "./chunk-HSPHXG6W.js";
15
15
  import "./chunk-AEEMRFZV.js";
16
- import "./chunk-STLRHLLV.js";
16
+ import "./chunk-SDZKCICH.js";
17
17
  import "./chunk-BSLIYB5Q.js";
18
18
  import "./chunk-2Z7J3ERQ.js";
19
19
  import "./chunk-E4NJSJ54.js";
20
20
  import "./chunk-MC5ATCXS.js";
21
- import "./chunk-5XT5IAJK.js";
22
- import "./chunk-IVWP4QUJ.js";
21
+ import "./chunk-WTZ2CT35.js";
22
+ import "./chunk-5TXCUOZV.js";
23
23
  import "./chunk-NUL5F6YV.js";
24
24
  import "./chunk-3OLUJPCB.js";
25
25
  import "./chunk-NUDIHZEH.js";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@clawops/cli",
3
- "version": "2.0.1",
3
+ "version": "2.0.2",
4
4
  "description": "Deploy and manage self-hosted OpenClaw instances across clouds",
5
5
  "type": "module",
6
6
  "bin": {
@@ -40,7 +40,8 @@
40
40
  "changeset": "changeset",
41
41
  "release": "pnpm build && changeset publish",
42
42
  "test:mutation": "node scripts/dev/mutation-check.mjs",
43
- "graph": "node scripts/dev/graph.mjs"
43
+ "graph": "node scripts/dev/graph.mjs",
44
+ "verify:pack": "node scripts/dev/verify-pack.mjs"
44
45
  },
45
46
  "dependencies": {
46
47
  "@aws-sdk/client-bedrock": "^3.1063.0",