@agentchatme/openclaw 0.6.4 → 0.6.6

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/CHANGELOG.md CHANGED
@@ -5,6 +5,104 @@ All notable changes to `@agentchatme/openclaw` are documented here.
5
5
  The format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/);
6
6
  this package adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## 0.6.6 — 2026-04-27
9
+
10
+ ### Fix: ClawHub static scanner blocked install on `child_process` import
11
+
12
+ After 0.6.5 unblocked the `channelConfigs` warning, the next install
13
+ attempt on the GCE VM was rejected by ClawHub's static-analysis gate:
14
+
15
+ ```
16
+ WARNING: Plugin "agentchat" contains dangerous code patterns:
17
+ Shell command execution detected (child_process)
18
+ (.../scripts/verify-source-installs.mjs:52)
19
+ Plugin "agentchat" installation blocked: dangerous code patterns
20
+ detected: Shell command execution detected (child_process)
21
+ ```
22
+
23
+ The flagged file is the regression test added in 0.6.3 — it spawned
24
+ `npm install --dry-run` via `child_process.spawnSync` to validate that
25
+ the source `package.json` could still be installed by raw npm. The
26
+ script was a `prepublishOnly` dev tool; it has no runtime role and
27
+ never executes on user machines. But ClawHub's source-linked verification
28
+ zips the entire `integrations/openclaw-channel/` tree (including
29
+ `scripts/`), and the scanner can't tell a build-time test apart from a
30
+ malicious shell-exec, so it blocks the whole install.
31
+
32
+ The actual regression we wanted to catch is a much narrower string-shape
33
+ problem: any `workspace:` / `file:` / `link:` / `catalog:` spec in the
34
+ runtime-dependency sections will crash raw npm with `EUNSUPPORTEDPROTOCOL`
35
+ on ClawHub source-linked builds. That's a pure JSON inspection — no
36
+ subprocess required.
37
+
38
+ **Changed:**
39
+
40
+ - `scripts/verify-source-installs.mjs` — rewritten as a pure JSON-spec
41
+ linter. Reads the source `package.json`, walks every spec in
42
+ `dependencies`, `peerDependencies`, and `optionalDependencies`, and
43
+ fails if any uses `workspace:` / `file:` / `link:` / `catalog:`. No
44
+ `child_process`, no `npm install`, no network. Same regression
45
+ coverage for the bug class that surfaced in 0.6.2 — and ClawHub's
46
+ scanner now passes the install through.
47
+ - `devDependencies` is intentionally excluded from the walk because
48
+ `npm install --omit=dev` skips it on user machines, so its specs are
49
+ irrelevant to the install-time blast radius.
50
+
51
+ **Why no test changes:**
52
+
53
+ The unit test wired into `prepublishOnly` (run via `pnpm run
54
+ test:install-source`) keeps its same exit-code contract: zero on clean,
55
+ non-zero with a descriptive error on offending specs. The pre-publish
56
+ gate that prevents a future commit from re-introducing `workspace:^` in
57
+ runtime deps is structurally identical to the 0.6.3 wiring.
58
+
59
+ ## 0.6.5 — 2026-04-27
60
+
61
+ ### Fix: silence `without channelConfigs metadata` warning at install time
62
+
63
+ OpenClaw 2026.4.24+ emits a manifest-registry warning for community
64
+ channel-plugins that declare `channels` without a per-channel
65
+ `channelConfigs[channelId]` block:
66
+
67
+ ```
68
+ Config warnings:
69
+ - plugins.entries.agentchat: plugin agentchat: channel plugin manifest
70
+ declares agentchat without channelConfigs metadata; add
71
+ openclaw.plugin.json#channelConfigs so config schema and setup surfaces
72
+ work before runtime loads
73
+ ```
74
+
75
+ The warning was non-blocking on 0.6.4 — the install completed and
76
+ registered the plugin — but it surfaced on every install and indicated
77
+ that OpenClaw could not render the config form before loading our JS
78
+ runtime, defeating the "introspect schema before runtime loads" guarantee
79
+ that pre-runtime UI flows depend on. First-party in-tree plugins
80
+ (matrix/telegram/discord) sidestep this via the `collectBundledChannelConfigs`
81
+ auto-hydration path that runs only for `origin: "bundled"`; community
82
+ plugins loaded with `origin: "global"` need to hand-author the field.
83
+
84
+ **Changed:**
85
+
86
+ - `scripts/emit-manifest-schema.mjs` — now emits
87
+ `openclaw.plugin.json#channelConfigs.agentchat` with `schema` and
88
+ `uiHints` populated from the same runtime Zod export that drives
89
+ `configSchema`. Both surfaces are derived from the single source of
90
+ truth, so structural drift between them is impossible. Top-level
91
+ `configSchema` and `uiHints` stay populated for backward compatibility
92
+ with older OpenClaw versions that haven't been taught to prefer
93
+ `channelConfigs` yet.
94
+ - `tests/plugin.test.ts#manifest sync` — added a regression test
95
+ asserting `manifest.channelConfigs.agentchat.schema` matches
96
+ `manifest.configSchema` and that the per-field `uiHints` come along
97
+ with their labels intact.
98
+
99
+ **Why no change to the runtime:**
100
+
101
+ `channelConfigs` is a manifest-registry concern, not a runtime concern.
102
+ The runtime continues to consume the Zod schema directly via
103
+ `buildChannelConfigSchema(agentchatChannelConfigSchema, { uiHints })`.
104
+ No code paths under `src/` are touched.
105
+
8
106
  ## 0.6.4 — 2026-04-27
9
107
 
10
108
  ### Fix: `openclaw plugins install` failed at the persist step with `must have required property 'apiKey'`
package/dist/index.cjs CHANGED
@@ -1804,7 +1804,7 @@ var CircuitBreaker = class {
1804
1804
  };
1805
1805
 
1806
1806
  // src/version.ts
1807
- var PACKAGE_VERSION = "0.6.4";
1807
+ var PACKAGE_VERSION = "0.6.6";
1808
1808
 
1809
1809
  // src/outbound.ts
1810
1810
  var DEFAULT_RETRY_POLICY = {