chorus-codes 0.8.23 → 0.8.24

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (85) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-path-routes-manifest.json +2 -2
  3. package/.next/build-manifest.json +2 -2
  4. package/.next/prerender-manifest.json +3 -3
  5. package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  6. package/.next/server/app/_global-error.html +1 -1
  7. package/.next/server/app/_global-error.rsc +1 -1
  8. package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  9. package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  10. package/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  11. package/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  12. package/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  13. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  14. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  15. package/.next/server/app/_not-found.html +1 -1
  16. package/.next/server/app/_not-found.rsc +1 -1
  17. package/.next/server/app/_not-found.segments/_full.segment.rsc +1 -1
  18. package/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  19. package/.next/server/app/_not-found.segments/_index.segment.rsc +1 -1
  20. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  21. package/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  22. package/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  23. package/.next/server/app/connect/page_client-reference-manifest.js +1 -1
  24. package/.next/server/app/demo/[scenario]/page_client-reference-manifest.js +1 -1
  25. package/.next/server/app/new/page_client-reference-manifest.js +1 -1
  26. package/.next/server/app/new.html +1 -1
  27. package/.next/server/app/new.rsc +1 -1
  28. package/.next/server/app/new.segments/_full.segment.rsc +1 -1
  29. package/.next/server/app/new.segments/_head.segment.rsc +1 -1
  30. package/.next/server/app/new.segments/_index.segment.rsc +1 -1
  31. package/.next/server/app/new.segments/_tree.segment.rsc +1 -1
  32. package/.next/server/app/new.segments/new/__PAGE__.segment.rsc +1 -1
  33. package/.next/server/app/new.segments/new.segment.rsc +1 -1
  34. package/.next/server/app/onboarding/page_client-reference-manifest.js +1 -1
  35. package/.next/server/app/onboarding.html +1 -1
  36. package/.next/server/app/onboarding.rsc +1 -1
  37. package/.next/server/app/onboarding.segments/_full.segment.rsc +1 -1
  38. package/.next/server/app/onboarding.segments/_head.segment.rsc +1 -1
  39. package/.next/server/app/onboarding.segments/_index.segment.rsc +1 -1
  40. package/.next/server/app/onboarding.segments/_tree.segment.rsc +1 -1
  41. package/.next/server/app/onboarding.segments/onboarding/__PAGE__.segment.rsc +1 -1
  42. package/.next/server/app/onboarding.segments/onboarding.segment.rsc +1 -1
  43. package/.next/server/app/page_client-reference-manifest.js +1 -1
  44. package/.next/server/app/personas/page_client-reference-manifest.js +1 -1
  45. package/.next/server/app/personas.html +1 -1
  46. package/.next/server/app/personas.rsc +1 -1
  47. package/.next/server/app/personas.segments/_full.segment.rsc +1 -1
  48. package/.next/server/app/personas.segments/_head.segment.rsc +1 -1
  49. package/.next/server/app/personas.segments/_index.segment.rsc +1 -1
  50. package/.next/server/app/personas.segments/_tree.segment.rsc +1 -1
  51. package/.next/server/app/personas.segments/personas/__PAGE__.segment.rsc +1 -1
  52. package/.next/server/app/personas.segments/personas.segment.rsc +1 -1
  53. package/.next/server/app/runs/[runId]/page_client-reference-manifest.js +1 -1
  54. package/.next/server/app/runs/page_client-reference-manifest.js +1 -1
  55. package/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  56. package/.next/server/app/settings/permissions/page_client-reference-manifest.js +1 -1
  57. package/.next/server/app/settings.html +1 -1
  58. package/.next/server/app/settings.rsc +1 -1
  59. package/.next/server/app/settings.segments/_full.segment.rsc +1 -1
  60. package/.next/server/app/settings.segments/_head.segment.rsc +1 -1
  61. package/.next/server/app/settings.segments/_index.segment.rsc +1 -1
  62. package/.next/server/app/settings.segments/_tree.segment.rsc +1 -1
  63. package/.next/server/app/settings.segments/settings/__PAGE__.segment.rsc +1 -1
  64. package/.next/server/app/settings.segments/settings.segment.rsc +1 -1
  65. package/.next/server/app/templates/page_client-reference-manifest.js +1 -1
  66. package/.next/server/app/templates.html +1 -1
  67. package/.next/server/app/templates.rsc +1 -1
  68. package/.next/server/app/templates.segments/_full.segment.rsc +1 -1
  69. package/.next/server/app/templates.segments/_head.segment.rsc +1 -1
  70. package/.next/server/app/templates.segments/_index.segment.rsc +1 -1
  71. package/.next/server/app/templates.segments/_tree.segment.rsc +1 -1
  72. package/.next/server/app/templates.segments/templates/__PAGE__.segment.rsc +1 -1
  73. package/.next/server/app/templates.segments/templates.segment.rsc +1 -1
  74. package/.next/server/app-paths-manifest.json +2 -2
  75. package/.next/server/middleware-build-manifest.js +1 -1
  76. package/.next/server/pages/404.html +1 -1
  77. package/.next/server/pages/500.html +1 -1
  78. package/.next/server/server-reference-manifest.json +1 -1
  79. package/.next/trace +20 -20
  80. package/.next/trace-build +1 -1
  81. package/dist/daemon/agents/parsers/claude.js +37 -2
  82. package/dist/daemon/agents/parsers/claude.js.map +1 -1
  83. package/package.json +1 -1
  84. /package/.next/static/{43n4dNr7LgZsJDZmfM4Re → jdUcCHB2b5lVrf4v8iQjl}/_buildManifest.js +0 -0
  85. /package/.next/static/{43n4dNr7LgZsJDZmfM4Re → jdUcCHB2b5lVrf4v8iQjl}/_ssgManifest.js +0 -0
