autodev-cli 1.4.131 → 1.4.133

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 (265) hide show
  1. package/LICENSE.md +21 -0
  2. package/media/profile/00b-self-verifiable-work.md +62 -0
  3. package/media/profile/00c-verifiable-threads.md +78 -0
  4. package/media/profile/00d-turn-end-retrospective.md +61 -0
  5. package/media/profile/00e-long-horizon-planning.md +83 -0
  6. package/out/commands/office.js +4 -0
  7. package/out/commands/office.js.map +1 -1
  8. package/out/commands/start.js +1 -1
  9. package/out/commands/start.js.map +1 -1
  10. package/out/core/claudeUsage.d.ts +1 -26
  11. package/out/core/claudeUsage.js +15 -91
  12. package/out/core/claudeUsage.js.map +1 -1
  13. package/out/core/modelInfo.d.ts +1 -28
  14. package/out/core/modelInfo.js +15 -94
  15. package/out/core/modelInfo.js.map +1 -1
  16. package/out/core/provider/BaseProvider.d.ts +1 -14
  17. package/out/core/provider/BaseProvider.js +15 -22
  18. package/out/core/provider/BaseProvider.js.map +1 -1
  19. package/out/core/provider/ProviderRegistry.d.ts +1 -12
  20. package/out/core/provider/ProviderRegistry.js +15 -38
  21. package/out/core/provider/ProviderRegistry.js.map +1 -1
  22. package/out/core/provider/contract.d.ts +1 -62
  23. package/out/core/provider/contract.js +15 -6
  24. package/out/core/provider/contract.js.map +1 -1
  25. package/out/core/provider/implementations.d.ts +1 -65
  26. package/out/core/provider/implementations.js +4 -169
  27. package/out/core/provider/implementations.js.map +1 -1
  28. package/out/dispatcher.js +7 -0
  29. package/out/dispatcher.js.map +1 -1
  30. package/out/hookEventNormalizer.d.ts +1 -33
  31. package/out/hookEventNormalizer.js +15 -424
  32. package/out/hookEventNormalizer.js.map +1 -1
  33. package/out/profileBuilder.js +32 -0
  34. package/out/profileBuilder.js.map +1 -1
  35. package/out/providers/base/BaseProvider.d.ts +14 -0
  36. package/out/providers/base/BaseProvider.js +25 -0
  37. package/out/providers/base/BaseProvider.js.map +1 -0
  38. package/out/providers/base/ProviderEvents.d.ts +12 -0
  39. package/out/providers/base/ProviderEvents.js +81 -0
  40. package/out/providers/base/ProviderEvents.js.map +1 -0
  41. package/out/providers/base/ProviderManager.d.ts +25 -0
  42. package/out/providers/base/ProviderManager.js +22 -0
  43. package/out/providers/base/ProviderManager.js.map +1 -0
  44. package/out/providers/base/ProviderModels.d.ts +28 -0
  45. package/out/providers/base/ProviderModels.js +89 -0
  46. package/out/providers/base/ProviderModels.js.map +1 -0
  47. package/out/providers/base/ProviderNormalizer.d.ts +42 -0
  48. package/out/providers/base/ProviderNormalizer.js +439 -0
  49. package/out/providers/base/ProviderNormalizer.js.map +1 -0
  50. package/out/providers/base/ProviderRegistry.d.ts +12 -0
  51. package/out/providers/base/ProviderRegistry.js +42 -0
  52. package/out/providers/base/ProviderRegistry.js.map +1 -0
  53. package/out/providers/base/ProviderSessions.d.ts +15 -0
  54. package/out/providers/base/ProviderSessions.js +15 -0
  55. package/out/providers/base/ProviderSessions.js.map +1 -0
  56. package/out/providers/base/ProviderState.d.ts +9 -0
  57. package/out/providers/base/ProviderState.js +16 -0
  58. package/out/providers/base/ProviderState.js.map +1 -0
  59. package/out/providers/base/ProviderUsage.d.ts +12 -0
  60. package/out/providers/base/ProviderUsage.js +33 -0
  61. package/out/providers/base/ProviderUsage.js.map +1 -0
  62. package/out/providers/base/contract.d.ts +62 -0
  63. package/out/providers/base/contract.js +9 -0
  64. package/out/providers/base/contract.js.map +1 -0
  65. package/out/providers/base/factories.d.ts +64 -0
  66. package/out/providers/base/factories.js +265 -0
  67. package/out/providers/base/factories.js.map +1 -0
  68. package/out/providers/base/implementations.d.ts +5 -0
  69. package/out/providers/base/implementations.js +23 -0
  70. package/out/providers/base/implementations.js.map +1 -0
  71. package/out/providers/base/index.d.ts +13 -0
  72. package/out/providers/base/index.js +29 -0
  73. package/out/providers/base/index.js.map +1 -0
  74. package/out/providers/base/types.d.ts +30 -0
  75. package/out/providers/base/types.js +8 -0
  76. package/out/providers/base/types.js.map +1 -0
  77. package/out/providers/claude/ProviderEvents.d.ts +5 -0
  78. package/out/providers/claude/ProviderEvents.js +18 -0
  79. package/out/providers/claude/ProviderEvents.js.map +1 -0
  80. package/out/providers/claude/ProviderManager.d.ts +39 -0
  81. package/out/providers/claude/ProviderManager.js +50 -0
  82. package/out/providers/claude/ProviderManager.js.map +1 -0
  83. package/out/providers/claude/ProviderModels.d.ts +8 -0
  84. package/out/providers/claude/ProviderModels.js +23 -0
  85. package/out/providers/claude/ProviderModels.js.map +1 -0
  86. package/out/providers/claude/ProviderNormalizer.d.ts +5 -0
  87. package/out/providers/claude/ProviderNormalizer.js +10 -0
  88. package/out/providers/claude/ProviderNormalizer.js.map +1 -0
  89. package/out/providers/claude/ProviderSessions.d.ts +14 -0
  90. package/out/providers/claude/ProviderSessions.js +35 -0
  91. package/out/providers/claude/ProviderSessions.js.map +1 -0
  92. package/out/providers/claude/ProviderState.d.ts +13 -0
  93. package/out/providers/claude/ProviderState.js +19 -0
  94. package/out/providers/claude/ProviderState.js.map +1 -0
  95. package/out/providers/claude/ProviderUsage.d.ts +13 -0
  96. package/out/providers/claude/ProviderUsage.js +59 -0
  97. package/out/providers/claude/ProviderUsage.js.map +1 -0
  98. package/out/providers/claude/cli.d.ts +95 -0
  99. package/out/providers/claude/cli.js +674 -0
  100. package/out/providers/claude/cli.js.map +1 -0
  101. package/out/providers/claude/index.d.ts +9 -0
  102. package/out/providers/claude/index.js +26 -0
  103. package/out/providers/claude/index.js.map +1 -0
  104. package/out/providers/claude/tui.d.ts +38 -0
  105. package/out/providers/claude/tui.js +346 -0
  106. package/out/providers/claude/tui.js.map +1 -0
  107. package/out/providers/claudeCliProvider.d.ts +1 -95
  108. package/out/providers/claudeCliProvider.js +4 -660
  109. package/out/providers/claudeCliProvider.js.map +1 -1
  110. package/out/providers/claudeTuiProvider.d.ts +1 -38
  111. package/out/providers/claudeTuiProvider.js +4 -332
  112. package/out/providers/claudeTuiProvider.js.map +1 -1
  113. package/out/providers/copilot/ProviderEvents.d.ts +6 -0
  114. package/out/providers/copilot/ProviderEvents.js +18 -0
  115. package/out/providers/copilot/ProviderEvents.js.map +1 -0
  116. package/out/providers/copilot/ProviderManager.d.ts +39 -0
  117. package/out/providers/copilot/ProviderManager.js +98 -0
  118. package/out/providers/copilot/ProviderManager.js.map +1 -0
  119. package/out/providers/copilot/ProviderModels.d.ts +7 -0
  120. package/out/providers/copilot/ProviderModels.js +18 -0
  121. package/out/providers/copilot/ProviderModels.js.map +1 -0
  122. package/out/providers/copilot/ProviderNormalizer.d.ts +5 -0
  123. package/out/providers/copilot/ProviderNormalizer.js +10 -0
  124. package/out/providers/copilot/ProviderNormalizer.js.map +1 -0
  125. package/out/providers/copilot/ProviderSessions.d.ts +12 -0
  126. package/out/providers/copilot/ProviderSessions.js +39 -0
  127. package/out/providers/copilot/ProviderSessions.js.map +1 -0
  128. package/out/providers/copilot/ProviderState.d.ts +11 -0
  129. package/out/providers/copilot/ProviderState.js +17 -0
  130. package/out/providers/copilot/ProviderState.js.map +1 -0
  131. package/out/providers/copilot/ProviderUsage.d.ts +12 -0
  132. package/out/providers/copilot/ProviderUsage.js +41 -0
  133. package/out/providers/copilot/ProviderUsage.js.map +1 -0
  134. package/out/providers/copilot/cli.d.ts +16 -0
  135. package/out/providers/copilot/cli.js +52 -0
  136. package/out/providers/copilot/cli.js.map +1 -0
  137. package/out/providers/copilot/index.d.ts +10 -0
  138. package/out/providers/copilot/index.js +27 -0
  139. package/out/providers/copilot/index.js.map +1 -0
  140. package/out/providers/copilot/sdk.d.ts +22 -0
  141. package/out/providers/copilot/sdk.js +489 -0
  142. package/out/providers/copilot/sdk.js.map +1 -0
  143. package/out/providers/copilot/sessions.d.ts +25 -0
  144. package/out/providers/copilot/sessions.js +214 -0
  145. package/out/providers/copilot/sessions.js.map +1 -0
  146. package/out/providers/copilotCliProvider.d.ts +1 -16
  147. package/out/providers/copilotCliProvider.js +15 -49
  148. package/out/providers/copilotCliProvider.js.map +1 -1
  149. package/out/providers/copilotSdkProvider.d.ts +1 -22
  150. package/out/providers/copilotSdkProvider.js +4 -475
  151. package/out/providers/copilotSdkProvider.js.map +1 -1
  152. package/out/providers/copilotSessions.d.ts +1 -25
  153. package/out/providers/copilotSessions.js +4 -200
  154. package/out/providers/copilotSessions.js.map +1 -1
  155. package/out/providers/dummy/ProviderEvents.d.ts +5 -0
  156. package/out/providers/dummy/ProviderEvents.js +16 -0
  157. package/out/providers/dummy/ProviderEvents.js.map +1 -0
  158. package/out/providers/dummy/ProviderManager.d.ts +31 -0
  159. package/out/providers/dummy/ProviderManager.js +115 -0
  160. package/out/providers/dummy/ProviderManager.js.map +1 -0
  161. package/out/providers/dummy/ProviderModels.d.ts +7 -0
  162. package/out/providers/dummy/ProviderModels.js +15 -0
  163. package/out/providers/dummy/ProviderModels.js.map +1 -0
  164. package/out/providers/dummy/ProviderNormalizer.d.ts +4 -0
  165. package/out/providers/dummy/ProviderNormalizer.js +9 -0
  166. package/out/providers/dummy/ProviderNormalizer.js.map +1 -0
  167. package/out/providers/dummy/ProviderSessions.d.ts +12 -0
  168. package/out/providers/dummy/ProviderSessions.js +105 -0
  169. package/out/providers/dummy/ProviderSessions.js.map +1 -0
  170. package/out/providers/dummy/ProviderState.d.ts +12 -0
  171. package/out/providers/dummy/ProviderState.js +23 -0
  172. package/out/providers/dummy/ProviderState.js.map +1 -0
  173. package/out/providers/dummy/ProviderUsage.d.ts +9 -0
  174. package/out/providers/dummy/ProviderUsage.js +27 -0
  175. package/out/providers/dummy/ProviderUsage.js.map +1 -0
  176. package/out/providers/dummy/commands.d.ts +9 -0
  177. package/out/providers/dummy/commands.js +48 -0
  178. package/out/providers/dummy/commands.js.map +1 -0
  179. package/out/providers/dummy/index.d.ts +10 -0
  180. package/out/providers/dummy/index.js +27 -0
  181. package/out/providers/dummy/index.js.map +1 -0
  182. package/out/providers/dummy/office.d.ts +23 -0
  183. package/out/providers/dummy/office.js +66 -0
  184. package/out/providers/dummy/office.js.map +1 -0
  185. package/out/providers/dummy/traces.d.ts +8 -0
  186. package/out/providers/dummy/traces.js +174 -0
  187. package/out/providers/dummy/traces.js.map +1 -0
  188. package/out/providers/grok/ProviderEvents.d.ts +6 -0
  189. package/out/providers/grok/ProviderEvents.js +17 -0
  190. package/out/providers/grok/ProviderEvents.js.map +1 -0
  191. package/out/providers/grok/ProviderManager.d.ts +42 -0
  192. package/out/providers/grok/ProviderManager.js +48 -0
  193. package/out/providers/grok/ProviderManager.js.map +1 -0
  194. package/out/providers/grok/ProviderModels.d.ts +7 -0
  195. package/out/providers/grok/ProviderModels.js +16 -0
  196. package/out/providers/grok/ProviderModels.js.map +1 -0
  197. package/out/providers/grok/ProviderNormalizer.d.ts +5 -0
  198. package/out/providers/grok/ProviderNormalizer.js +10 -0
  199. package/out/providers/grok/ProviderNormalizer.js.map +1 -0
  200. package/out/providers/grok/ProviderSessions.d.ts +12 -0
  201. package/out/providers/grok/ProviderSessions.js +27 -0
  202. package/out/providers/grok/ProviderSessions.js.map +1 -0
  203. package/out/providers/grok/ProviderState.d.ts +10 -0
  204. package/out/providers/grok/ProviderState.js +15 -0
  205. package/out/providers/grok/ProviderState.js.map +1 -0
  206. package/out/providers/grok/ProviderUsage.d.ts +7 -0
  207. package/out/providers/grok/ProviderUsage.js +20 -0
  208. package/out/providers/grok/ProviderUsage.js.map +1 -0
  209. package/out/providers/grok/index.d.ts +9 -0
  210. package/out/providers/grok/index.js +26 -0
  211. package/out/providers/grok/index.js.map +1 -0
  212. package/out/providers/grok/sessions.d.ts +27 -0
  213. package/out/providers/grok/sessions.js +246 -0
  214. package/out/providers/grok/sessions.js.map +1 -0
  215. package/out/providers/grok/tui.d.ts +38 -0
  216. package/out/providers/grok/tui.js +1630 -0
  217. package/out/providers/grok/tui.js.map +1 -0
  218. package/out/providers/grokSessions.d.ts +1 -27
  219. package/out/providers/grokSessions.js +4 -232
  220. package/out/providers/grokSessions.js.map +1 -1
  221. package/out/providers/grokTuiProvider.d.ts +1 -38
  222. package/out/providers/grokTuiProvider.js +4 -1616
  223. package/out/providers/grokTuiProvider.js.map +1 -1
  224. package/out/providers/opencode/ProviderEvents.d.ts +6 -0
  225. package/out/providers/opencode/ProviderEvents.js +18 -0
  226. package/out/providers/opencode/ProviderEvents.js.map +1 -0
  227. package/out/providers/opencode/ProviderManager.d.ts +39 -0
  228. package/out/providers/opencode/ProviderManager.js +90 -0
  229. package/out/providers/opencode/ProviderManager.js.map +1 -0
  230. package/out/providers/opencode/ProviderModels.d.ts +7 -0
  231. package/out/providers/opencode/ProviderModels.js +17 -0
  232. package/out/providers/opencode/ProviderModels.js.map +1 -0
  233. package/out/providers/opencode/ProviderNormalizer.d.ts +5 -0
  234. package/out/providers/opencode/ProviderNormalizer.js +10 -0
  235. package/out/providers/opencode/ProviderNormalizer.js.map +1 -0
  236. package/out/providers/opencode/ProviderSessions.d.ts +11 -0
  237. package/out/providers/opencode/ProviderSessions.js +28 -0
  238. package/out/providers/opencode/ProviderSessions.js.map +1 -0
  239. package/out/providers/opencode/ProviderState.d.ts +14 -0
  240. package/out/providers/opencode/ProviderState.js +20 -0
  241. package/out/providers/opencode/ProviderState.js.map +1 -0
  242. package/out/providers/opencode/ProviderUsage.d.ts +7 -0
  243. package/out/providers/opencode/ProviderUsage.js +20 -0
  244. package/out/providers/opencode/ProviderUsage.js.map +1 -0
  245. package/out/providers/opencode/cli.d.ts +29 -0
  246. package/out/providers/opencode/cli.js +199 -0
  247. package/out/providers/opencode/cli.js.map +1 -0
  248. package/out/providers/opencode/index.d.ts +9 -0
  249. package/out/providers/opencode/index.js +26 -0
  250. package/out/providers/opencode/index.js.map +1 -0
  251. package/out/providers/opencode/sdk.d.ts +32 -0
  252. package/out/providers/opencode/sdk.js +610 -0
  253. package/out/providers/opencode/sdk.js.map +1 -0
  254. package/out/providers/opencodeCliProvider.d.ts +1 -29
  255. package/out/providers/opencodeCliProvider.js +15 -196
  256. package/out/providers/opencodeCliProvider.js.map +1 -1
  257. package/out/providers/opencodeSdkProvider.d.ts +1 -32
  258. package/out/providers/opencodeSdkProvider.js +4 -596
  259. package/out/providers/opencodeSdkProvider.js.map +1 -1
  260. package/out/providers.d.ts +1 -1
  261. package/out/providers.js +5 -0
  262. package/out/providers.js.map +1 -1
  263. package/out/sdk/index.js +5 -0
  264. package/out/sdk/index.js.map +1 -1
  265. package/package.json +2 -2
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ClaudeTuiProvider = exports.ClaudeCliProvider = void 0;
4
+ const ProviderManager_1 = require("../base/ProviderManager");
5
+ const commandHelpers_1 = require("../../core/commandHelpers");
6
+ const ProviderEvents_1 = require("./ProviderEvents");
7
+ const ProviderModels_1 = require("./ProviderModels");
8
+ const ProviderSessions_1 = require("./ProviderSessions");
9
+ const ProviderState_1 = require("./ProviderState");
10
+ const ProviderNormalizer_1 = require("./ProviderNormalizer");
11
+ const ProviderUsage_1 = require("./ProviderUsage");
12
+ const cli_1 = require("./cli");
13
+ const tui_1 = require("./tui");
14
+ class ClaudeCliProvider extends ProviderManager_1.ProviderManager {
15
+ id = 'claude-cli';
16
+ label = 'Claude CLI';
17
+ kind = 'cli';
18
+ family = 'claude';
19
+ events = new ProviderEvents_1.ClaudeProviderEvents();
20
+ models = new ProviderModels_1.ClaudeProviderModels();
21
+ sessions = new ProviderSessions_1.ClaudeProviderSessions();
22
+ state = new ProviderState_1.ClaudeCliProviderState();
23
+ normalizer = new ProviderNormalizer_1.ClaudeProviderNormalizer('claude-cli');
24
+ usage = new ProviderUsage_1.ClaudeProviderUsage();
25
+ resolveSession(root, log) { return (0, cli_1.probeClaudeSession)(root, log); }
26
+ async dispatch(req) {
27
+ let cmd = (0, cli_1.buildClaudeCliCommand)(req.agentProfileFile, req.messageFile, req.resolvedSessionId, req.includeProfile, req.settings.claudeModel || undefined);
28
+ cmd = (0, commandHelpers_1.teeCommand)(cmd, req.stdoutFile);
29
+ return { command: (0, commandHelpers_1.withExitFile)(cmd, req.exitFile) };
30
+ }
31
+ }
32
+ exports.ClaudeCliProvider = ClaudeCliProvider;
33
+ class ClaudeTuiProvider extends ProviderManager_1.ProviderManager {
34
+ id = 'claude-tui';
35
+ label = 'Claude TUI';
36
+ kind = 'tui';
37
+ family = 'claude';
38
+ events = new ProviderEvents_1.ClaudeProviderEvents();
39
+ models = new ProviderModels_1.ClaudeProviderModels();
40
+ sessions = new ProviderSessions_1.ClaudeProviderSessions();
41
+ state = new ProviderState_1.ClaudeTuiProviderState();
42
+ normalizer = new ProviderNormalizer_1.ClaudeProviderNormalizer('claude-tui');
43
+ usage = new ProviderUsage_1.ClaudeProviderUsage();
44
+ async dispatch(req, ctx) {
45
+ (0, tui_1.sendClaudeTuiPrompt)(req.root, req.combinedFile, req.resolvedSessionId, req.stdoutFile, req.exitFile, ctx.log, req.settings.claudeModel || undefined, ctx.showOutput);
46
+ return {};
47
+ }
48
+ }
49
+ exports.ClaudeTuiProvider = ClaudeTuiProvider;
50
+ //# sourceMappingURL=ProviderManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProviderManager.js","sourceRoot":"","sources":["../../../src/providers/claude/ProviderManager.ts"],"names":[],"mappings":";;;AAEA,6DAA0D;AAC1D,8DAAqE;AACrE,qDAAwD;AACxD,qDAAwD;AACxD,yDAA4D;AAC5D,mDAAiF;AACjF,6DAAgE;AAChE,mDAAsD;AACtD,+BAAkE;AAClE,+BAA4C;AAE5C,MAAa,iBAAkB,SAAQ,iCAAe;IAC3C,EAAE,GAAe,YAAY,CAAC;IAC9B,KAAK,GAAG,YAAY,CAAC;IACrB,IAAI,GAAiB,KAAK,CAAC;IAC3B,MAAM,GAAG,QAAQ,CAAC;IAClB,MAAM,GAAG,IAAI,qCAAoB,EAAE,CAAC;IACpC,MAAM,GAAG,IAAI,qCAAoB,EAAE,CAAC;IACpC,QAAQ,GAAG,IAAI,yCAAsB,EAAE,CAAC;IACxC,KAAK,GAAG,IAAI,sCAAsB,EAAE,CAAC;IACrC,UAAU,GAAG,IAAI,6CAAwB,CAAC,YAAY,CAAC,CAAC;IACxD,KAAK,GAAG,IAAI,mCAAmB,EAAE,CAAC;IAElC,cAAc,CAAC,IAAY,EAAE,GAAW,IAAI,OAAO,IAAA,wBAAkB,EAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;IAE5F,KAAK,CAAC,QAAQ,CAAC,GAAoB;QACjC,IAAI,GAAG,GAAG,IAAA,2BAAqB,EAC7B,GAAG,CAAC,gBAAgB,EAAE,GAAG,CAAC,WAAW,EAAE,GAAG,CAAC,iBAAiB,EAC5D,GAAG,CAAC,cAAc,EAAE,GAAG,CAAC,QAAQ,CAAC,WAAW,IAAI,SAAS,CAC1D,CAAC;QACF,GAAG,GAAG,IAAA,2BAAU,EAAC,GAAG,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;QACtC,OAAO,EAAE,OAAO,EAAE,IAAA,6BAAY,EAAC,GAAG,EAAE,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;IACtD,CAAC;CACF;AAtBD,8CAsBC;AAED,MAAa,iBAAkB,SAAQ,iCAAe;IAC3C,EAAE,GAAe,YAAY,CAAC;IAC9B,KAAK,GAAG,YAAY,CAAC;IACrB,IAAI,GAAiB,KAAK,CAAC;IAC3B,MAAM,GAAG,QAAQ,CAAC;IAClB,MAAM,GAAG,IAAI,qCAAoB,EAAE,CAAC;IACpC,MAAM,GAAG,IAAI,qCAAoB,EAAE,CAAC;IACpC,QAAQ,GAAG,IAAI,yCAAsB,EAAE,CAAC;IACxC,KAAK,GAAG,IAAI,sCAAsB,EAAE,CAAC;IACrC,UAAU,GAAG,IAAI,6CAAwB,CAAC,YAAY,CAAC,CAAC;IACxD,KAAK,GAAG,IAAI,mCAAmB,EAAE,CAAC;IAE3C,KAAK,CAAC,QAAQ,CAAC,GAAoB,EAAE,GAA6C;QAChF,IAAA,yBAAmB,EAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,YAAY,EAAE,GAAG,CAAC,iBAAiB,EACnE,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,QAAQ,CAAC,WAAW,IAAI,SAAS,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;QAChG,OAAO,EAAE,CAAC;IACZ,CAAC;CACF;AAjBD,8CAiBC"}
@@ -0,0 +1,8 @@
1
+ import { ProviderModels } from '../base/ProviderModels';
2
+ import type { ModelInfo } from '../base/types';
3
+ export declare const DEFAULT_CLAUDE_CONTEXT_LIMIT = 200000;
4
+ export declare class ClaudeProviderModels extends ProviderModels {
5
+ readonly family = "claude";
6
+ list(): ModelInfo[];
7
+ defaultContextLimit(): number;
8
+ }
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ClaudeProviderModels = exports.DEFAULT_CLAUDE_CONTEXT_LIMIT = void 0;
4
+ const ProviderModels_1 = require("../base/ProviderModels");
5
+ exports.DEFAULT_CLAUDE_CONTEXT_LIMIT = 200_000;
6
+ const CLAUDE_MODELS = [
7
+ { id: 'claude-opus-4-8', label: 'Opus 4.8', contextLimit: 200_000 },
8
+ { id: 'claude-opus-4-1', label: 'Opus 4.1', contextLimit: 200_000 },
9
+ { id: 'claude-opus-4', label: 'Opus 4', contextLimit: 200_000 },
10
+ { id: 'claude-sonnet-4-5', label: 'Sonnet 4.5', contextLimit: 200_000 },
11
+ { id: 'claude-sonnet-4', label: 'Sonnet 4', contextLimit: 200_000 },
12
+ { id: 'claude-haiku-4-5', label: 'Haiku 4.5', contextLimit: 200_000 },
13
+ { id: 'opus', label: 'Opus', contextLimit: 200_000 },
14
+ { id: 'sonnet', label: 'Sonnet', contextLimit: 200_000 },
15
+ { id: 'haiku', label: 'Haiku', contextLimit: 200_000 },
16
+ ];
17
+ class ClaudeProviderModels extends ProviderModels_1.ProviderModels {
18
+ family = 'claude';
19
+ list() { return CLAUDE_MODELS.slice(); }
20
+ defaultContextLimit() { return exports.DEFAULT_CLAUDE_CONTEXT_LIMIT; }
21
+ }
22
+ exports.ClaudeProviderModels = ClaudeProviderModels;
23
+ //# sourceMappingURL=ProviderModels.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProviderModels.js","sourceRoot":"","sources":["../../../src/providers/claude/ProviderModels.ts"],"names":[],"mappings":";;;AAAA,2DAAwD;AAG3C,QAAA,4BAA4B,GAAG,OAAO,CAAC;AAEpD,MAAM,aAAa,GAAgB;IACjC,EAAE,EAAE,EAAE,iBAAiB,EAAE,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,OAAO,EAAE;IACnE,EAAE,EAAE,EAAE,iBAAiB,EAAE,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,OAAO,EAAE;IACnE,EAAE,EAAE,EAAE,eAAe,EAAE,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,OAAO,EAAE;IAC/D,EAAE,EAAE,EAAE,mBAAmB,EAAE,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE;IACvE,EAAE,EAAE,EAAE,iBAAiB,EAAE,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,OAAO,EAAE;IACnE,EAAE,EAAE,EAAE,kBAAkB,EAAE,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,OAAO,EAAE;IACrE,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE;IACpD,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,OAAO,EAAE;IACxD,EAAE,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE;CACvD,CAAC;AAEF,MAAa,oBAAqB,SAAQ,+BAAc;IAC7C,MAAM,GAAG,QAAQ,CAAC;IAC3B,IAAI,KAAkB,OAAO,aAAa,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAC5C,mBAAmB,KAAa,OAAO,oCAA4B,CAAC,CAAC,CAAC;CAChF;AAJD,oDAIC"}
@@ -0,0 +1,5 @@
1
+ import { ProviderNormalizer } from '../base/ProviderNormalizer';
2
+ export declare class ClaudeProviderNormalizer extends ProviderNormalizer {
3
+ readonly provider: string;
4
+ constructor(provider?: string);
5
+ }
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ClaudeProviderNormalizer = void 0;
4
+ const ProviderNormalizer_1 = require("../base/ProviderNormalizer");
5
+ class ClaudeProviderNormalizer extends ProviderNormalizer_1.ProviderNormalizer {
6
+ provider;
7
+ constructor(provider = 'claude-cli') { super(); this.provider = provider; }
8
+ }
9
+ exports.ClaudeProviderNormalizer = ClaudeProviderNormalizer;
10
+ //# sourceMappingURL=ProviderNormalizer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProviderNormalizer.js","sourceRoot":"","sources":["../../../src/providers/claude/ProviderNormalizer.ts"],"names":[],"mappings":";;;AAAA,mEAAgE;AAEhE,MAAa,wBAAyB,SAAQ,uCAAkB;IACrD,QAAQ,CAAS;IAC1B,YAAY,QAAQ,GAAG,YAAY,IAAI,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC;CAC5E;AAHD,4DAGC"}
@@ -0,0 +1,14 @@
1
+ import { ProviderSessions } from '../base/ProviderSessions';
2
+ import type { Logger } from '../base/contract';
3
+ import type { SessionRecord, TranscriptMsg } from '../base/types';
4
+ export declare class ClaudeProviderSessions extends ProviderSessions {
5
+ readonly family = "claude";
6
+ list(root: string): SessionRecord[];
7
+ listAll(): SessionRecord[];
8
+ resolveLatest(root: string, log?: Logger): Promise<string | undefined>;
9
+ readTranscript(id: string, opts?: {
10
+ cwd?: string;
11
+ file?: string;
12
+ limit?: number;
13
+ }): TranscriptMsg[];
14
+ }
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ClaudeProviderSessions = void 0;
4
+ const ProviderSessions_1 = require("../base/ProviderSessions");
5
+ const cli_1 = require("./cli");
6
+ class ClaudeProviderSessions extends ProviderSessions_1.ProviderSessions {
7
+ family = 'claude';
8
+ list(root) {
9
+ return (0, cli_1.listClaudeSessions)(root).map(s => ({
10
+ id: s.id,
11
+ name: (0, cli_1.getClaudeSessionDisplay)(s.id) || '(untitled)',
12
+ updated: s.mtime,
13
+ }));
14
+ }
15
+ listAll() {
16
+ return (0, cli_1.listAllClaudeSessions)().map(s => ({
17
+ id: s.id, name: s.name, cwd: s.cwd, updated: s.updated, file: s.file, msgs: s.msgs,
18
+ }));
19
+ }
20
+ async resolveLatest(root, log) {
21
+ const latest = (0, cli_1.findLatestClaudeSession)(root);
22
+ if (latest) {
23
+ return latest;
24
+ }
25
+ if (log) {
26
+ return (0, cli_1.probeClaudeSession)(root, log);
27
+ }
28
+ return undefined;
29
+ }
30
+ readTranscript(id, opts) {
31
+ return (0, cli_1.readClaudeTranscript)(id, opts?.file, opts?.limit ?? 400);
32
+ }
33
+ }
34
+ exports.ClaudeProviderSessions = ClaudeProviderSessions;
35
+ //# sourceMappingURL=ProviderSessions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProviderSessions.js","sourceRoot":"","sources":["../../../src/providers/claude/ProviderSessions.ts"],"names":[],"mappings":";;;AAAA,+DAA4D;AAG5D,+BAOe;AAEf,MAAa,sBAAuB,SAAQ,mCAAgB;IACjD,MAAM,GAAG,QAAQ,CAAC;IAE3B,IAAI,CAAC,IAAY;QACf,OAAO,IAAA,wBAAkB,EAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACxC,EAAE,EAAE,CAAC,CAAC,EAAE;YACR,IAAI,EAAE,IAAA,6BAAuB,EAAC,CAAC,CAAC,EAAE,CAAC,IAAI,YAAY;YACnD,OAAO,EAAE,CAAC,CAAC,KAAK;SACjB,CAAC,CAAC,CAAC;IACN,CAAC;IAED,OAAO;QACL,OAAO,IAAA,2BAAqB,GAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACvC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI;SACnF,CAAC,CAAC,CAAC;IACN,CAAC;IAEQ,KAAK,CAAC,aAAa,CAAC,IAAY,EAAE,GAAY;QACrD,MAAM,MAAM,GAAG,IAAA,6BAAuB,EAAC,IAAI,CAAC,CAAC;QAC7C,IAAI,MAAM,EAAE,CAAC;YAAC,OAAO,MAAM,CAAC;QAAC,CAAC;QAC9B,IAAI,GAAG,EAAE,CAAC;YAAC,OAAO,IAAA,wBAAkB,EAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QAAC,CAAC;QAClD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,cAAc,CAAC,EAAU,EAAE,IAAsD;QAC/E,OAAO,IAAA,0BAAoB,EAAC,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,IAAI,GAAG,CAAC,CAAC;IAClE,CAAC;CACF;AA3BD,wDA2BC"}
@@ -0,0 +1,13 @@
1
+ import { ProviderState } from '../base/ProviderState';
2
+ import type { Logger } from '../base/contract';
3
+ export declare class ClaudeCliProviderState extends ProviderState {
4
+ readonly family = "claude-cli";
5
+ }
6
+ export declare class ClaudeTuiProviderState extends ProviderState {
7
+ readonly family = "claude-tui";
8
+ isBusy(root: string): boolean;
9
+ lastActivity(root: string): number;
10
+ forceIdle(root: string): void;
11
+ close(root: string, log: Logger): void;
12
+ closeAll(): void;
13
+ }
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ClaudeTuiProviderState = exports.ClaudeCliProviderState = void 0;
4
+ const ProviderState_1 = require("../base/ProviderState");
5
+ const tui_1 = require("./tui");
6
+ class ClaudeCliProviderState extends ProviderState_1.ProviderState {
7
+ family = 'claude-cli';
8
+ }
9
+ exports.ClaudeCliProviderState = ClaudeCliProviderState;
10
+ class ClaudeTuiProviderState extends ProviderState_1.ProviderState {
11
+ family = 'claude-tui';
12
+ isBusy(root) { return (0, tui_1.isClaudeTuiBusy)(root); }
13
+ lastActivity(root) { return (0, tui_1.getClaudeTuiLastActivity)(root); }
14
+ forceIdle(root) { (0, tui_1.forceIdleClaudeTui)(root); }
15
+ close(root, log) { (0, tui_1.closeClaudeTuiClient)(root, log); }
16
+ closeAll() { (0, tui_1.closeAllClaudeTuiClients)(); }
17
+ }
18
+ exports.ClaudeTuiProviderState = ClaudeTuiProviderState;
19
+ //# sourceMappingURL=ProviderState.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProviderState.js","sourceRoot":"","sources":["../../../src/providers/claude/ProviderState.ts"],"names":[],"mappings":";;;AAAA,yDAAsD;AAEtD,+BAMe;AAEf,MAAa,sBAAuB,SAAQ,6BAAa;IAC9C,MAAM,GAAG,YAAY,CAAC;CAChC;AAFD,wDAEC;AAED,MAAa,sBAAuB,SAAQ,6BAAa;IAC9C,MAAM,GAAG,YAAY,CAAC;IACtB,MAAM,CAAC,IAAY,IAAa,OAAO,IAAA,qBAAe,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC/D,YAAY,CAAC,IAAY,IAAY,OAAO,IAAA,8BAAwB,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC7E,SAAS,CAAC,IAAY,IAAU,IAAA,wBAAkB,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC3D,KAAK,CAAC,IAAY,EAAE,GAAW,IAAU,IAAA,0BAAoB,EAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;IAC3E,QAAQ,KAAW,IAAA,8BAAwB,GAAE,CAAC,CAAC,CAAC;CAC1D;AAPD,wDAOC"}
@@ -0,0 +1,13 @@
1
+ import { ProviderUsage } from '../base/ProviderUsage';
2
+ import type { UsagePayload } from '../base/types';
3
+ import { DEFAULT_CLAUDE_CONTEXT_LIMIT } from './ProviderModels';
4
+ export { DEFAULT_CLAUDE_CONTEXT_LIMIT };
5
+ export declare function contextLimitForModel(model?: string | null): number;
6
+ /** Compact usage snapshot forwarded to the office. */
7
+ export type ClaudeUsagePayload = UsagePayload;
8
+ export declare function extractClaudeUsage(usage: unknown, model?: string | null): UsagePayload | null;
9
+ export declare class ClaudeProviderUsage extends ProviderUsage {
10
+ readonly family = "claude";
11
+ readonly defaultContextLimit = 200000;
12
+ extract(raw: unknown, model?: string | null): UsagePayload | null;
13
+ }
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+ // ---------------------------------------------------------------------------
3
+ // Claude usage — derive a running token / context-window snapshot from a
4
+ // transcript assistant message's `message.usage` block.
5
+ // ---------------------------------------------------------------------------
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.ClaudeProviderUsage = exports.DEFAULT_CLAUDE_CONTEXT_LIMIT = void 0;
8
+ exports.contextLimitForModel = contextLimitForModel;
9
+ exports.extractClaudeUsage = extractClaudeUsage;
10
+ const ProviderUsage_1 = require("../base/ProviderUsage");
11
+ const ProviderModels_1 = require("./ProviderModels");
12
+ Object.defineProperty(exports, "DEFAULT_CLAUDE_CONTEXT_LIMIT", { enumerable: true, get: function () { return ProviderModels_1.DEFAULT_CLAUDE_CONTEXT_LIMIT; } });
13
+ const CLAUDE_CONTEXT_LIMITS = [
14
+ [/opus/i, 200_000],
15
+ [/sonnet/i, 200_000],
16
+ [/haiku/i, 200_000],
17
+ ];
18
+ function contextLimitForModel(model) {
19
+ if (model) {
20
+ for (const [re, lim] of CLAUDE_CONTEXT_LIMITS) {
21
+ if (re.test(model)) {
22
+ return lim;
23
+ }
24
+ }
25
+ }
26
+ return ProviderModels_1.DEFAULT_CLAUDE_CONTEXT_LIMIT;
27
+ }
28
+ function extractClaudeUsage(usage, model) {
29
+ if (!usage || typeof usage !== 'object') {
30
+ return null;
31
+ }
32
+ const u = usage;
33
+ const input = (0, ProviderUsage_1.nonNeg)(u['input_tokens']);
34
+ const output = (0, ProviderUsage_1.nonNeg)(u['output_tokens']);
35
+ const cacheRead = (0, ProviderUsage_1.nonNeg)(u['cache_read_input_tokens']);
36
+ const cacheCreate = (0, ProviderUsage_1.nonNeg)(u['cache_creation_input_tokens']);
37
+ if (input === 0 && output === 0 && cacheRead === 0 && cacheCreate === 0) {
38
+ return null;
39
+ }
40
+ const contextTokens = input + cacheRead + cacheCreate;
41
+ const limit = contextLimitForModel(model);
42
+ const rawPct = limit > 0 ? (contextTokens / limit) * 100 : 0;
43
+ return {
44
+ tokens: input + output,
45
+ inputTokens: input,
46
+ outputTokens: output,
47
+ contextTokens,
48
+ contextPct: Math.max(0, Math.min(100, Math.round(rawPct * 10) / 10)),
49
+ };
50
+ }
51
+ class ClaudeProviderUsage extends ProviderUsage_1.ProviderUsage {
52
+ family = 'claude';
53
+ defaultContextLimit = ProviderModels_1.DEFAULT_CLAUDE_CONTEXT_LIMIT;
54
+ extract(raw, model) {
55
+ return extractClaudeUsage(raw, model);
56
+ }
57
+ }
58
+ exports.ClaudeProviderUsage = ClaudeProviderUsage;
59
+ //# sourceMappingURL=ProviderUsage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProviderUsage.js","sourceRoot":"","sources":["../../../src/providers/claude/ProviderUsage.ts"],"names":[],"mappings":";AAAA,8EAA8E;AAC9E,yEAAyE;AACzE,wDAAwD;AACxD,8EAA8E;;;AAc9E,oDAOC;AAKD,gDAqBC;AA7CD,yDAA8D;AAE9D,qDAAgE;AAQvD,6GARA,6CAA4B,OAQA;AANrC,MAAM,qBAAqB,GAA4B;IACrD,CAAC,OAAO,EAAE,OAAO,CAAC;IAClB,CAAC,SAAS,EAAE,OAAO,CAAC;IACpB,CAAC,QAAQ,EAAE,OAAO,CAAC;CACpB,CAAC;AAIF,SAAgB,oBAAoB,CAAC,KAAqB;IACxD,IAAI,KAAK,EAAE,CAAC;QACV,KAAK,MAAM,CAAC,EAAE,EAAE,GAAG,CAAC,IAAI,qBAAqB,EAAE,CAAC;YAC9C,IAAI,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;gBAAC,OAAO,GAAG,CAAC;YAAC,CAAC;QACrC,CAAC;IACH,CAAC;IACD,OAAO,6CAA4B,CAAC;AACtC,CAAC;AAKD,SAAgB,kBAAkB,CAChC,KAAc,EACd,KAAqB;IAErB,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAAC,OAAO,IAAI,CAAC;IAAC,CAAC;IACzD,MAAM,CAAC,GAAG,KAAgC,CAAC;IAC3C,MAAM,KAAK,GAAS,IAAA,sBAAM,EAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC;IAC9C,MAAM,MAAM,GAAQ,IAAA,sBAAM,EAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC;IAC/C,MAAM,SAAS,GAAK,IAAA,sBAAM,EAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC;IACzD,MAAM,WAAW,GAAG,IAAA,sBAAM,EAAC,CAAC,CAAC,6BAA6B,CAAC,CAAC,CAAC;IAC7D,IAAI,KAAK,KAAK,CAAC,IAAI,MAAM,KAAK,CAAC,IAAI,SAAS,KAAK,CAAC,IAAI,WAAW,KAAK,CAAC,EAAE,CAAC;QAAC,OAAO,IAAI,CAAC;IAAC,CAAC;IACzF,MAAM,aAAa,GAAG,KAAK,GAAG,SAAS,GAAG,WAAW,CAAC;IACtD,MAAM,KAAK,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;IAC1C,MAAM,MAAM,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,GAAG,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7D,OAAO;QACL,MAAM,EAAE,KAAK,GAAG,MAAM;QACtB,WAAW,EAAE,KAAK;QAClB,YAAY,EAAE,MAAM;QACpB,aAAa;QACb,UAAU,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;KACrE,CAAC;AACJ,CAAC;AAED,MAAa,mBAAoB,SAAQ,6BAAa;IAC3C,MAAM,GAAG,QAAQ,CAAC;IAClB,mBAAmB,GAAG,6CAA4B,CAAC;IAC5D,OAAO,CAAC,GAAY,EAAE,KAAqB;QACzC,OAAO,kBAAkB,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IACxC,CAAC;CACF;AAND,kDAMC"}
@@ -0,0 +1,95 @@
1
+ /**
2
+ * Encode a workspace path the way Claude Code names its `~/.claude/projects/`
3
+ * folders: every `:`, `\`, `/` becomes `-`, and runs of dashes are collapsed.
4
+ * Note: Claude **keeps the leading dash** that comes from a leading slash on
5
+ * POSIX paths (e.g. `/home/x/foo` → `-home-x-foo`), so we don't strip `^-`.
6
+ * Trailing dashes are dropped.
7
+ */
8
+ export declare function claudeProjectFolder(workspacePath: string): string;
9
+ /**
10
+ * Compute the `~/.claude/projects/<encoded>` directory for a workspace,
11
+ * regardless of whether it already exists. Used when restoring an agent
12
+ * backup into a new folder: the destination's session traces must land in
13
+ * the project dir that Claude will look up for that folder.
14
+ */
15
+ export declare function getClaudeProjectDir(workspacePath: string): string;
16
+ export declare function listClaudeSessionFiles(workspacePath: string): Array<{
17
+ name: string;
18
+ mtime: number;
19
+ full: string;
20
+ }>;
21
+ export declare function listClaudeSessions(workspacePath: string): Array<{
22
+ id: string;
23
+ mtime: number;
24
+ }>;
25
+ export declare function findLatestClaudeSession(workspacePath: string): string | undefined;
26
+ /**
27
+ * Set the display NAME shown for a Claude session in the `claude --resume`
28
+ * picker. This Claude version has no dedicated title field — the picker label is
29
+ * the `display` value in ~/.claude/history.jsonl keyed by sessionId. We APPEND a
30
+ * fresh entry (never rewrite existing lines, so history can't be corrupted); the
31
+ * picker surfaces the latest display for the session.
32
+ */
33
+ /** Read the display NAME shown for a claude session in the --resume picker
34
+ * (latest `display` for this sessionId in ~/.claude/history.jsonl). */
35
+ export declare function getClaudeSessionDisplay(sessionId: string): string | undefined;
36
+ export declare function setClaudeSessionName(sessionId: string, name: string, cwd: string): void;
37
+ export interface ClaudeGlobalSession {
38
+ id: string;
39
+ name: string;
40
+ cwd: string;
41
+ updated: number;
42
+ file: string;
43
+ msgs: number;
44
+ }
45
+ /** ALL claude sessions across every ~/.claude/projects folder (newest first).
46
+ * Mirrors the app's sessionManager.discover(): skip `agent-` transcripts,
47
+ * derive cwd from the transcript's own `cwd` (folder-name decode fallback). */
48
+ export declare function listAllClaudeSessions(): ClaudeGlobalSession[];
49
+ export interface TranscriptMsg {
50
+ role: 'user' | 'assistant' | 'system' | 'tool';
51
+ text: string;
52
+ ts?: number;
53
+ }
54
+ /**
55
+ * Read a claude session transcript (by id, or an explicit `file`) into a
56
+ * normalized message array. Reuses the same parse shape the app uses: type
57
+ * user/assistant/system with tool_use/tool_result rendering. Reads only the
58
+ * tail of huge transcripts. Returns at most `limit` messages. [] on any miss.
59
+ */
60
+ export declare function readClaudeTranscript(id: string, file?: string, limit?: number): TranscriptMsg[];
61
+ export declare function getClaudeSessionCursor(workspacePath: string): number;
62
+ export interface ClaudeSessionState {
63
+ /** True if a definitive turn-end was detected. */
64
+ hasEndTurn: boolean;
65
+ /** Human-readable label for the tool currently running, if any. */
66
+ activeToolStatus?: string;
67
+ /** True if a bash_progress or mcp_progress record was seen. */
68
+ hasProgress: boolean;
69
+ /** Set when a rate_limit error is found — contains the raw message text. */
70
+ rateLimitMessage?: string;
71
+ }
72
+ export declare function parseClaudeStateSince(workspacePath: string, fromByte: number): ClaudeSessionState;
73
+ /** @deprecated Use parseClaudeStateSince instead. */
74
+ export declare function hasClaudeEndTurnSince(workspacePath: string, fromByte: number): boolean;
75
+ export declare function readClaudeOutputSince(workspacePath: string, fromByte: number): string;
76
+ /** Build the shell command string for the claude-cli provider. */
77
+ export declare function buildClaudeCliCommand(agentProfileFile: string, messageFile: string, sessionId?: string, includeProfile?: boolean, model?: string): string;
78
+ /**
79
+ * Run a tiny probe prompt via Node exec to obtain a claude-cli session ID
80
+ * before the main prompt runs. Extracts "session_id" from --output-format json output.
81
+ */
82
+ export declare function probeClaudeSession(cwd: string, log: (msg: string) => void): Promise<string | undefined>;
83
+ /**
84
+ * Run `/compact` on an existing Claude session to summarise conversation
85
+ * history and free up context window space. Used after Claude returns
86
+ * `prompt is too long: N tokens > MAX maximum` (HTTP 400). Resolves on exit
87
+ * (success or failure — caller decides what to do).
88
+ */
89
+ export declare function runClaudeCompact(sessionId: string, cwd: string, log: (msg: string) => void): Promise<void>;
90
+ /**
91
+ * Run `/clear` on an existing Claude session to wipe the conversation history
92
+ * and start fresh. Used when autocompact is thrashing (context refills to
93
+ * limit immediately after compact). Resolves on exit.
94
+ */
95
+ export declare function runClaudeClear(sessionId: string, cwd: string, log: (msg: string) => void): Promise<void>;