@jonathangu/openclawbrain 0.3.0 → 0.3.1

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 (56) hide show
  1. package/README.md +140 -290
  2. package/docs/END_STATE.md +106 -94
  3. package/docs/EVIDENCE.md +71 -23
  4. package/docs/RELEASE_CONTRACT.md +46 -32
  5. package/docs/agent-tools.md +65 -34
  6. package/docs/architecture.md +128 -142
  7. package/docs/configuration.md +62 -25
  8. package/docs/evidence/2026-03-16/1fc8ee6fd7892e3deb27d111434df948bca2a66b/channels-status.txt +20 -0
  9. package/docs/evidence/2026-03-16/1fc8ee6fd7892e3deb27d111434df948bca2a66b/config-snapshot.json +94 -0
  10. package/docs/evidence/2026-03-16/1fc8ee6fd7892e3deb27d111434df948bca2a66b/doctor.json +14 -0
  11. package/docs/evidence/2026-03-16/1fc8ee6fd7892e3deb27d111434df948bca2a66b/gateway-probe.txt +24 -0
  12. package/docs/evidence/2026-03-16/1fc8ee6fd7892e3deb27d111434df948bca2a66b/gateway-status.txt +31 -0
  13. package/docs/evidence/2026-03-16/1fc8ee6fd7892e3deb27d111434df948bca2a66b/init-capture.json +15 -0
  14. package/docs/evidence/2026-03-16/1fc8ee6fd7892e3deb27d111434df948bca2a66b/logs.txt +357 -0
  15. package/docs/evidence/2026-03-16/1fc8ee6fd7892e3deb27d111434df948bca2a66b/status-all.txt +61 -0
  16. package/docs/evidence/2026-03-16/1fc8ee6fd7892e3deb27d111434df948bca2a66b/status.json +275 -0
  17. package/docs/evidence/2026-03-16/1fc8ee6fd7892e3deb27d111434df948bca2a66b/summary.md +18 -0
  18. package/docs/evidence/2026-03-16/1fc8ee6fd7892e3deb27d111434df948bca2a66b/trace.json +222 -0
  19. package/docs/evidence/2026-03-16/1fc8ee6fd7892e3deb27d111434df948bca2a66b/validation-report.json +1515 -0
  20. package/docs/evidence/2026-03-16/1fc8ee6fd7892e3deb27d111434df948bca2a66b/workspace-inventory.json +4 -0
  21. package/docs/evidence/2026-03-16/4ccd71a22418b9170128b8d948f5a95801a10380/channels-status.txt +20 -0
  22. package/docs/evidence/2026-03-16/4ccd71a22418b9170128b8d948f5a95801a10380/config-snapshot.json +94 -0
  23. package/docs/evidence/2026-03-16/4ccd71a22418b9170128b8d948f5a95801a10380/doctor.json +14 -0
  24. package/docs/evidence/2026-03-16/4ccd71a22418b9170128b8d948f5a95801a10380/gateway-probe.txt +24 -0
  25. package/docs/evidence/2026-03-16/4ccd71a22418b9170128b8d948f5a95801a10380/gateway-status.txt +31 -0
  26. package/docs/evidence/2026-03-16/4ccd71a22418b9170128b8d948f5a95801a10380/init-capture.json +15 -0
  27. package/docs/evidence/2026-03-16/4ccd71a22418b9170128b8d948f5a95801a10380/logs.txt +362 -0
  28. package/docs/evidence/2026-03-16/4ccd71a22418b9170128b8d948f5a95801a10380/status-all.txt +61 -0
  29. package/docs/evidence/2026-03-16/4ccd71a22418b9170128b8d948f5a95801a10380/status.json +275 -0
  30. package/docs/evidence/2026-03-16/4ccd71a22418b9170128b8d948f5a95801a10380/summary.md +21 -0
  31. package/docs/evidence/2026-03-16/4ccd71a22418b9170128b8d948f5a95801a10380/trace.json +222 -0
  32. package/docs/evidence/2026-03-16/4ccd71a22418b9170128b8d948f5a95801a10380/validation-report.json +4400 -0
  33. package/docs/evidence/2026-03-16/4ccd71a22418b9170128b8d948f5a95801a10380/workspace-inventory.json +4 -0
  34. package/docs/evidence/2026-03-16/d93f09feea123a08d020fcad8a4523b6c1d26507/channels-status.txt +31 -0
  35. package/docs/evidence/2026-03-16/d93f09feea123a08d020fcad8a4523b6c1d26507/config-snapshot.json +94 -0
  36. package/docs/evidence/2026-03-16/d93f09feea123a08d020fcad8a4523b6c1d26507/doctor.json +14 -0
  37. package/docs/evidence/2026-03-16/d93f09feea123a08d020fcad8a4523b6c1d26507/gateway-probe.txt +34 -0
  38. package/docs/evidence/2026-03-16/d93f09feea123a08d020fcad8a4523b6c1d26507/gateway-status.txt +41 -0
  39. package/docs/evidence/2026-03-16/d93f09feea123a08d020fcad8a4523b6c1d26507/logs.txt +441 -0
  40. package/docs/evidence/2026-03-16/d93f09feea123a08d020fcad8a4523b6c1d26507/status-all.txt +60 -0
  41. package/docs/evidence/2026-03-16/d93f09feea123a08d020fcad8a4523b6c1d26507/status.json +276 -0
  42. package/docs/evidence/2026-03-16/d93f09feea123a08d020fcad8a4523b6c1d26507/summary.md +13 -0
  43. package/docs/evidence/2026-03-16/d93f09feea123a08d020fcad8a4523b6c1d26507/trace.json +4 -0
  44. package/docs/evidence/2026-03-16/d93f09feea123a08d020fcad8a4523b6c1d26507/validation-report.json +387 -0
  45. package/docs/tui.md +11 -4
  46. package/index.ts +194 -1
  47. package/package.json +1 -1
  48. package/src/brain-cli.ts +12 -1
  49. package/src/brain-harvest/scanner.ts +286 -16
  50. package/src/brain-harvest/self.ts +134 -6
  51. package/src/brain-runtime/evidence-detectors.ts +3 -1
  52. package/src/brain-runtime/harvester-extension.ts +3 -0
  53. package/src/brain-runtime/service.ts +2 -0
  54. package/src/brain-store/embedding.ts +29 -8
  55. package/src/brain-worker/worker.ts +40 -0
  56. package/src/engine.ts +1 -0
