clawprobe 0.2.9 → 0.2.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +130 -144
- package/dist/core/db.d.ts.map +1 -1
- package/dist/core/db.js +11 -1
- package/dist/core/db.js.map +1 -1
- package/dist/daemon.d.ts.map +1 -1
- package/dist/daemon.js +28 -18
- package/dist/daemon.js.map +1 -1
- package/dist/index.js +34 -3
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -15,190 +15,154 @@ clawprobe start
|
|
|
15
15
|
|
|
16
16
|
OpenClaw users regularly face three problems with no good solution:
|
|
17
17
|
|
|
18
|
-
**1.
|
|
18
|
+
**1. Context opacity** — How full is the context window right now? What's eating it? OpenClaw's built-in `/context detail` is useful but not always accessible mid-task.
|
|
19
19
|
|
|
20
|
-
**2. Silent memory loss** — Compaction silently discards conversation context
|
|
20
|
+
**2. Silent memory loss** — Compaction silently discards conversation context. Agreed-upon decisions, file paths, preferences — gone without notice.
|
|
21
21
|
|
|
22
22
|
**3. Memory is a black box** — What does your agent actually remember? Editing `MEMORY.md` by hand is the only option.
|
|
23
23
|
|
|
24
|
-
clawprobe
|
|
24
|
+
clawprobe addresses all three — without touching a single line of OpenClaw's internals.
|
|
25
25
|
|
|
26
26
|
---
|
|
27
27
|
|
|
28
28
|
## How it works
|
|
29
29
|
|
|
30
|
-
clawprobe reads OpenClaw's existing data files — session transcripts, session store, workspace memory files — and turns them into actionable insights. No code changes, no
|
|
30
|
+
clawprobe reads OpenClaw's existing data files — session transcripts, session store, workspace memory files — and turns them into actionable insights. No code changes, no plugins, no configuration required.
|
|
31
31
|
|
|
32
32
|
```
|
|
33
33
|
OpenClaw data files clawprobe
|
|
34
34
|
───────────────────── ──────────────────────────────────
|
|
35
|
-
sessions.json →
|
|
36
|
-
*.jsonl transcripts →
|
|
37
|
-
workspace/*.md files → File size analysis
|
|
35
|
+
sessions.json → Session list, token counts
|
|
36
|
+
*.jsonl transcripts → Accurate context usage, compact events, cost
|
|
37
|
+
workspace/*.md files → File size analysis, truncation detection
|
|
38
38
|
MEMORY.md → Memory browser & editor
|
|
39
|
-
memory/*.sqlite → Semantic memory search
|
|
40
39
|
```
|
|
41
40
|
|
|
42
41
|
---
|
|
43
42
|
|
|
44
43
|
## Features
|
|
45
44
|
|
|
46
|
-
###
|
|
47
|
-
|
|
48
|
-
See exactly where your API budget goes, broken down by day, week, and month.
|
|
45
|
+
### 📊 Agent Status
|
|
49
46
|
|
|
50
47
|
```
|
|
51
|
-
$ clawprobe
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
Thu ██████ $2.10
|
|
63
|
-
Fri █████████ $2.95
|
|
64
|
-
Sat ████ $1.52
|
|
65
|
-
Sun █████ $1.68
|
|
66
|
-
|
|
67
|
-
Input tokens: 412,000 (78%) $14.42
|
|
68
|
-
Output tokens: 115,000 (22%) $4.00
|
|
48
|
+
$ clawprobe status
|
|
49
|
+
|
|
50
|
+
📊 Agent Status (active session)
|
|
51
|
+
──────────────────────────────────────────────────
|
|
52
|
+
Agent: main
|
|
53
|
+
Session: agent:main:feishu:direct:ou_xxx ●
|
|
54
|
+
Model: kimi-k2.5
|
|
55
|
+
Context: 14.9K / 256.0K tokens █░░░░░░░░░ 6%
|
|
56
|
+
This session: 4.6K in / 498 out
|
|
57
|
+
Compacts: 0
|
|
58
|
+
Last active: Today 15:28
|
|
69
59
|
```
|
|
70
60
|
|
|
71
|
-
###
|
|
61
|
+
### 🔍 Context Analysis
|
|
72
62
|
|
|
73
|
-
|
|
63
|
+
Understand how the context window is being used, and catch issues before they cause problems.
|
|
74
64
|
|
|
75
65
|
```
|
|
76
|
-
$ clawprobe
|
|
66
|
+
$ clawprobe context
|
|
77
67
|
|
|
78
|
-
|
|
68
|
+
🔍 Context Analysis agent: main
|
|
69
|
+
──────────────────────────────────────────────────
|
|
70
|
+
Context used: 14.9K / 256.0K tokens █░░░░░░░░░ 6%
|
|
79
71
|
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
72
|
+
Injected workspace files:
|
|
73
|
+
AGENTS.md 7,805 chars ~2.0K tok ✓ ok
|
|
74
|
+
SOUL.md 1,078 chars ~270 tok ✓ ok
|
|
75
|
+
TOOLS.md 851 chars ~213 tok ✓ ok
|
|
83
76
|
|
|
84
|
-
|
|
85
|
-
Turn 3 👤 "This project uses PostgreSQL, not MySQL"
|
|
86
|
-
Turn 12 👤 "API response format must use snake_case"
|
|
77
|
+
Workspace subtotal: ~2.8K tokens (7 files)
|
|
87
78
|
|
|
88
|
-
|
|
89
|
-
|
|
79
|
+
Session history estimate:
|
|
80
|
+
Total in context: 14.9K tokens
|
|
81
|
+
Fixed overhead: ~2.8K tokens (workspace files)
|
|
82
|
+
Conversation est: ~12.2K tokens (messages + system prompt + tools)
|
|
90
83
|
|
|
91
|
-
|
|
84
|
+
Remaining headroom: 241.1K tokens (94%)
|
|
92
85
|
```
|
|
93
86
|
|
|
94
|
-
###
|
|
87
|
+
### 📦 Compact Event Tracking
|
|
95
88
|
|
|
96
|
-
|
|
89
|
+
Every time OpenClaw compacts your session, clawprobe captures what was compacted and lets you save key context to long-term memory.
|
|
97
90
|
|
|
98
91
|
```
|
|
99
|
-
$ clawprobe
|
|
92
|
+
$ clawprobe compacts
|
|
100
93
|
|
|
101
|
-
|
|
94
|
+
📦 Compact Events last 5
|
|
95
|
+
──────────────────────────────────────────────────
|
|
102
96
|
|
|
103
|
-
1
|
|
104
|
-
"Database: PostgreSQL. Not MySQL. Team prefers PG advanced features."
|
|
97
|
+
#1 Today 14:22 [agent:main…]
|
|
105
98
|
|
|
106
|
-
|
|
107
|
-
"Decided on Prisma ORM for migrations. Scripts in src/migrations/."
|
|
99
|
+
3 messages compacted
|
|
108
100
|
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
101
|
+
Compacted messages:
|
|
102
|
+
👤 "Can you help me check if MEMORY.md is being tracked?"
|
|
103
|
+
🤖 "Yes, MEMORY.md has been added and is pending commit."
|
|
112
104
|
|
|
105
|
+
→ Save to memory: clawprobe memory save-compact 1
|
|
113
106
|
```
|
|
114
|
-
$ clawprobe memory add "New requirement: API pagination, default 20 items per page"
|
|
115
|
-
✅ Added to MEMORY.md
|
|
116
|
-
```
|
|
117
|
-
|
|
118
|
-
### 🔍 Context Analysis
|
|
119
|
-
|
|
120
|
-
Understand how your agent's context window is being used, and catch issues before they cost you.
|
|
121
107
|
|
|
122
|
-
|
|
123
|
-
$ clawprobe context
|
|
124
|
-
|
|
125
|
-
🔍 Context Analysis
|
|
126
|
-
|
|
127
|
-
Workspace files:
|
|
128
|
-
SOUL.md 912 chars ~228 tok ✓ fully injected
|
|
129
|
-
AGENTS.md 1,742 chars ~436 tok ✓ fully injected
|
|
130
|
-
TOOLS.md 54,210 chars ~13,553 tok ⚠ TRUNCATED → 20,000 chars (~5,000 tok)
|
|
131
|
-
USER.md 388 chars ~97 tok ✓ fully injected
|
|
132
|
-
MEMORY.md 912 chars ~228 tok ✓ fully injected
|
|
108
|
+
### 💰 Cost Tracking
|
|
133
109
|
|
|
134
|
-
|
|
135
|
-
Workspace files estimate: ~7,100 tok (23%)
|
|
110
|
+
See where your API budget goes, broken down by day.
|
|
136
111
|
|
|
137
|
-
⚠ TOOLS.md: 34,210 chars (63%) are never seen by the model
|
|
138
|
-
→ Consider splitting into per-task files or using Skills
|
|
139
112
|
```
|
|
113
|
+
$ clawprobe cost --week
|
|
140
114
|
|
|
141
|
-
|
|
115
|
+
💰 Weekly Cost Mar 10 – Mar 17, 2026
|
|
116
|
+
──────────────────────────────────────────────────
|
|
117
|
+
Total: $0.00
|
|
118
|
+
Daily avg: $0.00
|
|
119
|
+
Month est: $0.00
|
|
142
120
|
|
|
143
|
-
|
|
121
|
+
2026-03-17 ██ $0.00
|
|
144
122
|
|
|
123
|
+
Input: 14.4K tokens $0.00 (93%)
|
|
124
|
+
Output: 1.2K tokens $0.00 (7%)
|
|
145
125
|
```
|
|
146
|
-
$ clawprobe suggest
|
|
147
126
|
|
|
148
|
-
|
|
127
|
+
> **Note:** Cost estimates are $0.00 for Kimi/Moonshot because the API
|
|
128
|
+
> does not return pricing data in usage responses. Set `customPrices` in
|
|
129
|
+
> `~/.clawprobe/config.json` to see accurate estimates.
|
|
149
130
|
|
|
150
|
-
|
|
151
|
-
34K chars of tool descriptions never reach the model.
|
|
152
|
-
Estimated waste: ~$2.10/week
|
|
153
|
-
→ Split TOOLS.md into smaller Skill-specific files
|
|
131
|
+
### 🧠 Memory Browser
|
|
154
132
|
|
|
155
|
-
|
|
156
|
-
reserveTokens=16384 may be too low for your workflow.
|
|
157
|
-
→ Try: increase to 24000 in openclaw.json
|
|
133
|
+
Browse, search, edit, and add to your agent's memory — no more hand-editing Markdown.
|
|
158
134
|
|
|
159
|
-
[INFO] 3 workspace files haven't changed in 30+ days
|
|
160
|
-
IDENTITY.md, HEARTBEAT.md may be safe to trim
|
|
161
135
|
```
|
|
136
|
+
$ clawprobe memory list
|
|
162
137
|
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
A local web UI for deeper visual analysis.
|
|
166
|
-
|
|
167
|
-
```
|
|
168
|
-
$ clawprobe start
|
|
169
|
-
Dashboard: http://localhost:4747
|
|
170
|
-
```
|
|
138
|
+
$ clawprobe memory search "database"
|
|
171
139
|
|
|
172
|
-
|
|
140
|
+
$ clawprobe memory add "Prefer snake_case for all API responses"
|
|
141
|
+
✓ Added to MEMORY.md
|
|
173
142
|
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
ssh -L 4747:localhost:4747 user@your-server
|
|
143
|
+
$ clawprobe memory save-compact 1
|
|
144
|
+
✓ Saved compact summary to MEMORY.md
|
|
177
145
|
```
|
|
178
146
|
|
|
179
|
-
###
|
|
180
|
-
|
|
181
|
-
Install the clawprobe Skill to interact via Telegram, WhatsApp, or any chat app connected to OpenClaw.
|
|
147
|
+
### 💡 Optimization Suggestions
|
|
182
148
|
|
|
183
|
-
|
|
184
|
-
openclaw plugins install @clawprobe/skill
|
|
185
|
-
```
|
|
149
|
+
clawprobe automatically detects common issues.
|
|
186
150
|
|
|
187
|
-
Then in chat:
|
|
188
151
|
```
|
|
189
|
-
|
|
190
|
-
Agent: 💰 This week: $18.42 (avg $2.63/day, est $78.90/month)
|
|
152
|
+
$ clawprobe suggest
|
|
191
153
|
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
⚠ Lost: PostgreSQL preference, snake_case API format
|
|
195
|
-
→ Reply "probe save 3" to save to long-term memory
|
|
154
|
+
💡 Optimization Suggestions agent: main
|
|
155
|
+
──────────────────────────────────────────────────
|
|
196
156
|
|
|
197
|
-
|
|
198
|
-
Agent: 💡 TOOLS.md truncated (CRITICAL) — wasting ~$2.10/week
|
|
199
|
-
reserveTokens may be too low (WARNING)
|
|
157
|
+
✓ No issues detected. Your agent looks healthy.
|
|
200
158
|
```
|
|
201
159
|
|
|
160
|
+
Rules checked:
|
|
161
|
+
- `TOOLS.md` truncation (file exceeds bootstrap limit — tools silently cut off)
|
|
162
|
+
- High compaction frequency (context fills up too fast)
|
|
163
|
+
- High error rate (model returning errors repeatedly)
|
|
164
|
+
- Stale workspace files (files unchanged for 30+ days)
|
|
165
|
+
|
|
202
166
|
---
|
|
203
167
|
|
|
204
168
|
## Installation
|
|
@@ -218,7 +182,8 @@ npm install -g clawprobe
|
|
|
218
182
|
### First run
|
|
219
183
|
|
|
220
184
|
```bash
|
|
221
|
-
clawprobe start
|
|
185
|
+
clawprobe start # Start background daemon
|
|
186
|
+
clawprobe status # Check active session
|
|
222
187
|
```
|
|
223
188
|
|
|
224
189
|
clawprobe auto-detects your OpenClaw installation at `~/.openclaw`. No configuration needed.
|
|
@@ -228,54 +193,77 @@ clawprobe auto-detects your OpenClaw installation at `~/.openclaw`. No configura
|
|
|
228
193
|
## Quick Reference
|
|
229
194
|
|
|
230
195
|
```bash
|
|
231
|
-
#
|
|
232
|
-
clawprobe
|
|
196
|
+
# Daemon
|
|
197
|
+
clawprobe start # Start background daemon
|
|
198
|
+
clawprobe stop # Stop daemon
|
|
199
|
+
|
|
200
|
+
# Status & context
|
|
201
|
+
clawprobe status # Current session (tokens, model, compactions)
|
|
233
202
|
clawprobe context # Context window breakdown
|
|
234
203
|
|
|
204
|
+
# Sessions
|
|
205
|
+
clawprobe session # Active session details + turn timeline
|
|
206
|
+
clawprobe session --list # All sessions
|
|
207
|
+
clawprobe session --list --full # Full session keys (not truncated)
|
|
208
|
+
|
|
235
209
|
# Cost
|
|
236
210
|
clawprobe cost # This week
|
|
237
211
|
clawprobe cost --day # Today
|
|
238
212
|
clawprobe cost --month # This month
|
|
239
213
|
|
|
240
214
|
# Compact events
|
|
241
|
-
clawprobe compacts # Last 5 events
|
|
242
|
-
clawprobe compacts --last 10 # Last 10
|
|
215
|
+
clawprobe compacts # Last 5 compact events
|
|
216
|
+
clawprobe compacts --last 10 # Last 10
|
|
243
217
|
|
|
244
218
|
# Memory
|
|
245
|
-
clawprobe memory list
|
|
246
|
-
clawprobe memory search "postgres"
|
|
247
|
-
clawprobe memory add "prefer snake_case"
|
|
248
|
-
clawprobe memory save-compact
|
|
219
|
+
clawprobe memory list # List memory entries
|
|
220
|
+
clawprobe memory search "postgres" # Search memory
|
|
221
|
+
clawprobe memory add "prefer snake_case" # Add to memory
|
|
222
|
+
clawprobe memory save-compact <id> # Save from compact event
|
|
249
223
|
|
|
250
224
|
# Suggestions
|
|
251
|
-
clawprobe suggest # Show
|
|
225
|
+
clawprobe suggest # Show optimization suggestions
|
|
252
226
|
|
|
253
|
-
#
|
|
254
|
-
clawprobe
|
|
255
|
-
clawprobe stop # Stop daemon
|
|
227
|
+
# Diagnostics
|
|
228
|
+
clawprobe config --diag # Full diagnostic dump
|
|
256
229
|
```
|
|
257
230
|
|
|
258
231
|
---
|
|
259
232
|
|
|
260
|
-
##
|
|
233
|
+
## Configuration
|
|
234
|
+
|
|
235
|
+
Optional config at `~/.clawprobe/config.json`:
|
|
236
|
+
|
|
237
|
+
```json
|
|
238
|
+
{
|
|
239
|
+
"timezone": "Asia/Shanghai",
|
|
240
|
+
"openclaw": {
|
|
241
|
+
"dir": "~/.openclaw",
|
|
242
|
+
"agent": "main"
|
|
243
|
+
},
|
|
244
|
+
"cost": {
|
|
245
|
+
"customPrices": {
|
|
246
|
+
"kimi-k2.5": { "input": 0.004, "output": 0.016 }
|
|
247
|
+
}
|
|
248
|
+
},
|
|
249
|
+
"alerts": {
|
|
250
|
+
"dailyBudgetUsd": 5.00
|
|
251
|
+
}
|
|
252
|
+
}
|
|
253
|
+
```
|
|
254
|
+
|
|
255
|
+
---
|
|
261
256
|
|
|
262
|
-
|
|
263
|
-
|----------------------|-----------|
|
|
264
|
-
| LegacyContextEngine (default) | ✅ |
|
|
265
|
-
| lossless-claw | ✅ |
|
|
266
|
-
| OpenViking Plugin | ✅ |
|
|
267
|
-
| MemOS Cloud Plugin | ✅ |
|
|
268
|
-
| ClawVault | ✅ |
|
|
269
|
-
| Any other plugin | ✅ |
|
|
257
|
+
## Compatibility
|
|
270
258
|
|
|
271
|
-
clawprobe works by reading OpenClaw's file system
|
|
259
|
+
clawprobe works by reading OpenClaw's file system directly. It is compatible with any OpenClaw version that writes `sessions.json` and `.jsonl` transcript files to `~/.openclaw/agents/<agent>/sessions/`.
|
|
272
260
|
|
|
273
261
|
---
|
|
274
262
|
|
|
275
263
|
## Privacy
|
|
276
264
|
|
|
277
265
|
- **100% local** — no data ever leaves your machine
|
|
278
|
-
- **Read-only by default** — only writes when you
|
|
266
|
+
- **Read-only by default** — only writes when you use `memory add`, `memory edit`, `memory delete`, or `memory save-compact`
|
|
279
267
|
- **No telemetry** — clawprobe collects nothing
|
|
280
268
|
- **No accounts** — no sign-up, no API keys required
|
|
281
269
|
|
|
@@ -286,14 +274,12 @@ clawprobe works by reading OpenClaw's file system, not by hooking into the Conte
|
|
|
286
274
|
clawprobe is open source (MIT). Contributions welcome.
|
|
287
275
|
|
|
288
276
|
```bash
|
|
289
|
-
git clone https://github.com/
|
|
290
|
-
cd
|
|
277
|
+
git clone https://github.com/seekcontext/ClawProbe
|
|
278
|
+
cd ClawProbe
|
|
291
279
|
npm install
|
|
292
280
|
npm run dev
|
|
293
281
|
```
|
|
294
282
|
|
|
295
|
-
See [DESIGN.md](./DESIGN.md) for architecture details.
|
|
296
|
-
|
|
297
283
|
---
|
|
298
284
|
|
|
299
285
|
## License
|
package/dist/core/db.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../../src/core/db.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAiB,MAAM,aAAa,CAAC;AAM1D,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,MAAM,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,uBAAuB,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;CACnC;AAED,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB;
|
|
1
|
+
{"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../../src/core/db.ts"],"names":[],"mappings":"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"}
|
package/dist/core/db.js
CHANGED
|
@@ -31,7 +31,8 @@ CREATE TABLE IF NOT EXISTS cost_records (
|
|
|
31
31
|
output_tokens INTEGER NOT NULL DEFAULT 0,
|
|
32
32
|
model TEXT,
|
|
33
33
|
estimated_usd REAL NOT NULL DEFAULT 0,
|
|
34
|
-
recorded_at INTEGER NOT NULL
|
|
34
|
+
recorded_at INTEGER NOT NULL,
|
|
35
|
+
UNIQUE(agent, session_key, date)
|
|
35
36
|
);
|
|
36
37
|
|
|
37
38
|
CREATE INDEX IF NOT EXISTS idx_cr_agent_date ON cost_records(agent, date);
|
|
@@ -155,10 +156,19 @@ export function getAllSessionKeys(db, agent) {
|
|
|
155
156
|
}
|
|
156
157
|
// --- Cost Records ---
|
|
157
158
|
export function upsertCostRecord(db, row) {
|
|
159
|
+
// Use ON CONFLICT to accumulate deltas per (agent, session_key, date)
|
|
160
|
+
// so repeated scans don't double-count. We track the cumulative total
|
|
161
|
+
// per day by storing the max seen value and updating when it grows.
|
|
158
162
|
db.prepare(`
|
|
159
163
|
INSERT INTO cost_records
|
|
160
164
|
(agent, session_key, date, input_tokens, output_tokens, model, estimated_usd, recorded_at)
|
|
161
165
|
VALUES (?, ?, ?, ?, ?, ?, ?, ?)
|
|
166
|
+
ON CONFLICT(agent, session_key, date) DO UPDATE SET
|
|
167
|
+
input_tokens = MAX(input_tokens, excluded.input_tokens),
|
|
168
|
+
output_tokens = MAX(output_tokens, excluded.output_tokens),
|
|
169
|
+
model = COALESCE(excluded.model, model),
|
|
170
|
+
estimated_usd = MAX(estimated_usd, excluded.estimated_usd),
|
|
171
|
+
recorded_at = excluded.recorded_at
|
|
162
172
|
`).run(row.agent, row.session_key, row.date, row.input_tokens, row.output_tokens, row.model, row.estimated_usd, row.recorded_at);
|
|
163
173
|
}
|
|
164
174
|
export function getDailyCostSummary(db, agent, days) {
|
package/dist/core/db.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"db.js","sourceRoot":"","sources":["../../src/core/db.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAiB,MAAM,aAAa,CAAC;AAC1D,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AAkExB,MAAM,MAAM,GAAG
|
|
1
|
+
{"version":3,"file":"db.js","sourceRoot":"","sources":["../../src/core/db.ts"],"names":[],"mappings":"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"}
|
package/dist/daemon.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"daemon.d.ts","sourceRoot":"","sources":["../src/daemon.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"daemon.d.ts","sourceRoot":"","sources":["../src/daemon.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AA8BlD,wBAAsB,WAAW,CAAC,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAsGpE"}
|
package/dist/daemon.js
CHANGED
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
import fs from "fs";
|
|
2
2
|
import path from "path";
|
|
3
|
-
import { openDb, insertSessionSnapshot } from "./core/db.js";
|
|
3
|
+
import { openDb, insertSessionSnapshot, upsertCompactEvent } from "./core/db.js";
|
|
4
4
|
import { FileWatcher, buildWatchGlobs } from "./core/watcher.js";
|
|
5
|
-
import { readSessionsStore, listJsonlFiles,
|
|
6
|
-
import { parseIncremental, parseAll } from "./core/jsonl-parser.js";
|
|
5
|
+
import { readSessionsStore, listJsonlFiles, findJsonlPath } from "./core/session-store.js";
|
|
6
|
+
import { parseIncremental, parseAll, parseSessionStats } from "./core/jsonl-parser.js";
|
|
7
7
|
import { analyzeCompaction } from "./engines/compact-diff.js";
|
|
8
8
|
import { snapshotWorkspaceFiles } from "./engines/file-analyzer.js";
|
|
9
9
|
import { runRules, persistSuggestions } from "./engines/rule-engine.js";
|
|
10
10
|
import { recordDailyCost, todayString } from "./engines/cost.js";
|
|
11
|
-
import { upsertCompactEvent } from "./core/db.js";
|
|
12
11
|
let watcher = null;
|
|
13
12
|
/** Redirect stdout/stderr to daemon.log when running as detached child (stdio is ignored). */
|
|
14
13
|
function redirectStdioToLogFile(probeDir) {
|
|
@@ -32,6 +31,9 @@ export async function startDaemon(cfg) {
|
|
|
32
31
|
if (process.env.CLAWPROBE_DAEMON === "1") {
|
|
33
32
|
redirectStdioToLogFile(cfg.probeDir);
|
|
34
33
|
}
|
|
34
|
+
// Write PID file so `clawprobe stop` can kill us
|
|
35
|
+
const pidFile = path.join(cfg.probeDir, "daemon.pid");
|
|
36
|
+
fs.writeFileSync(pidFile, String(process.pid), "utf-8");
|
|
35
37
|
const db = openDb(cfg.probeDir);
|
|
36
38
|
const agent = cfg.probe.openclaw.agent;
|
|
37
39
|
console.log(`✓ clawprobe daemon started [${new Date().toISOString()}]`);
|
|
@@ -105,6 +107,10 @@ export async function startDaemon(cfg) {
|
|
|
105
107
|
clearInterval(ruleTimer);
|
|
106
108
|
if (watcher)
|
|
107
109
|
await watcher.close();
|
|
110
|
+
try {
|
|
111
|
+
fs.unlinkSync(pidFile);
|
|
112
|
+
}
|
|
113
|
+
catch { /* ignore */ }
|
|
108
114
|
process.exit(0);
|
|
109
115
|
};
|
|
110
116
|
process.on("SIGTERM", shutdown);
|
|
@@ -129,16 +135,12 @@ async function processSessionsJson(cfg, agent) {
|
|
|
129
135
|
compaction_count: session.compactionCount,
|
|
130
136
|
sampled_at: now,
|
|
131
137
|
});
|
|
132
|
-
// Record
|
|
133
|
-
const
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
const inDelta = Math.max(0, curr.input_tokens - prev.input_tokens);
|
|
139
|
-
const outDelta = Math.max(0, curr.output_tokens - prev.output_tokens);
|
|
140
|
-
if (inDelta > 0 || outDelta > 0) {
|
|
141
|
-
recordDailyCost(db, agent, session.sessionKey, today, inDelta, outDelta, curr.model, cfg.probe.cost.customPrices);
|
|
138
|
+
// Record daily cost from jsonl transcript (most accurate source)
|
|
139
|
+
const jsonlPath = findJsonlPath(cfg.sessionsDir, session);
|
|
140
|
+
if (jsonlPath) {
|
|
141
|
+
const stats = parseSessionStats(jsonlPath);
|
|
142
|
+
if (stats && stats.totalOutput > 0) {
|
|
143
|
+
recordDailyCost(db, agent, session.sessionKey, today, stats.totalInput, stats.totalOutput, stats.model, cfg.probe.cost.customPrices);
|
|
142
144
|
}
|
|
143
145
|
}
|
|
144
146
|
}
|
|
@@ -146,15 +148,23 @@ async function processSessionsJson(cfg, agent) {
|
|
|
146
148
|
}
|
|
147
149
|
async function processJsonlFile(cfg, agent, filePath, fullScan) {
|
|
148
150
|
const db = openDb(cfg.probeDir);
|
|
149
|
-
|
|
151
|
+
// Resolve human-readable sessionKey: jsonl files are named by UUID,
|
|
152
|
+
// but we need to store the key that matches sessions.json for queries to work.
|
|
153
|
+
const sessions = readSessionsStore(cfg.sessionsDir);
|
|
154
|
+
const matchedSession = sessions.find((s) => {
|
|
155
|
+
const p = findJsonlPath(cfg.sessionsDir, s);
|
|
156
|
+
return p === filePath || (p && path.resolve(p) === path.resolve(filePath));
|
|
157
|
+
});
|
|
158
|
+
// Fall back to UUID filename if no sessions.json entry (orphan transcript)
|
|
159
|
+
const sessionKey = matchedSession?.sessionKey ?? path.basename(filePath, ".jsonl");
|
|
150
160
|
const { entries, compactEvents } = fullScan ? parseAll(filePath) : parseIncremental(filePath);
|
|
151
161
|
if (compactEvents.length === 0)
|
|
152
162
|
return;
|
|
163
|
+
const { getCompactedMessages } = await import("./core/jsonl-parser.js");
|
|
153
164
|
let prevFirstKeptId;
|
|
154
165
|
for (const event of compactEvents) {
|
|
155
|
-
const compactedMessages = (
|
|
156
|
-
|
|
157
|
-
const analysis = analyzeCompaction(event, entries, prevFirstKeptId);
|
|
166
|
+
const compactedMessages = getCompactedMessages(entries, event, prevFirstKeptId);
|
|
167
|
+
analyzeCompaction(event, entries, prevFirstKeptId);
|
|
158
168
|
upsertCompactEvent(db, {
|
|
159
169
|
agent,
|
|
160
170
|
session_key: sessionKey,
|
package/dist/daemon.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"daemon.js","sourceRoot":"","sources":["../src/daemon.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,OAAO,EAAE,MAAM,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"daemon.js","sourceRoot":"","sources":["../src/daemon.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
#!/usr/bin/env -S node --disable-warning=ExperimentalWarning
|
|
2
2
|
import { spawn } from "child_process";
|
|
3
3
|
import path from "path";
|
|
4
|
-
import { fileURLToPath } from "url";
|
|
4
|
+
import { fileURLToPath, URL } from "url";
|
|
5
|
+
import fs, { readFileSync } from "fs";
|
|
5
6
|
import { Command } from "commander";
|
|
6
7
|
import { resolveConfig, assertOpenClawExists } from "./core/config.js";
|
|
7
8
|
import { startDaemon } from "./daemon.js";
|
|
@@ -12,7 +13,8 @@ import { runCompacts } from "./cli/commands/compacts.js";
|
|
|
12
13
|
import { runContext } from "./cli/commands/context.js";
|
|
13
14
|
import { runSuggest } from "./cli/commands/suggest.js";
|
|
14
15
|
import { runMemoryList, runMemorySearch, runMemoryAdd, runMemoryEdit, runMemoryDelete, runMemorySaveCompact, } from "./cli/commands/memory.js";
|
|
15
|
-
|
|
16
|
+
// Read version from package.json at runtime so it's always in sync
|
|
17
|
+
const VERSION = JSON.parse(readFileSync(new URL("../package.json", import.meta.url), "utf-8")).version;
|
|
16
18
|
const program = new Command();
|
|
17
19
|
program
|
|
18
20
|
.name("clawprobe")
|
|
@@ -58,7 +60,36 @@ program
|
|
|
58
60
|
.command("stop")
|
|
59
61
|
.description("Stop the running daemon")
|
|
60
62
|
.action(() => {
|
|
61
|
-
|
|
63
|
+
const cfg = resolveConfig();
|
|
64
|
+
const pidFile = `${cfg.probeDir}/daemon.pid`;
|
|
65
|
+
const { existsSync, readFileSync, unlinkSync } = fs;
|
|
66
|
+
if (!existsSync(pidFile)) {
|
|
67
|
+
console.log("No daemon PID file found — daemon may not be running.");
|
|
68
|
+
return;
|
|
69
|
+
}
|
|
70
|
+
const pid = parseInt(readFileSync(pidFile, "utf-8").trim(), 10);
|
|
71
|
+
if (isNaN(pid)) {
|
|
72
|
+
console.log("Invalid PID file. Delete it manually: " + pidFile);
|
|
73
|
+
return;
|
|
74
|
+
}
|
|
75
|
+
try {
|
|
76
|
+
process.kill(pid, "SIGTERM");
|
|
77
|
+
unlinkSync(pidFile);
|
|
78
|
+
console.log(`✓ Daemon stopped (PID ${pid})`);
|
|
79
|
+
}
|
|
80
|
+
catch (e) {
|
|
81
|
+
const err = e;
|
|
82
|
+
if (err.code === "ESRCH") {
|
|
83
|
+
console.log(`Daemon (PID ${pid}) was not running. Cleaning up PID file.`);
|
|
84
|
+
try {
|
|
85
|
+
unlinkSync(pidFile);
|
|
86
|
+
}
|
|
87
|
+
catch { /* ignore */ }
|
|
88
|
+
}
|
|
89
|
+
else {
|
|
90
|
+
console.error(`Failed to stop daemon: ${err.message}`);
|
|
91
|
+
}
|
|
92
|
+
}
|
|
62
93
|
});
|
|
63
94
|
// --- status ---
|
|
64
95
|
program
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|