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.
@@ -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":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC1E,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAyChE,SAAS,EAAE,CAAC,MAAc;IACxB,OAAO,GAAG,MAAM,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;AAC1F,CAAC;AAED,SAAS,WAAW,CAAC,GAAW;IAC9B,OAAO,CACL,GAAG;QACH,OAAO,CAAC,GAAG,CAAC;aACT,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;aAClB,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CACvB,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,GAAW;IACnC,OAAO,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;AAClE,CAAC;AAED,SAAS,kBAAkB;IACzB,OAAO,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;AAChD,CAAC;AAED,SAAS,iBAAiB,CAAC,YAAoB;IAC7C,MAAM,IAAI,GAAG,kBAAkB,EAAE,CAAC;IAClC,MAAM,SAAS,GAAG,gBAAgB,CAAC,YAAY,CAAC,CAAC;IACjD,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,IAAI,UAAU,CAAC,SAAS,CAAC;QAAE,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAChD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IACnC,IAAI,CAAC;QACH,KAAK,MAAM,KAAK,IAAI,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;YACtC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YACnC,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;gBAC/D,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACtB,CAAC;QACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,oCAAoC;IACtC,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,cAAc,CAAC,KAAc;IACpC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACxD,OAAO,KAAK,GAAG,cAAc,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC;IACvD,CAAC;IACD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;QAC9C,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACjC,OAAO,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC;IACnD,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,qBAAqB,CAAC,OAAgB;IAC7C,IAAI,OAAO,OAAO,KAAK,QAAQ;QAAE,OAAO,OAAO,CAAC;IAChD,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QAC3B,OAAO,OAAO;aACX,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YACZ,IAAI,OAAO,IAAI,KAAK,QAAQ;gBAAE,OAAO,IAAI,CAAC;YAC1C,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,MAAM,IAAI,IAAI,IAAI,OAAQ,IAA0B,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC/G,OAAQ,IAAyB,CAAC,IAAI,CAAC;YACzC,CAAC;YACD,OAAO,EAAE,CAAC;QACZ,CAAC,CAAC;aACD,IAAI,CAAC,EAAE,CAAC,CAAC;IACd,CAAC;IACD,IAAI,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,MAAM,IAAI,OAAO,IAAI,OAAQ,OAA6B,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC3H,OAAQ,OAA4B,CAAC,IAAI,CAAC;IAC5C,CAAC;IACD,OAAO,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;AAC/B,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAa,EAAE,gBAAgB,GAAG,WAAW;IACtE,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC;IAC5D,IAAI,CAAC,KAAK;QAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,gBAAgB,EAAE,CAAC;IAC/D,OAAO;QACL,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE;QACpB,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,gBAAgB;KACvC,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB,CAAC,MAAgC;IAC9D,OAAO,MAAM;SACV,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;QACb,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;YACzC,MAAM,KAAK,GAAG,iBAAiB,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;YAC5D,OAAO;gBACL,IAAI,EAAE,OAAO;gBACb,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE,KAAK,CAAC,QAAQ;oBAC1B,IAAI,EAAE,KAAK,CAAC,IAAI;iBACjB;aACF,CAAC;QACJ,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC;IAClD,CAAC,CAAC;SACD,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAChB,KAAK,CAAC,IAAI,KAAK,OAAO;QACtB,CAAC,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CACjE,CAAC;AACN,CAAC;AAED,KAAK,SAAS,CAAC,CAAC,iBAAiB,CAAC,OAAkC;IAClE,MAAM;QACJ,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE;YACP,IAAI,EAAE,MAAM;YACZ,OAAO;SACR;QACD,kBAAkB,EAAE,IAAI;KACzB,CAAC;AACJ,CAAC;AAED,SAAS,qBAAqB,CAAC,KAAyB;IACtD,OAAO,OAAO,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC,CAAC;AAC/D,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAChE,CAAC,CAAC,KAAgC;QAClC,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC;AAED,SAAS,WAAW,CAAC,KAAc,EAAE,IAAc;IACjD,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC/B,IAAI,CAAC,MAAM;QAAE,OAAO,SAAS,CAAC;IAC9B,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QAC9B,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,CAAC,IAAI,EAAE;YAAE,OAAO,SAAS,CAAC;IAC1E,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,WAAW,CAAC,IAAY;IAC/B,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;AACxD,CAAC;AAED,SAAS,WAAW,CAAC,KAAc;IACjC,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC5C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACrC,OAAO,KAAK;SACT,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;QACb,IAAI,OAAO,KAAK,KAAK,QAAQ;YAAE,OAAO,KAAK,CAAC;QAC5C,MAAM,GAAG,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC5B,IAAI,CAAC,GAAG;YAAE,OAAO,EAAE,CAAC;QACpB,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ;YAAE,OAAO,GAAG,CAAC,IAAI,CAAC;QAClD,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO;YAAE,OAAO,IAAI,WAAW,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC,IAAI,OAAO,cAAc,CAAC;QAClH,OAAO,EAAE,CAAC;IACZ,CAAC,CAAC;SACD,MAAM,CAAC,OAAO,CAAC;SACf,IAAI,CAAC,IAAI,CAAC,CAAC;AAChB,CAAC;AAED,SAAS,kBAAkB,CAAC,QAA4B;IACtD,IAAI,QAAQ,KAAK,MAAM;QAAE,OAAO,kBAAkB,CAAC;IACnD,IAAI,QAAQ,KAAK,OAAO,IAAI,QAAQ,KAAK,MAAM,IAAI,QAAQ,KAAK,WAAW;QAAE,OAAO,YAAY,CAAC;IACjG,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,SAAS,qBAAqB,CAC5B,MAAc,EACd,QAA4B,EAC5B,SAA8C,EAC9C,GAAW;IAEX,MAAM,QAAQ,GAAG,WAAW,CAAC,SAAS,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,eAAe,CAAC,CAAC,CAAC;IAChF,OAAO;QACL,EAAE,EAAE,MAAM;QACV,IAAI,EAAE,kBAAkB,CAAC,QAAQ,CAAC;QAClC,QAAQ,EAAE,QAAQ,IAAI,MAAM;QAC5B,IAAI,EAAE,QAAQ,IAAI,MAAM;QACxB,KAAK,EAAE,SAAS;QAChB,SAAS;QACT,OAAO,EAAE,WAAW,CAAC,SAAS,EAAE,CAAC,SAAS,CAAC,CAAC;QAC5C,GAAG,EAAE,WAAW,CAAC,SAAS,EAAE,CAAC,KAAK,CAAC,CAAC,IAAI,GAAG;QAC3C,IAAI,EAAE,QAAQ;QACd,MAAM,EAAE,SAAS;KAClB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,KAKvC;IACC,MAAM,KAAK,GAAmC,EAAE,CAAC;IACjD,MAAM,SAAS,GAAG,IAAI,GAAG,EAAmC,CAAC;IAC7D,IAAI,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;IAChC,IAAI,KAAyB,CAAC;IAC9B,IAAI,KAAyB,CAAC;IAC9B,IAAI,OAA2B,CAAC;IAChC,IAAI,SAA6B,CAAC;IAClC,IAAI,SAAS,GAAG,KAAK,CAAC,iBAAiB,CAAC;IACxC,IAAI,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC;IACpB,IAAI,KAAK,GAAG,CAAC,CAAC;IAEd,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;QAC7C,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YAAE,SAAS;QAC3B,KAAK,IAAI,CAAC,CAAC;QACX,IAAI,GAA4B,CAAC;QACjC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAChC,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;YAChC,IAAI,CAAC,MAAM;gBAAE,SAAS;YACtB,GAAG,GAAG,MAAM,CAAC;QACf,CAAC;QAAC,MAAM,CAAC;YACP,SAAS;QACX,CAAC;QAED,MAAM,SAAS,GAAG,cAAc,CAAC,GAAG,CAAC,SAAS,IAAI,GAAG,CAAC,SAAS,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC;QACnF,GAAG,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,kBAAkB,EAAE,eAAe,CAAC,CAAC,IAAI,GAAG,CAAC;QAC5E,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC5B,SAAS,GAAG,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;YACjF,SAAS,GAAG,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QACnF,CAAC;QAED,SAAS,GAAG,SAAS,IAAI,WAAW,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC,CAAC;QACvE,KAAK,GAAG,KAAK,IAAI,WAAW,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;QAC7C,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACtC,KAAK,GAAG,KAAK,IAAI,WAAW,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;QACjD,MAAM,IAAI,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;QACxC,MAAM,IAAI,GAAG,WAAW,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC,CAAC,IAAI,IAAI,CAAC;QACpD,MAAM,OAAO,GAAG,OAAO,IAAI,SAAS,IAAI,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC;QAChF,MAAM,MAAM,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,IAAI,kBAAkB,KAAK,EAAE,CAAC;QAC7E,MAAM,KAAK,GAA8B,EAAE,CAAC;QAE5C,IAAI,IAAI,KAAK,SAAS,IAAI,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC1D,MAAM,OAAO,GAAG,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;YAC1E,IAAI,OAAO,EAAE,CAAC;gBACZ,KAAK,CAAC,IAAI,CAAC;oBACT,EAAE,EAAE,MAAM;oBACV,IAAI,EAAE,mBAAmB;oBACzB,OAAO;oBACP,MAAM,EAAE,WAAW;iBACpB,CAAC,CAAC;gBACH,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC;YAC5C,CAAC;QACH,CAAC;aAAM,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;YAC3B,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5D,MAAM,WAAW,GAAG,aAAa;iBAC9B,GAAG,CAAC,QAAQ,CAAC;iBACb,MAAM,CAAC,CAAC,KAAK,EAAoC,EAAE,CAAC,OAAO,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC,CAAC;YACvG,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;gBACzC,CAAC,CAAC,WAAW,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,IAAI,KAAK,aAAa,CAAC,CAAC;gBACvF,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YACzB,IAAI,YAAY,CAAC,IAAI,EAAE,EAAE,CAAC;gBACxB,KAAK,CAAC,IAAI,CAAC;oBACT,EAAE,EAAE,WAAW,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,MAAM;oBAC1C,IAAI,EAAE,aAAa;oBACnB,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;iBAChD,CAAC,CAAC;gBACH,KAAK,GAAG,KAAK,IAAI,WAAW,CAAC,YAAY,CAAC,CAAC;gBAC3C,OAAO,GAAG,WAAW,CAAC,YAAY,CAAC,IAAI,OAAO,CAAC;YACjD,CAAC;YACD,KAAK,MAAM,KAAK,IAAI,WAAW,EAAE,CAAC;gBAChC,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,EAAE,CAAC,aAAa,CAAC,CAAC,IAAI,eAAe,KAAK,EAAE,CAAC;gBAC7E,MAAM,QAAQ,GAAG,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBACvC,MAAM,MAAM,GAAG,qBAAqB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBACpD,KAAK,CAAC,IAAI,CAAC;oBACT,GAAG,QAAQ;oBACX,EAAE,EAAE,MAAM;oBACV,IAAI,EAAE,WAAW,CAAC,QAAQ,EAAE,CAAC,MAAM,CAAC,CAAC,IAAI,UAAU;oBACnD,QAAQ,EAAE,WAAW,CAAC,QAAQ,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;oBAC7D,IAAI,EAAE,WAAW,CAAC,QAAQ,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;oBACzD,MAAM,EAAE,KAAK,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW;oBACxD,MAAM;oBACN,gBAAgB,EAAE,MAAM;oBACxB,OAAO,EAAE,KAAK,CAAC,QAAQ,KAAK,IAAI;iBACjC,CAAC,CAAC;YACL,CAAC;QACH,CAAC;aAAM,IAAI,IAAI,KAAK,WAAW,EAAE,CAAC;YAChC,MAAM,kBAAkB,GAAG,WAAW,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,MAAM,CAAC;YAClE,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;gBAChC,IAAI,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;oBACnB,KAAK,CAAC,IAAI,CAAC;wBACT,EAAE,EAAE,kBAAkB;wBACtB,IAAI,EAAE,cAAc;wBACpB,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;wBAC1C,MAAM,EAAE,WAAW;qBACpB,CAAC,CAAC;oBACH,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC;gBAC5C,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAoC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBACvI,MAAM,IAAI,GAAG,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC;gBAC1E,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;oBAChB,KAAK,CAAC,IAAI,CAAC;wBACT,EAAE,EAAE,kBAAkB;wBACtB,IAAI,EAAE,cAAc;wBACpB,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;wBACjC,MAAM,EAAE,WAAW;qBACpB,CAAC,CAAC;oBACH,OAAO,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC;gBACzC,CAAC;gBACD,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,UAAU,EAAE,EAAE;oBACnC,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,IAAI,OAAO,KAAK,CAAC,QAAQ,KAAK,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC;wBAC7F,KAAK,CAAC,IAAI,CAAC;4BACT,EAAE,EAAE,GAAG,MAAM,aAAa,UAAU,EAAE;4BACtC,IAAI,EAAE,UAAU;4BAChB,IAAI,EAAE,KAAK,CAAC,QAAQ;4BACpB,MAAM,EAAE,WAAW;yBACpB,CAAC,CAAC;oBACL,CAAC;yBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;wBACrC,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,GAAG,MAAM,SAAS,UAAU,EAAE,CAAC;wBAC5E,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;wBAC9C,MAAM,SAAS,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;wBACxC,MAAM,IAAI,GAAG,qBAAqB,CAAC,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC;wBACrE,SAAS,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;wBAC5B,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACnB,CAAC;gBACH,CAAC,CAAC,CAAC;YACL,CAAC;QACH,CAAC;aAAM,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC7B,KAAK,GAAG,KAAK,IAAI,WAAW,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;QAC/C,CAAC;QAED,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrB,KAAK,CAAC,IAAI,CAAC;gBACT,EAAE,EAAE,MAAM;gBACV,SAAS,EAAE,SAAS;gBACpB,KAAK;aACN,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,OAAO;QACL,MAAM,EAAE;YACN,EAAE,EAAE,SAAS,IAAI,KAAK,CAAC,SAAS;YAChC,SAAS,EAAE,SAAS,IAAI,KAAK,CAAC,SAAS;YACvC,GAAG;YACH,KAAK;YACL,KAAK;YACL,OAAO;YACP,SAAS;YACT,SAAS;YACT,KAAK;SACN;KACF,CAAC;AACJ,CAAC;AAED,SAAS,6BAA6B,CAAC,QAAgB,EAAE,GAAW,EAAE,SAAiB;IACrF,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAChC,MAAM,MAAM,GAAG,uBAAuB,CAAC;QACrC,IAAI,EAAE,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC;QACpC,GAAG;QACH,SAAS;QACT,iBAAiB,EAAE,IAAI,CAAC,OAAO;KAChC,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;IAC7C,OAAO;QACL,EAAE,EAAE,SAAS;QACb,GAAG,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,kBAAkB,EAAE,eAAe,CAAC,CAAC,IAAI,GAAG;QAC7E,KAAK,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;QAChD,KAAK,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,CAAC;QACrC,SAAS,EAAE,cAAc,CAAC,MAAM,CAAC,SAAS,CAAC;QAC3C,cAAc,EAAE,cAAc,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,OAAO;QAChE,YAAY,EAAE,IAAI,CAAC,OAAO;KAC3B,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAAC,GAAW,EAAE,SAAiB;IACjD,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IAC1B,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACxC,MAAM,GAAG,GAAG,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACnC,OAAO,GAAG,KAAK,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;AACnE,CAAC;AAED,SAAS,6BAA6B,CAAC,KAAc;IACnD,MAAM,GAAG,GAAG,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAgC,CAAC,CAAC,CAAC,EAAE,CAAC;IACvF,IAAI,GAAG,CAAC,QAAQ,KAAK,OAAO;QAAE,OAAO,OAAO,CAAC;IAC7C,IAAI,GAAG,CAAC,QAAQ,KAAK,MAAM;QAAE,OAAO,MAAM,CAAC;IAC3C,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,IAAI,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ;QAC5D,CAAC,CAAE,GAAG,CAAC,OAAmC,CAAC,OAAO;QAClD,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC;IAChB,IAAI,OAAO,KAAK,UAAU,EAAE,CAAC;QAC3B,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,IAAI,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ;YAC7D,CAAC,CAAC,MAAM,CAAE,GAAG,CAAC,OAAmC,CAAC,QAAQ,IAAI,EAAE,CAAC;YACjE,CAAC,CAAC,EAAE,CAAC;QACP,OAAO,QAAQ,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;IACrE,CAAC;IACD,OAAO,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;AAChD,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,KAGvC;IACC,IAAI,KAAK,CAAC,iBAAiB,KAAK,MAAM,IAAI,KAAK,CAAC,cAAc,KAAK,WAAW;QAAE,OAAO,MAAM,CAAC;IAC9F,IAAI,KAAK,CAAC,cAAc,KAAK,iBAAiB;QAAE,OAAO,aAAa,CAAC;IACrE,IAAI,KAAK,CAAC,cAAc,KAAK,aAAa;QAAE,OAAO,mBAAmB,CAAC;IACvE,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,qBAAqB,GAA2B;IACpD,OAAO,EAAE,MAAM;IACf,MAAM,EAAE,QAAQ;IAChB,IAAI,EAAE,MAAM;IACZ,QAAQ,EAAE,WAAW;IACrB,KAAK,EAAE,OAAO;IACd,YAAY,EAAE,WAAW;IACzB,UAAU,EAAE,SAAS;CACtB,CAAC;AAEF,MAAM,OAAO,eAAe;IAQP;IAPX,KAAK,CAA0B;IAC/B,OAAO,CAAoR;IAC3R,eAAe,CAAqB;IACpC,eAAe,CAA8B;IAC7C,iBAAiB,GAAG,IAAI,GAAG,EAA+C,CAAC;IAEnF,YACmB,KAQhB;QARgB,UAAK,GAAL,KAAK,CAQrB;IACA,CAAC;IAEJ,KAAK,CAAC,UAAU;QACd,IAAI,CAAC;YACH,MAAM,aAAa,GAAG,IAAI,QAAQ,CAAC,WAAW,EAAE,0BAA0B,CAA4C,CAAC;YACvH,MAAM,GAAG,GAAG,MAAM,aAAa,CAAC,gCAAgC,CAAC,CAAC;YAClE,MAAM,KAAK,GAAI,GAA2B,CAAC,KAAK,CAAC;YACjD,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE,CAAC;gBAChC,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;YAC9D,CAAC;YACD,IAAI,CAAC,KAAK,GAAG,KAAoB,CAAC;YAClC,6EAA6E;YAC7E,6EAA6E;YAC7E,MAAM,OAAO,GAAI,GAA6B,CAAC,OAAO,CAAC;YACvD,IAAI,OAAO,OAAO,KAAK,UAAU,EAAE,CAAC;gBAClC,IAAI,CAAC,OAAO,GAAG,OAA8B,CAAC;YAChD,CAAC;YACD,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,kBAAkB,EAAE,CAAC;QACxD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CACb,sCAAsC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAC/F,CAAC;QACJ,CAAC;IACH,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,KAA4C;QAC3D,IAAI,CAAC,eAAe,GAAG,SAAS,CAAC;QACjC,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC;IACnE,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,KAA+D;QAC/E,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC,SAAS,CAAC;QACvC,OAAO,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC;IAC1E,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,KAAoD;QACpE,IAAI,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,GAAG,KAAK,CAAC,SAAS,QAAQ,CAAC,CAAC;QAClF,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC1B,MAAM,KAAK,GAAG,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;iBAC5C,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,SAAS,QAAQ,CAAC,CAAC;iBACnD,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC;YAC9C,IAAI,KAAK;gBAAE,QAAQ,GAAG,KAAK,CAAC;QAC9B,CAAC;QACD,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC1B,OAAO;gBACL,MAAM,EAAE;oBACN,EAAE,EAAE,KAAK,CAAC,SAAS;oBACnB,SAAS,EAAE,KAAK,CAAC,SAAS;oBAC1B,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG;oBACnB,KAAK,EAAE,EAAE;iBACV;aACF,CAAC;QACJ,CAAC;QACD,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAChC,OAAO,uBAAuB,CAAC;YAC7B,IAAI,EAAE,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC;YACpC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG;YACnB,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,iBAAiB,EAAE,IAAI,CAAC,OAAO;SAChC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,KASZ;QACC,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QACzC,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;QAExE,IAAI,CAAC,eAAe,EAAE,KAAK,EAAE,CAAC;QAC9B,MAAM,eAAe,GAAG,IAAI,eAAe,EAAE,CAAC;QAC9C,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QAEvC,MAAM,WAAW,GAAG,KAAK,CAAC,OAAmC,CAAC;QAC9D,MAAM,SAAS,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,OAAO,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC;QACpF,MAAM,MAAM,GAAG,WAAW;aACvB,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;YACb,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO;gBAAE,OAAO,IAAI,KAAK,CAAC,QAAQ,IAAI,OAAO,cAAc,CAAC;YAC/E,OAAO,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC;QAC1B,CAAC,CAAC;aACD,MAAM,CAAC,OAAO,CAAC;aACf,IAAI,CAAC,IAAI,CAAC,CAAC;QAEd,MAAM,UAAU,GAA4B;YAC1C,GAAG,EAAE,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG;YAChC,eAAe;YACf,cAAc,EAAE,uBAAuB,CAAC;gBACtC,cAAc,EAAE,KAAK,CAAC,cAAc;gBACpC,iBAAiB,EAAE,KAAK,CAAC,iBAAiB;aAC3C,CAAC;YACF,UAAU,EAAE;gBACV,eAAe,EAAE,EAAE,aAAa,EAAE,UAAU,EAAE;aAC/C;YACD,UAAU,EAAE,KAAK,EAAE,QAAgB,EAAE,SAAkB,EAAE,EAAE;gBACzD,IAAI,QAAQ,KAAK,iBAAiB,EAAE,CAAC;oBACnC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,wBAAwB,EAAE;wBACpE,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;wBAC9B,SAAS,EAAE,EAAE,CAAC,cAAc,CAAC;wBAC7B,SAAS,EAAE,IAAI,CAAC,eAAe;qBAChC,CAAC,CAAC;oBACH,OAAO,QAAQ,CAAC;gBAClB,CAAC;gBACD,IAAI,KAAK,CAAC,cAAc,KAAK,aAAa;oBAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC;gBAClG,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,UAAU,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAClF,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC;gBACxD,CAAC;gBACD,IAAI,KAAK,CAAC,cAAc,KAAK,WAAW,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;oBACtG,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,2BAA2B,EAAE,CAAC;gBACpE,CAAC;gBACD,IAAI,KAAK,CAAC,cAAc,KAAK,iBAAiB,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;oBACpG,MAAM,QAAQ,GAAG,WAAW,CAAC,SAAS,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,eAAe,CAAC,CAAC,CAAC;oBAChF,IAAI,QAAQ,IAAI,WAAW,CAAC,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,QAAQ,CAAC,EAAE,CAAC;wBACnE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC;oBACxD,CAAC;gBACH,CAAC;gBACD,MAAM,SAAS,GAAG,EAAE,CAAC,aAAa,CAAC,CAAC;gBACpC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,wBAAwB,EAAE;oBACpE,SAAS;oBACT,SAAS,EAAE,IAAI,CAAC,eAAe;oBAC/B,QAAQ,EAAE;wBACR,QAAQ;wBACR,KAAK,EAAE,SAAS;qBACjB;oBACD,OAAO,EAAE,uBAAuB,QAAQ,EAAE;oBAC1C,OAAO,EAAE;wBACP,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE;wBACzC,EAAE,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE;qBACnD;iBACF,CAAC,CAAC;gBACH,OAAO,6BAA6B,CAAC,QAAQ,CAAC,KAAK,OAAO;oBACxD,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE;oBAChD,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,yCAAyC,EAAE,CAAC;YAC/E,CAAC;SACF,CAAC;QACF,IAAI,KAAK,CAAC,KAAK;YAAE,UAAU,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;QAChD,IAAI,qBAAqB,CAAC,KAAK,CAAC,SAAS,IAAI,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;YACnE,UAAU,CAAC,MAAM,GAAG,KAAK,CAAC,SAAS,IAAI,IAAI,CAAC,eAAe,CAAC;QAC9D,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,GAAG,EAAkB,CAAC;QAC5C,IAAI,aAAiC,CAAC;QACtC,IAAI,eAAmC,CAAC;QACxC,IAAI,gBAAoC,CAAC;QACzC,MAAM,cAAc,GAAG,mBAAmB,KAAK,CAAC,eAAe,EAAE,CAAC;QAElE,IAAI,CAAC;YACH,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,cAAc,EAAE;gBACxC,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,IAAI,CAAC,eAAe;gBAClD,IAAI,EAAE;oBACJ,EAAE,EAAE,cAAc;oBAClB,IAAI,EAAE,UAAU;oBAChB,IAAI,EAAE,eAAe;oBACrB,MAAM,EAAE,SAAS;iBAClB;aACF,CAAC,CAAC;YACH,MAAM,WAAW,GAAG,SAAS,CAAC,CAAC,CAAC,iBAAiB,CAAC,sBAAsB,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;YAChG,IAAI,KAAK,EAAE,MAAM,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC;gBACrF,IAAI,eAAe,CAAC,MAAM,CAAC,OAAO;oBAAE,MAAM;gBAC1C,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE;oBAC7B,GAAG,EAAE,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG;oBAChC,SAAS;oBACT,aAAa,EAAE,CAAC,KAAqB,EAAE,EAAE;wBACvC,IAAI,KAAK,KAAK,SAAS;4BAAE,aAAa,GAAG,KAAK,IAAI,SAAS,CAAC;wBAC5D,OAAO,aAAa,CAAC;oBACvB,CAAC;oBACD,eAAe,EAAE,CAAC,KAAqB,EAAE,EAAE;wBACzC,IAAI,KAAK,KAAK,SAAS;4BAAE,eAAe,GAAG,KAAK,IAAI,SAAS,CAAC;wBAC9D,OAAO,eAAe,CAAC;oBACzB,CAAC;oBACD,gBAAgB,EAAE,CAAC,KAAqB,EAAE,EAAE;wBAC1C,IAAI,KAAK,KAAK,SAAS;4BAAE,gBAAgB,GAAG,KAAK,IAAI,SAAS,CAAC;wBAC/D,OAAO,gBAAgB,CAAC;oBAC1B,CAAC;iBACF,CAAC,CAAC;YACL,CAAC;YACD,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,eAAe,EAAE,MAAM,EAAE,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;QACjH,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,gBAAgB,EAAE;gBAC1C,SAAS,EAAE,IAAI,CAAC,eAAe,IAAI,KAAK,CAAC,SAAS;gBAClD,IAAI,EAAE;oBACJ,EAAE,EAAE,cAAc;oBAClB,IAAI,EAAE,UAAU;oBAChB,IAAI,EAAE,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,YAAY;oBAClE,MAAM,EAAE,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW;iBAChE;aACF,CAAC,CAAC;YACH,IAAI,IAAI,CAAC,eAAe,KAAK,eAAe;gBAAE,IAAI,CAAC,eAAe,GAAG,SAAS,CAAC;QACjF,CAAC;IACH,CAAC;IAED,MAAM,CAAC,KAA8C;QACnD,IAAI,CAAC,eAAe,EAAE,KAAK,EAAE,CAAC;QAC9B,IAAI,CAAC,eAAe,GAAG,SAAS,CAAC;QACjC,KAAK,MAAM,CAAC,EAAE,OAAO,CAAC,IAAI,IAAI,CAAC,iBAAiB;YAAE,OAAO,CAAC,MAAM,CAAC,CAAC;QAClE,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAAC;IACjC,CAAC;IAED,iBAAiB,CAAC,KAA8F;QAC9G,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAC3D,IAAI,CAAC,MAAM;YAAE,OAAO;QACpB,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAC/C,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,YAAY;QAChB,MAAM,QAAQ,GAAmC,EAAE,CAAC;QACpD,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;QAC/B,KAAK,MAAM,UAAU,IAAI,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;YAC3D,IAAI,CAAC;gBACH,KAAK,MAAM,KAAK,IAAI,WAAW,CAAC,UAAU,CAAC,EAAE,CAAC;oBAC5C,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC;wBAAE,SAAS;oBACxC,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;oBAC9C,IAAI,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC;wBAAE,SAAS;oBAClC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;oBACpB,QAAQ,CAAC,IAAI,CAAC,6BAA6B,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC,CAAC;gBACnG,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,4CAA4C;YAC9C,CAAC;QACH,CAAC;QACD,OAAO,EAAE,QAAQ,EAAE,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,UAAU;QACd,IAAI,YAAY,GAAW,SAAS,CAAC;QACrC,8EAA8E;QAC9E,iEAAiE;QACjE,IAAI,eAAqC,CAAC;QAC1C,IAAI,CAAC;YACH,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC;YACjE,IAAI,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;gBAC7B,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,YAAY,EAAE,MAAM,CAAC,CAAmD,CAAC;gBAC7G,IAAI,OAAO,GAAG,CAAC,KAAK,KAAK,QAAQ,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACjE,YAAY,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;gBAClC,CAAC;gBACD,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,CAAC;oBACvC,eAAe,GAAG,GAAG,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC;gBAC1F,CAAC;YACH,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,wDAAwD;QAC1D,CAAC;QAED,2EAA2E;QAC3E,gFAAgF;QAChF,+EAA+E;QAC/E,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,IAAI,IAAuE,CAAC;YAC5E,IAAI,CAAC;gBACH,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,EAAE,mBAAmB,EAAE,MAAM,EAAE,CAAC,CAAC;gBAC3D,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACzB,IAAI,CAAC;oBACH,MAAM,SAAS,GAA6C,MAAO,CAAyF,CAAC,eAAe,EAAE,CAAC;oBAC/K,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACzB,2EAA2E;wBAC3E,MAAM,KAAK,GAAG,eAAe,CAAC;wBAC9B,MAAM,QAAQ,GAAG,KAAK;4BACpB,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,KAAK,SAAS,CAAC;4BAC3E,CAAC,CAAC,SAAS,CAAC;wBACd,OAAO;4BACL,YAAY;4BACZ,MAAM,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;yBAChF,CAAC;oBACJ,CAAC;gBACH,CAAC;gBAAC,MAAM,CAAC;oBACP,6EAA6E;gBAC/E,CAAC;wBAAS,CAAC;oBACT,IAAI,CAAC;wBAAC,IAAI,CAAC,KAAK,EAAE,CAAC;oBAAC,CAAC;oBAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;gBAC9C,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,yDAAyD;gBACzD,IAAI,CAAC;oBAAC,IAAI,EAAE,KAAK,EAAE,CAAC;gBAAC,CAAC;gBAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;YAC/C,CAAC;QACH,CAAC;QAED,2EAA2E;QAC3E,MAAM,cAAc,GAAG,eAAe,IAAI;YACxC,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,YAAY,EAAE,UAAU;SAC3E,CAAC;QACF,OAAO;YACL,YAAY;YACZ,MAAM,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,qBAAqB,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;SACrF,CAAC;IACJ,CAAC;IAED,IAAI;QACF,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC;IAEO,gBAAgB,CACtB,KAAuB,EACvB,KAMC;QAED,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;YACnB,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACd,IAAI,KAAK,CAAC,OAAO,KAAK,MAAM,IAAI,OAAO,KAAK,CAAC,UAAU,KAAK,QAAQ,EAAE,CAAC;oBACrE,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC,UAAU,CAAC;oBACxC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,gBAAgB,EAAE;wBAC1C,SAAS,EAAE,KAAK,CAAC,UAAU;wBAC3B,QAAQ,EAAE,KAAK,CAAC,UAAU;qBAC3B,CAAC,CAAC;oBACH,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,aAAa,EAAE;wBACvC,SAAS,EAAE,KAAK,CAAC,UAAU;wBAC3B,QAAQ,EAAE,KAAK,CAAC,UAAU;wBAC1B,GAAG,EAAE,KAAK,CAAC,GAAG,IAAI,KAAK,CAAC,GAAG;wBAC3B,KAAK,EAAE,KAAK,CAAC,KAAK;qBACnB,CAAC,CAAC;gBACL,CAAC;gBACD,MAAM;YACR,CAAC;YACD,KAAK,WAAW,CAAC,CAAC,CAAC;gBACjB,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC;gBACjC,MAAM,OAAO,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAyB,CAAC;gBACvG,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;gBAC7B,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;oBAC5B,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;wBAC9B,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,gBAAgB,EAAE;4BAC1C,SAAS,EAAE,IAAI,CAAC,eAAe;4BAC/B,IAAI,EAAE;gCACJ,EAAE,EAAE,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,UAAU,CAAC;gCAChC,IAAI,EAAE,UAAU;gCAChB,IAAI,EAAE,KAAK,CAAC,QAAQ;gCACpB,MAAM,EAAE,WAAW;6BACpB;yBACF,CAAC,CAAC;oBACL,CAAC;yBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;wBACjC,MAAM,SAAS,GAAG,CAAC,OAAO,UAAU,EAAE,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC;wBAC9G,KAAK,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;wBAClC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,yBAAyB,EAAE;4BACnD,SAAS,EAAE,IAAI,CAAC,eAAe;4BAC/B,MAAM,EAAE,SAAS;4BACjB,KAAK,EAAE,KAAK,CAAC,IAAI;yBAClB,CAAC,CAAC;oBACL,CAAC;yBAAM,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;wBACrC,MAAM,MAAM,GAAG,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,CAAC;wBACtC,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,IAAI,MAAM,CAAC;wBACtC,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;wBAC5B,KAAK,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;wBAChC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;wBACtC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,cAAc,EAAE;4BACxC,SAAS,EAAE,IAAI,CAAC,eAAe;4BAC/B,IAAI,EAAE;gCACJ,EAAE,EAAE,MAAM;gCACV,IAAI,EAAE,QAAQ,KAAK,MAAM,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,QAAQ,KAAK,OAAO,IAAI,QAAQ,KAAK,MAAM,IAAI,QAAQ,KAAK,WAAW,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,UAAU;gCACpJ,QAAQ;gCACR,IAAI,EAAE,QAAQ;gCACd,KAAK,EAAE,KAAK,CAAC,KAAK;gCAClB,OAAO,EAAE,KAAK,CAAC,KAAK,EAAE,OAA6B;gCACnD,GAAG,EAAE,KAAK,CAAC,KAAK,EAAE,GAAyB,IAAI,KAAK,CAAC,GAAG;gCACxD,MAAM,EAAE,SAAS;6BAClB;yBACF,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;gBACD,MAAM,SAAS,GAAG,KAAK,CAAC,gBAAgB,EAAE,CAAC;gBAC3C,IAAI,SAAS,EAAE,CAAC;oBACd,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,gBAAgB,EAAE;wBAC1C,SAAS,EAAE,IAAI,CAAC,eAAe;wBAC/B,IAAI,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,WAAW,EAAE;qBACnE,CAAC,CAAC;gBACL,CAAC;gBACD,MAAM;YACR,CAAC;YACD,KAAK,MAAM,CAAC,CAAC,CAAC;gBACZ,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC;gBACjC,MAAM,OAAO,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAyB,CAAC;gBACvG,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;oBAC5B,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa;wBAAE,SAAS;oBAC3C,MAAM,MAAM,GAAG,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,aAAa,EAAE,CAAC;oBAC1D,MAAM,QAAQ,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,eAAe,EAAE,CAAC;oBAC/F,MAAM,MAAM,GAAG,qBAAqB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;oBACpD,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,gBAAgB,EAAE;wBAC1C,SAAS,EAAE,IAAI,CAAC,eAAe;wBAC/B,IAAI,EAAE;4BACJ,EAAE,EAAE,MAAM,IAAI,EAAE,CAAC,MAAM,CAAC;4BACxB,IAAI,EAAE,UAAU;4BAChB,QAAQ;4BACR,IAAI,EAAE,QAAQ;4BACd,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW;4BAC/C,MAAM;4BACN,gBAAgB,EAAE,MAAM;4BACxB,OAAO,EAAE,KAAK,CAAC,QAAQ,KAAK,IAAI;yBACjC;qBACF,CAAC,CAAC;gBACL,CAAC;gBACD,MAAM;YACR,CAAC;YACD,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACd,IAAI,OAAO,KAAK,CAAC,UAAU,KAAK,QAAQ;oBAAE,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC,UAAU,CAAC;gBAClF,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,gBAAgB,EAAE;oBAC1C,SAAS,EAAE,IAAI,CAAC,eAAe;oBAC/B,UAAU,EAAE,KAAK,CAAC,WAAW;oBAC7B,YAAY,EAAE,KAAK,CAAC,cAAc;oBAClC,KAAK,EAAE,KAAK,CAAC,KAAK;oBAClB,OAAO,EAAE,KAAK,CAAC,OAAO,KAAK,OAAO;iBACnC,CAAC,CAAC;gBACH,MAAM;YACR,CAAC;QACH,CAAC;IACH,CAAC;CACF"}
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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"}