linkshell-cli 0.5.14 → 0.5.16
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/dist/cli/src/runtime/acp/agent-workspace.js +83 -27
- package/dist/cli/src/runtime/acp/agent-workspace.js.map +1 -1
- package/dist/cli/src/runtime/acp/claude-sdk-client.js +10 -0
- package/dist/cli/src/runtime/acp/claude-sdk-client.js.map +1 -1
- package/dist/cli/src/runtime/usage-report.d.ts +34 -0
- package/dist/cli/src/runtime/usage-report.js +325 -0
- package/dist/cli/src/runtime/usage-report.js.map +1 -0
- package/dist/cli/tsconfig.tsbuildinfo +1 -1
- package/dist/shared-protocol/src/index.d.ts +570 -2
- package/dist/shared-protocol/src/index.js +37 -0
- package/dist/shared-protocol/src/index.js.map +1 -1
- package/package.json +3 -3
- package/src/runtime/acp/agent-workspace.ts +92 -33
- package/src/runtime/acp/claude-sdk-client.ts +9 -0
- package/src/runtime/usage-report.ts +335 -0
- package/web/assets/index-CpannLtQ.js +94 -0
- package/web/assets/index-Cxv9bt2l.css +33 -0
- package/web/index.html +2 -2
- package/web/assets/index-BXxBRB9A.css +0 -33
- package/web/assets/index-BZodQjC_.js +0 -94
|
@@ -180,6 +180,11 @@ export function parseClaudeJsonlSession(input) {
|
|
|
180
180
|
let createdAt;
|
|
181
181
|
let updatedAt = input.fallbackUpdatedAt;
|
|
182
182
|
let cwd = input.cwd;
|
|
183
|
+
// Last assistant line's token usage. input_tokens at the latest turn is the
|
|
184
|
+
// current context-window occupancy (NOT a running sum), so we keep the last
|
|
185
|
+
// one we see rather than accumulating. Decoupled from any live LinkShell turn
|
|
186
|
+
// — this is read straight from the on-disk transcript.
|
|
187
|
+
let usage;
|
|
183
188
|
let index = 0;
|
|
184
189
|
for (const line of input.text.split(/\r?\n/)) {
|
|
185
190
|
if (!line.trim())
|
|
@@ -259,6 +264,9 @@ export function parseClaudeJsonlSession(input) {
|
|
|
259
264
|
}
|
|
260
265
|
else if (role === "assistant") {
|
|
261
266
|
const assistantMessageId = stringField(message, ["id"]) ?? turnId;
|
|
267
|
+
const lineUsage = asRecord(message?.usage);
|
|
268
|
+
if (lineUsage)
|
|
269
|
+
usage = lineUsage;
|
|
262
270
|
if (typeof content === "string") {
|
|
263
271
|
if (content.trim()) {
|
|
264
272
|
items.push({
|
|
@@ -323,6 +331,7 @@ export function parseClaudeJsonlSession(input) {
|
|
|
323
331
|
preview,
|
|
324
332
|
createdAt,
|
|
325
333
|
updatedAt,
|
|
334
|
+
usage,
|
|
326
335
|
turns,
|
|
327
336
|
},
|
|
328
337
|
};
|
|
@@ -344,6 +353,7 @@ function claudeSessionMetadataFromFile(filePath, cwd, sessionId) {
|
|
|
344
353
|
createdAt: parseTimestamp(thread.createdAt),
|
|
345
354
|
lastActivityAt: parseTimestamp(thread.updatedAt) ?? stat.mtimeMs,
|
|
346
355
|
lastModified: stat.mtimeMs,
|
|
356
|
+
usage: asRecord(thread.usage),
|
|
347
357
|
};
|
|
348
358
|
}
|
|
349
359
|
function isInsideCwd(cwd, candidate) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claude-sdk-client.js","sourceRoot":"","sources":["../../../../../src/runtime/acp/claude-sdk-client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"claude-sdk-client.js","sourceRoot":"","sources":["../../../../../src/runtime/acp/claude-sdk-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
export interface UsageTotals {
|
|
2
|
+
inputTokens: number;
|
|
3
|
+
outputTokens: number;
|
|
4
|
+
cacheReadTokens: number;
|
|
5
|
+
cacheWriteTokens: number;
|
|
6
|
+
totalTokens: number;
|
|
7
|
+
calls: number;
|
|
8
|
+
}
|
|
9
|
+
export interface UsageBucket extends UsageTotals {
|
|
10
|
+
key: string;
|
|
11
|
+
}
|
|
12
|
+
export interface UsageReport {
|
|
13
|
+
totals: UsageTotals;
|
|
14
|
+
sessions: number;
|
|
15
|
+
/** Highest single-day token total. */
|
|
16
|
+
peakDayTokens: number;
|
|
17
|
+
/** Longest single session span (first→last activity), milliseconds. */
|
|
18
|
+
longestTaskMs: number;
|
|
19
|
+
/** Consecutive active days ending at the most recent active day. */
|
|
20
|
+
currentStreakDays: number;
|
|
21
|
+
/** Longest run of consecutive active days ever. */
|
|
22
|
+
longestStreakDays: number;
|
|
23
|
+
byDay: UsageBucket[];
|
|
24
|
+
byHourWeekday: {
|
|
25
|
+
weekday: number;
|
|
26
|
+
hour: number;
|
|
27
|
+
tokens: number;
|
|
28
|
+
}[];
|
|
29
|
+
byTool: UsageBucket[];
|
|
30
|
+
byModel: UsageBucket[];
|
|
31
|
+
byProject: UsageBucket[];
|
|
32
|
+
generatedAt: number;
|
|
33
|
+
}
|
|
34
|
+
export declare function aggregateUsage(): UsageReport;
|
|
@@ -0,0 +1,325 @@
|
|
|
1
|
+
// Host-side usage aggregator. Scans local agent transcripts on disk and rolls
|
|
2
|
+
// them up into the dimensions a usage dashboard needs (cumulative total, peak
|
|
3
|
+
// day, activity heatmap by day, streaks, longest task). Fully DECOUPLED from any
|
|
4
|
+
// live LinkShell turn — it reads what the agents already wrote to disk, so
|
|
5
|
+
// history and externally-started sessions (any process, not just LinkShell) are
|
|
6
|
+
// all counted, the same way ccusage / vibe-usage / CodeIsland work.
|
|
7
|
+
//
|
|
8
|
+
// Counting convention (matches ccusage): sum usage PER API CALL — context is
|
|
9
|
+
// re-counted every turn, which is why totals reach billions. This is the usage
|
|
10
|
+
// view, the opposite of the single-snapshot "current context occupancy" meter.
|
|
11
|
+
import { readdirSync, readFileSync, statSync, existsSync } from "node:fs";
|
|
12
|
+
import { homedir } from "node:os";
|
|
13
|
+
import { join, basename } from "node:path";
|
|
14
|
+
function emptyTotals() {
|
|
15
|
+
return {
|
|
16
|
+
inputTokens: 0,
|
|
17
|
+
outputTokens: 0,
|
|
18
|
+
cacheReadTokens: 0,
|
|
19
|
+
cacheWriteTokens: 0,
|
|
20
|
+
totalTokens: 0,
|
|
21
|
+
calls: 0,
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
function dayKeyOf(ts) {
|
|
25
|
+
const d = new Date(ts);
|
|
26
|
+
return `${d.getFullYear()}-${String(d.getMonth() + 1).padStart(2, "0")}-${String(d.getDate()).padStart(2, "0")}`;
|
|
27
|
+
}
|
|
28
|
+
class Accumulator {
|
|
29
|
+
totals = emptyTotals();
|
|
30
|
+
day = new Map();
|
|
31
|
+
hw = new Map(); // "weekday:hour" → tokens
|
|
32
|
+
tool = new Map();
|
|
33
|
+
model = new Map();
|
|
34
|
+
project = new Map();
|
|
35
|
+
// Per-session activity timestamps, for longest-continuous-task duration.
|
|
36
|
+
sessionTimes = new Map();
|
|
37
|
+
bump(map, key, s, tokens) {
|
|
38
|
+
let t = map.get(key);
|
|
39
|
+
if (!t) {
|
|
40
|
+
t = emptyTotals();
|
|
41
|
+
map.set(key, t);
|
|
42
|
+
}
|
|
43
|
+
t.inputTokens += s.input;
|
|
44
|
+
t.outputTokens += s.output;
|
|
45
|
+
t.cacheReadTokens += s.cacheRead;
|
|
46
|
+
t.cacheWriteTokens += s.cacheWrite;
|
|
47
|
+
t.totalTokens += tokens;
|
|
48
|
+
t.calls += 1;
|
|
49
|
+
}
|
|
50
|
+
add(s) {
|
|
51
|
+
const tokens = s.input + s.output + s.cacheRead + s.cacheWrite;
|
|
52
|
+
if (tokens <= 0)
|
|
53
|
+
return;
|
|
54
|
+
this.totals.inputTokens += s.input;
|
|
55
|
+
this.totals.outputTokens += s.output;
|
|
56
|
+
this.totals.cacheReadTokens += s.cacheRead;
|
|
57
|
+
this.totals.cacheWriteTokens += s.cacheWrite;
|
|
58
|
+
this.totals.totalTokens += tokens;
|
|
59
|
+
this.totals.calls += 1;
|
|
60
|
+
this.bump(this.day, dayKeyOf(s.ts), s, tokens);
|
|
61
|
+
const d = new Date(s.ts);
|
|
62
|
+
const hwKey = `${d.getDay()}:${d.getHours()}`;
|
|
63
|
+
this.hw.set(hwKey, (this.hw.get(hwKey) ?? 0) + tokens);
|
|
64
|
+
this.bump(this.tool, s.tool, s, tokens);
|
|
65
|
+
this.bump(this.model, s.model || "(unknown)", s, tokens);
|
|
66
|
+
this.bump(this.project, s.project || "(unknown)", s, tokens);
|
|
67
|
+
const times = this.sessionTimes.get(s.sessionId);
|
|
68
|
+
if (!times)
|
|
69
|
+
this.sessionTimes.set(s.sessionId, [s.ts]);
|
|
70
|
+
else
|
|
71
|
+
times.push(s.ts);
|
|
72
|
+
}
|
|
73
|
+
toBuckets(map) {
|
|
74
|
+
return [...map.entries()]
|
|
75
|
+
.map(([key, t]) => ({ key, ...t }))
|
|
76
|
+
.sort((a, b) => b.totalTokens - a.totalTokens);
|
|
77
|
+
}
|
|
78
|
+
finish(sessions, generatedAt) {
|
|
79
|
+
const byDay = [...this.day.entries()]
|
|
80
|
+
.map(([key, t]) => ({ key, ...t }))
|
|
81
|
+
.sort((a, b) => a.key.localeCompare(b.key));
|
|
82
|
+
const peakDayTokens = byDay.reduce((m, d) => Math.max(m, d.totalTokens), 0);
|
|
83
|
+
// Longest CONTINUOUS work segment across all sessions. A Claude session
|
|
84
|
+
// file can be resumed days later, so first→last would absurdly count idle
|
|
85
|
+
// days. Instead, sort each session's call timestamps and split whenever the
|
|
86
|
+
// gap exceeds IDLE_SPLIT_MS; the longest unbroken segment is the task length.
|
|
87
|
+
const IDLE_SPLIT_MS = 30 * 60_000;
|
|
88
|
+
let longestTaskMs = 0;
|
|
89
|
+
for (const times of this.sessionTimes.values()) {
|
|
90
|
+
if (times.length === 0)
|
|
91
|
+
continue;
|
|
92
|
+
times.sort((a, b) => a - b);
|
|
93
|
+
let segStart = times[0];
|
|
94
|
+
let prev = times[0];
|
|
95
|
+
for (let i = 1; i < times.length; i++) {
|
|
96
|
+
const cur = times[i];
|
|
97
|
+
if (cur - prev > IDLE_SPLIT_MS) {
|
|
98
|
+
longestTaskMs = Math.max(longestTaskMs, prev - segStart);
|
|
99
|
+
segStart = cur;
|
|
100
|
+
}
|
|
101
|
+
prev = cur;
|
|
102
|
+
}
|
|
103
|
+
longestTaskMs = Math.max(longestTaskMs, prev - segStart);
|
|
104
|
+
}
|
|
105
|
+
const { currentStreakDays, longestStreakDays } = computeStreaks(byDay.map((d) => d.key), generatedAt);
|
|
106
|
+
const byHourWeekday = [...this.hw.entries()].map(([k, tokens]) => {
|
|
107
|
+
const parts = k.split(":");
|
|
108
|
+
return { weekday: Number(parts[0]), hour: Number(parts[1]), tokens };
|
|
109
|
+
});
|
|
110
|
+
return {
|
|
111
|
+
totals: this.totals,
|
|
112
|
+
sessions,
|
|
113
|
+
peakDayTokens,
|
|
114
|
+
longestTaskMs,
|
|
115
|
+
currentStreakDays,
|
|
116
|
+
longestStreakDays,
|
|
117
|
+
byDay,
|
|
118
|
+
byHourWeekday,
|
|
119
|
+
byTool: this.toBuckets(this.tool),
|
|
120
|
+
byModel: this.toBuckets(this.model),
|
|
121
|
+
byProject: this.toBuckets(this.project),
|
|
122
|
+
generatedAt,
|
|
123
|
+
};
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
// Streaks over a sorted set of active day-keys (YYYY-MM-DD). Current streak
|
|
127
|
+
// counts back from today (or yesterday — a gap of "today not yet active" still
|
|
128
|
+
// keeps an unbroken run alive). Uses UTC-noon to step days, dodging DST edges.
|
|
129
|
+
function computeStreaks(dayKeys, now) {
|
|
130
|
+
if (dayKeys.length === 0)
|
|
131
|
+
return { currentStreakDays: 0, longestStreakDays: 0 };
|
|
132
|
+
const set = new Set(dayKeys);
|
|
133
|
+
const dayMs = 86_400_000;
|
|
134
|
+
const toKey = (ms) => dayKeyOf(ms);
|
|
135
|
+
// Longest run.
|
|
136
|
+
let longest = 1;
|
|
137
|
+
let run = 1;
|
|
138
|
+
const sorted = [...dayKeys].sort();
|
|
139
|
+
for (let i = 1; i < sorted.length; i++) {
|
|
140
|
+
const prev = new Date(sorted[i - 1] + "T12:00:00").getTime();
|
|
141
|
+
const cur = new Date(sorted[i] + "T12:00:00").getTime();
|
|
142
|
+
const gapDays = Math.round((cur - prev) / dayMs);
|
|
143
|
+
if (gapDays === 1)
|
|
144
|
+
run += 1;
|
|
145
|
+
else
|
|
146
|
+
run = 1;
|
|
147
|
+
longest = Math.max(longest, run);
|
|
148
|
+
}
|
|
149
|
+
// Current run: walk backwards from today; if today isn't active, allow
|
|
150
|
+
// starting from yesterday (today simply hasn't happened yet).
|
|
151
|
+
let cursor = new Date(toKey(now) + "T12:00:00").getTime();
|
|
152
|
+
if (!set.has(toKey(cursor)))
|
|
153
|
+
cursor -= dayMs; // today inactive → start at yesterday
|
|
154
|
+
let current = 0;
|
|
155
|
+
while (set.has(toKey(cursor))) {
|
|
156
|
+
current += 1;
|
|
157
|
+
cursor -= dayMs;
|
|
158
|
+
}
|
|
159
|
+
return { currentStreakDays: current, longestStreakDays: longest };
|
|
160
|
+
}
|
|
161
|
+
function parseTs(value) {
|
|
162
|
+
if (typeof value === "number" && Number.isFinite(value)) {
|
|
163
|
+
return value > 10_000_000_000 ? value : value * 1000;
|
|
164
|
+
}
|
|
165
|
+
if (typeof value === "string" && value.trim()) {
|
|
166
|
+
const p = Date.parse(value);
|
|
167
|
+
return Number.isNaN(p) ? undefined : p;
|
|
168
|
+
}
|
|
169
|
+
return undefined;
|
|
170
|
+
}
|
|
171
|
+
function walkJsonl(dir, onFile) {
|
|
172
|
+
let entries;
|
|
173
|
+
try {
|
|
174
|
+
entries = readdirSync(dir);
|
|
175
|
+
}
|
|
176
|
+
catch {
|
|
177
|
+
return;
|
|
178
|
+
}
|
|
179
|
+
for (const entry of entries) {
|
|
180
|
+
const full = join(dir, entry);
|
|
181
|
+
let st;
|
|
182
|
+
try {
|
|
183
|
+
st = statSync(full);
|
|
184
|
+
}
|
|
185
|
+
catch {
|
|
186
|
+
continue;
|
|
187
|
+
}
|
|
188
|
+
if (st.isDirectory())
|
|
189
|
+
walkJsonl(full, onFile);
|
|
190
|
+
else if (entry.endsWith(".jsonl"))
|
|
191
|
+
onFile(full);
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
// Claude: ~/.claude/projects/**/*.jsonl — each assistant line carries
|
|
195
|
+
// message.usage. Skip <synthetic> (internal, no real usage).
|
|
196
|
+
function ingestClaude(acc) {
|
|
197
|
+
const root = join(homedir(), ".claude", "projects");
|
|
198
|
+
if (!existsSync(root))
|
|
199
|
+
return 0;
|
|
200
|
+
let sessions = 0;
|
|
201
|
+
walkJsonl(root, (path) => {
|
|
202
|
+
sessions += 1;
|
|
203
|
+
const sessionId = basename(path, ".jsonl");
|
|
204
|
+
let text;
|
|
205
|
+
try {
|
|
206
|
+
text = readFileSync(path, "utf8");
|
|
207
|
+
}
|
|
208
|
+
catch {
|
|
209
|
+
return;
|
|
210
|
+
}
|
|
211
|
+
let fileCwd = "";
|
|
212
|
+
for (const line of text.split(/\r?\n/)) {
|
|
213
|
+
if (!line.trim())
|
|
214
|
+
continue;
|
|
215
|
+
let o;
|
|
216
|
+
try {
|
|
217
|
+
o = JSON.parse(line);
|
|
218
|
+
}
|
|
219
|
+
catch {
|
|
220
|
+
continue;
|
|
221
|
+
}
|
|
222
|
+
if (typeof o?.cwd === "string" && !fileCwd)
|
|
223
|
+
fileCwd = o.cwd;
|
|
224
|
+
if (o?.type !== "assistant")
|
|
225
|
+
continue;
|
|
226
|
+
const msg = o.message;
|
|
227
|
+
const usage = msg?.usage;
|
|
228
|
+
const model = typeof msg?.model === "string" ? msg.model : "";
|
|
229
|
+
if (!usage || model === "<synthetic>" || !model)
|
|
230
|
+
continue;
|
|
231
|
+
const ts = parseTs(o.timestamp);
|
|
232
|
+
if (ts === undefined)
|
|
233
|
+
continue;
|
|
234
|
+
acc.add({
|
|
235
|
+
ts,
|
|
236
|
+
sessionId,
|
|
237
|
+
tool: "claude-code",
|
|
238
|
+
model,
|
|
239
|
+
project: basename(o.cwd || fileCwd || "(unknown)"),
|
|
240
|
+
input: usage.input_tokens || 0,
|
|
241
|
+
output: usage.output_tokens || 0,
|
|
242
|
+
cacheRead: usage.cache_read_input_tokens || 0,
|
|
243
|
+
cacheWrite: usage.cache_creation_input_tokens || 0,
|
|
244
|
+
});
|
|
245
|
+
}
|
|
246
|
+
});
|
|
247
|
+
return sessions;
|
|
248
|
+
}
|
|
249
|
+
// Codex: ~/.codex/sessions/**/rollout-*.jsonl — token_count events carry
|
|
250
|
+
// info.last_token_usage (per-turn delta; total_token_usage is cumulative and
|
|
251
|
+
// would double-count). cached_input_tokens is a subset of input_tokens.
|
|
252
|
+
function ingestCodex(acc) {
|
|
253
|
+
const root = join(homedir(), ".codex", "sessions");
|
|
254
|
+
if (!existsSync(root))
|
|
255
|
+
return 0;
|
|
256
|
+
let sessions = 0;
|
|
257
|
+
walkJsonl(root, (path) => {
|
|
258
|
+
if (!basename(path).startsWith("rollout-"))
|
|
259
|
+
return;
|
|
260
|
+
sessions += 1;
|
|
261
|
+
const sessionId = basename(path, ".jsonl");
|
|
262
|
+
let text;
|
|
263
|
+
try {
|
|
264
|
+
text = readFileSync(path, "utf8");
|
|
265
|
+
}
|
|
266
|
+
catch {
|
|
267
|
+
return;
|
|
268
|
+
}
|
|
269
|
+
let model = "";
|
|
270
|
+
let cwd = "";
|
|
271
|
+
for (const line of text.split(/\r?\n/)) {
|
|
272
|
+
if (!line.trim())
|
|
273
|
+
continue;
|
|
274
|
+
let o;
|
|
275
|
+
try {
|
|
276
|
+
o = JSON.parse(line);
|
|
277
|
+
}
|
|
278
|
+
catch {
|
|
279
|
+
continue;
|
|
280
|
+
}
|
|
281
|
+
const p = o?.payload ?? {};
|
|
282
|
+
const type = p.type ?? o?.type;
|
|
283
|
+
if (type === "session_meta") {
|
|
284
|
+
if (typeof p.cwd === "string")
|
|
285
|
+
cwd = p.cwd;
|
|
286
|
+
if (typeof p.model === "string")
|
|
287
|
+
model = p.model;
|
|
288
|
+
continue;
|
|
289
|
+
}
|
|
290
|
+
if (type === "turn_context") {
|
|
291
|
+
if (typeof p.model === "string")
|
|
292
|
+
model = p.model;
|
|
293
|
+
continue;
|
|
294
|
+
}
|
|
295
|
+
if (type !== "token_count")
|
|
296
|
+
continue;
|
|
297
|
+
const last = p.info?.last_token_usage;
|
|
298
|
+
if (!last)
|
|
299
|
+
continue;
|
|
300
|
+
const ts = parseTs(o.timestamp);
|
|
301
|
+
if (ts === undefined)
|
|
302
|
+
continue;
|
|
303
|
+
const cacheRead = last.cached_input_tokens || 0;
|
|
304
|
+
const rawInput = last.input_tokens || 0;
|
|
305
|
+
acc.add({
|
|
306
|
+
ts,
|
|
307
|
+
sessionId,
|
|
308
|
+
tool: "codex",
|
|
309
|
+
model: model || "gpt-5",
|
|
310
|
+
project: basename(cwd || "(unknown)"),
|
|
311
|
+
input: Math.max(0, rawInput - cacheRead),
|
|
312
|
+
output: (last.output_tokens || 0) + (last.reasoning_output_tokens || 0),
|
|
313
|
+
cacheRead,
|
|
314
|
+
cacheWrite: 0,
|
|
315
|
+
});
|
|
316
|
+
}
|
|
317
|
+
});
|
|
318
|
+
return sessions;
|
|
319
|
+
}
|
|
320
|
+
export function aggregateUsage() {
|
|
321
|
+
const acc = new Accumulator();
|
|
322
|
+
const sessions = ingestClaude(acc) + ingestCodex(acc);
|
|
323
|
+
return acc.finish(sessions, Date.now());
|
|
324
|
+
}
|
|
325
|
+
//# sourceMappingURL=usage-report.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"usage-report.js","sourceRoot":"","sources":["../../../../src/runtime/usage-report.ts"],"names":[],"mappings":"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"}
|