@linkshell/host 0.4.42 → 0.4.43

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.
@@ -1,15 +1,16 @@
1
- import type { UsageQuery, UsageReport } from "@linkshell/wire";
2
- type Agent = "codex" | "claude";
1
+ import type { UsageQuery, UsageReport, SessionEvent } from "@linkshell/wire";
2
+ type NativeAgent = "codex" | "claude";
3
3
  export interface UsageRecord {
4
4
  key: string;
5
5
  session: string;
6
- agent: Agent;
6
+ agent: string;
7
7
  model: string;
8
8
  timestamp: number;
9
9
  inputTokens: number;
10
10
  outputTokens: number;
11
11
  cacheReadTokens: number;
12
12
  cacheWriteTokens: number;
13
+ totalTokens?: number;
13
14
  }
14
15
  /** Native logs are cumulative (Codex) or repeated content blocks (Claude), never additive lines. */
15
16
  export declare class UsageParser {
@@ -17,13 +18,27 @@ export declare class UsageParser {
17
18
  private model;
18
19
  private session;
19
20
  private previous;
20
- constructor(agent: Agent, fallbackSession: string);
21
+ constructor(agent: NativeAgent, fallbackSession: string);
21
22
  parse(line: string): UsageRecord | undefined;
22
23
  }
23
24
  export declare function summarizeUsage(records: Iterable<UsageRecord>, query: UsageQuery, now?: number, warnings?: string[]): UsageReport;
25
+ export interface UsageEventSource {
26
+ agents(): {
27
+ id: string;
28
+ label: string;
29
+ }[];
30
+ events(): Iterable<SessionEvent & {
31
+ agent: string;
32
+ }>;
33
+ }
34
+ /** Context occupancy and older unscoped updates cannot be safely summed. */
35
+ export declare function usageEventRecords(events: Iterable<SessionEvent & {
36
+ agent: string;
37
+ }>): Iterable<UsageRecord>;
24
38
  /** On-demand, coalesced scans; unchanged files retain only numeric usage, never conversation content. */
25
39
  export declare class UsageStatistics {
26
40
  private roots;
41
+ private source?;
27
42
  private cache;
28
43
  private pending?;
29
44
  private scannedAt;
@@ -31,7 +46,7 @@ export declare class UsageStatistics {
31
46
  constructor(roots?: {
32
47
  codex: string;
33
48
  claude: string;
34
- });
49
+ }, source?: UsageEventSource | undefined);
35
50
  summary(query: UsageQuery): Promise<UsageReport>;
36
51
  private records;
37
52
  private scan;
@@ -91,7 +91,7 @@ export function summarizeUsage(records, query, now = Date.now(), warnings = [])
91
91
  target.totals.sessions = target.sessions.size;
92
92
  for (const key of ["inputTokens", "outputTokens", "cacheReadTokens", "cacheWriteTokens"])
93
93
  target.totals[key] += row[key];
94
- target.totals.totalTokens += row.inputTokens + row.outputTokens + row.cacheReadTokens + row.cacheWriteTokens;
94
+ target.totals.totalTokens += row.totalTokens ?? (row.inputTokens + row.outputTokens + row.cacheReadTokens + row.cacheWriteTokens);
95
95
  };
96
96
  for (const row of unique.values()) {
97
97
  if (row.timestamp < start.getTime() || row.timestamp > now || (query.agent !== "all" && row.agent !== query.agent))
@@ -110,9 +110,46 @@ export function summarizeUsage(records, query, now = Date.now(), warnings = [])
110
110
  totals: total.totals, daily: [...daily].map(([date, value]) => ({ date, ...value.totals })),
111
111
  models: [...models.values()].map(value => ({ agent: value.agent, model: value.model, ...value.totals })).sort((a, b) => b.totalTokens - a.totalTokens), warnings };
112
112
  }
