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.
- package/LICENSE.md +21 -0
- package/media/profile/00b-self-verifiable-work.md +62 -0
- package/media/profile/00c-verifiable-threads.md +78 -0
- package/media/profile/00d-turn-end-retrospective.md +61 -0
- package/media/profile/00e-long-horizon-planning.md +83 -0
- package/out/commands/office.js +4 -0
- package/out/commands/office.js.map +1 -1
- package/out/commands/start.js +1 -1
- package/out/commands/start.js.map +1 -1
- package/out/core/claudeUsage.d.ts +1 -26
- package/out/core/claudeUsage.js +15 -91
- package/out/core/claudeUsage.js.map +1 -1
- package/out/core/modelInfo.d.ts +1 -28
- package/out/core/modelInfo.js +15 -94
- package/out/core/modelInfo.js.map +1 -1
- package/out/core/provider/BaseProvider.d.ts +1 -14
- package/out/core/provider/BaseProvider.js +15 -22
- package/out/core/provider/BaseProvider.js.map +1 -1
- package/out/core/provider/ProviderRegistry.d.ts +1 -12
- package/out/core/provider/ProviderRegistry.js +15 -38
- package/out/core/provider/ProviderRegistry.js.map +1 -1
- package/out/core/provider/contract.d.ts +1 -62
- package/out/core/provider/contract.js +15 -6
- package/out/core/provider/contract.js.map +1 -1
- package/out/core/provider/implementations.d.ts +1 -65
- package/out/core/provider/implementations.js +4 -169
- package/out/core/provider/implementations.js.map +1 -1
- package/out/dispatcher.js +7 -0
- package/out/dispatcher.js.map +1 -1
- package/out/hookEventNormalizer.d.ts +1 -33
- package/out/hookEventNormalizer.js +15 -424
- package/out/hookEventNormalizer.js.map +1 -1
- package/out/profileBuilder.js +32 -0
- package/out/profileBuilder.js.map +1 -1
- package/out/providers/base/BaseProvider.d.ts +14 -0
- package/out/providers/base/BaseProvider.js +25 -0
- package/out/providers/base/BaseProvider.js.map +1 -0
- package/out/providers/base/ProviderEvents.d.ts +12 -0
- package/out/providers/base/ProviderEvents.js +81 -0
- package/out/providers/base/ProviderEvents.js.map +1 -0
- package/out/providers/base/ProviderManager.d.ts +25 -0
- package/out/providers/base/ProviderManager.js +22 -0
- package/out/providers/base/ProviderManager.js.map +1 -0
- package/out/providers/base/ProviderModels.d.ts +28 -0
- package/out/providers/base/ProviderModels.js +89 -0
- package/out/providers/base/ProviderModels.js.map +1 -0
- package/out/providers/base/ProviderNormalizer.d.ts +42 -0
- package/out/providers/base/ProviderNormalizer.js +439 -0
- package/out/providers/base/ProviderNormalizer.js.map +1 -0
- package/out/providers/base/ProviderRegistry.d.ts +12 -0
- package/out/providers/base/ProviderRegistry.js +42 -0
- package/out/providers/base/ProviderRegistry.js.map +1 -0
- package/out/providers/base/ProviderSessions.d.ts +15 -0
- package/out/providers/base/ProviderSessions.js +15 -0
- package/out/providers/base/ProviderSessions.js.map +1 -0
- package/out/providers/base/ProviderState.d.ts +9 -0
- package/out/providers/base/ProviderState.js +16 -0
- package/out/providers/base/ProviderState.js.map +1 -0
- package/out/providers/base/ProviderUsage.d.ts +12 -0
- package/out/providers/base/ProviderUsage.js +33 -0
- package/out/providers/base/ProviderUsage.js.map +1 -0
- package/out/providers/base/contract.d.ts +62 -0
- package/out/providers/base/contract.js +9 -0
- package/out/providers/base/contract.js.map +1 -0
- package/out/providers/base/factories.d.ts +64 -0
- package/out/providers/base/factories.js +265 -0
- package/out/providers/base/factories.js.map +1 -0
- package/out/providers/base/implementations.d.ts +5 -0
- package/out/providers/base/implementations.js +23 -0
- package/out/providers/base/implementations.js.map +1 -0
- package/out/providers/base/index.d.ts +13 -0
- package/out/providers/base/index.js +29 -0
- package/out/providers/base/index.js.map +1 -0
- package/out/providers/base/types.d.ts +30 -0
- package/out/providers/base/types.js +8 -0
- package/out/providers/base/types.js.map +1 -0
- package/out/providers/claude/ProviderEvents.d.ts +5 -0
- package/out/providers/claude/ProviderEvents.js +18 -0
- package/out/providers/claude/ProviderEvents.js.map +1 -0
- package/out/providers/claude/ProviderManager.d.ts +39 -0
- package/out/providers/claude/ProviderManager.js +50 -0
- package/out/providers/claude/ProviderManager.js.map +1 -0
- package/out/providers/claude/ProviderModels.d.ts +8 -0
- package/out/providers/claude/ProviderModels.js +23 -0
- package/out/providers/claude/ProviderModels.js.map +1 -0
- package/out/providers/claude/ProviderNormalizer.d.ts +5 -0
- package/out/providers/claude/ProviderNormalizer.js +10 -0
- package/out/providers/claude/ProviderNormalizer.js.map +1 -0
- package/out/providers/claude/ProviderSessions.d.ts +14 -0
- package/out/providers/claude/ProviderSessions.js +35 -0
- package/out/providers/claude/ProviderSessions.js.map +1 -0
- package/out/providers/claude/ProviderState.d.ts +13 -0
- package/out/providers/claude/ProviderState.js +19 -0
- package/out/providers/claude/ProviderState.js.map +1 -0
- package/out/providers/claude/ProviderUsage.d.ts +13 -0
- package/out/providers/claude/ProviderUsage.js +59 -0
- package/out/providers/claude/ProviderUsage.js.map +1 -0
- package/out/providers/claude/cli.d.ts +95 -0
- package/out/providers/claude/cli.js +674 -0
- package/out/providers/claude/cli.js.map +1 -0
- package/out/providers/claude/index.d.ts +9 -0
- package/out/providers/claude/index.js +26 -0
- package/out/providers/claude/index.js.map +1 -0
- package/out/providers/claude/tui.d.ts +38 -0
- package/out/providers/claude/tui.js +346 -0
- package/out/providers/claude/tui.js.map +1 -0
- package/out/providers/claudeCliProvider.d.ts +1 -95
- package/out/providers/claudeCliProvider.js +4 -660
- package/out/providers/claudeCliProvider.js.map +1 -1
- package/out/providers/claudeTuiProvider.d.ts +1 -38
- package/out/providers/claudeTuiProvider.js +4 -332
- package/out/providers/claudeTuiProvider.js.map +1 -1
- package/out/providers/copilot/ProviderEvents.d.ts +6 -0
- package/out/providers/copilot/ProviderEvents.js +18 -0
- package/out/providers/copilot/ProviderEvents.js.map +1 -0
- package/out/providers/copilot/ProviderManager.d.ts +39 -0
- package/out/providers/copilot/ProviderManager.js +98 -0
- package/out/providers/copilot/ProviderManager.js.map +1 -0
- package/out/providers/copilot/ProviderModels.d.ts +7 -0
- package/out/providers/copilot/ProviderModels.js +18 -0
- package/out/providers/copilot/ProviderModels.js.map +1 -0
- package/out/providers/copilot/ProviderNormalizer.d.ts +5 -0
- package/out/providers/copilot/ProviderNormalizer.js +10 -0
- package/out/providers/copilot/ProviderNormalizer.js.map +1 -0
- package/out/providers/copilot/ProviderSessions.d.ts +12 -0
- package/out/providers/copilot/ProviderSessions.js +39 -0
- package/out/providers/copilot/ProviderSessions.js.map +1 -0
- package/out/providers/copilot/ProviderState.d.ts +11 -0
- package/out/providers/copilot/ProviderState.js +17 -0
- package/out/providers/copilot/ProviderState.js.map +1 -0
- package/out/providers/copilot/ProviderUsage.d.ts +12 -0
- package/out/providers/copilot/ProviderUsage.js +41 -0
- package/out/providers/copilot/ProviderUsage.js.map +1 -0
- package/out/providers/copilot/cli.d.ts +16 -0
- package/out/providers/copilot/cli.js +52 -0
- package/out/providers/copilot/cli.js.map +1 -0
- package/out/providers/copilot/index.d.ts +10 -0
- package/out/providers/copilot/index.js +27 -0
- package/out/providers/copilot/index.js.map +1 -0
- package/out/providers/copilot/sdk.d.ts +22 -0
- package/out/providers/copilot/sdk.js +489 -0
- package/out/providers/copilot/sdk.js.map +1 -0
- package/out/providers/copilot/sessions.d.ts +25 -0
- package/out/providers/copilot/sessions.js +214 -0
- package/out/providers/copilot/sessions.js.map +1 -0
- package/out/providers/copilotCliProvider.d.ts +1 -16
- package/out/providers/copilotCliProvider.js +15 -49
- package/out/providers/copilotCliProvider.js.map +1 -1
- package/out/providers/copilotSdkProvider.d.ts +1 -22
- package/out/providers/copilotSdkProvider.js +4 -475
- package/out/providers/copilotSdkProvider.js.map +1 -1
- package/out/providers/copilotSessions.d.ts +1 -25
- package/out/providers/copilotSessions.js +4 -200
- package/out/providers/copilotSessions.js.map +1 -1
- package/out/providers/dummy/ProviderEvents.d.ts +5 -0
- package/out/providers/dummy/ProviderEvents.js +16 -0
- package/out/providers/dummy/ProviderEvents.js.map +1 -0
- package/out/providers/dummy/ProviderManager.d.ts +31 -0
- package/out/providers/dummy/ProviderManager.js +115 -0
- package/out/providers/dummy/ProviderManager.js.map +1 -0
- package/out/providers/dummy/ProviderModels.d.ts +7 -0
- package/out/providers/dummy/ProviderModels.js +15 -0
- package/out/providers/dummy/ProviderModels.js.map +1 -0
- package/out/providers/dummy/ProviderNormalizer.d.ts +4 -0
- package/out/providers/dummy/ProviderNormalizer.js +9 -0
- package/out/providers/dummy/ProviderNormalizer.js.map +1 -0
- package/out/providers/dummy/ProviderSessions.d.ts +12 -0
- package/out/providers/dummy/ProviderSessions.js +105 -0
- package/out/providers/dummy/ProviderSessions.js.map +1 -0
- package/out/providers/dummy/ProviderState.d.ts +12 -0
- package/out/providers/dummy/ProviderState.js +23 -0
- package/out/providers/dummy/ProviderState.js.map +1 -0
- package/out/providers/dummy/ProviderUsage.d.ts +9 -0
- package/out/providers/dummy/ProviderUsage.js +27 -0
- package/out/providers/dummy/ProviderUsage.js.map +1 -0
- package/out/providers/dummy/commands.d.ts +9 -0
- package/out/providers/dummy/commands.js +48 -0
- package/out/providers/dummy/commands.js.map +1 -0
- package/out/providers/dummy/index.d.ts +10 -0
- package/out/providers/dummy/index.js +27 -0
- package/out/providers/dummy/index.js.map +1 -0
- package/out/providers/dummy/office.d.ts +23 -0
- package/out/providers/dummy/office.js +66 -0
- package/out/providers/dummy/office.js.map +1 -0
- package/out/providers/dummy/traces.d.ts +8 -0
- package/out/providers/dummy/traces.js +174 -0
- package/out/providers/dummy/traces.js.map +1 -0
- package/out/providers/grok/ProviderEvents.d.ts +6 -0
- package/out/providers/grok/ProviderEvents.js +17 -0
- package/out/providers/grok/ProviderEvents.js.map +1 -0
- package/out/providers/grok/ProviderManager.d.ts +42 -0
- package/out/providers/grok/ProviderManager.js +48 -0
- package/out/providers/grok/ProviderManager.js.map +1 -0
- package/out/providers/grok/ProviderModels.d.ts +7 -0
- package/out/providers/grok/ProviderModels.js +16 -0
- package/out/providers/grok/ProviderModels.js.map +1 -0
- package/out/providers/grok/ProviderNormalizer.d.ts +5 -0
- package/out/providers/grok/ProviderNormalizer.js +10 -0
- package/out/providers/grok/ProviderNormalizer.js.map +1 -0
- package/out/providers/grok/ProviderSessions.d.ts +12 -0
- package/out/providers/grok/ProviderSessions.js +27 -0
- package/out/providers/grok/ProviderSessions.js.map +1 -0
- package/out/providers/grok/ProviderState.d.ts +10 -0
- package/out/providers/grok/ProviderState.js +15 -0
- package/out/providers/grok/ProviderState.js.map +1 -0
- package/out/providers/grok/ProviderUsage.d.ts +7 -0
- package/out/providers/grok/ProviderUsage.js +20 -0
- package/out/providers/grok/ProviderUsage.js.map +1 -0
- package/out/providers/grok/index.d.ts +9 -0
- package/out/providers/grok/index.js +26 -0
- package/out/providers/grok/index.js.map +1 -0
- package/out/providers/grok/sessions.d.ts +27 -0
- package/out/providers/grok/sessions.js +246 -0
- package/out/providers/grok/sessions.js.map +1 -0
- package/out/providers/grok/tui.d.ts +38 -0
- package/out/providers/grok/tui.js +1630 -0
- package/out/providers/grok/tui.js.map +1 -0
- package/out/providers/grokSessions.d.ts +1 -27
- package/out/providers/grokSessions.js +4 -232
- package/out/providers/grokSessions.js.map +1 -1
- package/out/providers/grokTuiProvider.d.ts +1 -38
- package/out/providers/grokTuiProvider.js +4 -1616
- package/out/providers/grokTuiProvider.js.map +1 -1
- package/out/providers/opencode/ProviderEvents.d.ts +6 -0
- package/out/providers/opencode/ProviderEvents.js +18 -0
- package/out/providers/opencode/ProviderEvents.js.map +1 -0
- package/out/providers/opencode/ProviderManager.d.ts +39 -0
- package/out/providers/opencode/ProviderManager.js +90 -0
- package/out/providers/opencode/ProviderManager.js.map +1 -0
- package/out/providers/opencode/ProviderModels.d.ts +7 -0
- package/out/providers/opencode/ProviderModels.js +17 -0
- package/out/providers/opencode/ProviderModels.js.map +1 -0
- package/out/providers/opencode/ProviderNormalizer.d.ts +5 -0
- package/out/providers/opencode/ProviderNormalizer.js +10 -0
- package/out/providers/opencode/ProviderNormalizer.js.map +1 -0
- package/out/providers/opencode/ProviderSessions.d.ts +11 -0
- package/out/providers/opencode/ProviderSessions.js +28 -0
- package/out/providers/opencode/ProviderSessions.js.map +1 -0
- package/out/providers/opencode/ProviderState.d.ts +14 -0
- package/out/providers/opencode/ProviderState.js +20 -0
- package/out/providers/opencode/ProviderState.js.map +1 -0
- package/out/providers/opencode/ProviderUsage.d.ts +7 -0
- package/out/providers/opencode/ProviderUsage.js +20 -0
- package/out/providers/opencode/ProviderUsage.js.map +1 -0
- package/out/providers/opencode/cli.d.ts +29 -0
- package/out/providers/opencode/cli.js +199 -0
- package/out/providers/opencode/cli.js.map +1 -0
- package/out/providers/opencode/index.d.ts +9 -0
- package/out/providers/opencode/index.js +26 -0
- package/out/providers/opencode/index.js.map +1 -0
- package/out/providers/opencode/sdk.d.ts +32 -0
- package/out/providers/opencode/sdk.js +610 -0
- package/out/providers/opencode/sdk.js.map +1 -0
- package/out/providers/opencodeCliProvider.d.ts +1 -29
- package/out/providers/opencodeCliProvider.js +15 -196
- package/out/providers/opencodeCliProvider.js.map +1 -1
- package/out/providers/opencodeSdkProvider.d.ts +1 -32
- package/out/providers/opencodeSdkProvider.js +4 -596
- package/out/providers/opencodeSdkProvider.js.map +1 -1
- package/out/providers.d.ts +1 -1
- package/out/providers.js +5 -0
- package/out/providers.js.map +1 -1
- package/out/sdk/index.js +5 -0
- package/out/sdk/index.js.map +1 -1
- 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,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>;
|