package/.next/trace-build CHANGED
@@ -1 +1 @@
1
- [{"name":"run-webpack","duration":11010796,"timestamp":6758123531578,"id":14,"parentId":1,"tags":{},"startTime":1778149493958,"traceId":"134ebbacb907c159"},{"name":"run-typescript","duration":5647694,"timestamp":6758134546334,"id":2104,"parentId":1,"tags":{},"startTime":1778149504972,"traceId":"134ebbacb907c159"},{"name":"static-check","duration":469699,"timestamp":6758140239495,"id":2107,"parentId":1,"tags":{},"startTime":1778149510666,"traceId":"134ebbacb907c159"},{"name":"static-generation","duration":1441646,"timestamp":6758140880627,"id":2147,"parentId":1,"tags":{},"startTime":1778149511307,"traceId":"134ebbacb907c159"},{"name":"collect-build-traces","duration":6391086,"timestamp":6758140709702,"id":2144,"parentId":1,"tags":{},"startTime":1778149511136,"traceId":"134ebbacb907c159"},{"name":"telemetry-flush","duration":31,"timestamp":6758147102465,"id":2156,"parentId":1,"tags":{},"startTime":1778149517528,"traceId":"134ebbacb907c159"},{"name":"next-build","duration":23659775,"timestamp":6758123442730,"id":1,"tags":{"buildMode":"default","version":"16.2.4","bundler":"webpack","has-custom-webpack-config":"false","use-build-worker":"true"},"startTime":1778149493869,"traceId":"134ebbacb907c159"}]
1
+ [{"name":"run-webpack","duration":10597230,"timestamp":6758377658278,"id":14,"parentId":1,"tags":{},"startTime":1778149748084,"traceId":"7ab2362f13fe80d4"},{"name":"run-typescript","duration":5750629,"timestamp":6758388259882,"id":2103,"parentId":1,"tags":{},"startTime":1778149758686,"traceId":"7ab2362f13fe80d4"},{"name":"static-check","duration":396941,"timestamp":6758394053266,"id":2106,"parentId":1,"tags":{},"startTime":1778149764479,"traceId":"7ab2362f13fe80d4"},{"name":"static-generation","duration":1274366,"timestamp":6758394612747,"id":2146,"parentId":1,"tags":{},"startTime":1778149765039,"traceId":"7ab2362f13fe80d4"},{"name":"collect-build-traces","duration":6259994,"timestamp":6758394450667,"id":2143,"parentId":1,"tags":{},"startTime":1778149764877,"traceId":"7ab2362f13fe80d4"},{"name":"telemetry-flush","duration":31,"timestamp":6758400712271,"id":2155,"parentId":1,"tags":{},"startTime":1778149771138,"traceId":"7ab2362f13fe80d4"},{"name":"next-build","duration":23144821,"timestamp":6758377567490,"id":1,"tags":{"buildMode":"default","version":"16.2.4","bundler":"webpack","has-custom-webpack-config":"false","use-build-worker":"true"},"startTime":1778149747994,"traceId":"7ab2362f13fe80d4"}]
@@ -7,12 +7,47 @@ function parseClaude(line) {
7
7
  if (!obj || typeof obj !== 'object')
8
8
  return [];
9
9
  const t = obj.type;
10
- // Final result line — emit message_done with the assembled text.
10
+ // Final result line — emit message_done with the assembled text +
11
+ // usage. Claude Code reports `total_cost_usd` (list-price equivalent
12
+ // even on a Pro/Max plan) and a `usage` block with input/output token
13
+ // counts. Without lifting these, every Claude reviewer landed in
14
+ // _stats.json with usage:undefined and the home page's plan-equivalent
15
+ // spend silently lost the largest contributor (Claude is most users'
16
+ // primary voice). The user pays $0 for these on subscription, but the
17
+ // shadow column is the whole point of "plan equiv" — show what the
18
+ // sub is saving them.
11
19
  if (t === 'result') {
12
20
  const subtype = obj.subtype;
13
21
  const isError = obj.is_error;
14
22
  if (subtype === 'success' && !isError) {
15
- return [{ type: 'message_done', finalText: String(obj.result ?? '') }];
23
+ const usageBlock = obj.usage;
24
+ const costUsd = typeof obj.total_cost_usd === 'number' ? obj.total_cost_usd : undefined;
25
+ const inputTokens = usageBlock && typeof usageBlock.input_tokens === 'number'
26
+ ? usageBlock.input_tokens
27
+ : undefined;
28
+ const outputTokens = usageBlock && typeof usageBlock.output_tokens === 'number'
29
+ ? usageBlock.output_tokens
30
+ : undefined;
31
+ const cachedInputTokens = usageBlock && typeof usageBlock.cache_read_input_tokens === 'number'
32
+ ? usageBlock.cache_read_input_tokens
33
+ : undefined;
34
+ const usage = costUsd !== undefined ||
35
+ inputTokens !== undefined ||
36
+ outputTokens !== undefined
37
+ ? {
38
+ ...(inputTokens !== undefined ? { inputTokens } : {}),
39
+ ...(outputTokens !== undefined ? { outputTokens } : {}),
40
+ ...(cachedInputTokens !== undefined ? { cachedInputTokens } : {}),
41
+ ...(costUsd !== undefined ? { costUsd } : {}),
42
+ }
43
+ : undefined;
44
+ return [
45
+ {
46
+ type: 'message_done',
47
+ finalText: String(obj.result ?? ''),
48
+ ...(usage ? { usage } : {}),
49
+ },
50
+ ];
16
51
  }
17
52
  return [
18
53
  {
@@ -1 +1 @@
1
- {"version":3,"file":"claude.js","sourceRoot":"","sources":["../../../../src/daemon/agents/parsers/claude.ts"],"names":[],"mappings":";;AAmBA,kCA+DC;AAjED,2CAAsC;AAEtC,SAAgB,WAAW,CAAC,IAAY;IACtC,MAAM,GAAG,GAAG,IAAA,mBAAO,EAAC,IAAI,CAAwC,CAAC;IACjE,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,EAAE,CAAC;IAE/C,MAAM,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC;IAEnB,iEAAiE;IACjE,IAAI,CAAC,KAAK,QAAQ,EAAE,CAAC;QACnB,MAAM,OAAO,GAAG,GAAG,CAAC,OAA6B,CAAC;QAClD,MAAM,OAAO,GAAG,GAAG,CAAC,QAA+B,CAAC;QACpD,IAAI,OAAO,KAAK,SAAS,IAAI,CAAC,OAAO,EAAE,CAAC;YACtC,OAAO,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;QACzE,CAAC;QACD,OAAO;YACL;gBACE,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,qBAAqB;gBAC3B,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,gBAAgB,IAAI,uBAAuB,CAAC;aAC/E;SACF,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,KAAK,cAAc,EAAE,CAAC;QACzB,MAAM,KAAK,GAAI,GAAG,CAAC,KAA6C,IAAI,EAAE,CAAC;QACvE,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC;QAE7B,IAAI,SAAS,KAAK,qBAAqB,EAAE,CAAC;YACxC,MAAM,KAAK,GAAI,KAAK,CAAC,KAA6C,IAAI,EAAE,CAAC;YACzE,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAClE,OAAO,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;YACpD,CAAC;YACD,6DAA6D;YAC7D,8DAA8D;YAC9D,+CAA+C;YAC/C,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,IAAI,SAAS,KAAK,qBAAqB,EAAE,CAAC;YACxC,MAAM,KAAK,GAAI,KAAK,CAAC,aAAqD,IAAI,EAAE,CAAC;YACjF,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;gBAC9B,OAAO;oBACL;wBACE,IAAI,EAAE,iBAAiB;wBACvB,IAAI,EAAE,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;wBAC7D,KAAK,EAAE,KAAK,CAAC,KAAK;qBACnB;iBACF,CAAC;YACJ,CAAC;YACD,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,oEAAoE;QACpE,gEAAgE;QAChE,oEAAoE;QACpE,4BAA4B;QAC5B,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,qEAAqE;IACrE,uDAAuD;IACvD,kEAAkE;IAClE,mEAAmE;IACnE,OAAO,EAAE,CAAC;AACZ,CAAC"}
1
+ {"version":3,"file":"claude.js","sourceRoot":"","sources":["../../../../src/daemon/agents/parsers/claude.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "chorus-codes",
3
- "version": "0.8.23",
3
+ "version": "0.8.24",
4
4
  "description": "Driver-agnostic multi-LLM peer review for code decisions. Bring your own CLI; Chorus convenes 2-4 other LLMs to review the work before you ship.",
5
5
  "license": "Apache-2.0",
6
6
  "author": "99x Agency",