@clawops/cli 1.7.8 → 2.0.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.
- package/README.md +412 -70
- package/dist/{apply-F3KY2HTB.js → apply-AM5HERE7.js} +8 -6
- package/dist/{aws-L4RR2LSE.js → aws-AMON7DA7.js} +20 -9
- package/dist/{azure-7OXQENQL.js → azure-T4G6OBJQ.js} +19 -8
- package/dist/{bootstrap-HL4DNUNG.js → bootstrap-DMRPWJGN.js} +28 -19
- package/dist/bootstrap.sh.tmpl +51 -31
- package/dist/channels-KBUR42IU.js +53 -0
- package/dist/{chunk-DQDAWNGB.js → chunk-3WYA2QDM.js} +1 -1
- package/dist/chunk-6TIYVHPX.js +152 -0
- package/dist/{chunk-3XK66DKK.js → chunk-AHAAEXWC.js} +41 -0
- package/dist/{chunk-QQNKBTYZ.js → chunk-AX74VXTV.js} +292 -94
- package/dist/{chunk-C5X375RO.js → chunk-CKSPROD5.js} +59 -15
- package/dist/{chunk-UKTP332Z.js → chunk-GAZPPSKU.js} +6 -7
- package/dist/{chunk-FNS56UQY.js → chunk-GYV4KNW7.js} +319 -252
- package/dist/{chunk-PVUVI35Y.js → chunk-JW5A7E3X.js} +5 -1
- package/dist/chunk-LT4XMO5D.js +50 -0
- package/dist/{chunk-P5LKWRPL.js → chunk-LU2V3LXA.js} +3 -3
- package/dist/chunk-N44K3LHE.js +140 -0
- package/dist/chunk-NUDIHZEH.js +55 -0
- package/dist/chunk-SBLQH2TJ.js +56 -0
- package/dist/chunk-UFRO4H5W.js +228 -0
- package/dist/{chunk-RAAONHW3.js → chunk-WHJMKDV7.js} +24 -4
- package/dist/chunk-YR3O2I3S.js +101 -0
- package/dist/cli.js +866 -577
- package/dist/config-validate-K2N6XLDX.js +76 -0
- package/dist/{context-5LCUG2QR.js → context-KHKWJJMC.js} +1 -1
- package/dist/{firewall-XQGO7HWK.js → firewall-T3NTPZJD.js} +10 -0
- package/dist/{gcp-UG6AWPIZ.js → gcp-2JBTD7ZM.js} +19 -8
- package/dist/{generate-ELD7QF5Z.js → generate-2XV2GSP2.js} +4 -4
- package/dist/{harden-URPXLSVF.js → harden-PCDK3UQ5.js} +48 -11
- package/dist/health-5CCOXYGG.js +11 -0
- package/dist/logs-P7YCKVF4.js +15 -0
- package/dist/{mcp-wire-ZMIVFAUC.js → mcp-wire-BFEY2Y6H.js} +23 -17
- package/dist/{package-QYZFN3FP.js → package-3HUW57XH.js} +3 -3
- package/dist/plugins-DTST3OER.js +49 -0
- package/dist/{pool-QGFQRMGU.js → pool-EX4ZTA5P.js} +2 -2
- package/dist/privileged-JFA6LLTV.js +17 -0
- package/dist/{remote-config-QDLN4UMG.js → remote-config-Z6IIZR3D.js} +3 -3
- package/dist/runtime-LZ7NA53V.js +42 -0
- package/dist/{server-FWTOSSZP.js → server-A5AB67GQ.js} +16 -12
- package/dist/spec-path-KQOOIQCA.js +9 -0
- package/dist/{ssh-CNJNLM3E.js → ssh-B3NZAU4I.js} +1 -1
- package/dist/upgrade-ULD4KFYC.js +88 -0
- package/dist/validate-BOQRWX4F.js +14 -0
- package/dist/{version-guard-VUCNZXQS.js → version-guard-GPSTCPT7.js} +3 -3
- package/dist/{versions-2UVAT6PQ.js → versions-W5LRQCAJ.js} +2 -2
- package/package.json +3 -3
- package/spec/deploy-plan.schema.json +114 -25
- package/spec/integrations.yaml +135 -28
- package/spec/mcp-tools.yaml +68 -35
- package/spec/models.yaml +9 -0
- package/spec/openclaw-2.0.config.schema.json +1 -0
- package/spec/openclaw-versions.yaml +116 -27
- package/dist/chunk-35WVQY3X.js +0 -122
- package/dist/chunk-6X45DDGH.js +0 -42
- package/dist/chunk-SEZMVVAS.js +0 -156
- package/dist/validate-CFQ4FH2T.js +0 -10
package/spec/mcp-tools.yaml
CHANGED
|
@@ -11,6 +11,15 @@
|
|
|
11
11
|
# R8 — enums for closed sets
|
|
12
12
|
# R10 — all four annotation hints set
|
|
13
13
|
# R11 — annotations bound to safety modes (--read-only, --no-destructive)
|
|
14
|
+
#
|
|
15
|
+
# NOTE on `output:` — these blocks are DESCRIPTIVE, not generated. gen-schemas reads
|
|
16
|
+
# `input:` and `annotations:` only; nothing emits an MCP outputSchema, and no handler is
|
|
17
|
+
# checked against what its entry claims to return. Making them real means generating an
|
|
18
|
+
# outputSchema per tool and returning `structuredContent` from every handler — worth doing,
|
|
19
|
+
# but it is a change to all 18 handlers, not a spec edit. Until then, treat `output:` as the
|
|
20
|
+
# intended shape and the handler as the truth. Keeping them honest is not optional:
|
|
21
|
+
# clawops_status declared health, uptimeSec, openclawVersion and agentCount for three
|
|
22
|
+
# releases while returning none of them (WO-47).
|
|
14
23
|
|
|
15
24
|
version: 1
|
|
16
25
|
|
|
@@ -32,14 +41,15 @@ tools:
|
|
|
32
41
|
- name: clawops_status
|
|
33
42
|
toolset: [cli, read]
|
|
34
43
|
description: |
|
|
35
|
-
Get
|
|
36
|
-
|
|
44
|
+
Get what is deployed for a clawops-managed stack: public IP, gateway URL,
|
|
45
|
+
SSH user, or that nothing is deployed yet. Reads stack outputs; does not
|
|
46
|
+
contact the host.
|
|
37
47
|
|
|
38
|
-
Use when: the user asks
|
|
39
|
-
the gateway is responding, or wants a quick overview.
|
|
48
|
+
Use when: the user asks what exists for a stack, or where to reach it.
|
|
40
49
|
|
|
41
|
-
Do NOT use when: the user asks
|
|
42
|
-
|
|
50
|
+
Do NOT use when: the user asks whether the gateway is actually WORKING —
|
|
51
|
+
that needs the host, so use clawops_doctor. Also not for live logs (use
|
|
52
|
+
clawops_logs_tail) or config values (use clawops_config_get).
|
|
43
53
|
annotations:
|
|
44
54
|
title: Get Stack Status
|
|
45
55
|
readOnlyHint: true
|
|
@@ -51,15 +61,60 @@ tools:
|
|
|
51
61
|
type: string
|
|
52
62
|
optional: true
|
|
53
63
|
description: Stack name. Defaults to active stack from config.
|
|
64
|
+
# What the handler returns: the stack's deployment outputs. Health, version and agent
|
|
65
|
+
# count are NOT here — they need the host, and asking for them is clawops_doctor.
|
|
54
66
|
output:
|
|
55
|
-
|
|
67
|
+
stack: { type: string }
|
|
68
|
+
publicIp: { type: string }
|
|
56
69
|
gatewayUrl: { type: string, format: uri }
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
agentCount: { type: integer }
|
|
60
|
-
provider: { type: enum, values: [aws, gcp, azure, local] }
|
|
70
|
+
sshUser: { type: string }
|
|
71
|
+
status: { type: enum, values: [not bootstrapped, not deployed] }
|
|
61
72
|
region: { type: string }
|
|
62
73
|
|
|
74
|
+
- name: clawops_doctor
|
|
75
|
+
toolset: [cli, read]
|
|
76
|
+
description: |
|
|
77
|
+
Run clawops's diagnostics and return the report: Node and Pulumi runtime, config,
|
|
78
|
+
SSH key and known_hosts, cloud credentials per configured provider, and the
|
|
79
|
+
supported OpenClaw range. With stackName, also contacts the host for container
|
|
80
|
+
state, the deployed OpenClaw version, a real gateway health probe, whether the
|
|
81
|
+
port is published to the internet, disk usage on the state directory, log
|
|
82
|
+
rotation, and hardening drift.
|
|
83
|
+
|
|
84
|
+
Use when: something is not working and you do not yet know what; before any
|
|
85
|
+
deploy, upgrade or migration; or to find out which OpenClaw version a gateway is
|
|
86
|
+
actually running.
|
|
87
|
+
|
|
88
|
+
Do NOT use when: you already know the problem and want to fix it. This tool only
|
|
89
|
+
reports — it changes nothing, and never runs `openclaw doctor --fix`. Repair is
|
|
90
|
+
part of clawops_gateway_update, where it is gated on a verified backup.
|
|
91
|
+
|
|
92
|
+
Every check carries a status: fail (something is wrong that clawops can name),
|
|
93
|
+
warn (worth knowing, not broken), info (did not apply). `ok` is false only when
|
|
94
|
+
something failed — a fresh machine with no stacks is full of warnings and healthy.
|
|
95
|
+
annotations:
|
|
96
|
+
title: Run Diagnostics
|
|
97
|
+
readOnlyHint: true
|
|
98
|
+
destructiveHint: false
|
|
99
|
+
idempotentHint: true
|
|
100
|
+
openWorldHint: true
|
|
101
|
+
input:
|
|
102
|
+
stackName:
|
|
103
|
+
type: string
|
|
104
|
+
optional: true
|
|
105
|
+
description: |
|
|
106
|
+
Stack to include remote checks for. Without it, only the local machine is
|
|
107
|
+
checked — no SSH connection is made.
|
|
108
|
+
failuresOnly:
|
|
109
|
+
type: boolean
|
|
110
|
+
optional: true
|
|
111
|
+
default: false
|
|
112
|
+
description: Return only failing and warning checks. Passing checks are counted, not listed.
|
|
113
|
+
output:
|
|
114
|
+
ok: { type: boolean }
|
|
115
|
+
counts: { type: object }
|
|
116
|
+
sections: { type: array }
|
|
117
|
+
|
|
63
118
|
- name: clawops_logs_tail
|
|
64
119
|
toolset: [cli, read]
|
|
65
120
|
description: |
|
|
@@ -399,28 +454,6 @@ tools:
|
|
|
399
454
|
valid: { type: boolean }
|
|
400
455
|
issues: { type: array, items: { type: string } }
|
|
401
456
|
|
|
402
|
-
- name: clawops_agents_restart
|
|
403
|
-
toolset: [cli]
|
|
404
|
-
description: |
|
|
405
|
-
Restart a specific OpenClaw agent on the remote gateway.
|
|
406
|
-
|
|
407
|
-
Use when: the user reports an agent is stuck, errored, or unresponsive;
|
|
408
|
-
or after a config change that the agent needs to pick up.
|
|
409
|
-
|
|
410
|
-
Do NOT use when: the issue is gateway-wide — use clawops_gateway_restart.
|
|
411
|
-
annotations:
|
|
412
|
-
title: Restart OpenClaw Agent
|
|
413
|
-
readOnlyHint: false
|
|
414
|
-
destructiveHint: true
|
|
415
|
-
idempotentHint: true
|
|
416
|
-
openWorldHint: true
|
|
417
|
-
input:
|
|
418
|
-
stackName: { type: string, optional: true }
|
|
419
|
-
agentId: { type: string }
|
|
420
|
-
output:
|
|
421
|
-
previousStatus: { type: string }
|
|
422
|
-
newStatus: { type: string }
|
|
423
|
-
|
|
424
457
|
- name: clawops_gateway_restart
|
|
425
458
|
toolset: [cli]
|
|
426
459
|
description: |
|
|
@@ -429,8 +462,8 @@ tools:
|
|
|
429
462
|
Use when: a gateway-wide config change requires reload, or the gateway is
|
|
430
463
|
reported as unresponsive.
|
|
431
464
|
|
|
432
|
-
|
|
433
|
-
|
|
465
|
+
Note: OpenClaw 2.0 removed per-agent restart; `gateway restart` is the only
|
|
466
|
+
restart it offers, and it affects every agent on the host. Brief downtime (~10s).
|
|
434
467
|
annotations:
|
|
435
468
|
title: Restart Gateway Daemon
|
|
436
469
|
readOnlyHint: false
|
package/spec/models.yaml
CHANGED
|
@@ -39,6 +39,9 @@ providers:
|
|
|
39
39
|
- { id: deepseek-reasoner, displayName: "DeepSeek Reasoner (R1)" }
|
|
40
40
|
defaultModel: deepseek-chat
|
|
41
41
|
configPath: models.providers.deepseek
|
|
42
|
+
plugin:
|
|
43
|
+
package: "@openclaw/deepseek-provider"
|
|
44
|
+
version: "2026.9.2"
|
|
42
45
|
|
|
43
46
|
- id: kimi
|
|
44
47
|
displayName: Kimi (Moonshot AI)
|
|
@@ -50,6 +53,9 @@ providers:
|
|
|
50
53
|
- { id: moonshot-v1-128k, displayName: "Moonshot v1 128K" }
|
|
51
54
|
defaultModel: moonshot-v1-8k
|
|
52
55
|
configPath: models.providers.kimi
|
|
56
|
+
plugin:
|
|
57
|
+
package: "@openclaw/kimi-provider"
|
|
58
|
+
version: "2026.9.2"
|
|
53
59
|
|
|
54
60
|
- id: bedrock
|
|
55
61
|
displayName: AWS Bedrock
|
|
@@ -80,6 +86,9 @@ providers:
|
|
|
80
86
|
- { id: deepseek-r1, displayName: "DeepSeek-R1", modelId: "deepseek.r1-v1:0", family: DeepSeek }
|
|
81
87
|
defaultModel: claude-sonnet-46
|
|
82
88
|
configPath: models.providers.amazon-bedrock
|
|
89
|
+
plugin:
|
|
90
|
+
package: "@openclaw/amazon-bedrock-provider"
|
|
91
|
+
version: "2026.9.2"
|
|
83
92
|
|
|
84
93
|
- id: ollama
|
|
85
94
|
displayName: Ollama (self-hosted)
|