@jonathangu/openclawbrain 0.3.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 (113) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +412 -0
  3. package/bin/openclawbrain.js +15 -0
  4. package/docs/END_STATE.md +244 -0
  5. package/docs/EVIDENCE.md +128 -0
  6. package/docs/RELEASE_CONTRACT.md +91 -0
  7. package/docs/agent-tools.md +106 -0
  8. package/docs/architecture.md +224 -0
  9. package/docs/configuration.md +178 -0
  10. package/docs/evidence/2026-03-16/3188b50c4ed30f07dea111e35ce52aabefaced63/brain-teach-session-bound/status.json +87 -0
  11. package/docs/evidence/2026-03-16/3188b50c4ed30f07dea111e35ce52aabefaced63/brain-teach-session-bound/summary.md +16 -0
  12. package/docs/evidence/2026-03-16/3188b50c4ed30f07dea111e35ce52aabefaced63/brain-teach-session-bound/trace.json +273 -0
  13. package/docs/evidence/2026-03-16/3188b50c4ed30f07dea111e35ce52aabefaced63/brain-teach-session-bound/validation-report.json +652 -0
  14. package/docs/evidence/2026-03-16/4941429588810da5d6f7ef1509f229f83fa08031/channels-status.txt +31 -0
  15. package/docs/evidence/2026-03-16/4941429588810da5d6f7ef1509f229f83fa08031/config-snapshot.json +66 -0
  16. package/docs/evidence/2026-03-16/4941429588810da5d6f7ef1509f229f83fa08031/doctor.json +14 -0
  17. package/docs/evidence/2026-03-16/4941429588810da5d6f7ef1509f229f83fa08031/gateway-probe.txt +34 -0
  18. package/docs/evidence/2026-03-16/4941429588810da5d6f7ef1509f229f83fa08031/gateway-status.txt +41 -0
  19. package/docs/evidence/2026-03-16/4941429588810da5d6f7ef1509f229f83fa08031/logs.txt +428 -0
  20. package/docs/evidence/2026-03-16/4941429588810da5d6f7ef1509f229f83fa08031/status-all.txt +60 -0
  21. package/docs/evidence/2026-03-16/4941429588810da5d6f7ef1509f229f83fa08031/status.json +223 -0
  22. package/docs/evidence/2026-03-16/4941429588810da5d6f7ef1509f229f83fa08031/summary.md +13 -0
  23. package/docs/evidence/2026-03-16/4941429588810da5d6f7ef1509f229f83fa08031/trace.json +4 -0
  24. package/docs/evidence/2026-03-16/4941429588810da5d6f7ef1509f229f83fa08031/validation-report.json +334 -0
  25. package/docs/evidence/2026-03-16/7f8dbcb27e741abdeefd5656c210639d0acdd440/channels-status.txt +25 -0
  26. package/docs/evidence/2026-03-16/7f8dbcb27e741abdeefd5656c210639d0acdd440/config-snapshot.json +91 -0
  27. package/docs/evidence/2026-03-16/7f8dbcb27e741abdeefd5656c210639d0acdd440/doctor.json +14 -0
  28. package/docs/evidence/2026-03-16/7f8dbcb27e741abdeefd5656c210639d0acdd440/gateway-probe.txt +36 -0
  29. package/docs/evidence/2026-03-16/7f8dbcb27e741abdeefd5656c210639d0acdd440/gateway-status.txt +44 -0
  30. package/docs/evidence/2026-03-16/7f8dbcb27e741abdeefd5656c210639d0acdd440/logs.txt +428 -0
  31. package/docs/evidence/2026-03-16/7f8dbcb27e741abdeefd5656c210639d0acdd440/short-static-classification/preflight-doctor.json +10 -0
  32. package/docs/evidence/2026-03-16/7f8dbcb27e741abdeefd5656c210639d0acdd440/short-static-classification/preflight-sdk-probe.json +11 -0
  33. package/docs/evidence/2026-03-16/7f8dbcb27e741abdeefd5656c210639d0acdd440/short-static-classification/preflight-setup-only.json +12 -0
  34. package/docs/evidence/2026-03-16/7f8dbcb27e741abdeefd5656c210639d0acdd440/short-static-classification/summary.md +30 -0
  35. package/docs/evidence/2026-03-16/7f8dbcb27e741abdeefd5656c210639d0acdd440/short-static-classification/validation-report.json +72 -0
  36. package/docs/evidence/2026-03-16/7f8dbcb27e741abdeefd5656c210639d0acdd440/status-all.txt +63 -0
  37. package/docs/evidence/2026-03-16/7f8dbcb27e741abdeefd5656c210639d0acdd440/status.json +200 -0
  38. package/docs/evidence/2026-03-16/7f8dbcb27e741abdeefd5656c210639d0acdd440/summary.md +13 -0
  39. package/docs/evidence/2026-03-16/7f8dbcb27e741abdeefd5656c210639d0acdd440/trace.json +4 -0
  40. package/docs/evidence/2026-03-16/7f8dbcb27e741abdeefd5656c210639d0acdd440/validation-report.json +311 -0
  41. package/docs/evidence/README.md +16 -0
  42. package/docs/fts5.md +161 -0
  43. package/docs/tui.md +506 -0
  44. package/index.ts +1372 -0
  45. package/openclaw.plugin.json +136 -0
  46. package/package.json +66 -0
  47. package/src/assembler.ts +804 -0
  48. package/src/brain-cli.ts +316 -0
  49. package/src/brain-core/decay.ts +35 -0
  50. package/src/brain-core/episode.ts +82 -0
  51. package/src/brain-core/graph.ts +321 -0
  52. package/src/brain-core/health.ts +116 -0
  53. package/src/brain-core/mutator.ts +281 -0
  54. package/src/brain-core/pack.ts +117 -0
  55. package/src/brain-core/policy.ts +153 -0
  56. package/src/brain-core/replay.ts +1 -0
  57. package/src/brain-core/teacher.ts +105 -0
  58. package/src/brain-core/trace.ts +40 -0
  59. package/src/brain-core/traverse.ts +230 -0
  60. package/src/brain-core/types.ts +405 -0
  61. package/src/brain-core/update.ts +123 -0
  62. package/src/brain-harvest/human.ts +46 -0
  63. package/src/brain-harvest/scanner.ts +98 -0
  64. package/src/brain-harvest/self.ts +147 -0
  65. package/src/brain-runtime/assembler-extension.ts +230 -0
  66. package/src/brain-runtime/evidence-detectors.ts +68 -0
  67. package/src/brain-runtime/graph-io.ts +72 -0
  68. package/src/brain-runtime/harvester-extension.ts +98 -0
  69. package/src/brain-runtime/service.ts +659 -0
  70. package/src/brain-runtime/tools.ts +109 -0
  71. package/src/brain-runtime/worker-state.ts +106 -0
  72. package/src/brain-runtime/worker-supervisor.ts +169 -0
  73. package/src/brain-store/embedding.ts +179 -0
  74. package/src/brain-store/init.ts +347 -0
  75. package/src/brain-store/migrations.ts +188 -0
  76. package/src/brain-store/store.ts +816 -0
  77. package/src/brain-worker/child-runner.ts +321 -0
  78. package/src/brain-worker/jobs.ts +12 -0
  79. package/src/brain-worker/mutation-job.ts +5 -0
  80. package/src/brain-worker/promotion-job.ts +5 -0
  81. package/src/brain-worker/protocol.ts +79 -0
  82. package/src/brain-worker/teacher-job.ts +5 -0
  83. package/src/brain-worker/update-job.ts +5 -0
  84. package/src/brain-worker/worker.ts +422 -0
  85. package/src/compaction.ts +1332 -0
  86. package/src/db/config.ts +265 -0
  87. package/src/db/connection.ts +72 -0
  88. package/src/db/features.ts +42 -0
  89. package/src/db/migration.ts +561 -0
  90. package/src/engine.ts +1995 -0
  91. package/src/expansion-auth.ts +351 -0
  92. package/src/expansion-policy.ts +303 -0
  93. package/src/expansion.ts +383 -0
  94. package/src/integrity.ts +600 -0
  95. package/src/large-files.ts +527 -0
  96. package/src/openclaw-bridge.ts +22 -0
  97. package/src/retrieval.ts +357 -0
  98. package/src/store/conversation-store.ts +748 -0
  99. package/src/store/fts5-sanitize.ts +29 -0
  100. package/src/store/full-text-fallback.ts +74 -0
  101. package/src/store/index.ts +29 -0
  102. package/src/store/summary-store.ts +918 -0
  103. package/src/summarize.ts +847 -0
  104. package/src/tools/common.ts +53 -0
  105. package/src/tools/lcm-conversation-scope.ts +76 -0
  106. package/src/tools/lcm-describe-tool.ts +234 -0
  107. package/src/tools/lcm-expand-query-tool.ts +594 -0
  108. package/src/tools/lcm-expand-tool.delegation.ts +556 -0
  109. package/src/tools/lcm-expand-tool.ts +448 -0
  110. package/src/tools/lcm-expansion-recursion-guard.ts +286 -0
  111. package/src/tools/lcm-grep-tool.ts +200 -0
  112. package/src/transcript-repair.ts +301 -0
  113. package/src/types.ts +149 -0