@@ -0,0 +1,441 @@
1
+ ## openclaw status --all
2
+
3
+ [plugins] [openclawbrain] Plugin loaded (enabled=true, db=/Users/cormorantai/.openclaw-ocbphase1/lcm.db, threshold=0.75)
4
+ OpenClaw status --all
5
+
6
+ Overview
7
+ ┌─────────────────┬────────────────────────────────────────────────────────────────────────────────────────────────────┐
8
+ │ Item │ Value │
9
+ ├─────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────┤
10
+ │ Version │ 2026.3.13 │
11
+ │ OS │ macos 26.3 (arm64) │
12
+ │ Node │ 22.22.0 │
13
+ │ Config │ ~/.openclaw-ocbphase1/openclaw.json │
14
+ │ Dashboard │ http://127.0.0.1:19031/ │
15
+ │ Tailscale │ off · Running · cormorantais-mac-mini.tail499c70.ts.net │
16
+ │ Channel │ dev (main) │
17
+ │ Git │ main · @ 66e02b29 │
18
+ │ Update │ git main · ↔ origin/main · behind 544 · npm latest 2026.3.13 · deps stale │
19
+ │ Gateway │ local · ws://127.0.0.1:19031 (local loopback) · unreachable (connect failed: connect ECONNREFUSED │
20
+ │ │ 127.0.0.1:19031) │
21
+ │ Security │ Run: openclaw security audit --deep │
22
+ │ Gateway self │ unknown │
23
+ │ Gateway service │ LaunchAgent not installed │
24
+ │ Node service │ LaunchAgent not installed │
25
+ │ Agents │ 1 total · 1 bootstrapping · 0 active · 1 sessions │
26
+ └─────────────────┴────────────────────────────────────────────────────────────────────────────────────────────────────┘
27
+
28
+ Channels
29
+ ┌──────────┬─────────┬────────┬────────────────────────────────────────────────────────────────────────────────────────┐
30
+ │ Channel │ Enabled │ State │ Detail │
31
+ ├──────────┼─────────┼────────┼────────────────────────────────────────────────────────────────────────────────────────┤
32
+ └──────────┴─────────┴────────┴────────────────────────────────────────────────────────────────────────────────────────┘
33
+
34
+ Agents
35
+ ┌────────────┬────────────────┬──────────┬──────────┬──────────────────────────────────────────────────────────────────┐
36
+ │ Agent │ Bootstrap file │ Sessions │ Active │ Store │
37
+ ├────────────┼────────────────┼──────────┼──────────┼──────────────────────────────────────────────────────────────────┤
38
+ │ main │ PRESENT │ 1 │ 4h ago │ ~/.openclaw-ocbphase1/agents/main/sessions/sessions.json │
39
+ └────────────┴────────────────┴──────────┴──────────┴──────────────────────────────────────────────────────────────────┘
40
+
41
+ Diagnosis (read-only)
42
+
43
+ Gateway connection details:
44
+ Gateway target: ws://127.0.0.1:19031
45
+ Source: local loopback
46
+ Config: /Users/cormorantai/.openclaw-ocbphase1/openclaw.json
47
+ Bind: loopback
48
+
49
+ ✓ Config: /Users/cormorantai/.openclaw-ocbphase1/openclaw.json
50
+ ✓ Restart sentinel: none
51
+ ✓ Port 19031
52
+ ✓ Tailscale: off · Running · cormorantais-mac-mini.tail499c70.ts.net
53
+ ips: 100.73.247.26, fd7a:115c:a1e0::e932:f71a
54
+ ✓ Skills: 9 eligible · 0 missing · /Users/cormorantai/.openclaw/workspace-ocbphase1
55
+ ! Channel issues skipped (gateway unreachable)
56
+
57
+ Gateway health:
58
+ connect failed: connect ECONNREFUSED 127.0.0.1:19031
59
+
60
+ Pasteable debug report. Auth tokens redacted.
61
+ Troubleshooting: https://docs.openclaw.ai/troubleshooting
62
+
63
+
64
+
65
+ [stderr]
66
+ Config warnings:\n- plugins.entries.ollama: plugin ollama: plugin id mismatch (manifest uses "ollama", entry hints "ollama-provider")
67
+ - plugins.entries.sglang: plugin sglang: plugin id mismatch (manifest uses "sglang", entry hints "sglang-provider")
68
+ - plugins.entries.vllm: plugin vllm: plugin id mismatch (manifest uses "vllm", entry hints "vllm-provider")
69
+ [plugins] plugins.allow is empty; discovered non-bundled plugins may auto-load: openclawbrain (/Users/cormorantai/openclawbrain/index.ts). Set plugins.allow to explicit trusted ids.
70
+ [plugins] [brain] Embedding model is unset; learned retrieval is disabled until init/configuration is complete
71
+ Config warnings:\n- plugins.entries.ollama: plugin ollama: plugin id mismatch (manifest uses "ollama", entry hints "ollama-provider")
72
+ - plugins.entries.sglang: plugin sglang: plugin id mismatch (manifest uses "sglang", entry hints "sglang-provider")
73
+ - plugins.entries.vllm: plugin vllm: plugin id mismatch (manifest uses "vllm", entry hints "vllm-provider")
74
+
75
+
76
+
77
+ ## openclaw gateway probe
78
+
79
+
80
+ ◇ Config warnings ────────────────────────────────────────────────────────╮
81
+ │ │
82
+ │ - plugins.entries.ollama: plugin ollama: plugin id mismatch (manifest │
83
+ │ uses "ollama", entry hints "ollama-provider") │
84
+ │ - plugins.entries.sglang: plugin sglang: plugin id mismatch (manifest │
85
+ │ uses "sglang", entry hints "sglang-provider") │
86
+ │ - plugins.entries.vllm: plugin vllm: plugin id mismatch (manifest uses │
87
+ │ "vllm", entry hints "vllm-provider") │
88
+ │ │
89
+ ├──────────────────────────────────────────────────────────────────────────╯
90
+
91
+ ◇ Doctor changes ──────────────────────────────╮
92
+ │ │
93
+ │ Telegram configured, enabled automatically. │
94
+ │ │
95
+ ├───────────────────────────────────────────────╯
96
+
97
+ ◇ Doctor ──────────────────────────────────────────────╮
98
+ │ │
99
+ │ Run "openclaw doctor --fix" to apply these changes. │
100
+ │ │
101
+ ├───────────────────────────────────────────────────────╯
102
+ Gateway Status
103
+ Reachable: no
104
+ Probe budget: 3000ms
105
+
106
+ Discovery (this machine)
107
+ Found 4 gateway(s) via Bonjour (local.)
108
+
109
+ Targets
110
+ Local loopback ws://127.0.0.1:19031
111
+ Connect: failed - connect failed: connect ECONNREFUSED 127.0.0.1:19031
112
+
113
+
114
+
115
+ [stderr]
116
+ Config warnings:\n- plugins.entries.ollama: plugin ollama: plugin id mismatch (manifest uses "ollama", entry hints "ollama-provider")
117
+ - plugins.entries.sglang: plugin sglang: plugin id mismatch (manifest uses "sglang", entry hints "sglang-provider")
118
+ - plugins.entries.vllm: plugin vllm: plugin id mismatch (manifest uses "vllm", entry hints "vllm-provider")
119
+ Config warnings:\n- plugins.entries.ollama: plugin ollama: plugin id mismatch (manifest uses "ollama", entry hints "ollama-provider")
120
+ - plugins.entries.sglang: plugin sglang: plugin id mismatch (manifest uses "sglang", entry hints "sglang-provider")
121
+ - plugins.entries.vllm: plugin vllm: plugin id mismatch (manifest uses "vllm", entry hints "vllm-provider")
122
+
123
+
124
+
125
+ ## openclaw gateway status
126
+
127
+
128
+ ◇ Config warnings ────────────────────────────────────────────────────────╮
129
+ │ │
130
+ │ - plugins.entries.ollama: plugin ollama: plugin id mismatch (manifest │
131
+ │ uses "ollama", entry hints "ollama-provider") │
132
+ │ - plugins.entries.sglang: plugin sglang: plugin id mismatch (manifest │
133
+ │ uses "sglang", entry hints "sglang-provider") │
134
+ │ - plugins.entries.vllm: plugin vllm: plugin id mismatch (manifest uses │
135
+ │ "vllm", entry hints "vllm-provider") │
136
+ │ │
137
+ ├──────────────────────────────────────────────────────────────────────────╯
138
+
139
+ ◇ Doctor changes ──────────────────────────────╮
140
+ │ │
141
+ │ Telegram configured, enabled automatically. │
142
+ │ │
143
+ ├───────────────────────────────────────────────╯
144
+
145
+ ◇ Doctor ──────────────────────────────────────────────╮
146
+ │ │
147
+ │ Run "openclaw doctor --fix" to apply these changes. │
148
+ │ │
149
+ ├───────────────────────────────────────────────────────╯
150
+ Service: LaunchAgent (not loaded)
151
+ File logs: /tmp/openclaw/openclaw-2026-03-16.log
152
+
153
+ Config (cli): ~/.openclaw-ocbphase1/openclaw.json
154
+ Config (service): ~/.openclaw-ocbphase1/openclaw.json
155
+
156
+ Gateway: bind=loopback (127.0.0.1), port=19031 (env/config)
157
+ Probe target: ws://127.0.0.1:19031
158
+ Dashboard: http://127.0.0.1:19031/
159
+ Probe note: Loopback-only gateway; only local clients can connect.
160
+
161
+ Runtime: unknown (Bad request.
162
+ Could not find service "ai.openclaw.gateway" in domain for user gui: 501)
163
+
164
+
165
+
166
+ Troubles: run openclaw status
167
+ Troubleshooting: https://docs.openclaw.ai/troubleshooting
168
+
169
+
170
+ [stderr]
171
+ Config warnings:\n- plugins.entries.ollama: plugin ollama: plugin id mismatch (manifest uses "ollama", entry hints "ollama-provider")
172
+ - plugins.entries.sglang: plugin sglang: plugin id mismatch (manifest uses "sglang", entry hints "sglang-provider")
173
+ - plugins.entries.vllm: plugin vllm: plugin id mismatch (manifest uses "vllm", entry hints "vllm-provider")
174
+ Config warnings:\n- plugins.entries.ollama: plugin ollama: plugin id mismatch (manifest uses "ollama", entry hints "ollama-provider")
175
+ - plugins.entries.sglang: plugin sglang: plugin id mismatch (manifest uses "sglang", entry hints "sglang-provider")
176
+ - plugins.entries.vllm: plugin vllm: plugin id mismatch (manifest uses "vllm", entry hints "vllm-provider")
177
+ Config warnings:\n- plugins.entries.ollama: plugin ollama: plugin id mismatch (manifest uses "ollama", entry hints "ollama-provider")
178
+ - plugins.entries.sglang: plugin sglang: plugin id mismatch (manifest uses "sglang", entry hints "sglang-provider")
179
+ - plugins.entries.vllm: plugin vllm: plugin id mismatch (manifest uses "vllm", entry hints "vllm-provider")
180
+ Config warnings:\n- plugins.entries.ollama: plugin ollama: plugin id mismatch (manifest uses "ollama", entry hints "ollama-provider")
181
+ - plugins.entries.sglang: plugin sglang: plugin id mismatch (manifest uses "sglang", entry hints "sglang-provider")
182
+ - plugins.entries.vllm: plugin vllm: plugin id mismatch (manifest uses "vllm", entry hints "vllm-provider")
183
+ Service config looks out of date or non-standard.
184
+ Service config issue: Gateway service PATH is not set; the daemon should use a minimal PATH.
185
+ Recommendation: run "openclaw doctor" (or "openclaw doctor --repair").
186
+ RPC probe: failed
187
+ RPC target: ws://127.0.0.1:19031
188
+ gateway url override requires explicit credentials
189
+ Fix: pass --token or --password (or gatewayToken in tools).
190
+ Config: /Users/cormorantai/.openclaw-ocbphase1/openclaw.json
191
+ Service unit not found.
192
+ Service not installed. Run: openclaw gateway install
193
+ File logs: /tmp/openclaw/openclaw-2026-03-16.log
194
+ Other gateway-like services detected (best effort):
195
+ - com.openclawbrain.daemon.activation.0ec88212fa7d (user, plist: /Users/cormorantai/Library/LaunchAgents/com.openclawbrain.daemon.activation.0ec88212fa7d.plist)
196
+ - com.openclawbrain.daemon.activation.546e84bf06ac (user, plist: /Users/cormorantai/Library/LaunchAgents/com.openclawbrain.daemon.activation.546e84bf06ac.plist)
197
+ - com.openclawbrain.daemon.activation.b3eeb450ca08 (user, plist: /Users/cormorantai/Library/LaunchAgents/com.openclawbrain.daemon.activation.b3eeb450ca08.plist)
198
+ Cleanup hint: launchctl bootout gui/$UID/ai.openclaw.gateway
199
+ Cleanup hint: rm ~/Library/LaunchAgents/ai.openclaw.gateway.plist
200
+ Recommendation: run a single gateway per machine for most setups. One gateway supports multiple agents (see docs: /gateway#multiple-gateways-same-host).
201
+ If you need multiple gateways (e.g., a rescue bot on the same host), isolate ports + config/state (see docs: /gateway#multiple-gateways-same-host).
202
+
203
+
204
+
205
+ ## openclaw doctor --non-interactive
206
+
207
+ ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
208
+ ██░▄▄▄░██░▄▄░██░▄▄▄██░▀██░██░▄▄▀██░████░▄▄▀██░███░██
209
+ ██░███░██░▀▀░██░▄▄▄██░█░█░██░█████░████░▀▀░██░█░█░██
210
+ ██░▀▀▀░██░█████░▀▀▀██░██▄░██░▀▀▄██░▀▀░█░██░██▄▀▄▀▄██
211
+ ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
212
+ 🦞 OPENCLAW 🦞
213
+
214
+ ┌ OpenClaw doctor
215
+
216
+ ◇ Install ─────────────────────────────────────────────────────────╮
217
+ │ │
218
+ │ - package-lock.json present in a pnpm workspace. If you ran npm │
219
+ │ install, remove it and reinstall with pnpm. │
220
+ │ │
221
+ ├───────────────────────────────────────────────────────────────────╯
222
+
223
+ ◇ Config warnings ────────────────────────────────────────────────────────╮
224
+ │ │
225
+ │ - plugins.entries.ollama: plugin ollama: plugin id mismatch (manifest │
226
+ │ uses "ollama", entry hints "ollama-provider") │
227
+ │ - plugins.entries.sglang: plugin sglang: plugin id mismatch (manifest │
228
+ │ uses "sglang", entry hints "sglang-provider") │
229
+ │ - plugins.entries.vllm: plugin vllm: plugin id mismatch (manifest uses │
230
+ │ "vllm", entry hints "vllm-provider") │
231
+ │ │
232
+ ├──────────────────────────────────────────────────────────────────────────╯
233
+
234
+ ◇ Doctor changes ──────────────────────────────╮
235
+ │ │
236
+ │ Telegram configured, enabled automatically. │
237
+ │ │
238
+ ├───────────────────────────────────────────────╯
239
+
240
+ ◇ Doctor ──────────────────────────────────────────────╮
241
+ │ │
242
+ │ Run "openclaw doctor --fix" to apply these changes. │
243
+ │ │
244
+ ├───────────────────────────────────────────────────────╯
245
+
246
+ ◇ Gateway auth ──────────────────────────────────────────────────╮
247
+ │ │
248
+ │ Gateway auth is off or missing a token. Token auth is now the │
249
+ │ recommended default (including loopback). │
250
+ │ │
251
+ ├─────────────────────────────────────────────────────────────────╯
252
+
253
+ ◇ State integrity ────────────────────────────────────────────────────────╮
254
+ │ │
255
+ │ - OAuth dir not present (~/.openclaw-ocbphase1/credentials). Skipping │
256
+ │ create because no WhatsApp/pairing channel config is active. │
257
+ │ - Multiple state directories detected. This can split session history. │
258
+ │ - ~/.openclaw │
259
+ │ Active state dir: ~/.openclaw-ocbphase1 │
260
+ │ │
261
+ ├──────────────────────────────────────────────────────────────────────────╯
262
+
263
+ ◇ Other gateway-like services detected ───────────────────────────────────────╮
264
+ │ │
265
+ │ - com.openclawbrain.daemon.activation.0ec88212fa7d (user, plist: │
266
+ │ /Users/cormorantai/Library/LaunchAgents/com.openclawbrain.daemon.activat │
267
+ │ ion.0ec88212fa7d.plist) │
268
+ │ - com.openclawbrain.daemon.activation.546e84bf06ac (user, plist: │
269
+ │ /Users/cormorantai/Library/LaunchAgents/com.openclawbrain.daemon.activat │
270
+ │ ion.546e84bf06ac.plist) │
271
+ │ - com.openclawbrain.daemon.activation.b3eeb450ca08 (user, plist: │
272
+ │ /Users/cormorantai/Library/LaunchAgents/com.openclawbrain.daemon.activat │
273
+ │ ion.b3eeb450ca08.plist) │
274
+ │ │
275
+ ├──────────────────────────────────────────────────────────────────────────────╯
276
+
277
+ ◇ Cleanup hints ─────────────────────────────────────────╮
278
+ │ │
279
+ │ - launchctl bootout gui/$UID/ai.openclaw.gateway │
280
+ │ - rm ~/Library/LaunchAgents/ai.openclaw.gateway.plist │
281
+ │ │
282
+ ├─────────────────────────────────────────────────────────╯
283
+
284
+ ◇ Gateway recommendation ───────────────────────────────────────────────╮
285
+ │ │
286
+ │ Recommendation: run a single gateway per machine for most setups. │
287
+ │ One gateway supports multiple agents. │
288
+ │ If you need multiple gateways (e.g., a rescue bot on the same host), │
289
+ │ isolate ports + config/state (see docs: │
290
+ │ /gateway#multiple-gateways-same-host). │
291
+ │ │
292
+ ├────────────────────────────────────────────────────────────────────────╯
293
+
294
+ ◇ Security ─────────────────────────────────╮
295
+ │ │
296
+ │ - No channel security warnings detected. │
297
+ │ - Run: openclaw security audit --deep │
298
+ │ │
299
+ ├────────────────────────────────────────────╯
300
+
301
+ ◇ Skills status ────────────╮
302
+ │ │
303
+ │ Eligible: 9 │
304
+ │ Missing requirements: 43 │
305
+ │ Blocked by allowlist: 0 │
306
+ │ │
307
+ ├────────────────────────────╯
308
+
309
+ ◇ Plugins ──────╮
310
+ │ │
311
+ │ Loaded: 5 │
312
+ │ Disabled: 37 │
313
+ │ Errors: 0 │
314
+ │ │
315
+ ├────────────────╯
316
+
317
+ ◇ Plugin diagnostics ─────────────────────────────────────────────────────╮
318
+ │ │
319
+ │ - WARN ollama: plugin id mismatch (manifest uses "ollama", entry hints │
320
+ │ "ollama-provider") │
321
+ │ (/Users/cormorantai/opencormorant/extensions/ollama/index.ts) │
322
+ │ - WARN sglang: plugin id mismatch (manifest uses "sglang", entry hints │
323
+ │ "sglang-provider") │
324
+ │ (/Users/cormorantai/opencormorant/extensions/sglang/index.ts) │
325
+ │ - WARN vllm: plugin id mismatch (manifest uses "vllm", entry hints │
326
+ │ "vllm-provider") │
327
+ │ (/Users/cormorantai/opencormorant/extensions/vllm/index.ts) │
328
+ │ │
329
+ ├──────────────────────────────────────────────────────────────────────────╯
330
+
331
+ ◇ Gateway ──────────────╮
332
+ │ │
333
+ │ Gateway not running. │
334
+ │ │
335
+ ├────────────────────────╯
336
+
337
+ ◇ Gateway connection ───────────────────────────────────────────╮
338
+ │ │
339
+ │ Gateway target: ws://127.0.0.1:19031 │
340
+ │ Source: local loopback │
341
+ │ Config: /Users/cormorantai/.openclaw-ocbphase1/openclaw.json │
342
+ │ Bind: loopback │
343
+ │ │
344
+ ├────────────────────────────────────────────────────────────────╯
345
+
346
+ ◇ Gateway ────────────────────────╮
347
+ │ │
348
+ │ Gateway service not installed. │
349
+ │ │
350
+ ├──────────────────────────────────╯
351
+ Run "openclaw doctor --fix" to apply changes.
352
+
353
+ └ Doctor complete.
354
+
355
+
356
+
357
+ [stderr]
358
+ Config warnings:\n- plugins.entries.ollama: plugin ollama: plugin id mismatch (manifest uses "ollama", entry hints "ollama-provider")
359
+ - plugins.entries.sglang: plugin sglang: plugin id mismatch (manifest uses "sglang", entry hints "sglang-provider")
360
+ - plugins.entries.vllm: plugin vllm: plugin id mismatch (manifest uses "vllm", entry hints "vllm-provider")
361
+
362
+
363
+
364
+ ## openclaw channels status --probe
365
+
366
+
367
+ ◇ Config warnings ────────────────────────────────────────────────────────╮
368
+ │ │
369
+ │ - plugins.entries.ollama: plugin ollama: plugin id mismatch (manifest │
370
+ │ uses "ollama", entry hints "ollama-provider") │
371
+ │ - plugins.entries.sglang: plugin sglang: plugin id mismatch (manifest │
372
+ │ uses "sglang", entry hints "sglang-provider") │
373
+ │ - plugins.entries.vllm: plugin vllm: plugin id mismatch (manifest uses │
374
+ │ "vllm", entry hints "vllm-provider") │
375
+ │ │
376
+ ├──────────────────────────────────────────────────────────────────────────╯
377
+
378
+ ◇ Doctor changes ──────────────────────────────╮
379
+ │ │
380
+ │ Telegram configured, enabled automatically. │
381
+ │ │
382
+ ├───────────────────────────────────────────────╯
383
+
384
+ ◇ Doctor ──────────────────────────────────────────────╮
385
+ │ │
386
+ │ Run "openclaw doctor --fix" to apply these changes. │
387
+ │ │
388
+ ├───────────────────────────────────────────────────────╯
389
+ [plugins] [openclawbrain] Plugin loaded (enabled=true, db=/Users/cormorantai/.openclaw-ocbphase1/lcm.db, threshold=0.75)
390
+ Checking channel status (probe)…
391
+ Gateway not reachable; showing config-only status.
392
+ Config: /Users/cormorantai/.openclaw-ocbphase1/openclaw.json
393
+ Mode: local
394
+
395
+
396
+ Tip: https://docs.openclaw.ai/cli#status adds gateway health probes to status output (requires a reachable gateway).
397
+
398
+
399
+ [stderr]
400
+ Config warnings:\n- plugins.entries.ollama: plugin ollama: plugin id mismatch (manifest uses "ollama", entry hints "ollama-provider")
401
+ - plugins.entries.sglang: plugin sglang: plugin id mismatch (manifest uses "sglang", entry hints "sglang-provider")
402
+ - plugins.entries.vllm: plugin vllm: plugin id mismatch (manifest uses "vllm", entry hints "vllm-provider")
403
+ Config warnings:\n- plugins.entries.ollama: plugin ollama: plugin id mismatch (manifest uses "ollama", entry hints "ollama-provider")
404
+ - plugins.entries.sglang: plugin sglang: plugin id mismatch (manifest uses "sglang", entry hints "sglang-provider")
405
+ - plugins.entries.vllm: plugin vllm: plugin id mismatch (manifest uses "vllm", entry hints "vllm-provider")
406
+ [plugins] plugins.allow is empty; discovered non-bundled plugins may auto-load: openclawbrain (/Users/cormorantai/openclawbrain/index.ts). Set plugins.allow to explicit trusted ids.
407
+ [plugins] [brain] Embedding model is unset; learned retrieval is disabled until init/configuration is complete
408
+ Config warnings:\n- plugins.entries.ollama: plugin ollama: plugin id mismatch (manifest uses "ollama", entry hints "ollama-provider")
409
+ - plugins.entries.sglang: plugin sglang: plugin id mismatch (manifest uses "sglang", entry hints "sglang-provider")
410
+ - plugins.entries.vllm: plugin vllm: plugin id mismatch (manifest uses "vllm", entry hints "vllm-provider")
411
+ Gateway not reachable: Error: gateway closed (1006 abnormal closure (no close frame)): no close reason
412
+ Gateway target: ws://127.0.0.1:19031
413
+ Source: local loopback
414
+ Config: /Users/cormorantai/.openclaw-ocbphase1/openclaw.json
415
+ Bind: loopback
416
+
417
+
418
+
419
+ ## file:/Users/cormorantai/.openclaw-ocbphase1/logs/config-audit.jsonl
420
+
421
+ {"ts":"2026-03-16T04:04:15.354Z","source":"config-io","event":"config.write","configPath":"/Users/cormorantai/.openclaw-ocbphase1/openclaw.json","pid":68382,"ppid":68381,"cwd":"/Users/cormorantai/openclawbrain","argv":["/opt/homebrew/Cellar/node@22/22.22.0/bin/node","/opt/homebrew/bin/openclaw","plugins","install","--link","/Users/cormorantai/openclawbrain"],"execArgv":["--disable-warning=ExperimentalWarning"],"watchMode":false,"watchSession":null,"watchCommand":null,"existsBefore":false,"previousHash":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","nextHash":"91f275980114a67741b7f7e76c22409dada3581a5c8b0d901465ee80897e5d3e","previousBytes":null,"nextBytes":693,"changedPathCount":null,"hasMetaBefore":false,"hasMetaAfter":true,"gatewayModeBefore":null,"gatewayModeAfter":null,"suspicious":[],"result":"rename"}
422
+ {"ts":"2026-03-16T04:05:42.764Z","source":"config-io","event":"config.write","configPath":"/Users/cormorantai/.openclaw-ocbphase1/openclaw.json","pid":68908,"ppid":68907,"cwd":"/Users/cormorantai/openclawbrain","argv":["/opt/homebrew/Cellar/node@22/22.22.0/bin/node","/opt/homebrew/bin/openclaw","plugins","install","--link","/Users/cormorantai/openclawbrain"],"execArgv":["--disable-warning=ExperimentalWarning"],"watchMode":false,"watchSession":null,"watchCommand":null,"existsBefore":true,"previousHash":"21f78c45f162e963520a409452bec17e90ecf01601f27cee9a9c80ac60fbf559","nextHash":"755ca625612a011a5343ba5340d2d861956ed45ab6405c64bb7ce8d0ff7bbb0b","previousBytes":983,"nextBytes":1042,"changedPathCount":null,"hasMetaBefore":true,"hasMetaAfter":true,"gatewayModeBefore":"local","gatewayModeAfter":"local","suspicious":[],"result":"rename"}
423
+ {"ts":"2026-03-16T04:24:19.356Z","source":"config-io","event":"config.write","configPath":"/Users/cormorantai/.openclaw-ocbphase1/openclaw.json","pid":75699,"ppid":75698,"cwd":"/Users/cormorantai/openclawbrain","argv":["/opt/homebrew/Cellar/node@22/22.22.0/bin/node","/opt/homebrew/bin/openclaw","plugins","install","--link","/Users/cormorantai/openclawbrain"],"execArgv":["--disable-warning=ExperimentalWarning"],"watchMode":false,"watchSession":null,"watchCommand":null,"existsBefore":true,"previousHash":"755ca625612a011a5343ba5340d2d861956ed45ab6405c64bb7ce8d0ff7bbb0b","nextHash":"b84565773eb916660b513c133b04e179654e5db8162c8005ae2033564a9983f1","previousBytes":1042,"nextBytes":1042,"changedPathCount":null,"hasMetaBefore":true,"hasMetaAfter":true,"gatewayModeBefore":"local","gatewayModeAfter":"local","suspicious":[],"result":"rename"}
424
+ {"ts":"2026-03-16T08:50:19.843Z","source":"config-io","event":"config.write","configPath":"/Users/cormorantai/.openclaw-ocbphase1/openclaw.json","pid":46503,"ppid":46502,"cwd":"/Users/cormorantai/openclawbrain","argv":["/opt/homebrew/Cellar/node@22/22.22.0/bin/node","/opt/homebrew/bin/openclaw","plugins","install","--link","/Users/cormorantai/openclawbrain"],"execArgv":["--disable-warning=ExperimentalWarning"],"watchMode":false,"watchSession":null,"watchCommand":null,"existsBefore":true,"previousHash":"5f67da851cc11886db6edfad4dea3a7e98328ded0336b228995b7c53d6275f69","nextHash":"8e2fea8982b2c60a699277c064b8905e69b25d649a8b46d427f5e8b710edf837","previousBytes":1737,"nextBytes":1737,"changedPathCount":null,"hasMetaBefore":true,"hasMetaAfter":true,"gatewayModeBefore":"local","gatewayModeAfter":"local","suspicious":[],"result":"rename"}
425
+ {"ts":"2026-03-16T08:55:33.959Z","source":"config-io","event":"config.write","configPath":"/Users/cormorantai/.openclaw-ocbphase1/openclaw.json","pid":48474,"ppid":48473,"cwd":"/Users/cormorantai/openclawbrain","argv":["/opt/homebrew/Cellar/node@22/22.22.0/bin/node","/opt/homebrew/bin/openclaw","plugins","install","--link","/Users/cormorantai/openclawbrain"],"execArgv":["--disable-warning=ExperimentalWarning"],"watchMode":false,"watchSession":null,"watchCommand":null,"existsBefore":true,"previousHash":"4e6005203d622e121c9f603884affb7d26f21e67309e691df6e12f11209ecbf9","nextHash":"5fc30857e6d339aa3a1ea454559ec50427df93660c9a415546e96ae1f0175c0c","previousBytes":1693,"nextBytes":1693,"changedPathCount":null,"hasMetaBefore":true,"hasMetaAfter":true,"gatewayModeBefore":"local","gatewayModeAfter":"local","suspicious":[],"result":"rename"}
426
+
427
+
428
+
429
+ ## file:/Users/cormorantai/.openclaw-ocbphase1/validation-records/validation-assemble.jsonl
430
+
431
+ {"at":1773635202790,"sessionId":"475abd74-ed4f-4334-a896-8ffd7d81eec7","conversationId":1,"queryText":"open PLAYBOOK.md","mode":"skip_short_static_lookup","footer":"[brain] bypassed: short static lookup.","traceId":null,"episodeId":null,"tokenBudget":262144}
432
+ {"at":1773635212771,"sessionId":"475abd74-ed4f-4334-a896-8ffd7d81eec7","conversationId":1,"queryText":"How do I open a pull request again?","mode":"use_brain","footer":"Brain · 1 seeds · start bn_40502fac-df0 · 4 hops · 4 fired · 0 veto · 391 chars","traceId":"bt_c79a93d6","episodeId":"be_5a29c9cf-99b","tokenBudget":262144}
433
+
434
+
435
+
436
+ ## file:/Users/cormorantai/.openclaw-ocbphase1/validation-records/validation-assemble.jsonl
437
+
438
+ {"at":1773635202790,"sessionId":"475abd74-ed4f-4334-a896-8ffd7d81eec7","conversationId":1,"queryText":"open PLAYBOOK.md","mode":"skip_short_static_lookup","footer":"[brain] bypassed: short static lookup.","traceId":null,"episodeId":null,"tokenBudget":262144}
439
+ {"at":1773635212771,"sessionId":"475abd74-ed4f-4334-a896-8ffd7d81eec7","conversationId":1,"queryText":"How do I open a pull request again?","mode":"use_brain","footer":"Brain · 1 seeds · start bn_40502fac-df0 · 4 hops · 4 fired · 0 veto · 391 chars","traceId":"bt_c79a93d6","episodeId":"be_5a29c9cf-99b","tokenBudget":262144}
440
+
441
+
@@ -0,0 +1,60 @@
1
+ [plugins] [openclawbrain] Plugin loaded (enabled=true, db=/Users/cormorantai/.openclaw-ocbphase1/lcm.db, threshold=0.75)
2
+ OpenClaw status --all
3
+
4
+ Overview
5
+ ┌─────────────────┬────────────────────────────────────────────────────────────────────────────────────────────────────┐
6
+ │ Item │ Value │
7
+ ├─────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────┤
8
+ │ Version │ 2026.3.13 │
9
+ │ OS │ macos 26.3 (arm64) │
10
+ │ Node │ 22.22.0 │
11
+ │ Config │ ~/.openclaw-ocbphase1/openclaw.json │
12
+ │ Dashboard │ http://127.0.0.1:19031/ │
13
+ │ Tailscale │ off · Running · cormorantais-mac-mini.tail499c70.ts.net │
14
+ │ Channel │ dev (main) │
15
+ │ Git │ main · @ 66e02b29 │
16
+ │ Update │ git main · ↔ origin/main · behind 544 · npm latest 2026.3.13 · deps stale │
17
+ │ Gateway │ local · ws://127.0.0.1:19031 (local loopback) · unreachable (connect failed: connect ECONNREFUSED │
18
+ │ │ 127.0.0.1:19031) │
19
+ │ Security │ Run: openclaw security audit --deep │
20
+ │ Gateway self │ unknown │
21
+ │ Gateway service │ LaunchAgent not installed │
22
+ │ Node service │ LaunchAgent not installed │
23
+ │ Agents │ 1 total · 1 bootstrapping · 0 active · 1 sessions │
24
+ └─────────────────┴────────────────────────────────────────────────────────────────────────────────────────────────────┘
25
+
26
+ Channels
27
+ ┌──────────┬─────────┬────────┬────────────────────────────────────────────────────────────────────────────────────────┐
28
+ │ Channel │ Enabled │ State │ Detail │
29
+ ├──────────┼─────────┼────────┼────────────────────────────────────────────────────────────────────────────────────────┤
30
+ └──────────┴─────────┴────────┴────────────────────────────────────────────────────────────────────────────────────────┘
31
+
32
+ Agents
33
+ ┌────────────┬────────────────┬──────────┬──────────┬──────────────────────────────────────────────────────────────────┐
34
+ │ Agent │ Bootstrap file │ Sessions │ Active │ Store │
35
+ ├────────────┼────────────────┼──────────┼──────────┼──────────────────────────────────────────────────────────────────┤
36
+ │ main │ PRESENT │ 1 │ 4h ago │ ~/.openclaw-ocbphase1/agents/main/sessions/sessions.json │
37
+ └────────────┴────────────────┴──────────┴──────────┴──────────────────────────────────────────────────────────────────┘
38
+
39
+ Diagnosis (read-only)
40
+
41
+ Gateway connection details:
42
+ Gateway target: ws://127.0.0.1:19031
43
+ Source: local loopback
44
+ Config: /Users/cormorantai/.openclaw-ocbphase1/openclaw.json
45
+ Bind: loopback
46
+
47
+ ✓ Config: /Users/cormorantai/.openclaw-ocbphase1/openclaw.json
48
+ ✓ Restart sentinel: none
49
+ ✓ Port 19031
50
+ ✓ Tailscale: off · Running · cormorantais-mac-mini.tail499c70.ts.net
51
+ ips: 100.73.247.26, fd7a:115c:a1e0::e932:f71a
52
+ ✓ Skills: 9 eligible · 0 missing · /Users/cormorantai/.openclaw/workspace-ocbphase1
53
+ ! Channel issues skipped (gateway unreachable)
54
+
55
+ Gateway health:
56
+ connect failed: connect ECONNREFUSED 127.0.0.1:19031
57
+
58
+ Pasteable debug report. Auth tokens redacted.
59
+ Troubleshooting: https://docs.openclaw.ai/troubleshooting
60
+