113
+ /** Context occupancy and older unscoped updates cannot be safely summed. */
114
+ export function* usageEventRecords(events) {
115
+ const previous = new Map();
116
+ const seen = new Set();
117
+ for (const event of events) {
118
+ const update = event.update;
119
+ if (event.agent === "codex" || event.agent === "claude" || update.sessionUpdate !== "usage_update" || !update.tokens || !update.accounting)
120
+ continue;
121
+ const { tokens, accounting } = update;
122
+ const key = `${event.sessionId}:${accounting.id}`;
123
+ if (seen.has(key))
124
+ continue;
125
+ seen.add(key);
126
+ const values = [tokens.totalTokens, tokens.inputTokens, tokens.outputTokens, tokens.cachedReadTokens ?? 0, tokens.cachedWriteTokens ?? 0];
127
+ if (values.some(value => !Number.isSafeInteger(value) || value < 0))
128
+ continue;
129
+ let delta = values;
130
+ if (accounting.scope === "session") {
131
+ const baseline = previous.get(event.sessionId);
132
+ previous.set(event.sessionId, values);
133
+ // Attaching mid-session must not charge older usage to today's date.
134
+ if (!baseline || values.some((value, i) => value < baseline[i]))
135
+ continue;
136
+ delta = values.map((value, i) => value - baseline[i]);
137
+ }
138
+ const [total, input, output, cached, written] = delta;
139
+ if (!total)
140
+ continue;
141
+ // ACP implementations differ on whether cache tokens are included in input.
142
+ const exclusive = total >= input + output + cached + written;
143
+ yield { key, session: event.sessionId, agent: event.agent, model: accounting.model ?? "未知模型",
144
+ timestamp: accounting.timestamp ?? event.ts, totalTokens: total,
145
+ inputTokens: exclusive ? input : Math.max(0, input - cached - written), outputTokens: output,
146
+ cacheReadTokens: cached, cacheWriteTokens: written };
147
+ }
148
+ }
113
149
  /** On-demand, coalesced scans; unchanged files retain only numeric usage, never conversation content. */
114
150
  export class UsageStatistics {
115
151
  roots;
152
+ source;
116
153
  cache = new Map();
117
154
  pending;
118
155
  scannedAt = 0;
@@ -120,15 +157,30 @@ export class UsageStatistics {
120
157
  constructor(roots = {
121
158
  codex: process.env.CODEX_HOME || join(homedir(), ".codex"),
122
159
  claude: process.env.CLAUDE_CONFIG_DIR || join(homedir(), ".claude"),
123
- }) {
160
+ }, source) {
124
161
  this.roots = roots;
162
+ this.source = source;
125
163
  }
126
164
  async summary(query) {
127
165
  if (!this.pending && Date.now() - this.scannedAt > 60_000) {
128
166
  this.pending = this.scan().then(() => { this.scannedAt = Date.now(); }).finally(() => { this.pending = undefined; });
129
167
  }
130
168
  await this.pending;
131
- return summarizeUsage(this.records(), query, Date.now(), this.warnings);
169
+ const records = [...this.records(), ...usageEventRecords(this.source?.events() ?? [])];
170
+ const now = Date.now();
171
+ const report = summarizeUsage(records, query, now, this.warnings);
172
+ const catalog = new Map((this.source?.agents() ?? [{ id: "codex", label: "Codex" }, { id: "claude", label: "Claude" }]).map(agent => [agent.id, agent]));
173
+ for (const record of records)
174
+ if (!catalog.has(record.agent))
175
+ catalog.set(record.agent, { id: record.agent, label: record.agent });
176
+ report.agents = [...catalog.values()].map(agent => {
177
+ const totals = summarizeUsage(records, { ...query, agent: agent.id }, now).totals;
178
+ const native = agent.id === "codex" || agent.id === "claude";
179
+ return { ...agent, source: native ? "native" : "acp", status: totals.records ? "available" : "no_data",
180
+ records: totals.records, totalTokens: totals.totalTokens,
181
+ note: native ? "本机原生日志(含归档)" : agent.id === "copilot" ? "LinkShell 接收的累计用量差值;首条仅建立基线" : "LinkShell 已记录的 Agent 用量;未上报的会话不计入" };
182
+ });
183
+ return report;
132
184
  }
133
185
  *records() { for (const file of this.cache.values())
134
186
  yield* file.records; }
@@ -1 +1 @@
1
- {"version":3,"file":"usage.js","sourceRoot":"","sources":["../../../src/usage.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"usage.js","sourceRoot":"","sources":["../../../src/usage.ts"],"names":[],"mappings":"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"}