@@ -0,0 +1,44 @@
1
+
2
+ ◇ Config ───────────────────────────────────────────────────╮
3
+ │ │
4
+ │ Config invalid; doctor will run with best-effort config. │
5
+ │ │
6
+ ├────────────────────────────────────────────────────────────╯
7
+
8
+ ◇ Doctor changes ──────────────────────────────╮
9
+ │ │
10
+ │ Telegram configured, enabled automatically. │
11
+ │ │
12
+ ├───────────────────────────────────────────────╯
13
+
14
+ ◇ Unknown config keys ───────────╮
15
+ │ │
16
+ │ - plugins.slots.contextEngine │
17
+ │ │
18
+ ├─────────────────────────────────╯
19
+
20
+ ◇ Doctor ──────────────────────────────────────────────╮
21
+ │ │
22
+ │ Run "openclaw doctor --fix" to apply these changes. │
23
+ │ Run "openclaw doctor --fix" to remove these keys. │
24
+ │ │
25
+ ├───────────────────────────────────────────────────────╯
26
+ Service: LaunchAgent (not loaded)
27
+ File logs: /tmp/openclaw/openclaw-2026-03-15.log
28
+
29
+ Config (cli): ~/.openclaw-ocbphase1-short-static/preflight/openclaw.json (invalid)
30
+ Config (service): ~/.openclaw-ocbphase1-short-static/preflight/openclaw.json (invalid)
31
+
32
+ Gateway: bind=loopback (127.0.0.1), port=18789 (env/config)
33
+ Probe target: ws://127.0.0.1:18789
34
+ Dashboard: http://127.0.0.1:18789/
35
+ Probe note: Loopback-only gateway; only local clients can connect.
36
+
37
+ Runtime: unknown (Bad request.
38
+ Could not find service "ai.openclaw.gateway" in domain for user gui: 501)
39
+
40
+ Listening: 127.0.0.1:18789
41
+
42
+
43
+ Troubles: run openclaw status
44
+ Troubleshooting: https://docs.openclaw.ai/troubleshooting
@@ -0,0 +1,428 @@
1
+ ## openclaw status --all
2
+
3
+ OpenClaw status --all
4
+
5
+ Overview
6
+ ┌─────────────────┬───────────────────────────────────────────────────────────────────────────────────────────────────┐
7
+ │ Item │ Value │
8
+ ├─────────────────┼───────────────────────────────────────────────────────────────────────────────────────────────────┤
9
+ │ Version │ 2026.2.17 │
10
+ │ OS │ macos 26.3 (arm64) │
11
+ │ Node │ 22.22.0 │
12
+ │ Config │ ~/.openclaw-ocbphase1-short-static/preflight/openclaw.json │
13
+ │ Dashboard │ http://127.0.0.1:18789/ │
14
+ │ Tailscale │ off · Running · cormorantais-mac-mini.tail499c70.ts.net │
15
+ │ Channel │ stable (default) │
16
+ │ Update │ pnpm · npm update 2026.3.13 │
17
+ │ Gateway │ local · ws://127.0.0.1:18789 (local loopback) · unreachable (connect failed: unauthorized: │
18
+ │ │ gateway token missing (provide gateway auth token)) │
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 · 0 sessions │
24
+ └─────────────────┴───────────────────────────────────────────────────────────────────────────────────────────────────┘
25
+
26
+ Channels
27
+ ┌──────────┬─────────┬────────┬───────────────────────────────────────────────────────────────────────────────────────┐
28
+ │ Channel │ Enabled │ State │ Detail │
29
+ ├──────────┼─────────┼────────┼───────────────────────────────────────────────────────────────────────────────────────┤
30
+ └──────────┴─────────┴────────┴───────────────────────────────────────────────────────────────────────────────────────┘
31
+
32
+ Agents
33
+ ┌────────────┬───────────┬──────────┬──────────┬──────────────────────────────────────────────────────────────────────┐
34
+ │ Agent │ Bootstrap │ Sessions │ Active │ Store │
35
+ ├────────────┼───────────┼──────────┼──────────┼──────────────────────────────────────────────────────────────────────┤
36
+ │ main │ PENDING │ 0 │ unknown │ ~/.openclaw-ocbphase1-short-static/preflight/agents/main/sessions/ │
37
+ │ │ │ │ │ sessions.json │
38
+ └────────────┴───────────┴──────────┴──────────┴──────────────────────────────────────────────────────────────────────┘
39
+
40
+ Diagnosis (read-only)
41
+
42
+ Gateway connection details:
43
+ Gateway target: ws://127.0.0.1:18789
44
+ Source: local loopback
45
+ Config: /Users/cormorantai/.openclaw-ocbphase1-short-static/preflight/openclaw.json
46
+ Bind: loopback
47
+
48
+ ! Config: /Users/cormorantai/.openclaw-ocbphase1-short-static/preflight/openclaw.json
49
+ - plugins.slots: Unrecognized key: "contextEngine"
50
+ ✓ Restart sentinel: none
51
+ ! Port 18789
52
+ Port 18789 is already in use.
53
+ - pid 40240 cormorantai: openclaw-gateway (127.0.0.1:18789)
54
+ - Gateway already running locally. Stop it (openclaw gateway stop) or use a different port.
55
+ ✓ Tailscale: off · Running · cormorantais-mac-mini.tail499c70.ts.net
56
+ ips: 100.73.247.26, fd7a:115c:a1e0::e932:f71a
57
+ ✓ Skills: 8 eligible · 0 missing · /Users/cormorantai/.openclaw/workspace
58
+ ! Channel issues skipped (gateway unreachable)
59
+
60
+ Gateway health:
61
+ connect failed: unauthorized: gateway token missing (provide gateway auth token)
62
+
63
+ Pasteable debug report. Auth tokens redacted.
64
+ Troubleshooting: https://docs.openclaw.ai/troubleshooting
65
+
66
+
67
+
68
+ [stderr]
69
+ Invalid config at /Users/cormorantai/.openclaw-ocbphase1-short-static/preflight/openclaw.json:\n- plugins.slots: Unrecognized key: "contextEngine"
70
+ Config invalid
71
+ File: ~/.openclaw-ocbphase1-short-static/preflight/openclaw.json
72
+ Problem:
73
+ - plugins.slots: Unrecognized key: "contextEngine"
74
+
75
+ Run: openclaw doctor --fix
76
+ Invalid config at /Users/cormorantai/.openclaw-ocbphase1-short-static/preflight/openclaw.json:\n- plugins.slots: Unrecognized key: "contextEngine"
77
+
78
+
79
+
80
+ ## openclaw gateway probe
81
+
82
+
83
+ ◇ Config ───────────────────────────────────────────────────╮
84
+ │ │
85
+ │ Config invalid; doctor will run with best-effort config. │
86
+ │ │
87
+ ├────────────────────────────────────────────────────────────╯
88
+
89
+ ◇ Doctor changes ──────────────────────────────╮
90
+ │ │
91
+ │ Telegram configured, enabled automatically. │
92
+ │ │
93
+ ├───────────────────────────────────────────────╯
94
+
95
+ ◇ Unknown config keys ───────────╮
96
+ │ │
97
+ │ - plugins.slots.contextEngine │
98
+ │ │
99
+ ├─────────────────────────────────╯
100
+
101
+ ◇ Doctor ──────────────────────────────────────────────╮
102
+ │ │
103
+ │ Run "openclaw doctor --fix" to apply these changes. │
104
+ │ Run "openclaw doctor --fix" to remove these keys. │
105
+ │ │
106
+ ├───────────────────────────────────────────────────────╯
107
+ Gateway Status
108
+ Reachable: no
109
+ Probe budget: 3000ms
110
+
111
+ Discovery (this machine)
112
+ Found 4 gateway(s) via Bonjour (local.)
113
+
114
+ Targets
115
+ Local loopback ws://127.0.0.1:18789
116
+ Connect: failed - connect failed: unauthorized: gateway token missing (provide gateway auth token)
117
+
118
+
119
+
120
+ [stderr]
121
+ Invalid config at /Users/cormorantai/.openclaw-ocbphase1-short-static/preflight/openclaw.json:\n- plugins.slots: Unrecognized key: "contextEngine"
122
+ Config invalid
123
+ File: ~/.openclaw-ocbphase1-short-static/preflight/openclaw.json
124
+ Problem:
125
+ - plugins.slots: Unrecognized key: "contextEngine"
126
+
127
+ Run: openclaw doctor --fix
128
+
129
+
130
+
131
+ ## openclaw gateway status
132
+
133
+
134
+ ◇ Config ───────────────────────────────────────────────────╮
135
+ │ │
136
+ │ Config invalid; doctor will run with best-effort config. │
137
+ │ │
138
+ ├────────────────────────────────────────────────────────────╯
139
+
140
+ ◇ Doctor changes ──────────────────────────────╮
141
+ │ │
142
+ │ Telegram configured, enabled automatically. │
143
+ │ │
144
+ ├───────────────────────────────────────────────╯
145
+
146
+ ◇ Unknown config keys ───────────╮
147
+ │ │
148
+ │ - plugins.slots.contextEngine │
149
+ │ │
150
+ ├─────────────────────────────────╯
151
+
152
+ ◇ Doctor ──────────────────────────────────────────────╮
153
+ │ │
154
+ │ Run "openclaw doctor --fix" to apply these changes. │
155
+ │ Run "openclaw doctor --fix" to remove these keys. │
156
+ │ │
157
+ ├───────────────────────────────────────────────────────╯
158
+ Service: LaunchAgent (not loaded)
159
+ File logs: /tmp/openclaw/openclaw-2026-03-15.log
160
+
161
+ Config (cli): ~/.openclaw-ocbphase1-short-static/preflight/openclaw.json (invalid)
162
+ Config (service): ~/.openclaw-ocbphase1-short-static/preflight/openclaw.json (invalid)
163
+
164
+ Gateway: bind=loopback (127.0.0.1), port=18789 (env/config)
165
+ Probe target: ws://127.0.0.1:18789
166
+ Dashboard: http://127.0.0.1:18789/
167
+ Probe note: Loopback-only gateway; only local clients can connect.
168
+
169
+ Runtime: unknown (Bad request.
170
+ Could not find service "ai.openclaw.gateway" in domain for user gui: 501)
171
+
172
+ Listening: 127.0.0.1:18789
173
+
174
+
175
+ Troubles: run openclaw status
176
+ Troubleshooting: https://docs.openclaw.ai/troubleshooting
177
+
178
+
179
+ [stderr]
180
+ Invalid config at /Users/cormorantai/.openclaw-ocbphase1-short-static/preflight/openclaw.json:\n- plugins.slots: Unrecognized key: "contextEngine"
181
+ Config invalid
182
+ File: ~/.openclaw-ocbphase1-short-static/preflight/openclaw.json
183
+ Problem:
184
+ - plugins.slots: Unrecognized key: "contextEngine"
185
+
186
+ Run: openclaw doctor --fix
187
+ Service config looks out of date or non-standard.
188
+ Service config issue: Gateway service PATH is not set; the daemon should use a minimal PATH.
189
+ Recommendation: run "openclaw doctor" (or "openclaw doctor --repair").
190
+ Config issue: plugins.slots: Unrecognized key: "contextEngine"
191
+ Service config issue: plugins.slots: Unrecognized key: "contextEngine"
192
+ RPC probe: failed
193
+ RPC target: ws://127.0.0.1:18789
194
+ gateway url override requires explicit credentials
195
+ Fix: pass --token or --password (or gatewayToken in tools).
196
+ Config: /Users/cormorantai/.openclaw-ocbphase1-short-static/preflight/openclaw.json
197
+ Service unit not found.
198
+ Service not installed. Run: openclaw gateway install
199
+ File logs: /tmp/openclaw/openclaw-2026-03-15.log
200
+ Port 18789 is already in use.
201
+ - pid 40240 cormorantai: openclaw-gateway (127.0.0.1:18789)
202
+ - Gateway already running locally. Stop it (openclaw gateway stop) or use a different port.
203
+ Other gateway-like services detected (best effort):
204
+ - com.openclawbrain.daemon.activation.0ec88212fa7d (user, plist: /Users/cormorantai/Library/LaunchAgents/com.openclawbrain.daemon.activation.0ec88212fa7d.plist)
205
+ - com.openclawbrain.daemon.activation.546e84bf06ac (user, plist: /Users/cormorantai/Library/LaunchAgents/com.openclawbrain.daemon.activation.546e84bf06ac.plist)
206
+ - com.openclawbrain.daemon.activation.b3eeb450ca08 (user, plist: /Users/cormorantai/Library/LaunchAgents/com.openclawbrain.daemon.activation.b3eeb450ca08.plist)
207
+ Cleanup hint: launchctl bootout gui/$UID/ai.openclaw.gateway
208
+ Cleanup hint: rm ~/Library/LaunchAgents/ai.openclaw.gateway.plist
209
+ Recommendation: run a single gateway per machine for most setups. One gateway supports multiple agents (see docs: /gateway#multiple-gateways-same-host).
210
+ 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).
211
+
212
+
213
+
214
+ ## openclaw doctor --non-interactive
215
+
216
+ ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
217
+ ██░▄▄▄░██░▄▄░██░▄▄▄██░▀██░██░▄▄▀██░████░▄▄▀██░███░██
218
+ ██░███░██░▀▀░██░▄▄▄██░█░█░██░█████░████░▀▀░██░█░█░██
219
+ ██░▀▀▀░██░█████░▀▀▀██░██▄░██░▀▀▄██░▀▀░█░██░██▄▀▄▀▄██
220
+ ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
221
+ 🦞 OPENCLAW 🦞
222
+
223
+ ┌ OpenClaw doctor
224
+
225
+ ◇ Config ───────────────────────────────────────────────────╮
226
+ │ │
227
+ │ Config invalid; doctor will run with best-effort config. │
228
+ │ │
229
+ ├────────────────────────────────────────────────────────────╯
230
+
231
+ ◇ Doctor changes ──────────────────────────────╮
232
+ │ │
233
+ │ Telegram configured, enabled automatically. │
234
+ │ │
235
+ ├───────────────────────────────────────────────╯
236
+
237
+ ◇ Unknown config keys ───────────╮
238
+ │ │
239
+ │ - plugins.slots.contextEngine │
240
+ │ │
241
+ ├─────────────────────────────────╯
242
+
243
+ ◇ Doctor ──────────────────────────────────────────────╮
244
+ │ │
245
+ │ Run "openclaw doctor --fix" to apply these changes. │
246
+ │ Run "openclaw doctor --fix" to remove these keys. │
247
+ │ │
248
+ ├───────────────────────────────────────────────────────╯
249
+
250
+ ◇ Gateway auth ──────────────────────────────────────────────────╮
251
+ │ │
252
+ │ Gateway auth is off or missing a token. Token auth is now the │
253
+ │ recommended default (including loopback). │
254
+ │ │
255
+ ├─────────────────────────────────────────────────────────────────╯
256
+
257
+ ◇ State integrity ────────────────────────────────────────────────────────╮
258
+ │ │
259
+ │ - CRITICAL: Session store dir missing │
260
+ │ (~/.openclaw-ocbphase1-short-static/preflight/agents/main/sessions). │
261
+ │ - CRITICAL: OAuth dir missing │
262
+ │ (~/.openclaw-ocbphase1-short-static/preflight/credentials). │
263
+ │ - Multiple state directories detected. This can split session history. │
264
+ │ - ~/.openclaw │
265
+ │ Active state dir: ~/.openclaw-ocbphase1-short-static/preflight │
266
+ │ │
267
+ ├──────────────────────────────────────────────────────────────────────────╯
268
+
269
+ ◇ Other gateway-like services detected ───────────────────────────────────────╮
270
+ │ │
271
+ │ - com.openclawbrain.daemon.activation.0ec88212fa7d (user, plist: │
272
+ │ /Users/cormorantai/Library/LaunchAgents/com.openclawbrain.daemon.activat │
273
+ │ ion.0ec88212fa7d.plist) │
274
+ │ - com.openclawbrain.daemon.activation.546e84bf06ac (user, plist: │
275
+ │ /Users/cormorantai/Library/LaunchAgents/com.openclawbrain.daemon.activat │
276
+ │ ion.546e84bf06ac.plist) │
277
+ │ - com.openclawbrain.daemon.activation.b3eeb450ca08 (user, plist: │
278
+ │ /Users/cormorantai/Library/LaunchAgents/com.openclawbrain.daemon.activat │
279
+ │ ion.b3eeb450ca08.plist) │
280
+ │ │
281
+ ├──────────────────────────────────────────────────────────────────────────────╯
282
+
283
+ ◇ Cleanup hints ─────────────────────────────────────────╮
284
+ │ │
285
+ │ - launchctl bootout gui/$UID/ai.openclaw.gateway │
286
+ │ - rm ~/Library/LaunchAgents/ai.openclaw.gateway.plist │
287
+ │ │
288
+ ├─────────────────────────────────────────────────────────╯
289
+
290
+ ◇ Gateway recommendation ───────────────────────────────────────────────╮
291
+ │ │
292
+ │ Recommendation: run a single gateway per machine for most setups. │
293
+ │ One gateway supports multiple agents. │
294
+ │ If you need multiple gateways (e.g., a rescue bot on the same host), │
295
+ │ isolate ports + config/state (see docs: │
296
+ │ /gateway#multiple-gateways-same-host). │
297
+ │ │
298
+ ├────────────────────────────────────────────────────────────────────────╯
299
+
300
+ ◇ Security ─────────────────────────────────╮
301
+ │ │
302
+ │ - No channel security warnings detected. │
303
+ │ - Run: openclaw security audit --deep │
304
+ │ │
305
+ ├────────────────────────────────────────────╯
306
+
307
+ ◇ Skills status ────────────╮
308
+ │ │
309
+ │ Eligible: 8 │
310
+ │ Missing requirements: 42 │
311
+ │ Blocked by allowlist: 0 │
312
+ │ │
313
+ ├────────────────────────────╯
314
+
315
+ ◇ Plugins ─────────╮
316
+ │ │
317
+ │ Loaded: 4 │
318
+ │ Disabled: 32 │
319
+ │ Errors: 1 │
320
+ │ - openclawbrain │
321
+ │ │
322
+ ├───────────────────╯
323
+
324
+ ◇ Plugin diagnostics ───────────────────────────────────────────────╮
325
+ │ │
326
+ │ - ERROR openclawbrain: plugin failed during register: TypeError: │
327
+ │ api.registerContextEngine is not a function │
328
+ │ (/Users/cormorantai/openclawbrain/index.ts) │
329
+ │ │
330
+ ├────────────────────────────────────────────────────────────────────╯
331
+
332
+ ◇ Shell completion ────────────────────────────────────────────────────╮
333
+ │ │
334
+ │ Shell completion is configured in your zsh profile but the cache is │
335
+ │ missing. │
336
+ │ Regenerating cache... │
337
+ │ │
338
+ ├───────────────────────────────────────────────────────────────────────╯
339
+
340
+ ◇ Shell completion ───────────────────────────────────────────────────────────╮
341
+ │ │
342
+ │ Completion cache regenerated at │
343
+ │ /Users/cormorantai/.openclaw-ocbphase1-short-static/preflight/completions/ │
344
+ │ openclaw.zsh │
345
+ │ │
346
+ ├──────────────────────────────────────────────────────────────────────────────╯
347
+
348
+ ◇ Gateway ──────────────╮
349
+ │ │
350
+ │ Gateway not running. │
351
+ │ │
352
+ ├────────────────────────╯
353
+
354
+ ◇ Gateway connection ─────────────────────────────────────────────────────────╮
355
+ │ │
356
+ │ Gateway target: ws://127.0.0.1:19130 │
357
+ │ Source: local loopback │
358
+ │ Config: │
359
+ │ /Users/cormorantai/.openclaw-ocbphase1-short-static/preflight/openclaw.jso │
360
+ │ n │
361
+ │ Bind: loopback │
362
+ │ │
363
+ ├──────────────────────────────────────────────────────────────────────────────╯
364
+
365
+ ◇ Gateway ────────────────────────╮
366
+ │ │
367
+ │ Gateway service not installed. │
368
+ │ │
369
+ ├──────────────────────────────────╯
370
+ Run "openclaw doctor --fix" to apply changes.
371
+
372
+ └ Doctor complete.
373
+
374
+
375
+
376
+ [stderr]
377
+ Invalid config at /Users/cormorantai/.openclaw-ocbphase1-short-static/preflight/openclaw.json:\n- plugins.slots: Unrecognized key: "contextEngine"
378
+ Invalid config at /Users/cormorantai/.openclaw-ocbphase1-short-static/preflight/openclaw.json:\n- plugins.slots: Unrecognized key: "contextEngine"
379
+ Invalid config:
380
+ - plugins.slots: Unrecognized key: "contextEngine"
381
+
382
+
383
+
384
+ ## openclaw channels status --probe
385
+
386
+
387
+ ◇ Config ───────────────────────────────────────────────────╮
388
+ │ │
389
+ │ Config invalid; doctor will run with best-effort config. │
390
+ │ │
391
+ ├────────────────────────────────────────────────────────────╯
392
+
393
+ ◇ Doctor changes ──────────────────────────────╮
394
+ │ │
395
+ │ Telegram configured, enabled automatically. │
396
+ │ │
397
+ ├───────────────────────────────────────────────╯
398
+
399
+ ◇ Unknown config keys ───────────╮
400
+ │ │
401
+ │ - plugins.slots.contextEngine │
402
+ │ │
403
+ ├─────────────────────────────────╯
404
+
405
+ ◇ Doctor ──────────────────────────────────────────────╮
406
+ │ │
407
+ │ Run "openclaw doctor --fix" to apply these changes. │
408
+ │ Run "openclaw doctor --fix" to remove these keys. │
409
+ │ │
410
+ ├───────────────────────────────────────────────────────╯
411
+
412
+
413
+ [stderr]
414
+ Invalid config at /Users/cormorantai/.openclaw-ocbphase1-short-static/preflight/openclaw.json:\n- plugins.slots: Unrecognized key: "contextEngine"
415
+ Config invalid
416
+ File: ~/.openclaw-ocbphase1-short-static/preflight/openclaw.json
417
+ Problem:
418
+ - plugins.slots: Unrecognized key: "contextEngine"
419
+
420
+ Run: openclaw doctor --fix
421
+
422
+
423
+
424
+ ## file:/Users/cormorantai/.openclaw-ocbphase1-short-static/preflight/logs/config-audit.jsonl
425
+
426
+ {"ts":"2026-03-16T04:41:04.496Z","source":"config-io","event":"config.write","configPath":"/Users/cormorantai/.openclaw-ocbphase1-short-static/preflight/openclaw.json","pid":81681,"ppid":81680,"cwd":"/Users/cormorantai/openclawbrain","argv":["/opt/homebrew/Cellar/node@22/22.22.0/bin/node","/Users/cormorantai/openclawbrain/node_modules/.bin/openclaw","plugins","install","--link","/Users/cormorantai/openclawbrain"],"execArgv":["--disable-warning=ExperimentalWarning"],"watchMode":false,"watchSession":null,"watchCommand":null,"existsBefore":false,"previousHash":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855","nextHash":"f546452200ec4584bad2e23842a2ad9cedec0f5cba4d3a5b1a86897e88ef5ad0","previousBytes":null,"nextBytes":645,"changedPathCount":null,"hasMetaBefore":false,"hasMetaAfter":true,"gatewayModeBefore":null,"gatewayModeAfter":null,"suspicious":[],"result":"rename"}
427
+
428
+
@@ -0,0 +1,10 @@
1
+ {
2
+ "command": "openclaw",
3
+ "args": [
4
+ "doctor"
5
+ ],
6
+ "status": 0,
7
+ "stdout": "▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄\n██░▄▄▄░██░▄▄░██░▄▄▄██░▀██░██░▄▄▀██░████░▄▄▀██░███░██\n██░███░██░▀▀░██░▄▄▄██░█░█░██░█████░████░▀▀░██░█░█░██\n██░▀▀▀░██░█████░▀▀▀██░██▄░██░▀▀▄██░▀▀░█░██░██▄▀▄▀▄██\n▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀\n 🦞 OPENCLAW 🦞 \n \n┌ OpenClaw doctor\n│\n◇ Config ───────────────────────────────────────────────────╮\n│ │\n│ Config invalid; doctor will run with best-effort config. │\n│ │\n├────────────────────────────────────────────────────────────╯\n│\n◇ Doctor changes ──────────────────────────────╮\n│ │\n│ Telegram configured, enabled automatically. │\n│ │\n├───────────────────────────────────────────────╯\n│\n◇ Unknown config keys ───────────╮\n│ │\n│ - plugins.slots.contextEngine │\n│ │\n├─────────────────────────────────╯\n│\n◇ Doctor ──────────────────────────────────────────────╮\n│ │\n│ Run \"openclaw doctor --fix\" to apply these changes. │\n│ Run \"openclaw doctor --fix\" to remove these keys. │\n│ │\n├───────────────────────────────────────────────────────╯\n│\n◇ Gateway auth ──────────────────────────────────────────────────╮\n│ │\n│ Gateway auth is off or missing a token. Token auth is now the │\n│ recommended default (including loopback). │\n│ │\n├─────────────────────────────────────────────────────────────────╯\n│\n◇ State integrity ────────────────────────────────────────────────────────╮\n│ │\n│ - CRITICAL: Session store dir missing │\n│ (~/.openclaw-ocbphase1-short-static/preflight/agents/main/sessions). │\n│ - CRITICAL: OAuth dir missing │\n│ (~/.openclaw-ocbphase1-short-static/preflight/credentials). │\n│ - Multiple state directories detected. This can split session history. │\n│ - ~/.openclaw │\n│ Active state dir: ~/.openclaw-ocbphase1-short-static/preflight │\n│ │\n├──────────────────────────────────────────────────────────────────────────╯\n│\n◇ Other gateway-like services detected ───────────────────────────────────────╮\n│ │\n│ - com.openclawbrain.daemon.activation.0ec88212fa7d (user, plist: │\n│ /Users/cormorantai/Library/LaunchAgents/com.openclawbrain.daemon.activat │\n│ ion.0ec88212fa7d.plist) │\n│ - com.openclawbrain.daemon.activation.546e84bf06ac (user, plist: │\n│ /Users/cormorantai/Library/LaunchAgents/com.openclawbrain.daemon.activat │\n│ ion.546e84bf06ac.plist) │\n│ - com.openclawbrain.daemon.activation.b3eeb450ca08 (user, plist: │\n│ /Users/cormorantai/Library/LaunchAgents/com.openclawbrain.daemon.activat │\n│ ion.b3eeb450ca08.plist) │\n│ │\n├──────────────────────────────────────────────────────────────────────────────╯\n│\n◇ Cleanup hints ─────────────────────────────────────────╮\n│ │\n│ - launchctl bootout gui/$UID/ai.openclaw.gateway │\n│ - rm ~/Library/LaunchAgents/ai.openclaw.gateway.plist │\n│ │\n├─────────────────────────────────────────────────────────╯\n│\n◇ Gateway recommendation ───────────────────────────────────────────────╮\n│ │\n│ Recommendation: run a single gateway per machine for most setups. │\n│ One gateway supports multiple agents. │\n│ If you need multiple gateways (e.g., a rescue bot on the same host), │\n│ isolate ports + config/state (see docs: │\n│ /gateway#multiple-gateways-same-host). │\n│ │\n├────────────────────────────────────────────────────────────────────────╯\n│\n◇ Security ─────────────────────────────────╮\n│ │\n│ - No channel security warnings detected. │\n│ - Run: openclaw security audit --deep │\n│ │\n├────────────────────────────────────────────╯\n│\n◇ Skills status ────────────╮\n│ │\n│ Eligible: 8 │\n│ Missing requirements: 42 │\n│ Blocked by allowlist: 0 │\n│ │\n├────────────────────────────╯\n│\n◇ Plugins ─────────╮\n│ │\n│ Loaded: 4 │\n│ Disabled: 32 │\n│ Errors: 1 │\n│ - openclawbrain │\n│ │\n├───────────────────╯\n│\n◇ Plugin diagnostics ───────────────────────────────────────────────╮\n│ │\n│ - ERROR openclawbrain: plugin failed during register: TypeError: │\n│ api.registerContextEngine is not a function │\n│ (/Users/cormorantai/openclawbrain/index.ts) │\n│ │\n├────────────────────────────────────────────────────────────────────╯\n│\n◇ Gateway ──────────────╮\n│ │\n│ Gateway not running. │\n│ │\n├────────────────────────╯\n│\n◇ Gateway connection ─────────────────────────────────────────────────────────╮\n│ │\n│ Gateway target: ws://127.0.0.1:19130 │\n│ Source: local loopback │\n│ Config: │\n│ /Users/cormorantai/.openclaw-ocbphase1-short-static/preflight/openclaw.jso │\n│ n │\n│ Bind: loopback │\n│ │\n├──────────────────────────────────────────────────────────────────────────────╯\n│\n◇ Gateway ────────────────────────╮\n│ │\n│ Gateway service not installed. │\n│ │\n├──────────────────────────────────╯\nRun \"openclaw doctor --fix\" to apply changes.\n│\n└ Doctor complete.\n\n",
8
+ "stderr": "Invalid config at /Users/cormorantai/.openclaw-ocbphase1-short-static/preflight/openclaw.json:\\n- plugins.slots: Unrecognized key: \"contextEngine\"\nInvalid config at /Users/cormorantai/.openclaw-ocbphase1-short-static/preflight/openclaw.json:\\n- plugins.slots: Unrecognized key: \"contextEngine\"\nInvalid config:\n- plugins.slots: Unrecognized key: \"contextEngine\"\n",
9
+ "error": null
10
+ }
@@ -0,0 +1,11 @@
1
+ {
2
+ "command": "node",
3
+ "args": [
4
+ "-e",
5
+ "const sdk = require(\"openclaw/plugin-sdk\"); console.log(JSON.stringify({ hasRegisterContextEngine: typeof sdk.registerContextEngine === \"function\", keys: Object.keys(sdk).sort().filter((key) => key.toLowerCase().includes(\"context\") || key.toLowerCase().includes(\"memory\")).slice(0, 50) }));"
6
+ ],
7
+ "status": 0,
8
+ "stdout": "{\"hasRegisterContextEngine\":false,\"keys\":[\"buildPendingHistoryContextFromMap\",\"buildSlackThreadingToolContext\",\"createReplyPrefixContext\",\"toLocationContext\"]}\n",
9
+ "stderr": "Invalid config at /Users/cormorantai/.openclaw-ocbphase1-short-static/preflight/openclaw.json:\\n- plugins.slots: Unrecognized key: \"contextEngine\"\n",
10
+ "error": null
11
+ }