@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,4400 @@
1
+ {
2
+ "validationRoot": "/Users/cormorantai/.openclaw-ocbphase1",
3
+ "validationHome": "/Users/cormorantai",
4
+ "validationStateDir": "/Users/cormorantai/.openclaw-ocbphase1",
5
+ "fixtureWorkspace": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture",
6
+ "configPath": "/Users/cormorantai/.openclaw-ocbphase1/openclaw.json",
7
+ "artifactDir": "/Users/cormorantai/openclawbrain/docs/evidence/2026-03-16/4ccd71a22418b9170128b8d948f5a95801a10380",
8
+ "gitSha": "4ccd71a22418b9170128b8d948f5a95801a10380",
9
+ "diagnostics": {
10
+ "status": {
11
+ "command": "openclaw",
12
+ "args": [
13
+ "status",
14
+ "--json",
15
+ "--timeout",
16
+ "10000"
17
+ ],
18
+ "cwd": "/Users/cormorantai/openclawbrain",
19
+ "exitCode": 0,
20
+ "signal": null,
21
+ "ok": true,
22
+ "stdout": "[plugins] [openclawbrain] Plugin loaded (enabled=true, db=/Users/cormorantai/.openclaw-ocbphase1/lcm.db, threshold=0.75)\n[plugins] [openclawbrain] Plugin loaded (enabled=true, db=/Users/cormorantai/.openclaw-ocbphase1/lcm.db, threshold=0.75)\n{\n \"runtimeVersion\": \"2026.3.13\",\n \"heartbeat\": {\n \"defaultAgentId\": \"main\",\n \"agents\": [\n {\n \"agentId\": \"main\",\n \"enabled\": true,\n \"every\": \"30m\",\n \"everyMs\": 1800000\n }\n ]\n },\n \"channelSummary\": [],\n \"queuedSystemEvents\": [],\n \"sessions\": {\n \"paths\": [\n \"/Users/cormorantai/.openclaw-ocbphase1/agents/main/sessions/sessions.json\"\n ],\n \"count\": 1,\n \"defaults\": {\n \"model\": \"qwen2.5:7b-instruct\",\n \"contextTokens\": 262144\n },\n \"recent\": [\n {\n \"agentId\": \"main\",\n \"key\": \"agent:main:main\",\n \"kind\": \"direct\",\n \"sessionId\": \"93eb604e-21e6-4802-81c1-04c889244efb\",\n \"updatedAt\": 1773675771940,\n \"age\": 25804,\n \"abortedLastRun\": false,\n \"inputTokens\": 22808,\n \"outputTokens\": 219,\n \"cacheRead\": 0,\n \"cacheWrite\": 0,\n \"totalTokens\": 22808,\n \"totalTokensFresh\": true,\n \"remainingTokens\": 239336,\n \"percentUsed\": 9,\n \"model\": \"qwen2.5:7b-instruct\",\n \"contextTokens\": 262144,\n \"flags\": [\n \"id:93eb604e-21e6-4802-81c1-04c889244efb\"\n ]\n }\n ],\n \"byAgent\": [\n {\n \"agentId\": \"main\",\n \"path\": \"/Users/cormorantai/.openclaw-ocbphase1/agents/main/sessions/sessions.json\",\n \"count\": 1,\n \"recent\": [\n {\n \"agentId\": \"main\",\n \"key\": \"agent:main:main\",\n \"kind\": \"direct\",\n \"sessionId\": \"93eb604e-21e6-4802-81c1-04c889244efb\",\n \"updatedAt\": 1773675771940,\n \"age\": 25804,\n \"abortedLastRun\": false,\n \"inputTokens\": 22808,\n \"outputTokens\": 219,\n \"cacheRead\": 0,\n \"cacheWrite\": 0,\n \"totalTokens\": 22808,\n \"totalTokensFresh\": true,\n \"remainingTokens\": 239336,\n \"percentUsed\": 9,\n \"model\": \"qwen2.5:7b-instruct\",\n \"contextTokens\": 262144,\n \"flags\": [\n \"id:93eb604e-21e6-4802-81c1-04c889244efb\"\n ]\n }\n ]\n }\n ]\n },\n \"os\": {\n \"platform\": \"darwin\",\n \"arch\": \"arm64\",\n \"release\": \"25.3.0\",\n \"label\": \"macos 26.3 (arm64)\"\n },\n \"update\": {\n \"root\": \"/Users/cormorantai/opencormorant\",\n \"installKind\": \"git\",\n \"packageManager\": \"pnpm\",\n \"git\": {\n \"root\": \"/Users/cormorantai/opencormorant\",\n \"sha\": \"66e02b296fa7c18c04dc94fe071d916042a30137\",\n \"tag\": null,\n \"branch\": \"main\",\n \"upstream\": \"origin/main\",\n \"dirty\": false,\n \"ahead\": 0,\n \"behind\": 618,\n \"fetchOk\": true\n },\n \"deps\": {\n \"manager\": \"pnpm\",\n \"status\": \"ok\",\n \"lockfilePath\": \"/Users/cormorantai/opencormorant/pnpm-lock.yaml\",\n \"markerPath\": \"/Users/cormorantai/opencormorant/node_modules/.modules.yaml\"\n },\n \"registry\": {\n \"latestVersion\": \"2026.3.13\"\n }\n },\n \"updateChannel\": \"dev\",\n \"updateChannelSource\": \"git-branch\",\n \"memory\": {\n \"agentId\": \"main\",\n \"backend\": \"builtin\",\n \"files\": 0,\n \"chunks\": 0,\n \"dirty\": true,\n \"workspaceDir\": \"/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture\",\n \"dbPath\": \"/Users/cormorantai/.openclaw-ocbphase1/memory/main.sqlite\",\n \"provider\": \"gemini\",\n \"model\": \"gemini-embedding-001\",\n \"requestedProvider\": \"auto\",\n \"sources\": [\n \"memory\"\n ],\n \"extraPaths\": [],\n \"sourceCounts\": [\n {\n \"source\": \"memory\",\n \"files\": 0,\n \"chunks\": 0\n }\n ],\n \"cache\": {\n \"enabled\": true,\n \"entries\": 0\n },\n \"fts\": {\n \"enabled\": true,\n \"available\": true\n },\n \"vector\": {\n \"enabled\": true,\n \"available\": true,\n \"extensionPath\": \"/Users/cormorantai/opencormorant/node_modules/.pnpm/sqlite-vec@0.1.7-alpha.2/node_modules/sqlite-vec-darwin-arm64/vec0.dylib\"\n },\n \"batch\": {\n \"enabled\": false,\n \"failures\": 0,\n \"limit\": 2,\n \"wait\": true,\n \"concurrency\": 2,\n \"pollIntervalMs\": 2000,\n \"timeoutMs\": 3600000\n },\n \"custom\": {\n \"searchMode\": \"hybrid\",\n \"readonlyRecovery\": {\n \"attempts\": 0,\n \"successes\": 0,\n \"failures\": 0\n }\n }\n },\n \"memoryPlugin\": {\n \"enabled\": true,\n \"slot\": \"memory-core\"\n },\n \"gateway\": {\n \"mode\": \"local\",\n \"url\": \"ws://127.0.0.1:19031\",\n \"urlSource\": \"local loopback\",\n \"misconfigured\": false,\n \"reachable\": false,\n \"connectLatencyMs\": null,\n \"self\": null,\n \"error\": \"connect failed: connect ECONNREFUSED 127.0.0.1:19031\",\n \"authWarning\": null\n },\n \"gatewayService\": {\n \"label\": \"LaunchAgent\",\n \"installed\": false,\n \"managedByOpenClaw\": false,\n \"externallyManaged\": false,\n \"loadedText\": \"not loaded\",\n \"runtimeShort\": \"unknown\"\n },\n \"nodeService\": {\n \"label\": \"LaunchAgent\",\n \"installed\": false,\n \"managedByOpenClaw\": false,\n \"externallyManaged\": false,\n \"loadedText\": \"not loaded\",\n \"runtimeShort\": \"unknown\"\n },\n \"agents\": {\n \"defaultId\": \"main\",\n \"agents\": [\n {\n \"id\": \"main\",\n \"workspaceDir\": \"/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture\",\n \"bootstrapPending\": false,\n \"sessionsPath\": \"/Users/cormorantai/.openclaw-ocbphase1/agents/main/sessions/sessions.json\",\n \"sessionsCount\": 1,\n \"lastUpdatedAt\": 1773675771940,\n \"lastActiveAgeMs\": 25800\n }\n ],\n \"totalSessions\": 1,\n \"bootstrapPendingCount\": 0\n },\n \"securityAudit\": {\n \"ts\": 1773675800284,\n \"summary\": {\n \"critical\": 3,\n \"warn\": 1,\n \"info\": 1\n },\n \"findings\": [\n {\n \"checkId\": \"summary.attack_surface\",\n \"severity\": \"info\",\n \"title\": \"Attack surface summary\",\n \"detail\": \"groups: open=0, allowlist=0\\ntools.elevated: enabled\\nhooks.webhooks: disabled\\nhooks.internal: disabled\\nbrowser control: enabled\\ntrust model: personal assistant (one trusted operator boundary), not hostile multi-tenant on one shared gateway\"\n },\n {\n \"checkId\": \"gateway.trusted_proxies_missing\",\n \"severity\": \"warn\",\n \"title\": \"Reverse proxy headers are not trusted\",\n \"detail\": \"gateway.bind is loopback and gateway.trustedProxies is empty. If you expose the Control UI through a reverse proxy, configure trusted proxies so local-client checks cannot be spoofed.\",\n \"remediation\": \"Set gateway.trustedProxies to your proxy IPs or keep the Control UI local-only.\"\n },\n {\n \"checkId\": \"gateway.loopback_no_auth\",\n \"severity\": \"critical\",\n \"title\": \"Gateway auth missing on loopback\",\n \"detail\": \"gateway.bind is loopback but no gateway auth secret is configured. If the Control UI is exposed through a reverse proxy, unauthenticated access is possible.\",\n \"remediation\": \"Set gateway.auth (token recommended) or keep the Control UI local-only.\"\n },\n {\n \"checkId\": \"browser.control_no_auth\",\n \"severity\": \"critical\",\n \"title\": \"Browser control has no auth\",\n \"detail\": \"Browser control HTTP routes are enabled but no gateway.auth token/password is configured. Any local process (or SSRF to loopback) can call browser control endpoints.\",\n \"remediation\": \"Set gateway.auth.token (recommended) or gateway.auth.password so browser control HTTP routes require authentication. Restarting the gateway will auto-generate gateway.auth.token when browser control is enabled.\"\n },\n {\n \"checkId\": \"models.small_params\",\n \"severity\": \"critical\",\n \"title\": \"Small models require sandboxing and web tools disabled\",\n \"detail\": \"Small models (<=300B params) detected:\\n- ollama/qwen2.5:7b-instruct (7B) @ agents.defaults.model.primary (unsafe; sandbox=off; web=[web_search, web_fetch, browser])\\nUncontrolled input tools allowed: web_search, web_fetch, browser.\\nSmall models are not recommended for untrusted inputs.\",\n \"remediation\": \"If you must use small models, enable sandboxing for all sessions (agents.defaults.sandbox.mode=\\\"all\\\") and disable web_search/web_fetch/browser (tools.deny=[\\\"group:web\\\",\\\"browser\\\"]).\"\n }\n ]\n },\n \"secretDiagnostics\": []\n}\n",
23
+ "stderr": "[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.\n[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.\n",
24
+ "error": null,
25
+ "parsed": {
26
+ "runtimeVersion": "2026.3.13",
27
+ "heartbeat": {
28
+ "defaultAgentId": "main",
29
+ "agents": [
30
+ {
31
+ "agentId": "main",
32
+ "enabled": true,
33
+ "every": "30m",
34
+ "everyMs": 1800000
35
+ }
36
+ ]
37
+ },
38
+ "channelSummary": [],
39
+ "queuedSystemEvents": [],
40
+ "sessions": {
41
+ "paths": [
42
+ "/Users/cormorantai/.openclaw-ocbphase1/agents/main/sessions/sessions.json"
43
+ ],
44
+ "count": 1,
45
+ "defaults": {
46
+ "model": "qwen2.5:7b-instruct",
47
+ "contextTokens": 262144
48
+ },
49
+ "recent": [
50
+ {
51
+ "agentId": "main",
52
+ "key": "agent:main:main",
53
+ "kind": "direct",
54
+ "sessionId": "93eb604e-21e6-4802-81c1-04c889244efb",
55
+ "updatedAt": 1773675771940,
56
+ "age": 25804,
57
+ "abortedLastRun": false,
58
+ "inputTokens": 22808,
59
+ "outputTokens": 219,
60
+ "cacheRead": 0,
61
+ "cacheWrite": 0,
62
+ "totalTokens": 22808,
63
+ "totalTokensFresh": true,
64
+ "remainingTokens": 239336,
65
+ "percentUsed": 9,
66
+ "model": "qwen2.5:7b-instruct",
67
+ "contextTokens": 262144,
68
+ "flags": [
69
+ "id:93eb604e-21e6-4802-81c1-04c889244efb"
70
+ ]
71
+ }
72
+ ],
73
+ "byAgent": [
74
+ {
75
+ "agentId": "main",
76
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/agents/main/sessions/sessions.json",
77
+ "count": 1,
78
+ "recent": [
79
+ {
80
+ "agentId": "main",
81
+ "key": "agent:main:main",
82
+ "kind": "direct",
83
+ "sessionId": "93eb604e-21e6-4802-81c1-04c889244efb",
84
+ "updatedAt": 1773675771940,
85
+ "age": 25804,
86
+ "abortedLastRun": false,
87
+ "inputTokens": 22808,
88
+ "outputTokens": 219,
89
+ "cacheRead": 0,
90
+ "cacheWrite": 0,
91
+ "totalTokens": 22808,
92
+ "totalTokensFresh": true,
93
+ "remainingTokens": 239336,
94
+ "percentUsed": 9,
95
+ "model": "qwen2.5:7b-instruct",
96
+ "contextTokens": 262144,
97
+ "flags": [
98
+ "id:93eb604e-21e6-4802-81c1-04c889244efb"
99
+ ]
100
+ }
101
+ ]
102
+ }
103
+ ]
104
+ },
105
+ "os": {
106
+ "platform": "darwin",
107
+ "arch": "arm64",
108
+ "release": "25.3.0",
109
+ "label": "macos 26.3 (arm64)"
110
+ },
111
+ "update": {
112
+ "root": "/Users/cormorantai/opencormorant",
113
+ "installKind": "git",
114
+ "packageManager": "pnpm",
115
+ "git": {
116
+ "root": "/Users/cormorantai/opencormorant",
117
+ "sha": "66e02b296fa7c18c04dc94fe071d916042a30137",
118
+ "tag": null,
119
+ "branch": "main",
120
+ "upstream": "origin/main",
121
+ "dirty": false,
122
+ "ahead": 0,
123
+ "behind": 618,
124
+ "fetchOk": true
125
+ },
126
+ "deps": {
127
+ "manager": "pnpm",
128
+ "status": "ok",
129
+ "lockfilePath": "/Users/cormorantai/opencormorant/pnpm-lock.yaml",
130
+ "markerPath": "/Users/cormorantai/opencormorant/node_modules/.modules.yaml"
131
+ },
132
+ "registry": {
133
+ "latestVersion": "2026.3.13"
134
+ }
135
+ },
136
+ "updateChannel": "dev",
137
+ "updateChannelSource": "git-branch",
138
+ "memory": {
139
+ "agentId": "main",
140
+ "backend": "builtin",
141
+ "files": 0,
142
+ "chunks": 0,
143
+ "dirty": true,
144
+ "workspaceDir": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture",
145
+ "dbPath": "/Users/cormorantai/.openclaw-ocbphase1/memory/main.sqlite",
146
+ "provider": "gemini",
147
+ "model": "gemini-embedding-001",
148
+ "requestedProvider": "auto",
149
+ "sources": [
150
+ "memory"
151
+ ],
152
+ "extraPaths": [],
153
+ "sourceCounts": [
154
+ {
155
+ "source": "memory",
156
+ "files": 0,
157
+ "chunks": 0
158
+ }
159
+ ],
160
+ "cache": {
161
+ "enabled": true,
162
+ "entries": 0
163
+ },
164
+ "fts": {
165
+ "enabled": true,
166
+ "available": true
167
+ },
168
+ "vector": {
169
+ "enabled": true,
170
+ "available": true,
171
+ "extensionPath": "/Users/cormorantai/opencormorant/node_modules/.pnpm/sqlite-vec@0.1.7-alpha.2/node_modules/sqlite-vec-darwin-arm64/vec0.dylib"
172
+ },
173
+ "batch": {
174
+ "enabled": false,
175
+ "failures": 0,
176
+ "limit": 2,
177
+ "wait": true,
178
+ "concurrency": 2,
179
+ "pollIntervalMs": 2000,
180
+ "timeoutMs": 3600000
181
+ },
182
+ "custom": {
183
+ "searchMode": "hybrid",
184
+ "readonlyRecovery": {
185
+ "attempts": 0,
186
+ "successes": 0,
187
+ "failures": 0
188
+ }
189
+ }
190
+ },
191
+ "memoryPlugin": {
192
+ "enabled": true,
193
+ "slot": "memory-core"
194
+ },
195
+ "gateway": {
196
+ "mode": "local",
197
+ "url": "ws://127.0.0.1:19031",
198
+ "urlSource": "local loopback",
199
+ "misconfigured": false,
200
+ "reachable": false,
201
+ "connectLatencyMs": null,
202
+ "self": null,
203
+ "error": "connect failed: connect ECONNREFUSED 127.0.0.1:19031",
204
+ "authWarning": null
205
+ },
206
+ "gatewayService": {
207
+ "label": "LaunchAgent",
208
+ "installed": false,
209
+ "managedByOpenClaw": false,
210
+ "externallyManaged": false,
211
+ "loadedText": "not loaded",
212
+ "runtimeShort": "unknown"
213
+ },
214
+ "nodeService": {
215
+ "label": "LaunchAgent",
216
+ "installed": false,
217
+ "managedByOpenClaw": false,
218
+ "externallyManaged": false,
219
+ "loadedText": "not loaded",
220
+ "runtimeShort": "unknown"
221
+ },
222
+ "agents": {
223
+ "defaultId": "main",
224
+ "agents": [
225
+ {
226
+ "id": "main",
227
+ "workspaceDir": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture",
228
+ "bootstrapPending": false,
229
+ "sessionsPath": "/Users/cormorantai/.openclaw-ocbphase1/agents/main/sessions/sessions.json",
230
+ "sessionsCount": 1,
231
+ "lastUpdatedAt": 1773675771940,
232
+ "lastActiveAgeMs": 25800
233
+ }
234
+ ],
235
+ "totalSessions": 1,
236
+ "bootstrapPendingCount": 0
237
+ },
238
+ "securityAudit": {
239
+ "ts": 1773675800284,
240
+ "summary": {
241
+ "critical": 3,
242
+ "warn": 1,
243
+ "info": 1
244
+ },
245
+ "findings": [
246
+ {
247
+ "checkId": "summary.attack_surface",
248
+ "severity": "info",
249
+ "title": "Attack surface summary",
250
+ "detail": "groups: open=0, allowlist=0\ntools.elevated: enabled\nhooks.webhooks: disabled\nhooks.internal: disabled\nbrowser control: enabled\ntrust model: personal assistant (one trusted operator boundary), not hostile multi-tenant on one shared gateway"
251
+ },
252
+ {
253
+ "checkId": "gateway.trusted_proxies_missing",
254
+ "severity": "warn",
255
+ "title": "Reverse proxy headers are not trusted",
256
+ "detail": "gateway.bind is loopback and gateway.trustedProxies is empty. If you expose the Control UI through a reverse proxy, configure trusted proxies so local-client checks cannot be spoofed.",
257
+ "remediation": "Set gateway.trustedProxies to your proxy IPs or keep the Control UI local-only."
258
+ },
259
+ {
260
+ "checkId": "gateway.loopback_no_auth",
261
+ "severity": "critical",
262
+ "title": "Gateway auth missing on loopback",
263
+ "detail": "gateway.bind is loopback but no gateway auth secret is configured. If the Control UI is exposed through a reverse proxy, unauthenticated access is possible.",
264
+ "remediation": "Set gateway.auth (token recommended) or keep the Control UI local-only."
265
+ },
266
+ {
267
+ "checkId": "browser.control_no_auth",
268
+ "severity": "critical",
269
+ "title": "Browser control has no auth",
270
+ "detail": "Browser control HTTP routes are enabled but no gateway.auth token/password is configured. Any local process (or SSRF to loopback) can call browser control endpoints.",
271
+ "remediation": "Set gateway.auth.token (recommended) or gateway.auth.password so browser control HTTP routes require authentication. Restarting the gateway will auto-generate gateway.auth.token when browser control is enabled."
272
+ },
273
+ {
274
+ "checkId": "models.small_params",
275
+ "severity": "critical",
276
+ "title": "Small models require sandboxing and web tools disabled",
277
+ "detail": "Small models (<=300B params) detected:\n- ollama/qwen2.5:7b-instruct (7B) @ agents.defaults.model.primary (unsafe; sandbox=off; web=[web_search, web_fetch, browser])\nUncontrolled input tools allowed: web_search, web_fetch, browser.\nSmall models are not recommended for untrusted inputs.",
278
+ "remediation": "If you must use small models, enable sandboxing for all sessions (agents.defaults.sandbox.mode=\"all\") and disable web_search/web_fetch/browser (tools.deny=[\"group:web\",\"browser\"])."
279
+ }
280
+ ]
281
+ },
282
+ "secretDiagnostics": []
283
+ }
284
+ },
285
+ "statusAll": {
286
+ "command": "openclaw",
287
+ "args": [
288
+ "status",
289
+ "--all",
290
+ "--timeout",
291
+ "10000"
292
+ ],
293
+ "cwd": "/Users/cormorantai/openclawbrain",
294
+ "exitCode": 0,
295
+ "signal": null,
296
+ "ok": true,
297
+ "stdout": "[plugins] [openclawbrain] Plugin loaded (enabled=true, db=/Users/cormorantai/.openclaw-ocbphase1/lcm.db, threshold=0.75)\n[plugins] [openclawbrain] Plugin loaded (enabled=true, db=/Users/cormorantai/.openclaw-ocbphase1/lcm.db, threshold=0.75)\nOpenClaw status --all\n\nOverview\n┌─────────────────┬────────────────────────────────────────────────────────────────────────────────────────────────────┐\n│ Item │ Value │\n├─────────────────┼────────────────────────────────────────────────────────────────────────────────────────────────────┤\n│ Version │ 2026.3.13 │\n│ OS │ macos 26.3 (arm64) │\n│ Node │ 22.22.0 │\n│ Config │ $OPENCLAW_HOME/openclaw.json │\n│ Dashboard │ http://127.0.0.1:19031/ │\n│ Tailscale │ off · Running · cormorantais-mac-mini.tail499c70.ts.net │\n│ Channel │ dev (main) │\n│ Git │ main · @ 66e02b29 │\n│ Update │ git main · ↔ origin/main · behind 618 · npm latest 2026.3.13 · deps ok │\n│ Gateway │ local · ws://127.0.0.1:19031 (local loopback) · unreachable (connect failed: connect ECONNREFUSED │\n│ │ 127.0.0.1:19031) │\n│ Security │ Run: openclaw security audit --deep │\n│ Gateway self │ unknown │\n│ Gateway service │ LaunchAgent not installed │\n│ Node service │ LaunchAgent not installed │\n│ Agents │ 1 total · 0 bootstrapping · 1 active · 1 sessions │\n└─────────────────┴────────────────────────────────────────────────────────────────────────────────────────────────────┘\n\nChannels\n┌──────────┬─────────┬────────┬────────────────────────────────────────────────────────────────────────────────────────┐\n│ Channel │ Enabled │ State │ Detail │\n├──────────┼─────────┼────────┼────────────────────────────────────────────────────────────────────────────────────────┤\n└──────────┴─────────┴────────┴────────────────────────────────────────────────────────────────────────────────────────┘\n\nAgents\n┌────────────┬────────────────┬──────────┬──────────┬──────────────────────────────────────────────────────────────────┐\n│ Agent │ Bootstrap file │ Sessions │ Active │ Store │\n├────────────┼────────────────┼──────────┼──────────┼──────────────────────────────────────────────────────────────────┤\n│ main │ ABSENT │ 1 │ 1m ago │ $OPENCLAW_HOME/agents/main/sessions/sessions.json │\n└────────────┴────────────────┴──────────┴──────────┴──────────────────────────────────────────────────────────────────┘\n\nDiagnosis (read-only)\n\nGateway connection details:\n Gateway target: ws://127.0.0.1:19031\n Source: local loopback\n Config: /Users/cormorantai/.openclaw-ocbphase1/openclaw.json\n Bind: loopback\n\n✓ Config: /Users/cormorantai/.openclaw-ocbphase1/openclaw.json\n✓ Restart sentinel: none\n✓ Port 19031\n✓ Tailscale: off · Running · cormorantais-mac-mini.tail499c70.ts.net\n ips: 100.73.247.26, fd7a:115c:a1e0::e932:f71a\n✓ Skills: 9 eligible · 0 missing · /Users/cormorantai/.openclaw-ocbphase1/workspace-fixture\n! Channel issues skipped (gateway unreachable)\n\nGateway health:\n connect failed: connect ECONNREFUSED 127.0.0.1:19031\n\nPasteable debug report. Auth tokens redacted.\nTroubleshooting: https://docs.openclaw.ai/troubleshooting\n\n",
298
+ "stderr": "[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.\n[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.\n",
299
+ "error": null
300
+ },
301
+ "gatewayProbe": {
302
+ "command": "openclaw",
303
+ "args": [
304
+ "gateway",
305
+ "probe"
306
+ ],
307
+ "cwd": "/Users/cormorantai/openclawbrain",
308
+ "exitCode": 1,
309
+ "signal": null,
310
+ "ok": false,
311
+ "stdout": "[plugins] [openclawbrain] Plugin loaded (enabled=true, db=/Users/cormorantai/.openclaw-ocbphase1/lcm.db, threshold=0.75)\n│\n◇ Doctor changes ──────────────────────────────╮\n│ │\n│ Telegram configured, enabled automatically. │\n│ │\n├───────────────────────────────────────────────╯\n│\n◇ Doctor ──────────────────────────────────────────────╮\n│ │\n│ Run \"openclaw doctor --fix\" to apply these changes. │\n│ │\n├───────────────────────────────────────────────────────╯\nGateway Status\nReachable: no\nProbe budget: 3000ms\n\nDiscovery (this machine)\nFound 4 gateway(s) via Bonjour (local.)\n\nTargets\nLocal loopback ws://127.0.0.1:19031\n Connect: failed - connect failed: connect ECONNREFUSED 127.0.0.1:19031\n\n",
312
+ "stderr": "[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.\n",
313
+ "error": null
314
+ },
315
+ "gatewayStatus": {
316
+ "command": "openclaw",
317
+ "args": [
318
+ "gateway",
319
+ "status"
320
+ ],
321
+ "cwd": "/Users/cormorantai/openclawbrain",
322
+ "exitCode": 0,
323
+ "signal": null,
324
+ "ok": true,
325
+ "stdout": "[plugins] [openclawbrain] Plugin loaded (enabled=true, db=/Users/cormorantai/.openclaw-ocbphase1/lcm.db, threshold=0.75)\n│\n◇ Doctor changes ──────────────────────────────╮\n│ │\n│ Telegram configured, enabled automatically. │\n│ │\n├───────────────────────────────────────────────╯\n│\n◇ Doctor ──────────────────────────────────────────────╮\n│ │\n│ Run \"openclaw doctor --fix\" to apply these changes. │\n│ │\n├───────────────────────────────────────────────────────╯\nService: LaunchAgent (not loaded)\nFile logs: /tmp/openclaw/openclaw-2026-03-16.log\n\nConfig (cli): $OPENCLAW_HOME/openclaw.json\nConfig (service): $OPENCLAW_HOME/openclaw.json\n\nGateway: bind=loopback (127.0.0.1), port=19031 (env/config)\nProbe target: ws://127.0.0.1:19031\nDashboard: http://127.0.0.1:19031/\nProbe note: Loopback-only gateway; only local clients can connect.\n\nRuntime: unknown (Bad request.\nCould not find service \"ai.openclaw.gateway\" in domain for user gui: 501)\n\n\n\nTroubles: run openclaw status\nTroubleshooting: https://docs.openclaw.ai/troubleshooting\n",
326
+ "stderr": "[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.\nService config looks out of date or non-standard.\nService config issue: Gateway service PATH is not set; the daemon should use a minimal PATH.\nRecommendation: run \"openclaw doctor\" (or \"openclaw doctor --repair\").\nRPC probe: failed\nRPC target: ws://127.0.0.1:19031\n gateway url override requires explicit credentials\n Fix: pass --token or --password (or gatewayToken in tools).\n Config: /Users/cormorantai/.openclaw-ocbphase1/openclaw.json\nService unit not found.\nService not installed. Run: openclaw gateway install\nFile logs: /tmp/openclaw/openclaw-2026-03-16.log\nOther gateway-like services detected (best effort):\n- com.openclawbrain.daemon.activation.0ec88212fa7d (user, plist: /Users/cormorantai/Library/LaunchAgents/com.openclawbrain.daemon.activation.0ec88212fa7d.plist)\n- com.openclawbrain.daemon.activation.546e84bf06ac (user, plist: /Users/cormorantai/Library/LaunchAgents/com.openclawbrain.daemon.activation.546e84bf06ac.plist)\n- com.openclawbrain.daemon.activation.b3eeb450ca08 (user, plist: /Users/cormorantai/Library/LaunchAgents/com.openclawbrain.daemon.activation.b3eeb450ca08.plist)\nCleanup hint: launchctl bootout gui/$UID/ai.openclaw.gateway\nCleanup hint: rm ~/Library/LaunchAgents/ai.openclaw.gateway.plist\nRecommendation: run a single gateway per machine for most setups. One gateway supports multiple agents (see docs: /gateway#multiple-gateways-same-host).\nIf you need multiple gateways (e.g., a rescue bot on the same host), isolate ports + config/state (see docs: /gateway#multiple-gateways-same-host).\n",
327
+ "error": null
328
+ },
329
+ "doctor": {
330
+ "command": "openclaw",
331
+ "args": [
332
+ "doctor",
333
+ "--non-interactive"
334
+ ],
335
+ "cwd": "/Users/cormorantai/openclawbrain",
336
+ "exitCode": 0,
337
+ "signal": null,
338
+ "ok": true,
339
+ "stdout": "▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄\n██░▄▄▄░██░▄▄░██░▄▄▄██░▀██░██░▄▄▀██░████░▄▄▀██░███░██\n██░███░██░▀▀░██░▄▄▄██░█░█░██░█████░████░▀▀░██░█░█░██\n██░▀▀▀░██░█████░▀▀▀██░██▄░██░▀▀▄██░▀▀░█░██░██▄▀▄▀▄██\n▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀\n 🦞 OPENCLAW 🦞 \n \n┌ OpenClaw doctor\n[plugins] [openclawbrain] Plugin loaded (enabled=true, db=/Users/cormorantai/.openclaw-ocbphase1/lcm.db, threshold=0.75)\n│\n◇ Install ─────────────────────────────────────────────────────────╮\n│ │\n│ - package-lock.json present in a pnpm workspace. If you ran npm │\n│ install, remove it and reinstall with pnpm. │\n│ │\n├───────────────────────────────────────────────────────────────────╯\n│\n◇ Doctor changes ──────────────────────────────╮\n│ │\n│ Telegram configured, enabled automatically. │\n│ │\n├───────────────────────────────────────────────╯\n│\n◇ Doctor ──────────────────────────────────────────────╮\n│ │\n│ Run \"openclaw doctor --fix\" to apply these changes. │\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│ - OAuth dir not present ($OPENCLAW_HOME/credentials). Skipping create │\n│ because no WhatsApp/pairing channel config is active. │\n│ - Multiple state directories detected. This can split session history. │\n│ - /Users/cormorantai/.openclaw │\n│ Active state dir: $OPENCLAW_HOME │\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: 9 │\n│ Missing requirements: 43 │\n│ Blocked by allowlist: 0 │\n│ │\n├────────────────────────────╯\n│\n◇ Plugins ──────╮\n│ │\n│ Loaded: 8 │\n│ Disabled: 34 │\n│ Errors: 0 │\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:19031 │\n│ Source: local loopback │\n│ Config: /Users/cormorantai/.openclaw-ocbphase1/openclaw.json │\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",
340
+ "stderr": "[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.\n",
341
+ "error": null
342
+ },
343
+ "channelsStatus": {
344
+ "command": "openclaw",
345
+ "args": [
346
+ "channels",
347
+ "status",
348
+ "--probe"
349
+ ],
350
+ "cwd": "/Users/cormorantai/openclawbrain",
351
+ "exitCode": 0,
352
+ "signal": null,
353
+ "ok": true,
354
+ "stdout": "[plugins] [openclawbrain] Plugin loaded (enabled=true, db=/Users/cormorantai/.openclaw-ocbphase1/lcm.db, threshold=0.75)\n│\n◇ Doctor changes ──────────────────────────────╮\n│ │\n│ Telegram configured, enabled automatically. │\n│ │\n├───────────────────────────────────────────────╯\n│\n◇ Doctor ──────────────────────────────────────────────╮\n│ │\n│ Run \"openclaw doctor --fix\" to apply these changes. │\n│ │\n├───────────────────────────────────────────────────────╯\nChecking channel status (probe)…\nGateway not reachable; showing config-only status.\nConfig: /Users/cormorantai/.openclaw-ocbphase1/openclaw.json\nMode: local\n\n\nTip: https://docs.openclaw.ai/cli#status adds gateway health probes to status output (requires a reachable gateway).\n",
355
+ "stderr": "[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.\nGateway not reachable: Error: gateway closed (1006 abnormal closure (no close frame)): no close reason\nGateway target: ws://127.0.0.1:19031\nSource: local loopback\nConfig: /Users/cormorantai/.openclaw-ocbphase1/openclaw.json\nBind: loopback\n",
356
+ "error": null
357
+ }
358
+ },
359
+ "trace": {
360
+ "command": "node",
361
+ "args": [
362
+ "bin/openclawbrain.js",
363
+ "trace"
364
+ ],
365
+ "cwd": "/Users/cormorantai/openclawbrain",
366
+ "exitCode": 0,
367
+ "signal": null,
368
+ "ok": true,
369
+ "stdout": "{\n \"command\": \"trace\",\n \"trace\": {\n \"id\": \"bt_c79a93d6\",\n \"episodeId\": \"be_5a29c9cf-99b\",\n \"packVersion\": 1,\n \"queryText\": \"How do I open a pull request again?\",\n \"seedScores\": [\n {\n \"nodeId\": \"bn_40502fac-df0\",\n \"priorScore\": 0.7326886480086391,\n \"learnedSeedWeight\": 0,\n \"policyScore\": 0.7326886480086391,\n \"probability\": 0.9999999999986446,\n \"chosen\": true\n }\n ],\n \"trajectory\": [\n {\n \"stateSnapshot\": {\n \"currentNodeId\": null,\n \"hopCount\": 0,\n \"budgetRemaining\": 314572,\n \"visitedCount\": 0,\n \"firedCount\": 0\n },\n \"candidates\": [\n {\n \"action\": {\n \"type\": \"traverse\",\n \"targetNodeId\": \"bn_40502fac-df0\",\n \"seedScore\": 0.7326886480086391\n },\n \"score\": 0.7326886480086391,\n \"probability\": 0.9999999999986446,\n \"priorScore\": 0.7326886480086391,\n \"learnedSeedWeight\": 0\n },\n {\n \"action\": {\n \"type\": \"stop\"\n },\n \"score\": -2,\n \"probability\": 1.3554515361624555e-12\n }\n ],\n \"chosenAction\": {\n \"type\": \"traverse\",\n \"targetNodeId\": \"bn_40502fac-df0\",\n \"seedScore\": 0.7326886480086391\n },\n \"chosenActionProbability\": 0.9999999999986446,\n \"stopProbability\": 1.3554515361624555e-12\n },\n {\n \"stateSnapshot\": {\n \"currentNodeId\": \"bn_40502fac-df0\",\n \"hopCount\": 1,\n \"budgetRemaining\": 314539,\n \"visitedCount\": 1,\n \"firedCount\": 1\n },\n \"candidates\": [\n {\n \"action\": {\n \"type\": \"traverse\",\n \"targetNodeId\": \"bn_0e867ad3-a44\"\n },\n \"score\": 1.3833746213110998,\n \"probability\": 0.9999999999999754\n },\n {\n \"action\": {\n \"type\": \"stop\"\n },\n \"score\": -1.7496852866752284,\n \"probability\": 2.4733962892288202e-14\n }\n ],\n \"chosenAction\": {\n \"type\": \"traverse\",\n \"targetNodeId\": \"bn_0e867ad3-a44\"\n },\n \"chosenActionProbability\": 0.9999999999999754,\n \"stopProbability\": 2.4733962892288202e-14\n },\n {\n \"stateSnapshot\": {\n \"currentNodeId\": \"bn_0e867ad3-a44\",\n \"hopCount\": 2,\n \"budgetRemaining\": 314524,\n \"visitedCount\": 2,\n \"firedCount\": 2\n },\n \"candidates\": [\n {\n \"action\": {\n \"type\": \"traverse\",\n \"targetNodeId\": \"bn_7aa03640-409\"\n },\n \"score\": 1.6571061718222952,\n \"probability\": 0.9346462837250167\n },\n {\n \"action\": {\n \"type\": \"traverse\",\n \"targetNodeId\": \"bn_56d0d6a0-bf5\"\n },\n \"score\": 1.3910707872392618,\n \"probability\": 0.065353716274965\n },\n {\n \"action\": {\n \"type\": \"stop\"\n },\n \"score\": -1.499542235163969,\n \"probability\": 1.825985980821016e-14\n }\n ],\n \"chosenAction\": {\n \"type\": \"traverse\",\n \"targetNodeId\": \"bn_7aa03640-409\"\n },\n \"chosenActionProbability\": 0.9346462837250167,\n \"stopProbability\": 1.825985980821016e-14\n },\n {\n \"stateSnapshot\": {\n \"currentNodeId\": \"bn_7aa03640-409\",\n \"hopCount\": 3,\n \"budgetRemaining\": 314510,\n \"visitedCount\": 3,\n \"firedCount\": 3\n },\n \"candidates\": [\n {\n \"action\": {\n \"type\": \"traverse\",\n \"targetNodeId\": \"bn_56d0d6a0-bf5\"\n },\n \"score\": 1.385168196641951,\n \"probability\": 0.9999999999963844\n },\n {\n \"action\": {\n \"type\": \"stop\"\n },\n \"score\": -1.2494087204201265,\n \"probability\": 3.61557877056812e-12\n }\n ],\n \"chosenAction\": {\n \"type\": \"traverse\",\n \"targetNodeId\": \"bn_56d0d6a0-bf5\"\n },\n \"chosenActionProbability\": 0.9999999999963844,\n \"stopProbability\": 3.61557877056812e-12\n },\n {\n \"stateSnapshot\": {\n \"currentNodeId\": \"bn_56d0d6a0-bf5\",\n \"hopCount\": 4,\n \"budgetRemaining\": 314473,\n \"visitedCount\": 4,\n \"firedCount\": 4\n },\n \"candidates\": [\n {\n \"action\": {\n \"type\": \"stop\"\n },\n \"score\": 0,\n \"probability\": 1\n }\n ],\n \"chosenAction\": {\n \"type\": \"stop\"\n },\n \"chosenActionProbability\": 1,\n \"stopProbability\": 1\n }\n ],\n \"firedNodes\": [\n \"bn_40502fac-df0\",\n \"bn_0e867ad3-a44\",\n \"bn_7aa03640-409\",\n \"bn_56d0d6a0-bf5\"\n ],\n \"vetoedNodes\": [],\n \"contextChars\": 391,\n \"footer\": \"Brain · 1 seeds · start bn_40502fac-df0 · 4 hops · 4 fired · 0 veto · 391 chars\",\n \"createdAt\": 1773635212770\n },\n \"chosenSeed\": {\n \"nodeId\": \"bn_40502fac-df0\",\n \"priorScore\": 0.7326886480086391,\n \"learnedSeedWeight\": 0,\n \"policyScore\": 0.7326886480086391,\n \"probability\": 0.9999999999986446,\n \"chosen\": true\n },\n \"finalSectionOrder\": [\n \"correction_cards\",\n \"route_selected_evidence\",\n \"toolcards_and_workflows\",\n \"transcript_support\"\n ]\n}\n",
370
+ "stderr": "",
371
+ "error": null,
372
+ "parsed": {
373
+ "command": "trace",
374
+ "trace": {
375
+ "id": "bt_c79a93d6",
376
+ "episodeId": "be_5a29c9cf-99b",
377
+ "packVersion": 1,
378
+ "queryText": "How do I open a pull request again?",
379
+ "seedScores": [
380
+ {
381
+ "nodeId": "bn_40502fac-df0",
382
+ "priorScore": 0.7326886480086391,
383
+ "learnedSeedWeight": 0,
384
+ "policyScore": 0.7326886480086391,
385
+ "probability": 0.9999999999986446,
386
+ "chosen": true
387
+ }
388
+ ],
389
+ "trajectory": [
390
+ {
391
+ "stateSnapshot": {
392
+ "currentNodeId": null,
393
+ "hopCount": 0,
394
+ "budgetRemaining": 314572,
395
+ "visitedCount": 0,
396
+ "firedCount": 0
397
+ },
398
+ "candidates": [
399
+ {
400
+ "action": {
401
+ "type": "traverse",
402
+ "targetNodeId": "bn_40502fac-df0",
403
+ "seedScore": 0.7326886480086391
404
+ },
405
+ "score": 0.7326886480086391,
406
+ "probability": 0.9999999999986446,
407
+ "priorScore": 0.7326886480086391,
408
+ "learnedSeedWeight": 0
409
+ },
410
+ {
411
+ "action": {
412
+ "type": "stop"
413
+ },
414
+ "score": -2,
415
+ "probability": 1.3554515361624555e-12
416
+ }
417
+ ],
418
+ "chosenAction": {
419
+ "type": "traverse",
420
+ "targetNodeId": "bn_40502fac-df0",
421
+ "seedScore": 0.7326886480086391
422
+ },
423
+ "chosenActionProbability": 0.9999999999986446,
424
+ "stopProbability": 1.3554515361624555e-12
425
+ },
426
+ {
427
+ "stateSnapshot": {
428
+ "currentNodeId": "bn_40502fac-df0",
429
+ "hopCount": 1,
430
+ "budgetRemaining": 314539,
431
+ "visitedCount": 1,
432
+ "firedCount": 1
433
+ },
434
+ "candidates": [
435
+ {
436
+ "action": {
437
+ "type": "traverse",
438
+ "targetNodeId": "bn_0e867ad3-a44"
439
+ },
440
+ "score": 1.3833746213110998,
441
+ "probability": 0.9999999999999754
442
+ },
443
+ {
444
+ "action": {
445
+ "type": "stop"
446
+ },
447
+ "score": -1.7496852866752284,
448
+ "probability": 2.4733962892288202e-14
449
+ }
450
+ ],
451
+ "chosenAction": {
452
+ "type": "traverse",
453
+ "targetNodeId": "bn_0e867ad3-a44"
454
+ },
455
+ "chosenActionProbability": 0.9999999999999754,
456
+ "stopProbability": 2.4733962892288202e-14
457
+ },
458
+ {
459
+ "stateSnapshot": {
460
+ "currentNodeId": "bn_0e867ad3-a44",
461
+ "hopCount": 2,
462
+ "budgetRemaining": 314524,
463
+ "visitedCount": 2,
464
+ "firedCount": 2
465
+ },
466
+ "candidates": [
467
+ {
468
+ "action": {
469
+ "type": "traverse",
470
+ "targetNodeId": "bn_7aa03640-409"
471
+ },
472
+ "score": 1.6571061718222952,
473
+ "probability": 0.9346462837250167
474
+ },
475
+ {
476
+ "action": {
477
+ "type": "traverse",
478
+ "targetNodeId": "bn_56d0d6a0-bf5"
479
+ },
480
+ "score": 1.3910707872392618,
481
+ "probability": 0.065353716274965
482
+ },
483
+ {
484
+ "action": {
485
+ "type": "stop"
486
+ },
487
+ "score": -1.499542235163969,
488
+ "probability": 1.825985980821016e-14
489
+ }
490
+ ],
491
+ "chosenAction": {
492
+ "type": "traverse",
493
+ "targetNodeId": "bn_7aa03640-409"
494
+ },
495
+ "chosenActionProbability": 0.9346462837250167,
496
+ "stopProbability": 1.825985980821016e-14
497
+ },
498
+ {
499
+ "stateSnapshot": {
500
+ "currentNodeId": "bn_7aa03640-409",
501
+ "hopCount": 3,
502
+ "budgetRemaining": 314510,
503
+ "visitedCount": 3,
504
+ "firedCount": 3
505
+ },
506
+ "candidates": [
507
+ {
508
+ "action": {
509
+ "type": "traverse",
510
+ "targetNodeId": "bn_56d0d6a0-bf5"
511
+ },
512
+ "score": 1.385168196641951,
513
+ "probability": 0.9999999999963844
514
+ },
515
+ {
516
+ "action": {
517
+ "type": "stop"
518
+ },
519
+ "score": -1.2494087204201265,
520
+ "probability": 3.61557877056812e-12
521
+ }
522
+ ],
523
+ "chosenAction": {
524
+ "type": "traverse",
525
+ "targetNodeId": "bn_56d0d6a0-bf5"
526
+ },
527
+ "chosenActionProbability": 0.9999999999963844,
528
+ "stopProbability": 3.61557877056812e-12
529
+ },
530
+ {
531
+ "stateSnapshot": {
532
+ "currentNodeId": "bn_56d0d6a0-bf5",
533
+ "hopCount": 4,
534
+ "budgetRemaining": 314473,
535
+ "visitedCount": 4,
536
+ "firedCount": 4
537
+ },
538
+ "candidates": [
539
+ {
540
+ "action": {
541
+ "type": "stop"
542
+ },
543
+ "score": 0,
544
+ "probability": 1
545
+ }
546
+ ],
547
+ "chosenAction": {
548
+ "type": "stop"
549
+ },
550
+ "chosenActionProbability": 1,
551
+ "stopProbability": 1
552
+ }
553
+ ],
554
+ "firedNodes": [
555
+ "bn_40502fac-df0",
556
+ "bn_0e867ad3-a44",
557
+ "bn_7aa03640-409",
558
+ "bn_56d0d6a0-bf5"
559
+ ],
560
+ "vetoedNodes": [],
561
+ "contextChars": 391,
562
+ "footer": "Brain · 1 seeds · start bn_40502fac-df0 · 4 hops · 4 fired · 0 veto · 391 chars",
563
+ "createdAt": 1773635212770
564
+ },
565
+ "chosenSeed": {
566
+ "nodeId": "bn_40502fac-df0",
567
+ "priorScore": 0.7326886480086391,
568
+ "learnedSeedWeight": 0,
569
+ "policyScore": 0.7326886480086391,
570
+ "probability": 0.9999999999986446,
571
+ "chosen": true
572
+ },
573
+ "finalSectionOrder": [
574
+ "correction_cards",
575
+ "route_selected_evidence",
576
+ "toolcards_and_workflows",
577
+ "transcript_support"
578
+ ]
579
+ }
580
+ },
581
+ "setup": {
582
+ "linkedPlugin": "/Users/cormorantai/openclawbrain",
583
+ "lcmDbPath": "/Users/cormorantai/.openclaw-ocbphase1/lcm.db",
584
+ "brainRoot": "/Users/cormorantai/.openclaw-ocbphase1/openclawbrain",
585
+ "manualContextEngineSlot": null,
586
+ "validationMode": "sterile-lane",
587
+ "validationLaneName": "ocbphase1",
588
+ "validationGatewayPort": 19031,
589
+ "validationModel": "ollama/qwen2.5:7b-instruct",
590
+ "workerMode": "child",
591
+ "embeddingProvider": "ollama",
592
+ "embeddingModel": "bge-large:latest",
593
+ "agentTimeoutMs": 120000
594
+ },
595
+ "init": {
596
+ "command": "init",
597
+ "workspaceRoot": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture",
598
+ "summary": "Brain initialized: 3 nodes (3 chunk), 4 edges",
599
+ "packVersion": 12
600
+ },
601
+ "doctor": {
602
+ "command": "doctor",
603
+ "brainRoot": "/Users/cormorantai/.openclaw-ocbphase1/openclawbrain",
604
+ "stateDbExists": true,
605
+ "currentPackVersion": 12,
606
+ "currentPackSnapshotExists": true,
607
+ "embeddingConfigured": true,
608
+ "embeddingProvider": "ollama",
609
+ "embeddingModel": "bge-large:latest",
610
+ "embeddingBaseUrl": "http://127.0.0.1:11434/v1",
611
+ "embeddingAuthMode": "none",
612
+ "embeddingConfigError": null,
613
+ "shadowMode": false,
614
+ "workerMode": "child",
615
+ "workerModeDevOnly": false,
616
+ "workerModeWarning": null,
617
+ "workerPid": null,
618
+ "workerStatus": "unknown",
619
+ "workerLastHeartbeatAt": null,
620
+ "workerLastReadyAt": null,
621
+ "workerHealthy": false,
622
+ "workerLastExit": null,
623
+ "workerRestartCount": 0,
624
+ "workerLastRestartAt": null,
625
+ "workerStartedAt": null,
626
+ "workerLastReloadRequestedAt": null,
627
+ "workerLastReloadAckAt": null,
628
+ "workerLastTickAt": null,
629
+ "workerLastTickResultAt": null,
630
+ "workerLastTickOk": null,
631
+ "workerLastTickError": null,
632
+ "workerLastFatalError": null,
633
+ "disabled": false,
634
+ "pendingEvidence": 1,
635
+ "mutationBacklog": {
636
+ "pending": 0,
637
+ "validated": 0,
638
+ "promoted": 0,
639
+ "rejected": 0
640
+ },
641
+ "orphanedTraceRows": 0,
642
+ "nodeCount": 3,
643
+ "edgeCount": 4,
644
+ "lastTraceId": "bt_c79a93d6"
645
+ },
646
+ "status": {
647
+ "command": "status",
648
+ "brainRoot": "/Users/cormorantai/.openclaw-ocbphase1/openclawbrain",
649
+ "disabled": false,
650
+ "shadowMode": false,
651
+ "embeddingProvider": "ollama",
652
+ "embeddingModel": "bge-large:latest",
653
+ "embeddingBaseUrl": "http://127.0.0.1:11434/v1",
654
+ "embeddingAuthMode": "none",
655
+ "embeddingConfigError": null,
656
+ "workerMode": "child",
657
+ "workerModeDevOnly": false,
658
+ "workerModeWarning": null,
659
+ "workerPid": null,
660
+ "workerStatus": "unknown",
661
+ "workerLastHeartbeatAt": null,
662
+ "workerLastReadyAt": null,
663
+ "workerHealthy": false,
664
+ "workerLastExit": null,
665
+ "workerRestartCount": 0,
666
+ "workerLastRestartAt": null,
667
+ "workerStartedAt": null,
668
+ "workerLastReloadRequestedAt": null,
669
+ "workerLastReloadAckAt": null,
670
+ "workerLastTickAt": null,
671
+ "workerLastTickResultAt": null,
672
+ "workerLastTickOk": null,
673
+ "workerLastTickError": null,
674
+ "workerLastFatalError": null,
675
+ "currentPackVersion": 12,
676
+ "currentPackMetadata": {
677
+ "reason": "cli-init",
678
+ "workspaceRoot": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture",
679
+ "summary": "Brain initialized: 3 nodes (3 chunk), 4 edges"
680
+ },
681
+ "pendingEvidence": 1,
682
+ "pendingEvidenceBySource": {
683
+ "human": 0,
684
+ "self": 0,
685
+ "scanner": 1,
686
+ "teacher": 0
687
+ },
688
+ "pendingLabels": 0,
689
+ "pendingLabelsBySource": {
690
+ "human": 0,
691
+ "self": 0,
692
+ "scanner": 0,
693
+ "teacher": 0
694
+ },
695
+ "mutationBacklog": {
696
+ "pending": 0,
697
+ "validated": 0,
698
+ "promoted": 0,
699
+ "rejected": 0
700
+ },
701
+ "lastPromotionReason": null,
702
+ "lastReplayFailureReason": null,
703
+ "lastAssemblyDecision": {
704
+ "mode": "use_brain",
705
+ "footer": "Brain · 1 seeds · start bn_40502fac-df0 · 4 hops · 4 fired · 0 veto · 391 chars",
706
+ "episodeId": "be_5a29c9cf-99b",
707
+ "traceId": "bt_c79a93d6"
708
+ },
709
+ "seedLearningEnabled": false,
710
+ "recentTraceCount": 1,
711
+ "nodeCount": 3,
712
+ "edgeCount": 4,
713
+ "nodesByKind": {
714
+ "chunk": 3,
715
+ "workflow": 0,
716
+ "correction": 0,
717
+ "toolcard": 0,
718
+ "episode_anchor": 0,
719
+ "summary_bridge": 0
720
+ },
721
+ "edgesByKind": {
722
+ "sibling": 2,
723
+ "semantic": 2,
724
+ "learned": 0,
725
+ "seed": 0,
726
+ "inhibitory": 0,
727
+ "bridge": 0
728
+ },
729
+ "firedPerQuery": 4,
730
+ "dormantPercent": 1,
731
+ "inhibitoryPercent": 0,
732
+ "orphanCount": 0,
733
+ "avgPathLength": 5,
734
+ "avgReward": 0,
735
+ "crossFileEdgePercent": 0.5,
736
+ "churn": 0,
737
+ "packVersion": 12,
738
+ "lastUpdateAt": 1773675825005,
739
+ "totalEpisodes": 1
740
+ },
741
+ "runtime": {
742
+ "ok": true,
743
+ "teachRetrieval": {
744
+ "taughtNodeId": "bn_2000f3c7-793",
745
+ "packVersion": 17,
746
+ "retrievedCorrectionVisible": true,
747
+ "traceIncludesTaughtNode": true,
748
+ "retrievedPackVersion": 17
749
+ },
750
+ "workerDownFailOpen": {
751
+ "servedBeforeCrash": true,
752
+ "servedPullRequestGuidanceBeforeCrash": true,
753
+ "workerHealthyAfterCrash": false,
754
+ "workerLastExit": {
755
+ "code": null,
756
+ "signal": "SIGKILL",
757
+ "at": 1773675824182
758
+ },
759
+ "currentPackVersion": 8,
760
+ "servedAfterCrash": true,
761
+ "servedPackVersion": 8,
762
+ "servedPullRequestGuidance": true
763
+ }
764
+ },
765
+ "agent": {
766
+ "recurrentPrimer": {
767
+ "payloads": [
768
+ {
769
+ "text": "To open a pull request (PR) again, follow these steps:\n\n1. **Ensure Your Branch Is Up-to-Date:**\n ```sh\n git pull origin main\n ```\n\n2. **Make Your Changes:**\n - Add your code or make your changes.\n\n3. **Commit Your Changes:**\n ```sh\n git add .\n git commit -m \"Your descriptive commit message\"\n ```\n\n4. **Push Your Changes to the Remote Repository:**\n ```sh\n git push origin <your-branch>\n ```\n\n5. **Create the Pull Request:**\n - Go to your repository on GitHub.\n - Click on the \"Pull Requests\" tab.\n - Click on the \"New Pull Request\" button.\n - Select the base repository and branch (usually `main` or `master`), and the source branch (your branch).\n - Add a title and description for the PR.\n - Click on \"Create Pull Request.\"\n\nAlternatively, you can use the `gh` CLI tool to create the pull request directly from the terminal:\n\n```sh\ngh pr create --title \"Your PR title\" --body \"Your PR description\" --base main --head <your-branch>\n```\n\nWould you like to proceed with any of these steps or need further assistance?",
770
+ "mediaUrl": null
771
+ }
772
+ ],
773
+ "meta": {
774
+ "durationMs": 9545,
775
+ "agentMeta": {
776
+ "sessionId": "475abd74-ed4f-4334-a896-8ffd7d81eec7",
777
+ "provider": "ollama",
778
+ "model": "qwen2.5:7b-instruct",
779
+ "usage": {
780
+ "input": 23045,
781
+ "output": 272,
782
+ "total": 23317
783
+ },
784
+ "lastCallUsage": {
785
+ "input": 23045,
786
+ "output": 272,
787
+ "cacheRead": 0,
788
+ "cacheWrite": 0,
789
+ "total": 23317
790
+ },
791
+ "promptTokens": 23045
792
+ },
793
+ "aborted": false,
794
+ "systemPromptReport": {
795
+ "source": "run",
796
+ "generatedAt": 1773675827511,
797
+ "sessionId": "93eb604e-21e6-4802-81c1-04c889244efb",
798
+ "sessionKey": "agent:main:main",
799
+ "provider": "ollama",
800
+ "model": "qwen2.5:7b-instruct",
801
+ "workspaceDir": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture",
802
+ "bootstrapMaxChars": 20000,
803
+ "bootstrapTotalMaxChars": 150000,
804
+ "bootstrapTruncation": {
805
+ "warningMode": "once",
806
+ "warningShown": false,
807
+ "truncatedFiles": 0,
808
+ "nearLimitFiles": 0,
809
+ "totalNearLimit": false
810
+ },
811
+ "sandbox": {
812
+ "mode": "off",
813
+ "sandboxed": false
814
+ },
815
+ "systemPrompt": {
816
+ "chars": 31507,
817
+ "projectContextChars": 13769,
818
+ "nonProjectContextChars": 17738
819
+ },
820
+ "injectedWorkspaceFiles": [
821
+ {
822
+ "name": "AGENTS.md",
823
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/AGENTS.md",
824
+ "missing": false,
825
+ "rawChars": 7809,
826
+ "injectedChars": 7809,
827
+ "truncated": false
828
+ },
829
+ {
830
+ "name": "SOUL.md",
831
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/SOUL.md",
832
+ "missing": false,
833
+ "rawChars": 1664,
834
+ "injectedChars": 1664,
835
+ "truncated": false
836
+ },
837
+ {
838
+ "name": "TOOLS.md",
839
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/TOOLS.md",
840
+ "missing": false,
841
+ "rawChars": 850,
842
+ "injectedChars": 850,
843
+ "truncated": false
844
+ },
845
+ {
846
+ "name": "IDENTITY.md",
847
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/IDENTITY.md",
848
+ "missing": false,
849
+ "rawChars": 633,
850
+ "injectedChars": 633,
851
+ "truncated": false
852
+ },
853
+ {
854
+ "name": "USER.md",
855
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/USER.md",
856
+ "missing": false,
857
+ "rawChars": 474,
858
+ "injectedChars": 474,
859
+ "truncated": false
860
+ },
861
+ {
862
+ "name": "HEARTBEAT.md",
863
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/HEARTBEAT.md",
864
+ "missing": false,
865
+ "rawChars": 167,
866
+ "injectedChars": 167,
867
+ "truncated": false
868
+ },
869
+ {
870
+ "name": "BOOTSTRAP.md",
871
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/BOOTSTRAP.md",
872
+ "missing": false,
873
+ "rawChars": 1449,
874
+ "injectedChars": 1449,
875
+ "truncated": false
876
+ }
877
+ ],
878
+ "skills": {
879
+ "promptChars": 4781,
880
+ "entries": [
881
+ {
882
+ "name": "coding-agent",
883
+ "blockChars": 808
884
+ },
885
+ {
886
+ "name": "gh-issues",
887
+ "blockChars": 484
888
+ },
889
+ {
890
+ "name": "github",
891
+ "blockChars": 548
892
+ },
893
+ {
894
+ "name": "gog",
895
+ "blockChars": 208
896
+ },
897
+ {
898
+ "name": "healthcheck",
899
+ "blockChars": 467
900
+ },
901
+ {
902
+ "name": "node-connect",
903
+ "blockChars": 517
904
+ },
905
+ {
906
+ "name": "session-logs",
907
+ "blockChars": 229
908
+ },
909
+ {
910
+ "name": "skill-creator",
911
+ "blockChars": 735
912
+ },
913
+ {
914
+ "name": "weather",
915
+ "blockChars": 392
916
+ }
917
+ ]
918
+ },
919
+ "tools": {
920
+ "listChars": 4389,
921
+ "schemaChars": 23292,
922
+ "entries": [
923
+ {
924
+ "name": "read",
925
+ "summaryChars": 298,
926
+ "schemaChars": 392,
927
+ "propertiesCount": 4
928
+ },
929
+ {
930
+ "name": "edit",
931
+ "summaryChars": 129,
932
+ "schemaChars": 591,
933
+ "propertiesCount": 6
934
+ },
935
+ {
936
+ "name": "write",
937
+ "summaryChars": 127,
938
+ "schemaChars": 313,
939
+ "propertiesCount": 3
940
+ },
941
+ {
942
+ "name": "exec",
943
+ "summaryChars": 181,
944
+ "schemaChars": 1086,
945
+ "propertiesCount": 12
946
+ },
947
+ {
948
+ "name": "process",
949
+ "summaryChars": 85,
950
+ "schemaChars": 961,
951
+ "propertiesCount": 12
952
+ },
953
+ {
954
+ "name": "browser",
955
+ "summaryChars": 1251,
956
+ "schemaChars": 2799,
957
+ "propertiesCount": 48
958
+ },
959
+ {
960
+ "name": "canvas",
961
+ "summaryChars": 106,
962
+ "schemaChars": 661,
963
+ "propertiesCount": 18
964
+ },
965
+ {
966
+ "name": "nodes",
967
+ "summaryChars": 122,
968
+ "schemaChars": 1800,
969
+ "propertiesCount": 37
970
+ },
971
+ {
972
+ "name": "cron",
973
+ "summaryChars": 2689,
974
+ "schemaChars": 690,
975
+ "propertiesCount": 13
976
+ },
977
+ {
978
+ "name": "message",
979
+ "summaryChars": 89,
980
+ "schemaChars": 4872,
981
+ "propertiesCount": 91
982
+ },
983
+ {
984
+ "name": "tts",
985
+ "summaryChars": 152,
986
+ "schemaChars": 223,
987
+ "propertiesCount": 2
988
+ },
989
+ {
990
+ "name": "gateway",
991
+ "summaryChars": 464,
992
+ "schemaChars": 497,
993
+ "propertiesCount": 12
994
+ },
995
+ {
996
+ "name": "agents_list",
997
+ "summaryChars": 118,
998
+ "schemaChars": 33,
999
+ "propertiesCount": 0
1000
+ },
1001
+ {
1002
+ "name": "sessions_list",
1003
+ "summaryChars": 54,
1004
+ "schemaChars": 212,
1005
+ "propertiesCount": 4
1006
+ },
1007
+ {
1008
+ "name": "sessions_history",
1009
+ "summaryChars": 36,
1010
+ "schemaChars": 161,
1011
+ "propertiesCount": 3
1012
+ },
1013
+ {
1014
+ "name": "sessions_send",
1015
+ "summaryChars": 84,
1016
+ "schemaChars": 273,
1017
+ "propertiesCount": 5
1018
+ },
1019
+ {
1020
+ "name": "sessions_yield",
1021
+ "summaryChars": 97,
1022
+ "schemaChars": 60,
1023
+ "propertiesCount": 1
1024
+ },
1025
+ {
1026
+ "name": "sessions_spawn",
1027
+ "summaryChars": 198,
1028
+ "schemaChars": 1179,
1029
+ "propertiesCount": 17
1030
+ },
1031
+ {
1032
+ "name": "subagents",
1033
+ "summaryChars": 105,
1034
+ "schemaChars": 191,
1035
+ "propertiesCount": 4
1036
+ },
1037
+ {
1038
+ "name": "session_status",
1039
+ "summaryChars": 207,
1040
+ "schemaChars": 89,
1041
+ "propertiesCount": 2
1042
+ },
1043
+ {
1044
+ "name": "web_search",
1045
+ "summaryChars": 123,
1046
+ "schemaChars": 767,
1047
+ "propertiesCount": 7
1048
+ },
1049
+ {
1050
+ "name": "web_fetch",
1051
+ "summaryChars": 129,
1052
+ "schemaChars": 374,
1053
+ "propertiesCount": 3
1054
+ },
1055
+ {
1056
+ "name": "pdf",
1057
+ "summaryChars": 275,
1058
+ "schemaChars": 400,
1059
+ "propertiesCount": 6
1060
+ },
1061
+ {
1062
+ "name": "lcm_grep",
1063
+ "summaryChars": 320,
1064
+ "schemaChars": 1193,
1065
+ "propertiesCount": 8
1066
+ },
1067
+ {
1068
+ "name": "lcm_describe",
1069
+ "summaryChars": 233,
1070
+ "schemaChars": 592,
1071
+ "propertiesCount": 4
1072
+ },
1073
+ {
1074
+ "name": "lcm_expand",
1075
+ "summaryChars": 400,
1076
+ "schemaChars": 987,
1077
+ "propertiesCount": 7
1078
+ },
1079
+ {
1080
+ "name": "lcm_expand_query",
1081
+ "summaryChars": 205,
1082
+ "schemaChars": 970,
1083
+ "propertiesCount": 7
1084
+ },
1085
+ {
1086
+ "name": "brain_teach",
1087
+ "summaryChars": 126,
1088
+ "schemaChars": 494,
1089
+ "propertiesCount": 3
1090
+ },
1091
+ {
1092
+ "name": "brain_status",
1093
+ "summaryChars": 81,
1094
+ "schemaChars": 33,
1095
+ "propertiesCount": 0
1096
+ },
1097
+ {
1098
+ "name": "brain_trace",
1099
+ "summaryChars": 173,
1100
+ "schemaChars": 132,
1101
+ "propertiesCount": 1
1102
+ },
1103
+ {
1104
+ "name": "memory_search",
1105
+ "summaryChars": 334,
1106
+ "schemaChars": 139,
1107
+ "propertiesCount": 3
1108
+ },
1109
+ {
1110
+ "name": "memory_get",
1111
+ "summaryChars": 151,
1112
+ "schemaChars": 128,
1113
+ "propertiesCount": 3
1114
+ }
1115
+ ]
1116
+ }
1117
+ },
1118
+ "stopReason": "stop"
1119
+ }
1120
+ },
1121
+ "recurrentQuery": {
1122
+ "payloads": [
1123
+ {
1124
+ "text": "To open a pull request (PR) again, follow these steps:\n\n1. **Ensure Your Branch Is Up-to-Date:**\n ```sh\n git pull origin main\n ```\n\n2. **Make Your Changes:**\n - Add your code or make your changes.\n\n3. **Commit Your Changes:**\n ```sh\n git add .\n git commit -m \"Your descriptive commit message\"\n ```\n\n4. **Push Your Changes to the Remote Repository:**\n ```sh\n git push origin <your-branch>\n ```\n\n5. **Create the Pull Request:**\n - Go to your repository on GitHub.\n - Click on the \"Pull Requests\" tab.\n - Click on the \"New Pull Request\" button.\n - Select the base repository and branch (usually `main` or `master`), and the source branch (your branch).\n - Add a title and description for the PR.\n - Click on \"Create Pull Request.\"\n\nWould you like to proceed with any of these steps or need further assistance?",
1125
+ "mediaUrl": null
1126
+ }
1127
+ ],
1128
+ "meta": {
1129
+ "durationMs": 7835,
1130
+ "agentMeta": {
1131
+ "sessionId": "475abd74-ed4f-4334-a896-8ffd7d81eec7",
1132
+ "provider": "ollama",
1133
+ "model": "qwen2.5:7b-instruct",
1134
+ "usage": {
1135
+ "input": 23333,
1136
+ "output": 219,
1137
+ "total": 23552
1138
+ },
1139
+ "lastCallUsage": {
1140
+ "input": 23333,
1141
+ "output": 219,
1142
+ "cacheRead": 0,
1143
+ "cacheWrite": 0,
1144
+ "total": 23552
1145
+ },
1146
+ "promptTokens": 23333
1147
+ },
1148
+ "aborted": false,
1149
+ "systemPromptReport": {
1150
+ "source": "run",
1151
+ "generatedAt": 1773675839208,
1152
+ "sessionId": "93eb604e-21e6-4802-81c1-04c889244efb",
1153
+ "sessionKey": "agent:main:main",
1154
+ "provider": "ollama",
1155
+ "model": "qwen2.5:7b-instruct",
1156
+ "workspaceDir": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture",
1157
+ "bootstrapMaxChars": 20000,
1158
+ "bootstrapTotalMaxChars": 150000,
1159
+ "bootstrapTruncation": {
1160
+ "warningMode": "once",
1161
+ "warningShown": false,
1162
+ "truncatedFiles": 0,
1163
+ "nearLimitFiles": 0,
1164
+ "totalNearLimit": false
1165
+ },
1166
+ "sandbox": {
1167
+ "mode": "off",
1168
+ "sandboxed": false
1169
+ },
1170
+ "systemPrompt": {
1171
+ "chars": 31507,
1172
+ "projectContextChars": 13769,
1173
+ "nonProjectContextChars": 17738
1174
+ },
1175
+ "injectedWorkspaceFiles": [
1176
+ {
1177
+ "name": "AGENTS.md",
1178
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/AGENTS.md",
1179
+ "missing": false,
1180
+ "rawChars": 7809,
1181
+ "injectedChars": 7809,
1182
+ "truncated": false
1183
+ },
1184
+ {
1185
+ "name": "SOUL.md",
1186
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/SOUL.md",
1187
+ "missing": false,
1188
+ "rawChars": 1664,
1189
+ "injectedChars": 1664,
1190
+ "truncated": false
1191
+ },
1192
+ {
1193
+ "name": "TOOLS.md",
1194
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/TOOLS.md",
1195
+ "missing": false,
1196
+ "rawChars": 850,
1197
+ "injectedChars": 850,
1198
+ "truncated": false
1199
+ },
1200
+ {
1201
+ "name": "IDENTITY.md",
1202
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/IDENTITY.md",
1203
+ "missing": false,
1204
+ "rawChars": 633,
1205
+ "injectedChars": 633,
1206
+ "truncated": false
1207
+ },
1208
+ {
1209
+ "name": "USER.md",
1210
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/USER.md",
1211
+ "missing": false,
1212
+ "rawChars": 474,
1213
+ "injectedChars": 474,
1214
+ "truncated": false
1215
+ },
1216
+ {
1217
+ "name": "HEARTBEAT.md",
1218
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/HEARTBEAT.md",
1219
+ "missing": false,
1220
+ "rawChars": 167,
1221
+ "injectedChars": 167,
1222
+ "truncated": false
1223
+ },
1224
+ {
1225
+ "name": "BOOTSTRAP.md",
1226
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/BOOTSTRAP.md",
1227
+ "missing": false,
1228
+ "rawChars": 1449,
1229
+ "injectedChars": 1449,
1230
+ "truncated": false
1231
+ }
1232
+ ],
1233
+ "skills": {
1234
+ "promptChars": 4781,
1235
+ "entries": [
1236
+ {
1237
+ "name": "coding-agent",
1238
+ "blockChars": 808
1239
+ },
1240
+ {
1241
+ "name": "gh-issues",
1242
+ "blockChars": 484
1243
+ },
1244
+ {
1245
+ "name": "github",
1246
+ "blockChars": 548
1247
+ },
1248
+ {
1249
+ "name": "gog",
1250
+ "blockChars": 208
1251
+ },
1252
+ {
1253
+ "name": "healthcheck",
1254
+ "blockChars": 467
1255
+ },
1256
+ {
1257
+ "name": "node-connect",
1258
+ "blockChars": 517
1259
+ },
1260
+ {
1261
+ "name": "session-logs",
1262
+ "blockChars": 229
1263
+ },
1264
+ {
1265
+ "name": "skill-creator",
1266
+ "blockChars": 735
1267
+ },
1268
+ {
1269
+ "name": "weather",
1270
+ "blockChars": 392
1271
+ }
1272
+ ]
1273
+ },
1274
+ "tools": {
1275
+ "listChars": 4389,
1276
+ "schemaChars": 23292,
1277
+ "entries": [
1278
+ {
1279
+ "name": "read",
1280
+ "summaryChars": 298,
1281
+ "schemaChars": 392,
1282
+ "propertiesCount": 4
1283
+ },
1284
+ {
1285
+ "name": "edit",
1286
+ "summaryChars": 129,
1287
+ "schemaChars": 591,
1288
+ "propertiesCount": 6
1289
+ },
1290
+ {
1291
+ "name": "write",
1292
+ "summaryChars": 127,
1293
+ "schemaChars": 313,
1294
+ "propertiesCount": 3
1295
+ },
1296
+ {
1297
+ "name": "exec",
1298
+ "summaryChars": 181,
1299
+ "schemaChars": 1086,
1300
+ "propertiesCount": 12
1301
+ },
1302
+ {
1303
+ "name": "process",
1304
+ "summaryChars": 85,
1305
+ "schemaChars": 961,
1306
+ "propertiesCount": 12
1307
+ },
1308
+ {
1309
+ "name": "browser",
1310
+ "summaryChars": 1251,
1311
+ "schemaChars": 2799,
1312
+ "propertiesCount": 48
1313
+ },
1314
+ {
1315
+ "name": "canvas",
1316
+ "summaryChars": 106,
1317
+ "schemaChars": 661,
1318
+ "propertiesCount": 18
1319
+ },
1320
+ {
1321
+ "name": "nodes",
1322
+ "summaryChars": 122,
1323
+ "schemaChars": 1800,
1324
+ "propertiesCount": 37
1325
+ },
1326
+ {
1327
+ "name": "cron",
1328
+ "summaryChars": 2689,
1329
+ "schemaChars": 690,
1330
+ "propertiesCount": 13
1331
+ },
1332
+ {
1333
+ "name": "message",
1334
+ "summaryChars": 89,
1335
+ "schemaChars": 4872,
1336
+ "propertiesCount": 91
1337
+ },
1338
+ {
1339
+ "name": "tts",
1340
+ "summaryChars": 152,
1341
+ "schemaChars": 223,
1342
+ "propertiesCount": 2
1343
+ },
1344
+ {
1345
+ "name": "gateway",
1346
+ "summaryChars": 464,
1347
+ "schemaChars": 497,
1348
+ "propertiesCount": 12
1349
+ },
1350
+ {
1351
+ "name": "agents_list",
1352
+ "summaryChars": 118,
1353
+ "schemaChars": 33,
1354
+ "propertiesCount": 0
1355
+ },
1356
+ {
1357
+ "name": "sessions_list",
1358
+ "summaryChars": 54,
1359
+ "schemaChars": 212,
1360
+ "propertiesCount": 4
1361
+ },
1362
+ {
1363
+ "name": "sessions_history",
1364
+ "summaryChars": 36,
1365
+ "schemaChars": 161,
1366
+ "propertiesCount": 3
1367
+ },
1368
+ {
1369
+ "name": "sessions_send",
1370
+ "summaryChars": 84,
1371
+ "schemaChars": 273,
1372
+ "propertiesCount": 5
1373
+ },
1374
+ {
1375
+ "name": "sessions_yield",
1376
+ "summaryChars": 97,
1377
+ "schemaChars": 60,
1378
+ "propertiesCount": 1
1379
+ },
1380
+ {
1381
+ "name": "sessions_spawn",
1382
+ "summaryChars": 198,
1383
+ "schemaChars": 1179,
1384
+ "propertiesCount": 17
1385
+ },
1386
+ {
1387
+ "name": "subagents",
1388
+ "summaryChars": 105,
1389
+ "schemaChars": 191,
1390
+ "propertiesCount": 4
1391
+ },
1392
+ {
1393
+ "name": "session_status",
1394
+ "summaryChars": 207,
1395
+ "schemaChars": 89,
1396
+ "propertiesCount": 2
1397
+ },
1398
+ {
1399
+ "name": "web_search",
1400
+ "summaryChars": 123,
1401
+ "schemaChars": 767,
1402
+ "propertiesCount": 7
1403
+ },
1404
+ {
1405
+ "name": "web_fetch",
1406
+ "summaryChars": 129,
1407
+ "schemaChars": 374,
1408
+ "propertiesCount": 3
1409
+ },
1410
+ {
1411
+ "name": "pdf",
1412
+ "summaryChars": 275,
1413
+ "schemaChars": 400,
1414
+ "propertiesCount": 6
1415
+ },
1416
+ {
1417
+ "name": "lcm_grep",
1418
+ "summaryChars": 320,
1419
+ "schemaChars": 1193,
1420
+ "propertiesCount": 8
1421
+ },
1422
+ {
1423
+ "name": "lcm_describe",
1424
+ "summaryChars": 233,
1425
+ "schemaChars": 592,
1426
+ "propertiesCount": 4
1427
+ },
1428
+ {
1429
+ "name": "lcm_expand",
1430
+ "summaryChars": 400,
1431
+ "schemaChars": 987,
1432
+ "propertiesCount": 7
1433
+ },
1434
+ {
1435
+ "name": "lcm_expand_query",
1436
+ "summaryChars": 205,
1437
+ "schemaChars": 970,
1438
+ "propertiesCount": 7
1439
+ },
1440
+ {
1441
+ "name": "brain_teach",
1442
+ "summaryChars": 126,
1443
+ "schemaChars": 494,
1444
+ "propertiesCount": 3
1445
+ },
1446
+ {
1447
+ "name": "brain_status",
1448
+ "summaryChars": 81,
1449
+ "schemaChars": 33,
1450
+ "propertiesCount": 0
1451
+ },
1452
+ {
1453
+ "name": "brain_trace",
1454
+ "summaryChars": 173,
1455
+ "schemaChars": 132,
1456
+ "propertiesCount": 1
1457
+ },
1458
+ {
1459
+ "name": "memory_search",
1460
+ "summaryChars": 334,
1461
+ "schemaChars": 139,
1462
+ "propertiesCount": 3
1463
+ },
1464
+ {
1465
+ "name": "memory_get",
1466
+ "summaryChars": 151,
1467
+ "schemaChars": 128,
1468
+ "propertiesCount": 3
1469
+ }
1470
+ ]
1471
+ }
1472
+ },
1473
+ "stopReason": "stop"
1474
+ }
1475
+ },
1476
+ "shortLookupPrimer": {
1477
+ "payloads": [
1478
+ {
1479
+ "text": "Since `PLAYBOOK.md` does not exist in the provided project context files, would you like to create a new `PLAYBOOK.md` file? Here is an example of how you can create it using the `write` tool:\n\n```json\n{\"name\": \"write\", \"arguments\": {\"file_path\": \"PLAYBOOK.md\", \"content\": \"# Playbook\\n\\nThis is where you will document your workflow and processes.\"}}\n```\n\nWould you like me to proceed with creating `PLAYBOOK.md` for you?",
1480
+ "mediaUrl": null
1481
+ }
1482
+ ],
1483
+ "meta": {
1484
+ "durationMs": 4092,
1485
+ "agentMeta": {
1486
+ "sessionId": "475abd74-ed4f-4334-a896-8ffd7d81eec7",
1487
+ "provider": "ollama",
1488
+ "model": "qwen2.5:7b-instruct",
1489
+ "usage": {
1490
+ "input": 23565,
1491
+ "output": 107,
1492
+ "total": 23672
1493
+ },
1494
+ "lastCallUsage": {
1495
+ "input": 23565,
1496
+ "output": 107,
1497
+ "cacheRead": 0,
1498
+ "cacheWrite": 0,
1499
+ "total": 23672
1500
+ },
1501
+ "promptTokens": 23565
1502
+ },
1503
+ "aborted": false,
1504
+ "systemPromptReport": {
1505
+ "source": "run",
1506
+ "generatedAt": 1773675849503,
1507
+ "sessionId": "93eb604e-21e6-4802-81c1-04c889244efb",
1508
+ "sessionKey": "agent:main:main",
1509
+ "provider": "ollama",
1510
+ "model": "qwen2.5:7b-instruct",
1511
+ "workspaceDir": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture",
1512
+ "bootstrapMaxChars": 20000,
1513
+ "bootstrapTotalMaxChars": 150000,
1514
+ "bootstrapTruncation": {
1515
+ "warningMode": "once",
1516
+ "warningShown": false,
1517
+ "truncatedFiles": 0,
1518
+ "nearLimitFiles": 0,
1519
+ "totalNearLimit": false
1520
+ },
1521
+ "sandbox": {
1522
+ "mode": "off",
1523
+ "sandboxed": false
1524
+ },
1525
+ "systemPrompt": {
1526
+ "chars": 31507,
1527
+ "projectContextChars": 13769,
1528
+ "nonProjectContextChars": 17738
1529
+ },
1530
+ "injectedWorkspaceFiles": [
1531
+ {
1532
+ "name": "AGENTS.md",
1533
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/AGENTS.md",
1534
+ "missing": false,
1535
+ "rawChars": 7809,
1536
+ "injectedChars": 7809,
1537
+ "truncated": false
1538
+ },
1539
+ {
1540
+ "name": "SOUL.md",
1541
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/SOUL.md",
1542
+ "missing": false,
1543
+ "rawChars": 1664,
1544
+ "injectedChars": 1664,
1545
+ "truncated": false
1546
+ },
1547
+ {
1548
+ "name": "TOOLS.md",
1549
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/TOOLS.md",
1550
+ "missing": false,
1551
+ "rawChars": 850,
1552
+ "injectedChars": 850,
1553
+ "truncated": false
1554
+ },
1555
+ {
1556
+ "name": "IDENTITY.md",
1557
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/IDENTITY.md",
1558
+ "missing": false,
1559
+ "rawChars": 633,
1560
+ "injectedChars": 633,
1561
+ "truncated": false
1562
+ },
1563
+ {
1564
+ "name": "USER.md",
1565
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/USER.md",
1566
+ "missing": false,
1567
+ "rawChars": 474,
1568
+ "injectedChars": 474,
1569
+ "truncated": false
1570
+ },
1571
+ {
1572
+ "name": "HEARTBEAT.md",
1573
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/HEARTBEAT.md",
1574
+ "missing": false,
1575
+ "rawChars": 167,
1576
+ "injectedChars": 167,
1577
+ "truncated": false
1578
+ },
1579
+ {
1580
+ "name": "BOOTSTRAP.md",
1581
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/BOOTSTRAP.md",
1582
+ "missing": false,
1583
+ "rawChars": 1449,
1584
+ "injectedChars": 1449,
1585
+ "truncated": false
1586
+ }
1587
+ ],
1588
+ "skills": {
1589
+ "promptChars": 4781,
1590
+ "entries": [
1591
+ {
1592
+ "name": "coding-agent",
1593
+ "blockChars": 808
1594
+ },
1595
+ {
1596
+ "name": "gh-issues",
1597
+ "blockChars": 484
1598
+ },
1599
+ {
1600
+ "name": "github",
1601
+ "blockChars": 548
1602
+ },
1603
+ {
1604
+ "name": "gog",
1605
+ "blockChars": 208
1606
+ },
1607
+ {
1608
+ "name": "healthcheck",
1609
+ "blockChars": 467
1610
+ },
1611
+ {
1612
+ "name": "node-connect",
1613
+ "blockChars": 517
1614
+ },
1615
+ {
1616
+ "name": "session-logs",
1617
+ "blockChars": 229
1618
+ },
1619
+ {
1620
+ "name": "skill-creator",
1621
+ "blockChars": 735
1622
+ },
1623
+ {
1624
+ "name": "weather",
1625
+ "blockChars": 392
1626
+ }
1627
+ ]
1628
+ },
1629
+ "tools": {
1630
+ "listChars": 4389,
1631
+ "schemaChars": 23292,
1632
+ "entries": [
1633
+ {
1634
+ "name": "read",
1635
+ "summaryChars": 298,
1636
+ "schemaChars": 392,
1637
+ "propertiesCount": 4
1638
+ },
1639
+ {
1640
+ "name": "edit",
1641
+ "summaryChars": 129,
1642
+ "schemaChars": 591,
1643
+ "propertiesCount": 6
1644
+ },
1645
+ {
1646
+ "name": "write",
1647
+ "summaryChars": 127,
1648
+ "schemaChars": 313,
1649
+ "propertiesCount": 3
1650
+ },
1651
+ {
1652
+ "name": "exec",
1653
+ "summaryChars": 181,
1654
+ "schemaChars": 1086,
1655
+ "propertiesCount": 12
1656
+ },
1657
+ {
1658
+ "name": "process",
1659
+ "summaryChars": 85,
1660
+ "schemaChars": 961,
1661
+ "propertiesCount": 12
1662
+ },
1663
+ {
1664
+ "name": "browser",
1665
+ "summaryChars": 1251,
1666
+ "schemaChars": 2799,
1667
+ "propertiesCount": 48
1668
+ },
1669
+ {
1670
+ "name": "canvas",
1671
+ "summaryChars": 106,
1672
+ "schemaChars": 661,
1673
+ "propertiesCount": 18
1674
+ },
1675
+ {
1676
+ "name": "nodes",
1677
+ "summaryChars": 122,
1678
+ "schemaChars": 1800,
1679
+ "propertiesCount": 37
1680
+ },
1681
+ {
1682
+ "name": "cron",
1683
+ "summaryChars": 2689,
1684
+ "schemaChars": 690,
1685
+ "propertiesCount": 13
1686
+ },
1687
+ {
1688
+ "name": "message",
1689
+ "summaryChars": 89,
1690
+ "schemaChars": 4872,
1691
+ "propertiesCount": 91
1692
+ },
1693
+ {
1694
+ "name": "tts",
1695
+ "summaryChars": 152,
1696
+ "schemaChars": 223,
1697
+ "propertiesCount": 2
1698
+ },
1699
+ {
1700
+ "name": "gateway",
1701
+ "summaryChars": 464,
1702
+ "schemaChars": 497,
1703
+ "propertiesCount": 12
1704
+ },
1705
+ {
1706
+ "name": "agents_list",
1707
+ "summaryChars": 118,
1708
+ "schemaChars": 33,
1709
+ "propertiesCount": 0
1710
+ },
1711
+ {
1712
+ "name": "sessions_list",
1713
+ "summaryChars": 54,
1714
+ "schemaChars": 212,
1715
+ "propertiesCount": 4
1716
+ },
1717
+ {
1718
+ "name": "sessions_history",
1719
+ "summaryChars": 36,
1720
+ "schemaChars": 161,
1721
+ "propertiesCount": 3
1722
+ },
1723
+ {
1724
+ "name": "sessions_send",
1725
+ "summaryChars": 84,
1726
+ "schemaChars": 273,
1727
+ "propertiesCount": 5
1728
+ },
1729
+ {
1730
+ "name": "sessions_yield",
1731
+ "summaryChars": 97,
1732
+ "schemaChars": 60,
1733
+ "propertiesCount": 1
1734
+ },
1735
+ {
1736
+ "name": "sessions_spawn",
1737
+ "summaryChars": 198,
1738
+ "schemaChars": 1179,
1739
+ "propertiesCount": 17
1740
+ },
1741
+ {
1742
+ "name": "subagents",
1743
+ "summaryChars": 105,
1744
+ "schemaChars": 191,
1745
+ "propertiesCount": 4
1746
+ },
1747
+ {
1748
+ "name": "session_status",
1749
+ "summaryChars": 207,
1750
+ "schemaChars": 89,
1751
+ "propertiesCount": 2
1752
+ },
1753
+ {
1754
+ "name": "web_search",
1755
+ "summaryChars": 123,
1756
+ "schemaChars": 767,
1757
+ "propertiesCount": 7
1758
+ },
1759
+ {
1760
+ "name": "web_fetch",
1761
+ "summaryChars": 129,
1762
+ "schemaChars": 374,
1763
+ "propertiesCount": 3
1764
+ },
1765
+ {
1766
+ "name": "pdf",
1767
+ "summaryChars": 275,
1768
+ "schemaChars": 400,
1769
+ "propertiesCount": 6
1770
+ },
1771
+ {
1772
+ "name": "lcm_grep",
1773
+ "summaryChars": 320,
1774
+ "schemaChars": 1193,
1775
+ "propertiesCount": 8
1776
+ },
1777
+ {
1778
+ "name": "lcm_describe",
1779
+ "summaryChars": 233,
1780
+ "schemaChars": 592,
1781
+ "propertiesCount": 4
1782
+ },
1783
+ {
1784
+ "name": "lcm_expand",
1785
+ "summaryChars": 400,
1786
+ "schemaChars": 987,
1787
+ "propertiesCount": 7
1788
+ },
1789
+ {
1790
+ "name": "lcm_expand_query",
1791
+ "summaryChars": 205,
1792
+ "schemaChars": 970,
1793
+ "propertiesCount": 7
1794
+ },
1795
+ {
1796
+ "name": "brain_teach",
1797
+ "summaryChars": 126,
1798
+ "schemaChars": 494,
1799
+ "propertiesCount": 3
1800
+ },
1801
+ {
1802
+ "name": "brain_status",
1803
+ "summaryChars": 81,
1804
+ "schemaChars": 33,
1805
+ "propertiesCount": 0
1806
+ },
1807
+ {
1808
+ "name": "brain_trace",
1809
+ "summaryChars": 173,
1810
+ "schemaChars": 132,
1811
+ "propertiesCount": 1
1812
+ },
1813
+ {
1814
+ "name": "memory_search",
1815
+ "summaryChars": 334,
1816
+ "schemaChars": 139,
1817
+ "propertiesCount": 3
1818
+ },
1819
+ {
1820
+ "name": "memory_get",
1821
+ "summaryChars": 151,
1822
+ "schemaChars": 128,
1823
+ "propertiesCount": 3
1824
+ }
1825
+ ]
1826
+ }
1827
+ },
1828
+ "stopReason": "stop"
1829
+ }
1830
+ },
1831
+ "shortLookup": {
1832
+ "payloads": [
1833
+ {
1834
+ "text": "To open `PLAYBOOK.md`, you can use the `read` tool. Here is the command:\n\n```json\n{\"name\": \"read\", \"arguments\": {\"file_path\": \"PLAYBOOK.md\"}}\n```\n\nIf `PLAYBOOK.md` does not exist, you can create it using the `write` tool. Would you like to proceed with creating `PLAYBOOK.md` now?",
1835
+ "mediaUrl": null
1836
+ }
1837
+ ],
1838
+ "meta": {
1839
+ "durationMs": 3221,
1840
+ "agentMeta": {
1841
+ "sessionId": "475abd74-ed4f-4334-a896-8ffd7d81eec7",
1842
+ "provider": "ollama",
1843
+ "model": "qwen2.5:7b-instruct",
1844
+ "usage": {
1845
+ "input": 23688,
1846
+ "output": 80,
1847
+ "total": 23768
1848
+ },
1849
+ "lastCallUsage": {
1850
+ "input": 23688,
1851
+ "output": 80,
1852
+ "cacheRead": 0,
1853
+ "cacheWrite": 0,
1854
+ "total": 23768
1855
+ },
1856
+ "promptTokens": 23688
1857
+ },
1858
+ "aborted": false,
1859
+ "systemPromptReport": {
1860
+ "source": "run",
1861
+ "generatedAt": 1773675856067,
1862
+ "sessionId": "93eb604e-21e6-4802-81c1-04c889244efb",
1863
+ "sessionKey": "agent:main:main",
1864
+ "provider": "ollama",
1865
+ "model": "qwen2.5:7b-instruct",
1866
+ "workspaceDir": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture",
1867
+ "bootstrapMaxChars": 20000,
1868
+ "bootstrapTotalMaxChars": 150000,
1869
+ "bootstrapTruncation": {
1870
+ "warningMode": "once",
1871
+ "warningShown": false,
1872
+ "truncatedFiles": 0,
1873
+ "nearLimitFiles": 0,
1874
+ "totalNearLimit": false
1875
+ },
1876
+ "sandbox": {
1877
+ "mode": "off",
1878
+ "sandboxed": false
1879
+ },
1880
+ "systemPrompt": {
1881
+ "chars": 31507,
1882
+ "projectContextChars": 13769,
1883
+ "nonProjectContextChars": 17738
1884
+ },
1885
+ "injectedWorkspaceFiles": [
1886
+ {
1887
+ "name": "AGENTS.md",
1888
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/AGENTS.md",
1889
+ "missing": false,
1890
+ "rawChars": 7809,
1891
+ "injectedChars": 7809,
1892
+ "truncated": false
1893
+ },
1894
+ {
1895
+ "name": "SOUL.md",
1896
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/SOUL.md",
1897
+ "missing": false,
1898
+ "rawChars": 1664,
1899
+ "injectedChars": 1664,
1900
+ "truncated": false
1901
+ },
1902
+ {
1903
+ "name": "TOOLS.md",
1904
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/TOOLS.md",
1905
+ "missing": false,
1906
+ "rawChars": 850,
1907
+ "injectedChars": 850,
1908
+ "truncated": false
1909
+ },
1910
+ {
1911
+ "name": "IDENTITY.md",
1912
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/IDENTITY.md",
1913
+ "missing": false,
1914
+ "rawChars": 633,
1915
+ "injectedChars": 633,
1916
+ "truncated": false
1917
+ },
1918
+ {
1919
+ "name": "USER.md",
1920
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/USER.md",
1921
+ "missing": false,
1922
+ "rawChars": 474,
1923
+ "injectedChars": 474,
1924
+ "truncated": false
1925
+ },
1926
+ {
1927
+ "name": "HEARTBEAT.md",
1928
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/HEARTBEAT.md",
1929
+ "missing": false,
1930
+ "rawChars": 167,
1931
+ "injectedChars": 167,
1932
+ "truncated": false
1933
+ },
1934
+ {
1935
+ "name": "BOOTSTRAP.md",
1936
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/BOOTSTRAP.md",
1937
+ "missing": false,
1938
+ "rawChars": 1449,
1939
+ "injectedChars": 1449,
1940
+ "truncated": false
1941
+ }
1942
+ ],
1943
+ "skills": {
1944
+ "promptChars": 4781,
1945
+ "entries": [
1946
+ {
1947
+ "name": "coding-agent",
1948
+ "blockChars": 808
1949
+ },
1950
+ {
1951
+ "name": "gh-issues",
1952
+ "blockChars": 484
1953
+ },
1954
+ {
1955
+ "name": "github",
1956
+ "blockChars": 548
1957
+ },
1958
+ {
1959
+ "name": "gog",
1960
+ "blockChars": 208
1961
+ },
1962
+ {
1963
+ "name": "healthcheck",
1964
+ "blockChars": 467
1965
+ },
1966
+ {
1967
+ "name": "node-connect",
1968
+ "blockChars": 517
1969
+ },
1970
+ {
1971
+ "name": "session-logs",
1972
+ "blockChars": 229
1973
+ },
1974
+ {
1975
+ "name": "skill-creator",
1976
+ "blockChars": 735
1977
+ },
1978
+ {
1979
+ "name": "weather",
1980
+ "blockChars": 392
1981
+ }
1982
+ ]
1983
+ },
1984
+ "tools": {
1985
+ "listChars": 4389,
1986
+ "schemaChars": 23292,
1987
+ "entries": [
1988
+ {
1989
+ "name": "read",
1990
+ "summaryChars": 298,
1991
+ "schemaChars": 392,
1992
+ "propertiesCount": 4
1993
+ },
1994
+ {
1995
+ "name": "edit",
1996
+ "summaryChars": 129,
1997
+ "schemaChars": 591,
1998
+ "propertiesCount": 6
1999
+ },
2000
+ {
2001
+ "name": "write",
2002
+ "summaryChars": 127,
2003
+ "schemaChars": 313,
2004
+ "propertiesCount": 3
2005
+ },
2006
+ {
2007
+ "name": "exec",
2008
+ "summaryChars": 181,
2009
+ "schemaChars": 1086,
2010
+ "propertiesCount": 12
2011
+ },
2012
+ {
2013
+ "name": "process",
2014
+ "summaryChars": 85,
2015
+ "schemaChars": 961,
2016
+ "propertiesCount": 12
2017
+ },
2018
+ {
2019
+ "name": "browser",
2020
+ "summaryChars": 1251,
2021
+ "schemaChars": 2799,
2022
+ "propertiesCount": 48
2023
+ },
2024
+ {
2025
+ "name": "canvas",
2026
+ "summaryChars": 106,
2027
+ "schemaChars": 661,
2028
+ "propertiesCount": 18
2029
+ },
2030
+ {
2031
+ "name": "nodes",
2032
+ "summaryChars": 122,
2033
+ "schemaChars": 1800,
2034
+ "propertiesCount": 37
2035
+ },
2036
+ {
2037
+ "name": "cron",
2038
+ "summaryChars": 2689,
2039
+ "schemaChars": 690,
2040
+ "propertiesCount": 13
2041
+ },
2042
+ {
2043
+ "name": "message",
2044
+ "summaryChars": 89,
2045
+ "schemaChars": 4872,
2046
+ "propertiesCount": 91
2047
+ },
2048
+ {
2049
+ "name": "tts",
2050
+ "summaryChars": 152,
2051
+ "schemaChars": 223,
2052
+ "propertiesCount": 2
2053
+ },
2054
+ {
2055
+ "name": "gateway",
2056
+ "summaryChars": 464,
2057
+ "schemaChars": 497,
2058
+ "propertiesCount": 12
2059
+ },
2060
+ {
2061
+ "name": "agents_list",
2062
+ "summaryChars": 118,
2063
+ "schemaChars": 33,
2064
+ "propertiesCount": 0
2065
+ },
2066
+ {
2067
+ "name": "sessions_list",
2068
+ "summaryChars": 54,
2069
+ "schemaChars": 212,
2070
+ "propertiesCount": 4
2071
+ },
2072
+ {
2073
+ "name": "sessions_history",
2074
+ "summaryChars": 36,
2075
+ "schemaChars": 161,
2076
+ "propertiesCount": 3
2077
+ },
2078
+ {
2079
+ "name": "sessions_send",
2080
+ "summaryChars": 84,
2081
+ "schemaChars": 273,
2082
+ "propertiesCount": 5
2083
+ },
2084
+ {
2085
+ "name": "sessions_yield",
2086
+ "summaryChars": 97,
2087
+ "schemaChars": 60,
2088
+ "propertiesCount": 1
2089
+ },
2090
+ {
2091
+ "name": "sessions_spawn",
2092
+ "summaryChars": 198,
2093
+ "schemaChars": 1179,
2094
+ "propertiesCount": 17
2095
+ },
2096
+ {
2097
+ "name": "subagents",
2098
+ "summaryChars": 105,
2099
+ "schemaChars": 191,
2100
+ "propertiesCount": 4
2101
+ },
2102
+ {
2103
+ "name": "session_status",
2104
+ "summaryChars": 207,
2105
+ "schemaChars": 89,
2106
+ "propertiesCount": 2
2107
+ },
2108
+ {
2109
+ "name": "web_search",
2110
+ "summaryChars": 123,
2111
+ "schemaChars": 767,
2112
+ "propertiesCount": 7
2113
+ },
2114
+ {
2115
+ "name": "web_fetch",
2116
+ "summaryChars": 129,
2117
+ "schemaChars": 374,
2118
+ "propertiesCount": 3
2119
+ },
2120
+ {
2121
+ "name": "pdf",
2122
+ "summaryChars": 275,
2123
+ "schemaChars": 400,
2124
+ "propertiesCount": 6
2125
+ },
2126
+ {
2127
+ "name": "lcm_grep",
2128
+ "summaryChars": 320,
2129
+ "schemaChars": 1193,
2130
+ "propertiesCount": 8
2131
+ },
2132
+ {
2133
+ "name": "lcm_describe",
2134
+ "summaryChars": 233,
2135
+ "schemaChars": 592,
2136
+ "propertiesCount": 4
2137
+ },
2138
+ {
2139
+ "name": "lcm_expand",
2140
+ "summaryChars": 400,
2141
+ "schemaChars": 987,
2142
+ "propertiesCount": 7
2143
+ },
2144
+ {
2145
+ "name": "lcm_expand_query",
2146
+ "summaryChars": 205,
2147
+ "schemaChars": 970,
2148
+ "propertiesCount": 7
2149
+ },
2150
+ {
2151
+ "name": "brain_teach",
2152
+ "summaryChars": 126,
2153
+ "schemaChars": 494,
2154
+ "propertiesCount": 3
2155
+ },
2156
+ {
2157
+ "name": "brain_status",
2158
+ "summaryChars": 81,
2159
+ "schemaChars": 33,
2160
+ "propertiesCount": 0
2161
+ },
2162
+ {
2163
+ "name": "brain_trace",
2164
+ "summaryChars": 173,
2165
+ "schemaChars": 132,
2166
+ "propertiesCount": 1
2167
+ },
2168
+ {
2169
+ "name": "memory_search",
2170
+ "summaryChars": 334,
2171
+ "schemaChars": 139,
2172
+ "propertiesCount": 3
2173
+ },
2174
+ {
2175
+ "name": "memory_get",
2176
+ "summaryChars": 151,
2177
+ "schemaChars": 128,
2178
+ "propertiesCount": 3
2179
+ }
2180
+ ]
2181
+ }
2182
+ },
2183
+ "stopReason": "stop"
2184
+ }
2185
+ },
2186
+ "shadowPrimer": {
2187
+ "payloads": [
2188
+ {
2189
+ "text": "To open a pull request (PR) again, follow these steps:\n\n1. **Ensure Your Branch Is Up-to-Date:**\n ```sh\n git pull origin main\n ```\n\n2. **Make Your Changes:**\n - Add your code or make your changes.\n\n3. **Commit Your Changes:**\n ```sh\n git add .\n git commit -m \"Your descriptive commit message\"\n ```\n\n4. **Push Your Changes to the Remote Repository:**\n ```sh\n git push origin <your-branch>\n ```\n\n5. **Create the Pull Request:**\n - Go to your repository on GitHub.\n - Click on the \"Pull Requests\" tab.\n - Click on the \"New Pull Request\" button.\n - Select the base repository and branch (usually `main` or `master`), and the source branch (your branch).\n - Add a title and description for the PR.\n - Click on \"Create Pull Request.\"\n\nAlternatively, you can use the `gh` CLI tool to create the pull request directly from the terminal:\n\n```sh\ngh pr create --title \"Your PR title\" --body \"Your PR description\" --base main --head <your-branch>\n```\n\nWould you like to proceed with any of these steps or need further assistance?",
2190
+ "mediaUrl": null
2191
+ }
2192
+ ],
2193
+ "meta": {
2194
+ "durationMs": 10055,
2195
+ "agentMeta": {
2196
+ "sessionId": "475abd74-ed4f-4334-a896-8ffd7d81eec7",
2197
+ "provider": "ollama",
2198
+ "model": "qwen2.5:7b-instruct",
2199
+ "usage": {
2200
+ "input": 23786,
2201
+ "output": 272,
2202
+ "total": 24058
2203
+ },
2204
+ "lastCallUsage": {
2205
+ "input": 23786,
2206
+ "output": 272,
2207
+ "cacheRead": 0,
2208
+ "cacheWrite": 0,
2209
+ "total": 24058
2210
+ },
2211
+ "promptTokens": 23786
2212
+ },
2213
+ "aborted": false,
2214
+ "systemPromptReport": {
2215
+ "source": "run",
2216
+ "generatedAt": 1773675862133,
2217
+ "sessionId": "93eb604e-21e6-4802-81c1-04c889244efb",
2218
+ "sessionKey": "agent:main:main",
2219
+ "provider": "ollama",
2220
+ "model": "qwen2.5:7b-instruct",
2221
+ "workspaceDir": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture",
2222
+ "bootstrapMaxChars": 20000,
2223
+ "bootstrapTotalMaxChars": 150000,
2224
+ "bootstrapTruncation": {
2225
+ "warningMode": "once",
2226
+ "warningShown": false,
2227
+ "truncatedFiles": 0,
2228
+ "nearLimitFiles": 0,
2229
+ "totalNearLimit": false
2230
+ },
2231
+ "sandbox": {
2232
+ "mode": "off",
2233
+ "sandboxed": false
2234
+ },
2235
+ "systemPrompt": {
2236
+ "chars": 31507,
2237
+ "projectContextChars": 13769,
2238
+ "nonProjectContextChars": 17738
2239
+ },
2240
+ "injectedWorkspaceFiles": [
2241
+ {
2242
+ "name": "AGENTS.md",
2243
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/AGENTS.md",
2244
+ "missing": false,
2245
+ "rawChars": 7809,
2246
+ "injectedChars": 7809,
2247
+ "truncated": false
2248
+ },
2249
+ {
2250
+ "name": "SOUL.md",
2251
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/SOUL.md",
2252
+ "missing": false,
2253
+ "rawChars": 1664,
2254
+ "injectedChars": 1664,
2255
+ "truncated": false
2256
+ },
2257
+ {
2258
+ "name": "TOOLS.md",
2259
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/TOOLS.md",
2260
+ "missing": false,
2261
+ "rawChars": 850,
2262
+ "injectedChars": 850,
2263
+ "truncated": false
2264
+ },
2265
+ {
2266
+ "name": "IDENTITY.md",
2267
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/IDENTITY.md",
2268
+ "missing": false,
2269
+ "rawChars": 633,
2270
+ "injectedChars": 633,
2271
+ "truncated": false
2272
+ },
2273
+ {
2274
+ "name": "USER.md",
2275
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/USER.md",
2276
+ "missing": false,
2277
+ "rawChars": 474,
2278
+ "injectedChars": 474,
2279
+ "truncated": false
2280
+ },
2281
+ {
2282
+ "name": "HEARTBEAT.md",
2283
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/HEARTBEAT.md",
2284
+ "missing": false,
2285
+ "rawChars": 167,
2286
+ "injectedChars": 167,
2287
+ "truncated": false
2288
+ },
2289
+ {
2290
+ "name": "BOOTSTRAP.md",
2291
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/BOOTSTRAP.md",
2292
+ "missing": false,
2293
+ "rawChars": 1449,
2294
+ "injectedChars": 1449,
2295
+ "truncated": false
2296
+ }
2297
+ ],
2298
+ "skills": {
2299
+ "promptChars": 4781,
2300
+ "entries": [
2301
+ {
2302
+ "name": "coding-agent",
2303
+ "blockChars": 808
2304
+ },
2305
+ {
2306
+ "name": "gh-issues",
2307
+ "blockChars": 484
2308
+ },
2309
+ {
2310
+ "name": "github",
2311
+ "blockChars": 548
2312
+ },
2313
+ {
2314
+ "name": "gog",
2315
+ "blockChars": 208
2316
+ },
2317
+ {
2318
+ "name": "healthcheck",
2319
+ "blockChars": 467
2320
+ },
2321
+ {
2322
+ "name": "node-connect",
2323
+ "blockChars": 517
2324
+ },
2325
+ {
2326
+ "name": "session-logs",
2327
+ "blockChars": 229
2328
+ },
2329
+ {
2330
+ "name": "skill-creator",
2331
+ "blockChars": 735
2332
+ },
2333
+ {
2334
+ "name": "weather",
2335
+ "blockChars": 392
2336
+ }
2337
+ ]
2338
+ },
2339
+ "tools": {
2340
+ "listChars": 4389,
2341
+ "schemaChars": 23292,
2342
+ "entries": [
2343
+ {
2344
+ "name": "read",
2345
+ "summaryChars": 298,
2346
+ "schemaChars": 392,
2347
+ "propertiesCount": 4
2348
+ },
2349
+ {
2350
+ "name": "edit",
2351
+ "summaryChars": 129,
2352
+ "schemaChars": 591,
2353
+ "propertiesCount": 6
2354
+ },
2355
+ {
2356
+ "name": "write",
2357
+ "summaryChars": 127,
2358
+ "schemaChars": 313,
2359
+ "propertiesCount": 3
2360
+ },
2361
+ {
2362
+ "name": "exec",
2363
+ "summaryChars": 181,
2364
+ "schemaChars": 1086,
2365
+ "propertiesCount": 12
2366
+ },
2367
+ {
2368
+ "name": "process",
2369
+ "summaryChars": 85,
2370
+ "schemaChars": 961,
2371
+ "propertiesCount": 12
2372
+ },
2373
+ {
2374
+ "name": "browser",
2375
+ "summaryChars": 1251,
2376
+ "schemaChars": 2799,
2377
+ "propertiesCount": 48
2378
+ },
2379
+ {
2380
+ "name": "canvas",
2381
+ "summaryChars": 106,
2382
+ "schemaChars": 661,
2383
+ "propertiesCount": 18
2384
+ },
2385
+ {
2386
+ "name": "nodes",
2387
+ "summaryChars": 122,
2388
+ "schemaChars": 1800,
2389
+ "propertiesCount": 37
2390
+ },
2391
+ {
2392
+ "name": "cron",
2393
+ "summaryChars": 2689,
2394
+ "schemaChars": 690,
2395
+ "propertiesCount": 13
2396
+ },
2397
+ {
2398
+ "name": "message",
2399
+ "summaryChars": 89,
2400
+ "schemaChars": 4872,
2401
+ "propertiesCount": 91
2402
+ },
2403
+ {
2404
+ "name": "tts",
2405
+ "summaryChars": 152,
2406
+ "schemaChars": 223,
2407
+ "propertiesCount": 2
2408
+ },
2409
+ {
2410
+ "name": "gateway",
2411
+ "summaryChars": 464,
2412
+ "schemaChars": 497,
2413
+ "propertiesCount": 12
2414
+ },
2415
+ {
2416
+ "name": "agents_list",
2417
+ "summaryChars": 118,
2418
+ "schemaChars": 33,
2419
+ "propertiesCount": 0
2420
+ },
2421
+ {
2422
+ "name": "sessions_list",
2423
+ "summaryChars": 54,
2424
+ "schemaChars": 212,
2425
+ "propertiesCount": 4
2426
+ },
2427
+ {
2428
+ "name": "sessions_history",
2429
+ "summaryChars": 36,
2430
+ "schemaChars": 161,
2431
+ "propertiesCount": 3
2432
+ },
2433
+ {
2434
+ "name": "sessions_send",
2435
+ "summaryChars": 84,
2436
+ "schemaChars": 273,
2437
+ "propertiesCount": 5
2438
+ },
2439
+ {
2440
+ "name": "sessions_yield",
2441
+ "summaryChars": 97,
2442
+ "schemaChars": 60,
2443
+ "propertiesCount": 1
2444
+ },
2445
+ {
2446
+ "name": "sessions_spawn",
2447
+ "summaryChars": 198,
2448
+ "schemaChars": 1179,
2449
+ "propertiesCount": 17
2450
+ },
2451
+ {
2452
+ "name": "subagents",
2453
+ "summaryChars": 105,
2454
+ "schemaChars": 191,
2455
+ "propertiesCount": 4
2456
+ },
2457
+ {
2458
+ "name": "session_status",
2459
+ "summaryChars": 207,
2460
+ "schemaChars": 89,
2461
+ "propertiesCount": 2
2462
+ },
2463
+ {
2464
+ "name": "web_search",
2465
+ "summaryChars": 123,
2466
+ "schemaChars": 767,
2467
+ "propertiesCount": 7
2468
+ },
2469
+ {
2470
+ "name": "web_fetch",
2471
+ "summaryChars": 129,
2472
+ "schemaChars": 374,
2473
+ "propertiesCount": 3
2474
+ },
2475
+ {
2476
+ "name": "pdf",
2477
+ "summaryChars": 275,
2478
+ "schemaChars": 400,
2479
+ "propertiesCount": 6
2480
+ },
2481
+ {
2482
+ "name": "lcm_grep",
2483
+ "summaryChars": 320,
2484
+ "schemaChars": 1193,
2485
+ "propertiesCount": 8
2486
+ },
2487
+ {
2488
+ "name": "lcm_describe",
2489
+ "summaryChars": 233,
2490
+ "schemaChars": 592,
2491
+ "propertiesCount": 4
2492
+ },
2493
+ {
2494
+ "name": "lcm_expand",
2495
+ "summaryChars": 400,
2496
+ "schemaChars": 987,
2497
+ "propertiesCount": 7
2498
+ },
2499
+ {
2500
+ "name": "lcm_expand_query",
2501
+ "summaryChars": 205,
2502
+ "schemaChars": 970,
2503
+ "propertiesCount": 7
2504
+ },
2505
+ {
2506
+ "name": "brain_teach",
2507
+ "summaryChars": 126,
2508
+ "schemaChars": 494,
2509
+ "propertiesCount": 3
2510
+ },
2511
+ {
2512
+ "name": "brain_status",
2513
+ "summaryChars": 81,
2514
+ "schemaChars": 33,
2515
+ "propertiesCount": 0
2516
+ },
2517
+ {
2518
+ "name": "brain_trace",
2519
+ "summaryChars": 173,
2520
+ "schemaChars": 132,
2521
+ "propertiesCount": 1
2522
+ },
2523
+ {
2524
+ "name": "memory_search",
2525
+ "summaryChars": 334,
2526
+ "schemaChars": 139,
2527
+ "propertiesCount": 3
2528
+ },
2529
+ {
2530
+ "name": "memory_get",
2531
+ "summaryChars": 151,
2532
+ "schemaChars": 128,
2533
+ "propertiesCount": 3
2534
+ }
2535
+ ]
2536
+ }
2537
+ },
2538
+ "stopReason": "stop"
2539
+ }
2540
+ },
2541
+ "shadowQuery": {
2542
+ "payloads": [
2543
+ {
2544
+ "text": "To open a pull request (PR) again, follow these steps:\n\n1. **Ensure Your Branch Is Up-to-Date:**\n ```sh\n git pull origin main\n ```\n\n2. **Make Your Changes:**\n - Add your code or make your changes.\n\n3. **Commit Your Changes:**\n ```sh\n git add .\n git commit -m \"Your descriptive commit message\"\n ```\n\n4. **Push Your Changes to the Remote Repository:**\n ```sh\n git push origin <your-branch>\n ```\n\n5. **Create the Pull Request:**\n - Go to your repository on GitHub.\n - Click on the \"Pull Requests\" tab.\n - Click on the \"New Pull Request\" button.\n - Select the base repository and branch (usually `main` or `master`), and the source branch (your branch).\n - Add a title and description for the PR.\n - Click on \"Create Pull Request.\"\n\nWould you like to proceed with any of these steps or need further assistance?",
2545
+ "mediaUrl": null
2546
+ }
2547
+ ],
2548
+ "meta": {
2549
+ "durationMs": 8419,
2550
+ "agentMeta": {
2551
+ "sessionId": "475abd74-ed4f-4334-a896-8ffd7d81eec7",
2552
+ "provider": "ollama",
2553
+ "model": "qwen2.5:7b-instruct",
2554
+ "usage": {
2555
+ "input": 24074,
2556
+ "output": 219,
2557
+ "total": 24293
2558
+ },
2559
+ "lastCallUsage": {
2560
+ "input": 24074,
2561
+ "output": 219,
2562
+ "cacheRead": 0,
2563
+ "cacheWrite": 0,
2564
+ "total": 24293
2565
+ },
2566
+ "promptTokens": 24074
2567
+ },
2568
+ "aborted": false,
2569
+ "systemPromptReport": {
2570
+ "source": "run",
2571
+ "generatedAt": 1773675874607,
2572
+ "sessionId": "93eb604e-21e6-4802-81c1-04c889244efb",
2573
+ "sessionKey": "agent:main:main",
2574
+ "provider": "ollama",
2575
+ "model": "qwen2.5:7b-instruct",
2576
+ "workspaceDir": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture",
2577
+ "bootstrapMaxChars": 20000,
2578
+ "bootstrapTotalMaxChars": 150000,
2579
+ "bootstrapTruncation": {
2580
+ "warningMode": "once",
2581
+ "warningShown": false,
2582
+ "truncatedFiles": 0,
2583
+ "nearLimitFiles": 0,
2584
+ "totalNearLimit": false
2585
+ },
2586
+ "sandbox": {
2587
+ "mode": "off",
2588
+ "sandboxed": false
2589
+ },
2590
+ "systemPrompt": {
2591
+ "chars": 31507,
2592
+ "projectContextChars": 13769,
2593
+ "nonProjectContextChars": 17738
2594
+ },
2595
+ "injectedWorkspaceFiles": [
2596
+ {
2597
+ "name": "AGENTS.md",
2598
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/AGENTS.md",
2599
+ "missing": false,
2600
+ "rawChars": 7809,
2601
+ "injectedChars": 7809,
2602
+ "truncated": false
2603
+ },
2604
+ {
2605
+ "name": "SOUL.md",
2606
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/SOUL.md",
2607
+ "missing": false,
2608
+ "rawChars": 1664,
2609
+ "injectedChars": 1664,
2610
+ "truncated": false
2611
+ },
2612
+ {
2613
+ "name": "TOOLS.md",
2614
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/TOOLS.md",
2615
+ "missing": false,
2616
+ "rawChars": 850,
2617
+ "injectedChars": 850,
2618
+ "truncated": false
2619
+ },
2620
+ {
2621
+ "name": "IDENTITY.md",
2622
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/IDENTITY.md",
2623
+ "missing": false,
2624
+ "rawChars": 633,
2625
+ "injectedChars": 633,
2626
+ "truncated": false
2627
+ },
2628
+ {
2629
+ "name": "USER.md",
2630
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/USER.md",
2631
+ "missing": false,
2632
+ "rawChars": 474,
2633
+ "injectedChars": 474,
2634
+ "truncated": false
2635
+ },
2636
+ {
2637
+ "name": "HEARTBEAT.md",
2638
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/HEARTBEAT.md",
2639
+ "missing": false,
2640
+ "rawChars": 167,
2641
+ "injectedChars": 167,
2642
+ "truncated": false
2643
+ },
2644
+ {
2645
+ "name": "BOOTSTRAP.md",
2646
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/BOOTSTRAP.md",
2647
+ "missing": false,
2648
+ "rawChars": 1449,
2649
+ "injectedChars": 1449,
2650
+ "truncated": false
2651
+ }
2652
+ ],
2653
+ "skills": {
2654
+ "promptChars": 4781,
2655
+ "entries": [
2656
+ {
2657
+ "name": "coding-agent",
2658
+ "blockChars": 808
2659
+ },
2660
+ {
2661
+ "name": "gh-issues",
2662
+ "blockChars": 484
2663
+ },
2664
+ {
2665
+ "name": "github",
2666
+ "blockChars": 548
2667
+ },
2668
+ {
2669
+ "name": "gog",
2670
+ "blockChars": 208
2671
+ },
2672
+ {
2673
+ "name": "healthcheck",
2674
+ "blockChars": 467
2675
+ },
2676
+ {
2677
+ "name": "node-connect",
2678
+ "blockChars": 517
2679
+ },
2680
+ {
2681
+ "name": "session-logs",
2682
+ "blockChars": 229
2683
+ },
2684
+ {
2685
+ "name": "skill-creator",
2686
+ "blockChars": 735
2687
+ },
2688
+ {
2689
+ "name": "weather",
2690
+ "blockChars": 392
2691
+ }
2692
+ ]
2693
+ },
2694
+ "tools": {
2695
+ "listChars": 4389,
2696
+ "schemaChars": 23292,
2697
+ "entries": [
2698
+ {
2699
+ "name": "read",
2700
+ "summaryChars": 298,
2701
+ "schemaChars": 392,
2702
+ "propertiesCount": 4
2703
+ },
2704
+ {
2705
+ "name": "edit",
2706
+ "summaryChars": 129,
2707
+ "schemaChars": 591,
2708
+ "propertiesCount": 6
2709
+ },
2710
+ {
2711
+ "name": "write",
2712
+ "summaryChars": 127,
2713
+ "schemaChars": 313,
2714
+ "propertiesCount": 3
2715
+ },
2716
+ {
2717
+ "name": "exec",
2718
+ "summaryChars": 181,
2719
+ "schemaChars": 1086,
2720
+ "propertiesCount": 12
2721
+ },
2722
+ {
2723
+ "name": "process",
2724
+ "summaryChars": 85,
2725
+ "schemaChars": 961,
2726
+ "propertiesCount": 12
2727
+ },
2728
+ {
2729
+ "name": "browser",
2730
+ "summaryChars": 1251,
2731
+ "schemaChars": 2799,
2732
+ "propertiesCount": 48
2733
+ },
2734
+ {
2735
+ "name": "canvas",
2736
+ "summaryChars": 106,
2737
+ "schemaChars": 661,
2738
+ "propertiesCount": 18
2739
+ },
2740
+ {
2741
+ "name": "nodes",
2742
+ "summaryChars": 122,
2743
+ "schemaChars": 1800,
2744
+ "propertiesCount": 37
2745
+ },
2746
+ {
2747
+ "name": "cron",
2748
+ "summaryChars": 2689,
2749
+ "schemaChars": 690,
2750
+ "propertiesCount": 13
2751
+ },
2752
+ {
2753
+ "name": "message",
2754
+ "summaryChars": 89,
2755
+ "schemaChars": 4872,
2756
+ "propertiesCount": 91
2757
+ },
2758
+ {
2759
+ "name": "tts",
2760
+ "summaryChars": 152,
2761
+ "schemaChars": 223,
2762
+ "propertiesCount": 2
2763
+ },
2764
+ {
2765
+ "name": "gateway",
2766
+ "summaryChars": 464,
2767
+ "schemaChars": 497,
2768
+ "propertiesCount": 12
2769
+ },
2770
+ {
2771
+ "name": "agents_list",
2772
+ "summaryChars": 118,
2773
+ "schemaChars": 33,
2774
+ "propertiesCount": 0
2775
+ },
2776
+ {
2777
+ "name": "sessions_list",
2778
+ "summaryChars": 54,
2779
+ "schemaChars": 212,
2780
+ "propertiesCount": 4
2781
+ },
2782
+ {
2783
+ "name": "sessions_history",
2784
+ "summaryChars": 36,
2785
+ "schemaChars": 161,
2786
+ "propertiesCount": 3
2787
+ },
2788
+ {
2789
+ "name": "sessions_send",
2790
+ "summaryChars": 84,
2791
+ "schemaChars": 273,
2792
+ "propertiesCount": 5
2793
+ },
2794
+ {
2795
+ "name": "sessions_yield",
2796
+ "summaryChars": 97,
2797
+ "schemaChars": 60,
2798
+ "propertiesCount": 1
2799
+ },
2800
+ {
2801
+ "name": "sessions_spawn",
2802
+ "summaryChars": 198,
2803
+ "schemaChars": 1179,
2804
+ "propertiesCount": 17
2805
+ },
2806
+ {
2807
+ "name": "subagents",
2808
+ "summaryChars": 105,
2809
+ "schemaChars": 191,
2810
+ "propertiesCount": 4
2811
+ },
2812
+ {
2813
+ "name": "session_status",
2814
+ "summaryChars": 207,
2815
+ "schemaChars": 89,
2816
+ "propertiesCount": 2
2817
+ },
2818
+ {
2819
+ "name": "web_search",
2820
+ "summaryChars": 123,
2821
+ "schemaChars": 767,
2822
+ "propertiesCount": 7
2823
+ },
2824
+ {
2825
+ "name": "web_fetch",
2826
+ "summaryChars": 129,
2827
+ "schemaChars": 374,
2828
+ "propertiesCount": 3
2829
+ },
2830
+ {
2831
+ "name": "pdf",
2832
+ "summaryChars": 275,
2833
+ "schemaChars": 400,
2834
+ "propertiesCount": 6
2835
+ },
2836
+ {
2837
+ "name": "lcm_grep",
2838
+ "summaryChars": 320,
2839
+ "schemaChars": 1193,
2840
+ "propertiesCount": 8
2841
+ },
2842
+ {
2843
+ "name": "lcm_describe",
2844
+ "summaryChars": 233,
2845
+ "schemaChars": 592,
2846
+ "propertiesCount": 4
2847
+ },
2848
+ {
2849
+ "name": "lcm_expand",
2850
+ "summaryChars": 400,
2851
+ "schemaChars": 987,
2852
+ "propertiesCount": 7
2853
+ },
2854
+ {
2855
+ "name": "lcm_expand_query",
2856
+ "summaryChars": 205,
2857
+ "schemaChars": 970,
2858
+ "propertiesCount": 7
2859
+ },
2860
+ {
2861
+ "name": "brain_teach",
2862
+ "summaryChars": 126,
2863
+ "schemaChars": 494,
2864
+ "propertiesCount": 3
2865
+ },
2866
+ {
2867
+ "name": "brain_status",
2868
+ "summaryChars": 81,
2869
+ "schemaChars": 33,
2870
+ "propertiesCount": 0
2871
+ },
2872
+ {
2873
+ "name": "brain_trace",
2874
+ "summaryChars": 173,
2875
+ "schemaChars": 132,
2876
+ "propertiesCount": 1
2877
+ },
2878
+ {
2879
+ "name": "memory_search",
2880
+ "summaryChars": 334,
2881
+ "schemaChars": 139,
2882
+ "propertiesCount": 3
2883
+ },
2884
+ {
2885
+ "name": "memory_get",
2886
+ "summaryChars": 151,
2887
+ "schemaChars": 128,
2888
+ "propertiesCount": 3
2889
+ }
2890
+ ]
2891
+ }
2892
+ },
2893
+ "stopReason": "stop"
2894
+ }
2895
+ },
2896
+ "noEmbeddingPrimer": {
2897
+ "payloads": [
2898
+ {
2899
+ "text": "To open a pull request (PR) again, follow these steps:\n\n1. **Ensure Your Branch Is Up-to-Date:**\n ```sh\n git pull origin main\n ```\n\n2. **Make Your Changes:**\n - Add your code or make your changes.\n\n3. **Commit Your Changes:**\n ```sh\n git add .\n git commit -m \"Your descriptive commit message\"\n ```\n\n4. **Push Your Changes to the Remote Repository:**\n ```sh\n git push origin <your-branch>\n ```\n\n5. **Create the Pull Request:**\n - Go to your repository on GitHub.\n - Click on the \"Pull Requests\" tab.\n - Click on the \"New Pull Request\" button.\n - Select the base repository and branch (usually `main` or `master`), and the source branch (your branch).\n - Add a title and description for the PR.\n - Click on \"Create Pull Request.\"\n\nAlternatively, you can use the `gh` CLI tool to create the pull request directly from the terminal:\n\n```sh\ngh pr create --title \"Your PR title\" --body \"Your PR description\" --base main --head <your-branch>\n```\n\nWould you like to proceed with any of these steps or need further assistance?",
2900
+ "mediaUrl": null
2901
+ }
2902
+ ],
2903
+ "meta": {
2904
+ "durationMs": 10003,
2905
+ "agentMeta": {
2906
+ "sessionId": "475abd74-ed4f-4334-a896-8ffd7d81eec7",
2907
+ "provider": "ollama",
2908
+ "model": "qwen2.5:7b-instruct",
2909
+ "usage": {
2910
+ "input": 24311,
2911
+ "output": 272,
2912
+ "total": 24583
2913
+ },
2914
+ "lastCallUsage": {
2915
+ "input": 24311,
2916
+ "output": 272,
2917
+ "cacheRead": 0,
2918
+ "cacheWrite": 0,
2919
+ "total": 24583
2920
+ },
2921
+ "promptTokens": 24311
2922
+ },
2923
+ "aborted": false,
2924
+ "systemPromptReport": {
2925
+ "source": "run",
2926
+ "generatedAt": 1773675885732,
2927
+ "sessionId": "93eb604e-21e6-4802-81c1-04c889244efb",
2928
+ "sessionKey": "agent:main:main",
2929
+ "provider": "ollama",
2930
+ "model": "qwen2.5:7b-instruct",
2931
+ "workspaceDir": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture",
2932
+ "bootstrapMaxChars": 20000,
2933
+ "bootstrapTotalMaxChars": 150000,
2934
+ "bootstrapTruncation": {
2935
+ "warningMode": "once",
2936
+ "warningShown": false,
2937
+ "truncatedFiles": 0,
2938
+ "nearLimitFiles": 0,
2939
+ "totalNearLimit": false
2940
+ },
2941
+ "sandbox": {
2942
+ "mode": "off",
2943
+ "sandboxed": false
2944
+ },
2945
+ "systemPrompt": {
2946
+ "chars": 31507,
2947
+ "projectContextChars": 13769,
2948
+ "nonProjectContextChars": 17738
2949
+ },
2950
+ "injectedWorkspaceFiles": [
2951
+ {
2952
+ "name": "AGENTS.md",
2953
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/AGENTS.md",
2954
+ "missing": false,
2955
+ "rawChars": 7809,
2956
+ "injectedChars": 7809,
2957
+ "truncated": false
2958
+ },
2959
+ {
2960
+ "name": "SOUL.md",
2961
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/SOUL.md",
2962
+ "missing": false,
2963
+ "rawChars": 1664,
2964
+ "injectedChars": 1664,
2965
+ "truncated": false
2966
+ },
2967
+ {
2968
+ "name": "TOOLS.md",
2969
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/TOOLS.md",
2970
+ "missing": false,
2971
+ "rawChars": 850,
2972
+ "injectedChars": 850,
2973
+ "truncated": false
2974
+ },
2975
+ {
2976
+ "name": "IDENTITY.md",
2977
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/IDENTITY.md",
2978
+ "missing": false,
2979
+ "rawChars": 633,
2980
+ "injectedChars": 633,
2981
+ "truncated": false
2982
+ },
2983
+ {
2984
+ "name": "USER.md",
2985
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/USER.md",
2986
+ "missing": false,
2987
+ "rawChars": 474,
2988
+ "injectedChars": 474,
2989
+ "truncated": false
2990
+ },
2991
+ {
2992
+ "name": "HEARTBEAT.md",
2993
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/HEARTBEAT.md",
2994
+ "missing": false,
2995
+ "rawChars": 167,
2996
+ "injectedChars": 167,
2997
+ "truncated": false
2998
+ },
2999
+ {
3000
+ "name": "BOOTSTRAP.md",
3001
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/BOOTSTRAP.md",
3002
+ "missing": false,
3003
+ "rawChars": 1449,
3004
+ "injectedChars": 1449,
3005
+ "truncated": false
3006
+ }
3007
+ ],
3008
+ "skills": {
3009
+ "promptChars": 4781,
3010
+ "entries": [
3011
+ {
3012
+ "name": "coding-agent",
3013
+ "blockChars": 808
3014
+ },
3015
+ {
3016
+ "name": "gh-issues",
3017
+ "blockChars": 484
3018
+ },
3019
+ {
3020
+ "name": "github",
3021
+ "blockChars": 548
3022
+ },
3023
+ {
3024
+ "name": "gog",
3025
+ "blockChars": 208
3026
+ },
3027
+ {
3028
+ "name": "healthcheck",
3029
+ "blockChars": 467
3030
+ },
3031
+ {
3032
+ "name": "node-connect",
3033
+ "blockChars": 517
3034
+ },
3035
+ {
3036
+ "name": "session-logs",
3037
+ "blockChars": 229
3038
+ },
3039
+ {
3040
+ "name": "skill-creator",
3041
+ "blockChars": 735
3042
+ },
3043
+ {
3044
+ "name": "weather",
3045
+ "blockChars": 392
3046
+ }
3047
+ ]
3048
+ },
3049
+ "tools": {
3050
+ "listChars": 4389,
3051
+ "schemaChars": 23292,
3052
+ "entries": [
3053
+ {
3054
+ "name": "read",
3055
+ "summaryChars": 298,
3056
+ "schemaChars": 392,
3057
+ "propertiesCount": 4
3058
+ },
3059
+ {
3060
+ "name": "edit",
3061
+ "summaryChars": 129,
3062
+ "schemaChars": 591,
3063
+ "propertiesCount": 6
3064
+ },
3065
+ {
3066
+ "name": "write",
3067
+ "summaryChars": 127,
3068
+ "schemaChars": 313,
3069
+ "propertiesCount": 3
3070
+ },
3071
+ {
3072
+ "name": "exec",
3073
+ "summaryChars": 181,
3074
+ "schemaChars": 1086,
3075
+ "propertiesCount": 12
3076
+ },
3077
+ {
3078
+ "name": "process",
3079
+ "summaryChars": 85,
3080
+ "schemaChars": 961,
3081
+ "propertiesCount": 12
3082
+ },
3083
+ {
3084
+ "name": "browser",
3085
+ "summaryChars": 1251,
3086
+ "schemaChars": 2799,
3087
+ "propertiesCount": 48
3088
+ },
3089
+ {
3090
+ "name": "canvas",
3091
+ "summaryChars": 106,
3092
+ "schemaChars": 661,
3093
+ "propertiesCount": 18
3094
+ },
3095
+ {
3096
+ "name": "nodes",
3097
+ "summaryChars": 122,
3098
+ "schemaChars": 1800,
3099
+ "propertiesCount": 37
3100
+ },
3101
+ {
3102
+ "name": "cron",
3103
+ "summaryChars": 2689,
3104
+ "schemaChars": 690,
3105
+ "propertiesCount": 13
3106
+ },
3107
+ {
3108
+ "name": "message",
3109
+ "summaryChars": 89,
3110
+ "schemaChars": 4872,
3111
+ "propertiesCount": 91
3112
+ },
3113
+ {
3114
+ "name": "tts",
3115
+ "summaryChars": 152,
3116
+ "schemaChars": 223,
3117
+ "propertiesCount": 2
3118
+ },
3119
+ {
3120
+ "name": "gateway",
3121
+ "summaryChars": 464,
3122
+ "schemaChars": 497,
3123
+ "propertiesCount": 12
3124
+ },
3125
+ {
3126
+ "name": "agents_list",
3127
+ "summaryChars": 118,
3128
+ "schemaChars": 33,
3129
+ "propertiesCount": 0
3130
+ },
3131
+ {
3132
+ "name": "sessions_list",
3133
+ "summaryChars": 54,
3134
+ "schemaChars": 212,
3135
+ "propertiesCount": 4
3136
+ },
3137
+ {
3138
+ "name": "sessions_history",
3139
+ "summaryChars": 36,
3140
+ "schemaChars": 161,
3141
+ "propertiesCount": 3
3142
+ },
3143
+ {
3144
+ "name": "sessions_send",
3145
+ "summaryChars": 84,
3146
+ "schemaChars": 273,
3147
+ "propertiesCount": 5
3148
+ },
3149
+ {
3150
+ "name": "sessions_yield",
3151
+ "summaryChars": 97,
3152
+ "schemaChars": 60,
3153
+ "propertiesCount": 1
3154
+ },
3155
+ {
3156
+ "name": "sessions_spawn",
3157
+ "summaryChars": 198,
3158
+ "schemaChars": 1179,
3159
+ "propertiesCount": 17
3160
+ },
3161
+ {
3162
+ "name": "subagents",
3163
+ "summaryChars": 105,
3164
+ "schemaChars": 191,
3165
+ "propertiesCount": 4
3166
+ },
3167
+ {
3168
+ "name": "session_status",
3169
+ "summaryChars": 207,
3170
+ "schemaChars": 89,
3171
+ "propertiesCount": 2
3172
+ },
3173
+ {
3174
+ "name": "web_search",
3175
+ "summaryChars": 123,
3176
+ "schemaChars": 767,
3177
+ "propertiesCount": 7
3178
+ },
3179
+ {
3180
+ "name": "web_fetch",
3181
+ "summaryChars": 129,
3182
+ "schemaChars": 374,
3183
+ "propertiesCount": 3
3184
+ },
3185
+ {
3186
+ "name": "pdf",
3187
+ "summaryChars": 275,
3188
+ "schemaChars": 400,
3189
+ "propertiesCount": 6
3190
+ },
3191
+ {
3192
+ "name": "lcm_grep",
3193
+ "summaryChars": 320,
3194
+ "schemaChars": 1193,
3195
+ "propertiesCount": 8
3196
+ },
3197
+ {
3198
+ "name": "lcm_describe",
3199
+ "summaryChars": 233,
3200
+ "schemaChars": 592,
3201
+ "propertiesCount": 4
3202
+ },
3203
+ {
3204
+ "name": "lcm_expand",
3205
+ "summaryChars": 400,
3206
+ "schemaChars": 987,
3207
+ "propertiesCount": 7
3208
+ },
3209
+ {
3210
+ "name": "lcm_expand_query",
3211
+ "summaryChars": 205,
3212
+ "schemaChars": 970,
3213
+ "propertiesCount": 7
3214
+ },
3215
+ {
3216
+ "name": "brain_teach",
3217
+ "summaryChars": 126,
3218
+ "schemaChars": 494,
3219
+ "propertiesCount": 3
3220
+ },
3221
+ {
3222
+ "name": "brain_status",
3223
+ "summaryChars": 81,
3224
+ "schemaChars": 33,
3225
+ "propertiesCount": 0
3226
+ },
3227
+ {
3228
+ "name": "brain_trace",
3229
+ "summaryChars": 173,
3230
+ "schemaChars": 132,
3231
+ "propertiesCount": 1
3232
+ },
3233
+ {
3234
+ "name": "memory_search",
3235
+ "summaryChars": 334,
3236
+ "schemaChars": 139,
3237
+ "propertiesCount": 3
3238
+ },
3239
+ {
3240
+ "name": "memory_get",
3241
+ "summaryChars": 151,
3242
+ "schemaChars": 128,
3243
+ "propertiesCount": 3
3244
+ }
3245
+ ]
3246
+ }
3247
+ },
3248
+ "stopReason": "stop"
3249
+ }
3250
+ },
3251
+ "noEmbeddingQuery": {
3252
+ "payloads": [
3253
+ {
3254
+ "text": "To open a pull request (PR) again, follow these steps:\n\n1. **Ensure Your Branch Is Up-to-Date:**\n ```sh\n git pull origin main\n ```\n\n2. **Make Your Changes:**\n - Add your code or make your changes.\n\n3. **Commit Your Changes:**\n ```sh\n git add .\n git commit -m \"Your descriptive commit message\"\n ```\n\n4. **Push Your Changes to the Remote Repository:**\n ```sh\n git push origin <your-branch>\n ```\n\n5. **Create the Pull Request:**\n - Go to your repository on GitHub.\n - Click on the \"Pull Requests\" tab.\n - Click on the \"New Pull Request\" button.\n - Select the base repository and branch (usually `main` or `master`), and the source branch (your branch).\n - Add a title and description for the PR.\n - Click on \"Create Pull Request.\"\n\nWould you like to proceed with any of these steps or need further assistance?",
3255
+ "mediaUrl": null
3256
+ }
3257
+ ],
3258
+ "meta": {
3259
+ "durationMs": 8205,
3260
+ "agentMeta": {
3261
+ "sessionId": "475abd74-ed4f-4334-a896-8ffd7d81eec7",
3262
+ "provider": "ollama",
3263
+ "model": "qwen2.5:7b-instruct",
3264
+ "usage": {
3265
+ "input": 24599,
3266
+ "output": 219,
3267
+ "total": 24818
3268
+ },
3269
+ "lastCallUsage": {
3270
+ "input": 24599,
3271
+ "output": 219,
3272
+ "cacheRead": 0,
3273
+ "cacheWrite": 0,
3274
+ "total": 24818
3275
+ },
3276
+ "promptTokens": 24599
3277
+ },
3278
+ "aborted": false,
3279
+ "systemPromptReport": {
3280
+ "source": "run",
3281
+ "generatedAt": 1773675898230,
3282
+ "sessionId": "93eb604e-21e6-4802-81c1-04c889244efb",
3283
+ "sessionKey": "agent:main:main",
3284
+ "provider": "ollama",
3285
+ "model": "qwen2.5:7b-instruct",
3286
+ "workspaceDir": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture",
3287
+ "bootstrapMaxChars": 20000,
3288
+ "bootstrapTotalMaxChars": 150000,
3289
+ "bootstrapTruncation": {
3290
+ "warningMode": "once",
3291
+ "warningShown": false,
3292
+ "truncatedFiles": 0,
3293
+ "nearLimitFiles": 0,
3294
+ "totalNearLimit": false
3295
+ },
3296
+ "sandbox": {
3297
+ "mode": "off",
3298
+ "sandboxed": false
3299
+ },
3300
+ "systemPrompt": {
3301
+ "chars": 31507,
3302
+ "projectContextChars": 13769,
3303
+ "nonProjectContextChars": 17738
3304
+ },
3305
+ "injectedWorkspaceFiles": [
3306
+ {
3307
+ "name": "AGENTS.md",
3308
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/AGENTS.md",
3309
+ "missing": false,
3310
+ "rawChars": 7809,
3311
+ "injectedChars": 7809,
3312
+ "truncated": false
3313
+ },
3314
+ {
3315
+ "name": "SOUL.md",
3316
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/SOUL.md",
3317
+ "missing": false,
3318
+ "rawChars": 1664,
3319
+ "injectedChars": 1664,
3320
+ "truncated": false
3321
+ },
3322
+ {
3323
+ "name": "TOOLS.md",
3324
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/TOOLS.md",
3325
+ "missing": false,
3326
+ "rawChars": 850,
3327
+ "injectedChars": 850,
3328
+ "truncated": false
3329
+ },
3330
+ {
3331
+ "name": "IDENTITY.md",
3332
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/IDENTITY.md",
3333
+ "missing": false,
3334
+ "rawChars": 633,
3335
+ "injectedChars": 633,
3336
+ "truncated": false
3337
+ },
3338
+ {
3339
+ "name": "USER.md",
3340
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/USER.md",
3341
+ "missing": false,
3342
+ "rawChars": 474,
3343
+ "injectedChars": 474,
3344
+ "truncated": false
3345
+ },
3346
+ {
3347
+ "name": "HEARTBEAT.md",
3348
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/HEARTBEAT.md",
3349
+ "missing": false,
3350
+ "rawChars": 167,
3351
+ "injectedChars": 167,
3352
+ "truncated": false
3353
+ },
3354
+ {
3355
+ "name": "BOOTSTRAP.md",
3356
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/BOOTSTRAP.md",
3357
+ "missing": false,
3358
+ "rawChars": 1449,
3359
+ "injectedChars": 1449,
3360
+ "truncated": false
3361
+ }
3362
+ ],
3363
+ "skills": {
3364
+ "promptChars": 4781,
3365
+ "entries": [
3366
+ {
3367
+ "name": "coding-agent",
3368
+ "blockChars": 808
3369
+ },
3370
+ {
3371
+ "name": "gh-issues",
3372
+ "blockChars": 484
3373
+ },
3374
+ {
3375
+ "name": "github",
3376
+ "blockChars": 548
3377
+ },
3378
+ {
3379
+ "name": "gog",
3380
+ "blockChars": 208
3381
+ },
3382
+ {
3383
+ "name": "healthcheck",
3384
+ "blockChars": 467
3385
+ },
3386
+ {
3387
+ "name": "node-connect",
3388
+ "blockChars": 517
3389
+ },
3390
+ {
3391
+ "name": "session-logs",
3392
+ "blockChars": 229
3393
+ },
3394
+ {
3395
+ "name": "skill-creator",
3396
+ "blockChars": 735
3397
+ },
3398
+ {
3399
+ "name": "weather",
3400
+ "blockChars": 392
3401
+ }
3402
+ ]
3403
+ },
3404
+ "tools": {
3405
+ "listChars": 4389,
3406
+ "schemaChars": 23292,
3407
+ "entries": [
3408
+ {
3409
+ "name": "read",
3410
+ "summaryChars": 298,
3411
+ "schemaChars": 392,
3412
+ "propertiesCount": 4
3413
+ },
3414
+ {
3415
+ "name": "edit",
3416
+ "summaryChars": 129,
3417
+ "schemaChars": 591,
3418
+ "propertiesCount": 6
3419
+ },
3420
+ {
3421
+ "name": "write",
3422
+ "summaryChars": 127,
3423
+ "schemaChars": 313,
3424
+ "propertiesCount": 3
3425
+ },
3426
+ {
3427
+ "name": "exec",
3428
+ "summaryChars": 181,
3429
+ "schemaChars": 1086,
3430
+ "propertiesCount": 12
3431
+ },
3432
+ {
3433
+ "name": "process",
3434
+ "summaryChars": 85,
3435
+ "schemaChars": 961,
3436
+ "propertiesCount": 12
3437
+ },
3438
+ {
3439
+ "name": "browser",
3440
+ "summaryChars": 1251,
3441
+ "schemaChars": 2799,
3442
+ "propertiesCount": 48
3443
+ },
3444
+ {
3445
+ "name": "canvas",
3446
+ "summaryChars": 106,
3447
+ "schemaChars": 661,
3448
+ "propertiesCount": 18
3449
+ },
3450
+ {
3451
+ "name": "nodes",
3452
+ "summaryChars": 122,
3453
+ "schemaChars": 1800,
3454
+ "propertiesCount": 37
3455
+ },
3456
+ {
3457
+ "name": "cron",
3458
+ "summaryChars": 2689,
3459
+ "schemaChars": 690,
3460
+ "propertiesCount": 13
3461
+ },
3462
+ {
3463
+ "name": "message",
3464
+ "summaryChars": 89,
3465
+ "schemaChars": 4872,
3466
+ "propertiesCount": 91
3467
+ },
3468
+ {
3469
+ "name": "tts",
3470
+ "summaryChars": 152,
3471
+ "schemaChars": 223,
3472
+ "propertiesCount": 2
3473
+ },
3474
+ {
3475
+ "name": "gateway",
3476
+ "summaryChars": 464,
3477
+ "schemaChars": 497,
3478
+ "propertiesCount": 12
3479
+ },
3480
+ {
3481
+ "name": "agents_list",
3482
+ "summaryChars": 118,
3483
+ "schemaChars": 33,
3484
+ "propertiesCount": 0
3485
+ },
3486
+ {
3487
+ "name": "sessions_list",
3488
+ "summaryChars": 54,
3489
+ "schemaChars": 212,
3490
+ "propertiesCount": 4
3491
+ },
3492
+ {
3493
+ "name": "sessions_history",
3494
+ "summaryChars": 36,
3495
+ "schemaChars": 161,
3496
+ "propertiesCount": 3
3497
+ },
3498
+ {
3499
+ "name": "sessions_send",
3500
+ "summaryChars": 84,
3501
+ "schemaChars": 273,
3502
+ "propertiesCount": 5
3503
+ },
3504
+ {
3505
+ "name": "sessions_yield",
3506
+ "summaryChars": 97,
3507
+ "schemaChars": 60,
3508
+ "propertiesCount": 1
3509
+ },
3510
+ {
3511
+ "name": "sessions_spawn",
3512
+ "summaryChars": 198,
3513
+ "schemaChars": 1179,
3514
+ "propertiesCount": 17
3515
+ },
3516
+ {
3517
+ "name": "subagents",
3518
+ "summaryChars": 105,
3519
+ "schemaChars": 191,
3520
+ "propertiesCount": 4
3521
+ },
3522
+ {
3523
+ "name": "session_status",
3524
+ "summaryChars": 207,
3525
+ "schemaChars": 89,
3526
+ "propertiesCount": 2
3527
+ },
3528
+ {
3529
+ "name": "web_search",
3530
+ "summaryChars": 123,
3531
+ "schemaChars": 767,
3532
+ "propertiesCount": 7
3533
+ },
3534
+ {
3535
+ "name": "web_fetch",
3536
+ "summaryChars": 129,
3537
+ "schemaChars": 374,
3538
+ "propertiesCount": 3
3539
+ },
3540
+ {
3541
+ "name": "pdf",
3542
+ "summaryChars": 275,
3543
+ "schemaChars": 400,
3544
+ "propertiesCount": 6
3545
+ },
3546
+ {
3547
+ "name": "lcm_grep",
3548
+ "summaryChars": 320,
3549
+ "schemaChars": 1193,
3550
+ "propertiesCount": 8
3551
+ },
3552
+ {
3553
+ "name": "lcm_describe",
3554
+ "summaryChars": 233,
3555
+ "schemaChars": 592,
3556
+ "propertiesCount": 4
3557
+ },
3558
+ {
3559
+ "name": "lcm_expand",
3560
+ "summaryChars": 400,
3561
+ "schemaChars": 987,
3562
+ "propertiesCount": 7
3563
+ },
3564
+ {
3565
+ "name": "lcm_expand_query",
3566
+ "summaryChars": 205,
3567
+ "schemaChars": 970,
3568
+ "propertiesCount": 7
3569
+ },
3570
+ {
3571
+ "name": "brain_teach",
3572
+ "summaryChars": 126,
3573
+ "schemaChars": 494,
3574
+ "propertiesCount": 3
3575
+ },
3576
+ {
3577
+ "name": "brain_status",
3578
+ "summaryChars": 81,
3579
+ "schemaChars": 33,
3580
+ "propertiesCount": 0
3581
+ },
3582
+ {
3583
+ "name": "brain_trace",
3584
+ "summaryChars": 173,
3585
+ "schemaChars": 132,
3586
+ "propertiesCount": 1
3587
+ },
3588
+ {
3589
+ "name": "memory_search",
3590
+ "summaryChars": 334,
3591
+ "schemaChars": 139,
3592
+ "propertiesCount": 3
3593
+ },
3594
+ {
3595
+ "name": "memory_get",
3596
+ "summaryChars": 151,
3597
+ "schemaChars": 128,
3598
+ "propertiesCount": 3
3599
+ }
3600
+ ]
3601
+ }
3602
+ },
3603
+ "stopReason": "stop"
3604
+ }
3605
+ },
3606
+ "uninitializedPrimer": {
3607
+ "payloads": [
3608
+ {
3609
+ "text": "To open a pull request (PR) again, follow these steps:\n\n1. **Ensure Your Branch Is Up-to-Date:**\n ```sh\n git pull origin main\n ```\n\n2. **Make Your Changes:**\n - Add your code or make your changes.\n\n3. **Commit Your Changes:**\n ```sh\n git add .\n git commit -m \"Your descriptive commit message\"\n ```\n\n4. **Push Your Changes to the Remote Repository:**\n ```sh\n git push origin <your-branch>\n ```\n\n5. **Create the Pull Request:**\n - Go to your repository on GitHub.\n - Click on the \"Pull Requests\" tab.\n - Click on the \"New Pull Request\" button.\n - Select the base repository and branch (usually `main` or `master`), and the source branch (your branch).\n - Add a title and description for the PR.\n - Click on \"Create Pull Request.\"\n\nAlternatively, you can use the `gh` CLI tool to create the pull request directly from the terminal:\n\n```sh\ngh pr create --title \"Your PR title\" --body \"Your PR description\" --base main --head <your-branch>\n```\n\nWould you like to proceed with any of these steps or need further assistance?",
3610
+ "mediaUrl": null
3611
+ }
3612
+ ],
3613
+ "meta": {
3614
+ "durationMs": 9698,
3615
+ "agentMeta": {
3616
+ "sessionId": "475abd74-ed4f-4334-a896-8ffd7d81eec7",
3617
+ "provider": "ollama",
3618
+ "model": "qwen2.5:7b-instruct",
3619
+ "usage": {
3620
+ "input": 24836,
3621
+ "output": 272,
3622
+ "total": 25108
3623
+ },
3624
+ "lastCallUsage": {
3625
+ "input": 24836,
3626
+ "output": 272,
3627
+ "cacheRead": 0,
3628
+ "cacheWrite": 0,
3629
+ "total": 25108
3630
+ },
3631
+ "promptTokens": 24836
3632
+ },
3633
+ "aborted": false,
3634
+ "systemPromptReport": {
3635
+ "source": "run",
3636
+ "generatedAt": 1773675908652,
3637
+ "sessionId": "93eb604e-21e6-4802-81c1-04c889244efb",
3638
+ "sessionKey": "agent:main:main",
3639
+ "provider": "ollama",
3640
+ "model": "qwen2.5:7b-instruct",
3641
+ "workspaceDir": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture",
3642
+ "bootstrapMaxChars": 20000,
3643
+ "bootstrapTotalMaxChars": 150000,
3644
+ "bootstrapTruncation": {
3645
+ "warningMode": "once",
3646
+ "warningShown": false,
3647
+ "truncatedFiles": 0,
3648
+ "nearLimitFiles": 0,
3649
+ "totalNearLimit": false
3650
+ },
3651
+ "sandbox": {
3652
+ "mode": "off",
3653
+ "sandboxed": false
3654
+ },
3655
+ "systemPrompt": {
3656
+ "chars": 31507,
3657
+ "projectContextChars": 13769,
3658
+ "nonProjectContextChars": 17738
3659
+ },
3660
+ "injectedWorkspaceFiles": [
3661
+ {
3662
+ "name": "AGENTS.md",
3663
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/AGENTS.md",
3664
+ "missing": false,
3665
+ "rawChars": 7809,
3666
+ "injectedChars": 7809,
3667
+ "truncated": false
3668
+ },
3669
+ {
3670
+ "name": "SOUL.md",
3671
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/SOUL.md",
3672
+ "missing": false,
3673
+ "rawChars": 1664,
3674
+ "injectedChars": 1664,
3675
+ "truncated": false
3676
+ },
3677
+ {
3678
+ "name": "TOOLS.md",
3679
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/TOOLS.md",
3680
+ "missing": false,
3681
+ "rawChars": 850,
3682
+ "injectedChars": 850,
3683
+ "truncated": false
3684
+ },
3685
+ {
3686
+ "name": "IDENTITY.md",
3687
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/IDENTITY.md",
3688
+ "missing": false,
3689
+ "rawChars": 633,
3690
+ "injectedChars": 633,
3691
+ "truncated": false
3692
+ },
3693
+ {
3694
+ "name": "USER.md",
3695
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/USER.md",
3696
+ "missing": false,
3697
+ "rawChars": 474,
3698
+ "injectedChars": 474,
3699
+ "truncated": false
3700
+ },
3701
+ {
3702
+ "name": "HEARTBEAT.md",
3703
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/HEARTBEAT.md",
3704
+ "missing": false,
3705
+ "rawChars": 167,
3706
+ "injectedChars": 167,
3707
+ "truncated": false
3708
+ },
3709
+ {
3710
+ "name": "BOOTSTRAP.md",
3711
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/BOOTSTRAP.md",
3712
+ "missing": false,
3713
+ "rawChars": 1449,
3714
+ "injectedChars": 1449,
3715
+ "truncated": false
3716
+ }
3717
+ ],
3718
+ "skills": {
3719
+ "promptChars": 4781,
3720
+ "entries": [
3721
+ {
3722
+ "name": "coding-agent",
3723
+ "blockChars": 808
3724
+ },
3725
+ {
3726
+ "name": "gh-issues",
3727
+ "blockChars": 484
3728
+ },
3729
+ {
3730
+ "name": "github",
3731
+ "blockChars": 548
3732
+ },
3733
+ {
3734
+ "name": "gog",
3735
+ "blockChars": 208
3736
+ },
3737
+ {
3738
+ "name": "healthcheck",
3739
+ "blockChars": 467
3740
+ },
3741
+ {
3742
+ "name": "node-connect",
3743
+ "blockChars": 517
3744
+ },
3745
+ {
3746
+ "name": "session-logs",
3747
+ "blockChars": 229
3748
+ },
3749
+ {
3750
+ "name": "skill-creator",
3751
+ "blockChars": 735
3752
+ },
3753
+ {
3754
+ "name": "weather",
3755
+ "blockChars": 392
3756
+ }
3757
+ ]
3758
+ },
3759
+ "tools": {
3760
+ "listChars": 4389,
3761
+ "schemaChars": 23292,
3762
+ "entries": [
3763
+ {
3764
+ "name": "read",
3765
+ "summaryChars": 298,
3766
+ "schemaChars": 392,
3767
+ "propertiesCount": 4
3768
+ },
3769
+ {
3770
+ "name": "edit",
3771
+ "summaryChars": 129,
3772
+ "schemaChars": 591,
3773
+ "propertiesCount": 6
3774
+ },
3775
+ {
3776
+ "name": "write",
3777
+ "summaryChars": 127,
3778
+ "schemaChars": 313,
3779
+ "propertiesCount": 3
3780
+ },
3781
+ {
3782
+ "name": "exec",
3783
+ "summaryChars": 181,
3784
+ "schemaChars": 1086,
3785
+ "propertiesCount": 12
3786
+ },
3787
+ {
3788
+ "name": "process",
3789
+ "summaryChars": 85,
3790
+ "schemaChars": 961,
3791
+ "propertiesCount": 12
3792
+ },
3793
+ {
3794
+ "name": "browser",
3795
+ "summaryChars": 1251,
3796
+ "schemaChars": 2799,
3797
+ "propertiesCount": 48
3798
+ },
3799
+ {
3800
+ "name": "canvas",
3801
+ "summaryChars": 106,
3802
+ "schemaChars": 661,
3803
+ "propertiesCount": 18
3804
+ },
3805
+ {
3806
+ "name": "nodes",
3807
+ "summaryChars": 122,
3808
+ "schemaChars": 1800,
3809
+ "propertiesCount": 37
3810
+ },
3811
+ {
3812
+ "name": "cron",
3813
+ "summaryChars": 2689,
3814
+ "schemaChars": 690,
3815
+ "propertiesCount": 13
3816
+ },
3817
+ {
3818
+ "name": "message",
3819
+ "summaryChars": 89,
3820
+ "schemaChars": 4872,
3821
+ "propertiesCount": 91
3822
+ },
3823
+ {
3824
+ "name": "tts",
3825
+ "summaryChars": 152,
3826
+ "schemaChars": 223,
3827
+ "propertiesCount": 2
3828
+ },
3829
+ {
3830
+ "name": "gateway",
3831
+ "summaryChars": 464,
3832
+ "schemaChars": 497,
3833
+ "propertiesCount": 12
3834
+ },
3835
+ {
3836
+ "name": "agents_list",
3837
+ "summaryChars": 118,
3838
+ "schemaChars": 33,
3839
+ "propertiesCount": 0
3840
+ },
3841
+ {
3842
+ "name": "sessions_list",
3843
+ "summaryChars": 54,
3844
+ "schemaChars": 212,
3845
+ "propertiesCount": 4
3846
+ },
3847
+ {
3848
+ "name": "sessions_history",
3849
+ "summaryChars": 36,
3850
+ "schemaChars": 161,
3851
+ "propertiesCount": 3
3852
+ },
3853
+ {
3854
+ "name": "sessions_send",
3855
+ "summaryChars": 84,
3856
+ "schemaChars": 273,
3857
+ "propertiesCount": 5
3858
+ },
3859
+ {
3860
+ "name": "sessions_yield",
3861
+ "summaryChars": 97,
3862
+ "schemaChars": 60,
3863
+ "propertiesCount": 1
3864
+ },
3865
+ {
3866
+ "name": "sessions_spawn",
3867
+ "summaryChars": 198,
3868
+ "schemaChars": 1179,
3869
+ "propertiesCount": 17
3870
+ },
3871
+ {
3872
+ "name": "subagents",
3873
+ "summaryChars": 105,
3874
+ "schemaChars": 191,
3875
+ "propertiesCount": 4
3876
+ },
3877
+ {
3878
+ "name": "session_status",
3879
+ "summaryChars": 207,
3880
+ "schemaChars": 89,
3881
+ "propertiesCount": 2
3882
+ },
3883
+ {
3884
+ "name": "web_search",
3885
+ "summaryChars": 123,
3886
+ "schemaChars": 767,
3887
+ "propertiesCount": 7
3888
+ },
3889
+ {
3890
+ "name": "web_fetch",
3891
+ "summaryChars": 129,
3892
+ "schemaChars": 374,
3893
+ "propertiesCount": 3
3894
+ },
3895
+ {
3896
+ "name": "pdf",
3897
+ "summaryChars": 275,
3898
+ "schemaChars": 400,
3899
+ "propertiesCount": 6
3900
+ },
3901
+ {
3902
+ "name": "lcm_grep",
3903
+ "summaryChars": 320,
3904
+ "schemaChars": 1193,
3905
+ "propertiesCount": 8
3906
+ },
3907
+ {
3908
+ "name": "lcm_describe",
3909
+ "summaryChars": 233,
3910
+ "schemaChars": 592,
3911
+ "propertiesCount": 4
3912
+ },
3913
+ {
3914
+ "name": "lcm_expand",
3915
+ "summaryChars": 400,
3916
+ "schemaChars": 987,
3917
+ "propertiesCount": 7
3918
+ },
3919
+ {
3920
+ "name": "lcm_expand_query",
3921
+ "summaryChars": 205,
3922
+ "schemaChars": 970,
3923
+ "propertiesCount": 7
3924
+ },
3925
+ {
3926
+ "name": "brain_teach",
3927
+ "summaryChars": 126,
3928
+ "schemaChars": 494,
3929
+ "propertiesCount": 3
3930
+ },
3931
+ {
3932
+ "name": "brain_status",
3933
+ "summaryChars": 81,
3934
+ "schemaChars": 33,
3935
+ "propertiesCount": 0
3936
+ },
3937
+ {
3938
+ "name": "brain_trace",
3939
+ "summaryChars": 173,
3940
+ "schemaChars": 132,
3941
+ "propertiesCount": 1
3942
+ },
3943
+ {
3944
+ "name": "memory_search",
3945
+ "summaryChars": 334,
3946
+ "schemaChars": 139,
3947
+ "propertiesCount": 3
3948
+ },
3949
+ {
3950
+ "name": "memory_get",
3951
+ "summaryChars": 151,
3952
+ "schemaChars": 128,
3953
+ "propertiesCount": 3
3954
+ }
3955
+ ]
3956
+ }
3957
+ },
3958
+ "stopReason": "stop"
3959
+ }
3960
+ },
3961
+ "uninitializedQuery": {
3962
+ "payloads": [
3963
+ {
3964
+ "text": "To open a pull request (PR) again, follow these steps:\n\n1. **Ensure Your Branch Is Up-to-Date:**\n ```sh\n git pull origin main\n ```\n\n2. **Make Your Changes:**\n - Add your code or make your changes.\n\n3. **Commit Your Changes:**\n ```sh\n git add .\n git commit -m \"Your descriptive commit message\"\n ```\n\n4. **Push Your Changes to the Remote Repository:**\n ```sh\n git push origin <your-branch>\n ```\n\n5. **Create the Pull Request:**\n - Go to your repository on GitHub.\n - Click on the \"Pull Requests\" tab.\n - Click on the \"New Pull Request\" button.\n - Select the base repository and branch (usually `main` or `master`), and the source branch (your branch).\n - Add a title and description for the PR.\n - Click on \"Create Pull Request.\"\n\nWould you like to proceed with any of these steps or need further assistance?",
3965
+ "mediaUrl": null
3966
+ }
3967
+ ],
3968
+ "meta": {
3969
+ "durationMs": 7901,
3970
+ "agentMeta": {
3971
+ "sessionId": "475abd74-ed4f-4334-a896-8ffd7d81eec7",
3972
+ "provider": "ollama",
3973
+ "model": "qwen2.5:7b-instruct",
3974
+ "usage": {
3975
+ "input": 25124,
3976
+ "output": 219,
3977
+ "total": 25343
3978
+ },
3979
+ "lastCallUsage": {
3980
+ "input": 25124,
3981
+ "output": 219,
3982
+ "cacheRead": 0,
3983
+ "cacheWrite": 0,
3984
+ "total": 25343
3985
+ },
3986
+ "promptTokens": 25124
3987
+ },
3988
+ "aborted": false,
3989
+ "systemPromptReport": {
3990
+ "source": "run",
3991
+ "generatedAt": 1773675920353,
3992
+ "sessionId": "93eb604e-21e6-4802-81c1-04c889244efb",
3993
+ "sessionKey": "agent:main:main",
3994
+ "provider": "ollama",
3995
+ "model": "qwen2.5:7b-instruct",
3996
+ "workspaceDir": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture",
3997
+ "bootstrapMaxChars": 20000,
3998
+ "bootstrapTotalMaxChars": 150000,
3999
+ "bootstrapTruncation": {
4000
+ "warningMode": "once",
4001
+ "warningShown": false,
4002
+ "truncatedFiles": 0,
4003
+ "nearLimitFiles": 0,
4004
+ "totalNearLimit": false
4005
+ },
4006
+ "sandbox": {
4007
+ "mode": "off",
4008
+ "sandboxed": false
4009
+ },
4010
+ "systemPrompt": {
4011
+ "chars": 31507,
4012
+ "projectContextChars": 13769,
4013
+ "nonProjectContextChars": 17738
4014
+ },
4015
+ "injectedWorkspaceFiles": [
4016
+ {
4017
+ "name": "AGENTS.md",
4018
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/AGENTS.md",
4019
+ "missing": false,
4020
+ "rawChars": 7809,
4021
+ "injectedChars": 7809,
4022
+ "truncated": false
4023
+ },
4024
+ {
4025
+ "name": "SOUL.md",
4026
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/SOUL.md",
4027
+ "missing": false,
4028
+ "rawChars": 1664,
4029
+ "injectedChars": 1664,
4030
+ "truncated": false
4031
+ },
4032
+ {
4033
+ "name": "TOOLS.md",
4034
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/TOOLS.md",
4035
+ "missing": false,
4036
+ "rawChars": 850,
4037
+ "injectedChars": 850,
4038
+ "truncated": false
4039
+ },
4040
+ {
4041
+ "name": "IDENTITY.md",
4042
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/IDENTITY.md",
4043
+ "missing": false,
4044
+ "rawChars": 633,
4045
+ "injectedChars": 633,
4046
+ "truncated": false
4047
+ },
4048
+ {
4049
+ "name": "USER.md",
4050
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/USER.md",
4051
+ "missing": false,
4052
+ "rawChars": 474,
4053
+ "injectedChars": 474,
4054
+ "truncated": false
4055
+ },
4056
+ {
4057
+ "name": "HEARTBEAT.md",
4058
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/HEARTBEAT.md",
4059
+ "missing": false,
4060
+ "rawChars": 167,
4061
+ "injectedChars": 167,
4062
+ "truncated": false
4063
+ },
4064
+ {
4065
+ "name": "BOOTSTRAP.md",
4066
+ "path": "/Users/cormorantai/.openclaw-ocbphase1/workspace-fixture/BOOTSTRAP.md",
4067
+ "missing": false,
4068
+ "rawChars": 1449,
4069
+ "injectedChars": 1449,
4070
+ "truncated": false
4071
+ }
4072
+ ],
4073
+ "skills": {
4074
+ "promptChars": 4781,
4075
+ "entries": [
4076
+ {
4077
+ "name": "coding-agent",
4078
+ "blockChars": 808
4079
+ },
4080
+ {
4081
+ "name": "gh-issues",
4082
+ "blockChars": 484
4083
+ },
4084
+ {
4085
+ "name": "github",
4086
+ "blockChars": 548
4087
+ },
4088
+ {
4089
+ "name": "gog",
4090
+ "blockChars": 208
4091
+ },
4092
+ {
4093
+ "name": "healthcheck",
4094
+ "blockChars": 467
4095
+ },
4096
+ {
4097
+ "name": "node-connect",
4098
+ "blockChars": 517
4099
+ },
4100
+ {
4101
+ "name": "session-logs",
4102
+ "blockChars": 229
4103
+ },
4104
+ {
4105
+ "name": "skill-creator",
4106
+ "blockChars": 735
4107
+ },
4108
+ {
4109
+ "name": "weather",
4110
+ "blockChars": 392
4111
+ }
4112
+ ]
4113
+ },
4114
+ "tools": {
4115
+ "listChars": 4389,
4116
+ "schemaChars": 23292,
4117
+ "entries": [
4118
+ {
4119
+ "name": "read",
4120
+ "summaryChars": 298,
4121
+ "schemaChars": 392,
4122
+ "propertiesCount": 4
4123
+ },
4124
+ {
4125
+ "name": "edit",
4126
+ "summaryChars": 129,
4127
+ "schemaChars": 591,
4128
+ "propertiesCount": 6
4129
+ },
4130
+ {
4131
+ "name": "write",
4132
+ "summaryChars": 127,
4133
+ "schemaChars": 313,
4134
+ "propertiesCount": 3
4135
+ },
4136
+ {
4137
+ "name": "exec",
4138
+ "summaryChars": 181,
4139
+ "schemaChars": 1086,
4140
+ "propertiesCount": 12
4141
+ },
4142
+ {
4143
+ "name": "process",
4144
+ "summaryChars": 85,
4145
+ "schemaChars": 961,
4146
+ "propertiesCount": 12
4147
+ },
4148
+ {
4149
+ "name": "browser",
4150
+ "summaryChars": 1251,
4151
+ "schemaChars": 2799,
4152
+ "propertiesCount": 48
4153
+ },
4154
+ {
4155
+ "name": "canvas",
4156
+ "summaryChars": 106,
4157
+ "schemaChars": 661,
4158
+ "propertiesCount": 18
4159
+ },
4160
+ {
4161
+ "name": "nodes",
4162
+ "summaryChars": 122,
4163
+ "schemaChars": 1800,
4164
+ "propertiesCount": 37
4165
+ },
4166
+ {
4167
+ "name": "cron",
4168
+ "summaryChars": 2689,
4169
+ "schemaChars": 690,
4170
+ "propertiesCount": 13
4171
+ },
4172
+ {
4173
+ "name": "message",
4174
+ "summaryChars": 89,
4175
+ "schemaChars": 4872,
4176
+ "propertiesCount": 91
4177
+ },
4178
+ {
4179
+ "name": "tts",
4180
+ "summaryChars": 152,
4181
+ "schemaChars": 223,
4182
+ "propertiesCount": 2
4183
+ },
4184
+ {
4185
+ "name": "gateway",
4186
+ "summaryChars": 464,
4187
+ "schemaChars": 497,
4188
+ "propertiesCount": 12
4189
+ },
4190
+ {
4191
+ "name": "agents_list",
4192
+ "summaryChars": 118,
4193
+ "schemaChars": 33,
4194
+ "propertiesCount": 0
4195
+ },
4196
+ {
4197
+ "name": "sessions_list",
4198
+ "summaryChars": 54,
4199
+ "schemaChars": 212,
4200
+ "propertiesCount": 4
4201
+ },
4202
+ {
4203
+ "name": "sessions_history",
4204
+ "summaryChars": 36,
4205
+ "schemaChars": 161,
4206
+ "propertiesCount": 3
4207
+ },
4208
+ {
4209
+ "name": "sessions_send",
4210
+ "summaryChars": 84,
4211
+ "schemaChars": 273,
4212
+ "propertiesCount": 5
4213
+ },
4214
+ {
4215
+ "name": "sessions_yield",
4216
+ "summaryChars": 97,
4217
+ "schemaChars": 60,
4218
+ "propertiesCount": 1
4219
+ },
4220
+ {
4221
+ "name": "sessions_spawn",
4222
+ "summaryChars": 198,
4223
+ "schemaChars": 1179,
4224
+ "propertiesCount": 17
4225
+ },
4226
+ {
4227
+ "name": "subagents",
4228
+ "summaryChars": 105,
4229
+ "schemaChars": 191,
4230
+ "propertiesCount": 4
4231
+ },
4232
+ {
4233
+ "name": "session_status",
4234
+ "summaryChars": 207,
4235
+ "schemaChars": 89,
4236
+ "propertiesCount": 2
4237
+ },
4238
+ {
4239
+ "name": "web_search",
4240
+ "summaryChars": 123,
4241
+ "schemaChars": 767,
4242
+ "propertiesCount": 7
4243
+ },
4244
+ {
4245
+ "name": "web_fetch",
4246
+ "summaryChars": 129,
4247
+ "schemaChars": 374,
4248
+ "propertiesCount": 3
4249
+ },
4250
+ {
4251
+ "name": "pdf",
4252
+ "summaryChars": 275,
4253
+ "schemaChars": 400,
4254
+ "propertiesCount": 6
4255
+ },
4256
+ {
4257
+ "name": "lcm_grep",
4258
+ "summaryChars": 320,
4259
+ "schemaChars": 1193,
4260
+ "propertiesCount": 8
4261
+ },
4262
+ {
4263
+ "name": "lcm_describe",
4264
+ "summaryChars": 233,
4265
+ "schemaChars": 592,
4266
+ "propertiesCount": 4
4267
+ },
4268
+ {
4269
+ "name": "lcm_expand",
4270
+ "summaryChars": 400,
4271
+ "schemaChars": 987,
4272
+ "propertiesCount": 7
4273
+ },
4274
+ {
4275
+ "name": "lcm_expand_query",
4276
+ "summaryChars": 205,
4277
+ "schemaChars": 970,
4278
+ "propertiesCount": 7
4279
+ },
4280
+ {
4281
+ "name": "brain_teach",
4282
+ "summaryChars": 126,
4283
+ "schemaChars": 494,
4284
+ "propertiesCount": 3
4285
+ },
4286
+ {
4287
+ "name": "brain_status",
4288
+ "summaryChars": 81,
4289
+ "schemaChars": 33,
4290
+ "propertiesCount": 0
4291
+ },
4292
+ {
4293
+ "name": "brain_trace",
4294
+ "summaryChars": 173,
4295
+ "schemaChars": 132,
4296
+ "propertiesCount": 1
4297
+ },
4298
+ {
4299
+ "name": "memory_search",
4300
+ "summaryChars": 334,
4301
+ "schemaChars": 139,
4302
+ "propertiesCount": 3
4303
+ },
4304
+ {
4305
+ "name": "memory_get",
4306
+ "summaryChars": 151,
4307
+ "schemaChars": 128,
4308
+ "propertiesCount": 3
4309
+ }
4310
+ ]
4311
+ }
4312
+ },
4313
+ "stopReason": "stop"
4314
+ }
4315
+ }
4316
+ },
4317
+ "assertions": {
4318
+ "teachRetrieval": {
4319
+ "taughtNodeId": "bn_2000f3c7-793",
4320
+ "packVersion": 17,
4321
+ "retrievedCorrectionVisible": true,
4322
+ "traceIncludesTaughtNode": true,
4323
+ "retrievedPackVersion": 17
4324
+ },
4325
+ "workerDownFailOpen": {
4326
+ "servedBeforeCrash": true,
4327
+ "servedPullRequestGuidanceBeforeCrash": true,
4328
+ "workerHealthyAfterCrash": false,
4329
+ "workerLastExit": {
4330
+ "code": null,
4331
+ "signal": "SIGKILL",
4332
+ "at": 1773675824182
4333
+ },
4334
+ "currentPackVersion": 8,
4335
+ "servedAfterCrash": true,
4336
+ "servedPackVersion": 8,
4337
+ "servedPullRequestGuidance": true
4338
+ },
4339
+ "recurrentQuery": {
4340
+ "validationRecordCountBefore": 2,
4341
+ "validationRecordCountAfter": 2,
4342
+ "mode": null,
4343
+ "traceId": null,
4344
+ "episodeId": null,
4345
+ "traceQueryText": null,
4346
+ "workerMode": "child",
4347
+ "workerPid": null,
4348
+ "workerHealthy": false,
4349
+ "workerLastHeartbeatAt": null,
4350
+ "currentPackVersion": 12,
4351
+ "aborted": false
4352
+ },
4353
+ "shortLookup": {
4354
+ "validationRecordCountBefore": 2,
4355
+ "validationRecordCountAfter": 2,
4356
+ "mode": null,
4357
+ "traceId": null,
4358
+ "lastAssemblyMode": "use_brain",
4359
+ "aborted": false,
4360
+ "bypassEvidence": "Since `PLAYBOOK.md` does not exist in the provided project context files, would you like to create a new `PLAYBOOK.md` file? Here is an example of how you can create it using the `write` tool:\n\n```jso"
4361
+ },
4362
+ "shadowMode": {
4363
+ "shadowMode": true,
4364
+ "validationRecordCountBefore": 2,
4365
+ "validationRecordCountAfter": 2,
4366
+ "mode": null,
4367
+ "traceId": null,
4368
+ "episodeId": null,
4369
+ "traceQueryText": null,
4370
+ "injectedContextVisible": false,
4371
+ "aborted": false
4372
+ },
4373
+ "noEmbedding": {
4374
+ "validationRecordCountBefore": 2,
4375
+ "validationRecordCountAfter": 2,
4376
+ "mode": null,
4377
+ "traceId": null,
4378
+ "lastAssemblyMode": "use_brain",
4379
+ "aborted": false
4380
+ },
4381
+ "uninitialized": {
4382
+ "validationRecordCountBefore": 2,
4383
+ "validationRecordCountAfter": 2,
4384
+ "mode": null,
4385
+ "traceId": null,
4386
+ "lastAssemblyMode": null,
4387
+ "aborted": false
4388
+ }
4389
+ },
4390
+ "skipped": [
4391
+ {
4392
+ "phase": "worker-down",
4393
+ "reason": "Host-surface worker-down assertion requires child-worker mode with a live worker PID."
4394
+ },
4395
+ {
4396
+ "phase": "brain-teach",
4397
+ "reason": "Phase-1 harness still needs a deterministic host-surface path for brain_teach assertion wiring; raw openclaw agent --local text prompting does not force tool use honestly."
4398
+ }
4399
+ ]
4400
+ }