@sumicom/quicksave 0.8.8 → 0.8.10
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/dist/ai/cardBuilder.d.ts +65 -4
- package/dist/ai/cardBuilder.d.ts.map +1 -1
- package/dist/ai/cardBuilder.js +338 -28
- package/dist/ai/cardBuilder.js.map +1 -1
- package/dist/ai/claudeCliProvider.d.ts +15 -0
- package/dist/ai/claudeCliProvider.d.ts.map +1 -1
- package/dist/ai/claudeCliProvider.js +87 -3
- package/dist/ai/claudeCliProvider.js.map +1 -1
- package/dist/ai/claudeCodeProvider.d.ts +4 -0
- package/dist/ai/claudeCodeProvider.d.ts.map +1 -1
- package/dist/ai/claudeCodeProvider.js +41 -0
- package/dist/ai/claudeCodeProvider.js.map +1 -1
- package/dist/ai/claudeSdkProvider.d.ts +1 -0
- package/dist/ai/claudeSdkProvider.d.ts.map +1 -1
- package/dist/ai/claudeSdkProvider.js +14 -2
- package/dist/ai/claudeSdkProvider.js.map +1 -1
- package/dist/ai/claudeTerminal/cardSynth.d.ts +63 -0
- package/dist/ai/claudeTerminal/cardSynth.d.ts.map +1 -0
- package/dist/ai/claudeTerminal/cardSynth.js +92 -0
- package/dist/ai/claudeTerminal/cardSynth.js.map +1 -0
- package/dist/ai/claudeTerminal/hookBridge.d.ts +56 -0
- package/dist/ai/claudeTerminal/hookBridge.d.ts.map +1 -0
- package/dist/ai/claudeTerminal/hookBridge.js +131 -0
- package/dist/ai/claudeTerminal/hookBridge.js.map +1 -0
- package/dist/ai/claudeTerminal/hookHandler.d.ts +18 -0
- package/dist/ai/claudeTerminal/hookHandler.d.ts.map +1 -0
- package/dist/ai/claudeTerminal/hookHandler.js +124 -0
- package/dist/ai/claudeTerminal/hookHandler.js.map +1 -0
- package/dist/ai/claudeTerminal/index.d.ts +5 -0
- package/dist/ai/claudeTerminal/index.d.ts.map +1 -0
- package/dist/ai/claudeTerminal/index.js +7 -0
- package/dist/ai/claudeTerminal/index.js.map +1 -0
- package/dist/ai/claudeTerminal/jsonlTail.d.ts +40 -0
- package/dist/ai/claudeTerminal/jsonlTail.d.ts.map +1 -0
- package/dist/ai/claudeTerminal/jsonlTail.js +129 -0
- package/dist/ai/claudeTerminal/jsonlTail.js.map +1 -0
- package/dist/ai/claudeTerminal/provider.d.ts +106 -0
- package/dist/ai/claudeTerminal/provider.d.ts.map +1 -0
- package/dist/ai/claudeTerminal/provider.js +579 -0
- package/dist/ai/claudeTerminal/provider.js.map +1 -0
- package/dist/ai/claudeTerminal/settingsBuilder.d.ts +44 -0
- package/dist/ai/claudeTerminal/settingsBuilder.d.ts.map +1 -0
- package/dist/ai/claudeTerminal/settingsBuilder.js +40 -0
- package/dist/ai/claudeTerminal/settingsBuilder.js.map +1 -0
- package/dist/ai/codexAppServer/cardAdapter.d.ts.map +1 -1
- package/dist/ai/codexAppServer/cardAdapter.js +13 -5
- package/dist/ai/codexAppServer/cardAdapter.js.map +1 -1
- package/dist/ai/codexAppServer/provider.d.ts +10 -2
- package/dist/ai/codexAppServer/provider.d.ts.map +1 -1
- package/dist/ai/codexAppServer/provider.js +158 -22
- package/dist/ai/codexAppServer/provider.js.map +1 -1
- package/dist/ai/openCodeProvider.d.ts +106 -0
- package/dist/ai/openCodeProvider.d.ts.map +1 -0
- package/dist/ai/openCodeProvider.js +617 -0
- package/dist/ai/openCodeProvider.js.map +1 -0
- package/dist/ai/openCodeServer.d.ts +88 -0
- package/dist/ai/openCodeServer.d.ts.map +1 -0
- package/dist/ai/openCodeServer.js +350 -0
- package/dist/ai/openCodeServer.js.map +1 -0
- package/dist/ai/profiles/project-sandbox.sb +26 -0
- package/dist/ai/provider.d.ts +54 -1
- package/dist/ai/provider.d.ts.map +1 -1
- package/dist/ai/provider.js +10 -0
- package/dist/ai/provider.js.map +1 -1
- package/dist/ai/queuedUserPrompts.d.ts +8 -0
- package/dist/ai/queuedUserPrompts.d.ts.map +1 -0
- package/dist/ai/queuedUserPrompts.js +19 -0
- package/dist/ai/queuedUserPrompts.js.map +1 -0
- package/dist/ai/realtimeTranscription.d.ts +39 -0
- package/dist/ai/realtimeTranscription.d.ts.map +1 -0
- package/dist/ai/realtimeTranscription.js +154 -0
- package/dist/ai/realtimeTranscription.js.map +1 -0
- package/dist/ai/sandboxMcp.d.ts +7 -0
- package/dist/ai/sandboxMcp.d.ts.map +1 -1
- package/dist/ai/sandboxMcp.js +4 -0
- package/dist/ai/sandboxMcp.js.map +1 -1
- package/dist/ai/sandboxMcpStdio.d.ts +1 -1
- package/dist/ai/sandboxMcpStdio.js +120 -47
- package/dist/ai/sandboxMcpStdio.js.map +1 -1
- package/dist/ai/sessionManager.d.ts +20 -1
- package/dist/ai/sessionManager.d.ts.map +1 -1
- package/dist/ai/sessionManager.js +220 -10
- package/dist/ai/sessionManager.js.map +1 -1
- package/dist/ai/sessionRegistry.d.ts +6 -0
- package/dist/ai/sessionRegistry.d.ts.map +1 -1
- package/dist/ai/sessionRegistry.js +13 -0
- package/dist/ai/sessionRegistry.js.map +1 -1
- package/dist/ai/sessionRegistryLocator.d.ts +14 -0
- package/dist/ai/sessionRegistryLocator.d.ts.map +1 -0
- package/dist/ai/sessionRegistryLocator.js +44 -0
- package/dist/ai/sessionRegistryLocator.js.map +1 -0
- package/dist/ai/systemPrompt.d.ts.map +1 -1
- package/dist/ai/systemPrompt.js +2 -1
- package/dist/ai/systemPrompt.js.map +1 -1
- package/dist/ai/voiceStream.d.ts +74 -0
- package/dist/ai/voiceStream.d.ts.map +1 -0
- package/dist/ai/voiceStream.js +179 -0
- package/dist/ai/voiceStream.js.map +1 -0
- package/dist/ai/voiceTranscription.d.ts +33 -0
- package/dist/ai/voiceTranscription.d.ts.map +1 -0
- package/dist/ai/voiceTranscription.js +122 -0
- package/dist/ai/voiceTranscription.js.map +1 -0
- package/dist/files/fileBrowser.d.ts.map +1 -1
- package/dist/files/fileBrowser.js +15 -2
- package/dist/files/fileBrowser.js.map +1 -1
- package/dist/handlers/legacyBusAdapter.d.ts +1 -1
- package/dist/handlers/legacyBusAdapter.d.ts.map +1 -1
- package/dist/handlers/legacyBusAdapter.js +7 -1
- package/dist/handlers/legacyBusAdapter.js.map +1 -1
- package/dist/handlers/messageHandler.d.ts +6 -0
- package/dist/handlers/messageHandler.d.ts.map +1 -1
- package/dist/handlers/messageHandler.js +119 -8
- package/dist/handlers/messageHandler.js.map +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/service/ipcClient.js +1 -1
- package/dist/service/ipcClient.js.map +1 -1
- package/dist/service/run.d.ts.map +1 -1
- package/dist/service/run.js +81 -3
- package/dist/service/run.js.map +1 -1
- package/dist/service/types.js +1 -1
- package/package.json +6 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claudeCodeProvider.d.ts","sourceRoot":"","sources":["../../src/ai/claudeCodeProvider.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EACjB,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAiB1D,qBAAa,kBAAmB,YAAW,mBAAmB;IAC5D,QAAQ,CAAC,EAAE,EAAG,aAAa,CAAU;IACrC,QAAQ,CAAC,WAAW,EAAG,cAAc,CAAU;
|
|
1
|
+
{"version":3,"file":"claudeCodeProvider.d.ts","sourceRoot":"","sources":["../../src/ai/claudeCodeProvider.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EACjB,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAiB1D,qBAAa,kBAAmB,YAAW,mBAAmB;IAC5D,QAAQ,CAAC,EAAE,EAAG,aAAa,CAAU;IACrC,QAAQ,CAAC,WAAW,EAAG,cAAc,CAAU;IAC/C,QAAQ,CAAC,KAAK,iBAAiB;IAE/B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA2B;IACvD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA2B;IAEvD,OAAO,CAAC,YAAY;IAMd,YAAY,CAChB,IAAI,EAAE,gBAAgB,EACtB,WAAW,EAAE,iBAAiB,EAC9B,SAAS,EAAE,iBAAiB,GAC3B,OAAO,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,eAAe,CAAA;KAAE,CAAC;IAIrD,aAAa,CACjB,IAAI,EAAE,iBAAiB,EACvB,WAAW,EAAE,iBAAiB,EAC9B,SAAS,EAAE,iBAAiB,GAC3B,OAAO,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,eAAe,CAAA;KAAE,CAAC;IAIrD,aAAa,IAAI,OAAO,CAAC,GAAG,CAAC;IAqBnC,OAAO,CAAC,cAAc;YAUR,WAAW;CAW1B"}
|
|
@@ -15,6 +15,7 @@ function resolveClaudeTransport() {
|
|
|
15
15
|
export class ClaudeCodeProvider {
|
|
16
16
|
id = 'claude-code';
|
|
17
17
|
historyMode = 'claude-jsonl';
|
|
18
|
+
label = 'Claude Code';
|
|
18
19
|
cliProvider = new ClaudeCliProvider();
|
|
19
20
|
sdkProvider = new ClaudeSdkProvider();
|
|
20
21
|
getTransport() {
|
|
@@ -28,5 +29,45 @@ export class ClaudeCodeProvider {
|
|
|
28
29
|
async resumeSession(opts, cardBuilder, callbacks) {
|
|
29
30
|
return this.getTransport().resumeSession(opts, cardBuilder, callbacks);
|
|
30
31
|
}
|
|
32
|
+
async probeProvider() {
|
|
33
|
+
const hasCli = this.isCliAvailable();
|
|
34
|
+
const hasApiKey = !!process.env.ANTHROPIC_API_KEY;
|
|
35
|
+
const capabilities = {
|
|
36
|
+
hasApiKey,
|
|
37
|
+
hasCli,
|
|
38
|
+
hasPlugin: false,
|
|
39
|
+
supportsResume: true,
|
|
40
|
+
supportsSandbox: !!process.env.QUICKSAVE_SANDBOX,
|
|
41
|
+
supportsStreaming: true,
|
|
42
|
+
supportsAttachments: true,
|
|
43
|
+
supportedAttachmentKinds: ['image', 'pdf', 'text'],
|
|
44
|
+
};
|
|
45
|
+
return {
|
|
46
|
+
version: hasCli ? await this._getVersion(hasApiKey) : undefined,
|
|
47
|
+
capabilities,
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
isCliAvailable() {
|
|
51
|
+
try {
|
|
52
|
+
const execSync = require('child_process').execSync;
|
|
53
|
+
const result = execSync('which claude', { timeout: 3000, encoding: 'utf-8' }).trim();
|
|
54
|
+
return !!result;
|
|
55
|
+
}
|
|
56
|
+
catch {
|
|
57
|
+
return false;
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
async _getVersion(hasApiKey) {
|
|
61
|
+
try {
|
|
62
|
+
const execSync = require('child_process').execSync;
|
|
63
|
+
const result = hasApiKey
|
|
64
|
+
? '0.0.0'
|
|
65
|
+
: execSync('claude --version', { timeout: 3000, encoding: 'utf-8' }).trim();
|
|
66
|
+
return result || undefined;
|
|
67
|
+
}
|
|
68
|
+
catch {
|
|
69
|
+
return hasApiKey ? 'sdk' : undefined;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
31
72
|
}
|
|
32
73
|
//# sourceMappingURL=claudeCodeProvider.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claudeCodeProvider.js","sourceRoot":"","sources":["../../src/ai/claudeCodeProvider.ts"],"names":[],"mappings":"AAAA,qDAAqD;AACrD,+BAA+B;AAC/B,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAY3D,SAAS,sBAAsB;IAC7B,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC;IACxD,IAAI,QAAQ,KAAK,KAAK,IAAI,QAAQ,KAAK,KAAK,EAAE,CAAC;QAC7C,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,IAAI,OAAO,CAAC,GAAG,CAAC,kBAAkB,KAAK,KAAK,EAAE,CAAC;QAC7C,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,OAAO,kBAAkB;IACpB,EAAE,GAAG,aAAsB,CAAC;IAC5B,WAAW,GAAG,cAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"claudeCodeProvider.js","sourceRoot":"","sources":["../../src/ai/claudeCodeProvider.ts"],"names":[],"mappings":"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"}
|
|
@@ -22,6 +22,7 @@ export declare class SdkProviderSession implements ProviderSession {
|
|
|
22
22
|
export declare class ClaudeSdkProvider implements CodingAgentProvider {
|
|
23
23
|
readonly id: "claude-code";
|
|
24
24
|
readonly historyMode: "claude-jsonl";
|
|
25
|
+
readonly label = "Claude Code (SDK)";
|
|
25
26
|
startSession(opts: StartSessionOpts, cardBuilder: StreamCardBuilder, callbacks: ProviderCallbacks): Promise<{
|
|
26
27
|
sessionId: string;
|
|
27
28
|
session: ProviderSession;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claudeSdkProvider.d.ts","sourceRoot":"","sources":["../../src/ai/claudeSdkProvider.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACV,KAAK,EAGL,cAAc,EAGf,MAAM,gCAAgC,CAAC;AACxC,OAAO,KAAK,EAAE,UAAU,EAA4B,MAAM,2BAA2B,CAAC;AACtF,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAErD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAI7C,OAAO,KAAK,EACV,mBAAmB,EACnB,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,iBAAiB,EAElB,MAAM,eAAe,CAAC;AAgCvB,qBAAa,kBAAmB,YAAW,eAAe;IACxD,OAAO,CAAC,WAAW,CAAe;IAClC,OAAO,CAAC,UAAU,CAA6B;IAC/C,OAAO,CAAC,WAAW,CAAoB;IACvC;;wEAEoE;IAC7D,SAAS,EAAE,iBAAiB,GAAG,IAAI,CAAQ;gBAGhD,WAAW,EAAE,KAAK,EAClB,UAAU,EAAE,UAAU,CAAC,cAAc,CAAC,EACtC,WAAW,EAAE,iBAAiB;IAOhC,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,SAAS,UAAU,EAAE,GAAG,IAAI;IAiB1E,SAAS,IAAI,IAAI;IAOjB,IAAI,IAAI,IAAI;IAQZ,IAAI,KAAK,IAAI,OAAO,CAEnB;IAED,yEAAyE;IACzE,UAAU,IAAI,IAAI;CAGnB;AAMD,qBAAa,iBAAkB,YAAW,mBAAmB;IAC3D,QAAQ,CAAC,EAAE,EAAG,aAAa,CAAU;IACrC,QAAQ,CAAC,WAAW,EAAG,cAAc,CAAU;
|
|
1
|
+
{"version":3,"file":"claudeSdkProvider.d.ts","sourceRoot":"","sources":["../../src/ai/claudeSdkProvider.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACV,KAAK,EAGL,cAAc,EAGf,MAAM,gCAAgC,CAAC;AACxC,OAAO,KAAK,EAAE,UAAU,EAA4B,MAAM,2BAA2B,CAAC;AACtF,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAErD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAI7C,OAAO,KAAK,EACV,mBAAmB,EACnB,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,iBAAiB,EAElB,MAAM,eAAe,CAAC;AAgCvB,qBAAa,kBAAmB,YAAW,eAAe;IACxD,OAAO,CAAC,WAAW,CAAe;IAClC,OAAO,CAAC,UAAU,CAA6B;IAC/C,OAAO,CAAC,WAAW,CAAoB;IACvC;;wEAEoE;IAC7D,SAAS,EAAE,iBAAiB,GAAG,IAAI,CAAQ;gBAGhD,WAAW,EAAE,KAAK,EAClB,UAAU,EAAE,UAAU,CAAC,cAAc,CAAC,EACtC,WAAW,EAAE,iBAAiB;IAOhC,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,SAAS,UAAU,EAAE,GAAG,IAAI;IAiB1E,SAAS,IAAI,IAAI;IAOjB,IAAI,IAAI,IAAI;IAQZ,IAAI,KAAK,IAAI,OAAO,CAEnB;IAED,yEAAyE;IACzE,UAAU,IAAI,IAAI;CAGnB;AAMD,qBAAa,iBAAkB,YAAW,mBAAmB;IAC3D,QAAQ,CAAC,EAAE,EAAG,aAAa,CAAU;IACrC,QAAQ,CAAC,WAAW,EAAG,cAAc,CAAU;IAC/C,QAAQ,CAAC,KAAK,uBAAuB;IAE/B,YAAY,CAChB,IAAI,EAAE,gBAAgB,EACtB,WAAW,EAAE,iBAAiB,EAC9B,SAAS,EAAE,iBAAiB,GAC3B,OAAO,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,eAAe,CAAA;KAAE,CAAC;IA8CrD,aAAa,CACjB,IAAI,EAAE,iBAAiB,EACvB,WAAW,EAAE,iBAAiB,EAC9B,SAAS,EAAE,iBAAiB,GAC3B,OAAO,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,eAAe,CAAA;KAAE,CAAC;IA4C3D,OAAO,CAAC,YAAY;IAsFpB,OAAO,CAAC,iBAAiB;YAWX,WAAW;YAiCX,aAAa;YAkFb,YAAY;CA4O3B"}
|
|
@@ -93,6 +93,7 @@ export class SdkProviderSession {
|
|
|
93
93
|
export class ClaudeSdkProvider {
|
|
94
94
|
id = 'claude-code';
|
|
95
95
|
historyMode = 'claude-jsonl';
|
|
96
|
+
label = 'Claude Code (SDK)';
|
|
96
97
|
async startSession(opts, cardBuilder, callbacks) {
|
|
97
98
|
const inputQueue = new AsyncQueue();
|
|
98
99
|
// Push first user message
|
|
@@ -196,6 +197,7 @@ export class ClaudeSdkProvider {
|
|
|
196
197
|
ownDir: __ownDir,
|
|
197
198
|
cwd: opts.cwd,
|
|
198
199
|
sessionId: resumeSessionId,
|
|
200
|
+
corrId: opts.mcpCorrId,
|
|
199
201
|
}),
|
|
200
202
|
},
|
|
201
203
|
systemPrompt: opts.systemPrompt
|
|
@@ -350,7 +352,9 @@ export class ClaudeSdkProvider {
|
|
|
350
352
|
if (subtype === 'task_started') {
|
|
351
353
|
flushText();
|
|
352
354
|
const m = msg;
|
|
353
|
-
emitCard(cb.subagentStart(m.description ?? '', m.task_id, m.tool_use_id
|
|
355
|
+
emitCard(cb.subagentStart(m.description ?? '', m.task_id, m.tool_use_id, {
|
|
356
|
+
prompt: typeof m.prompt === 'string' ? m.prompt : undefined,
|
|
357
|
+
}));
|
|
354
358
|
return false;
|
|
355
359
|
}
|
|
356
360
|
if (subtype === 'task_progress') {
|
|
@@ -439,7 +443,15 @@ export class ClaudeSdkProvider {
|
|
|
439
443
|
}
|
|
440
444
|
else if (block.type === 'tool_use') {
|
|
441
445
|
callbacks.onToolUse?.(sessionId, block.name, block.input ?? {});
|
|
442
|
-
if (block.name
|
|
446
|
+
if (block.name === 'Agent') {
|
|
447
|
+
const input = block.input;
|
|
448
|
+
cb.stashAgentToolUseInput(block.id, {
|
|
449
|
+
prompt: typeof input?.prompt === 'string' ? input.prompt : undefined,
|
|
450
|
+
subagentType: typeof input?.subagent_type === 'string' ? input.subagent_type : undefined,
|
|
451
|
+
requestedModel: typeof input?.model === 'string' ? input.model : undefined,
|
|
452
|
+
});
|
|
453
|
+
}
|
|
454
|
+
else {
|
|
443
455
|
emitCard(cb.toolUse(block.name, block.input ?? {}, block.id));
|
|
444
456
|
}
|
|
445
457
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claudeSdkProvider.js","sourceRoot":"","sources":["../../src/ai/claudeSdkProvider.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"claudeSdkProvider.js","sourceRoot":"","sources":["../../src/ai/claudeSdkProvider.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CardSynth — merge cards arriving from two channels (hooks + JSONL) into a
|
|
3
|
+
* single deduplicated stream for `ClaudeTerminalProvider`.
|
|
4
|
+
*
|
|
5
|
+
* Why two channels:
|
|
6
|
+
* - Hook events (`PreToolUse` / `PostToolUse`) fire within a few ms of the
|
|
7
|
+
* model deciding to use a tool / receiving the tool's result. They give
|
|
8
|
+
* us low-latency cards but only carry tool name + input/output, not
|
|
9
|
+
* surrounding assistant prose.
|
|
10
|
+
* - JSONL flushes the same events at message-boundary granularity, after
|
|
11
|
+
* the whole assistant turn or tool call has settled. Slower but
|
|
12
|
+
* authoritative — includes assistant text, structured ContentBlock
|
|
13
|
+
* metadata, sidechain flags, etc.
|
|
14
|
+
*
|
|
15
|
+
* Strategy: **first-wins by `tool_use_id`**. Whichever channel reports a
|
|
16
|
+
* tool use / result first gets to emit the CardEvent; the other is dropped.
|
|
17
|
+
* For correctness this requires:
|
|
18
|
+
* 1. Hooks and JSONL agree on the same `tool_use_id` (they do — both
|
|
19
|
+
* come from the same claude turn, the id is the canonical anthropic id).
|
|
20
|
+
* 2. The CardEvent shape we emit from a hook matches what JSONL would have
|
|
21
|
+
* produced for the same id. Hooks carry `tool_input` and
|
|
22
|
+
* `tool_response` as raw JSON-ish values; we delegate to the existing
|
|
23
|
+
* `StreamCardBuilder` methods so card structure stays consistent.
|
|
24
|
+
*
|
|
25
|
+
* Non-goals: We do NOT try to enrich a hook-emitted card with JSONL data
|
|
26
|
+
* that arrives later. The hook-emitted card is good enough for the UI; the
|
|
27
|
+
* JSONL form would only differ in metadata we don't currently surface.
|
|
28
|
+
* If that becomes important, switch to a merge model (track id → ref →
|
|
29
|
+
* patch on second arrival).
|
|
30
|
+
*/
|
|
31
|
+
import type { CardEvent } from '@sumicom/quicksave-shared';
|
|
32
|
+
import type { StreamCardBuilder } from '../cardBuilder.js';
|
|
33
|
+
export interface CardSynthOpts {
|
|
34
|
+
cardBuilder: StreamCardBuilder;
|
|
35
|
+
emit: (event: CardEvent) => void;
|
|
36
|
+
}
|
|
37
|
+
export declare class CardSynth {
|
|
38
|
+
private readonly cardBuilder;
|
|
39
|
+
private readonly emit;
|
|
40
|
+
private readonly toolUseSeen;
|
|
41
|
+
private readonly toolResultSeen;
|
|
42
|
+
constructor(opts: CardSynthOpts);
|
|
43
|
+
/**
|
|
44
|
+
* Record a tool_use event. Idempotent by toolUseId — second caller is
|
|
45
|
+
* silently skipped.
|
|
46
|
+
* @returns true if the card was emitted, false if it was a duplicate.
|
|
47
|
+
*/
|
|
48
|
+
emitToolUse(toolUseId: string, toolName: string, toolInput: Record<string, unknown>): boolean;
|
|
49
|
+
/**
|
|
50
|
+
* Record a tool_result event. Idempotent by toolUseId — second caller is
|
|
51
|
+
* silently skipped. `cardBuilder.toolResult` returns null when it can't
|
|
52
|
+
* find the matching tool_use card; we treat that as "not yet emittable"
|
|
53
|
+
* and don't mark seen, so a subsequent JSONL flush can succeed once the
|
|
54
|
+
* tool_use is in the builder.
|
|
55
|
+
* @returns true if the card was emitted, false if it was a dup or no
|
|
56
|
+
* matching tool_use card exists yet.
|
|
57
|
+
*/
|
|
58
|
+
emitToolResult(toolUseId: string, content: string, isError: boolean): boolean;
|
|
59
|
+
/** Internal: stringify a `tool_response` payload that arrives from a hook.
|
|
60
|
+
* Hooks pass the raw tool output as JSON; the card UI wants a string. */
|
|
61
|
+
static stringifyHookToolResponse(value: unknown): string;
|
|
62
|
+
}
|
|
63
|
+
//# sourceMappingURL=cardSynth.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cardSynth.d.ts","sourceRoot":"","sources":["../../../src/ai/claudeTerminal/cardSynth.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAE3D,MAAM,WAAW,aAAa;IAC5B,WAAW,EAAE,iBAAiB,CAAC;IAC/B,IAAI,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,IAAI,CAAC;CAClC;AAED,qBAAa,SAAS;IACpB,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAoB;IAChD,OAAO,CAAC,QAAQ,CAAC,IAAI,CAA6B;IAClD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAqB;IACjD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAqB;gBAExC,IAAI,EAAE,aAAa;IAK/B;;;;OAIG;IACH,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO;IAQ7F;;;;;;;;OAQG;IACH,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO;IAU7E;8EAC0E;IAC1E,MAAM,CAAC,yBAAyB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM;CAKzD"}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
// SPDX-FileCopyrightText: 2026 King Young Technology
|
|
2
|
+
// SPDX-License-Identifier: MIT
|
|
3
|
+
/**
|
|
4
|
+
* CardSynth — merge cards arriving from two channels (hooks + JSONL) into a
|
|
5
|
+
* single deduplicated stream for `ClaudeTerminalProvider`.
|
|
6
|
+
*
|
|
7
|
+
* Why two channels:
|
|
8
|
+
* - Hook events (`PreToolUse` / `PostToolUse`) fire within a few ms of the
|
|
9
|
+
* model deciding to use a tool / receiving the tool's result. They give
|
|
10
|
+
* us low-latency cards but only carry tool name + input/output, not
|
|
11
|
+
* surrounding assistant prose.
|
|
12
|
+
* - JSONL flushes the same events at message-boundary granularity, after
|
|
13
|
+
* the whole assistant turn or tool call has settled. Slower but
|
|
14
|
+
* authoritative — includes assistant text, structured ContentBlock
|
|
15
|
+
* metadata, sidechain flags, etc.
|
|
16
|
+
*
|
|
17
|
+
* Strategy: **first-wins by `tool_use_id`**. Whichever channel reports a
|
|
18
|
+
* tool use / result first gets to emit the CardEvent; the other is dropped.
|
|
19
|
+
* For correctness this requires:
|
|
20
|
+
* 1. Hooks and JSONL agree on the same `tool_use_id` (they do — both
|
|
21
|
+
* come from the same claude turn, the id is the canonical anthropic id).
|
|
22
|
+
* 2. The CardEvent shape we emit from a hook matches what JSONL would have
|
|
23
|
+
* produced for the same id. Hooks carry `tool_input` and
|
|
24
|
+
* `tool_response` as raw JSON-ish values; we delegate to the existing
|
|
25
|
+
* `StreamCardBuilder` methods so card structure stays consistent.
|
|
26
|
+
*
|
|
27
|
+
* Non-goals: We do NOT try to enrich a hook-emitted card with JSONL data
|
|
28
|
+
* that arrives later. The hook-emitted card is good enough for the UI; the
|
|
29
|
+
* JSONL form would only differ in metadata we don't currently surface.
|
|
30
|
+
* If that becomes important, switch to a merge model (track id → ref →
|
|
31
|
+
* patch on second arrival).
|
|
32
|
+
*/
|
|
33
|
+
export class CardSynth {
|
|
34
|
+
cardBuilder;
|
|
35
|
+
emit;
|
|
36
|
+
toolUseSeen = new Set();
|
|
37
|
+
toolResultSeen = new Set();
|
|
38
|
+
constructor(opts) {
|
|
39
|
+
this.cardBuilder = opts.cardBuilder;
|
|
40
|
+
this.emit = opts.emit;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Record a tool_use event. Idempotent by toolUseId — second caller is
|
|
44
|
+
* silently skipped.
|
|
45
|
+
* @returns true if the card was emitted, false if it was a duplicate.
|
|
46
|
+
*/
|
|
47
|
+
emitToolUse(toolUseId, toolName, toolInput) {
|
|
48
|
+
if (!toolUseId)
|
|
49
|
+
return false;
|
|
50
|
+
if (this.toolUseSeen.has(toolUseId))
|
|
51
|
+
return false;
|
|
52
|
+
this.toolUseSeen.add(toolUseId);
|
|
53
|
+
this.emit(this.cardBuilder.toolUse(toolName, toolInput, toolUseId));
|
|
54
|
+
return true;
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Record a tool_result event. Idempotent by toolUseId — second caller is
|
|
58
|
+
* silently skipped. `cardBuilder.toolResult` returns null when it can't
|
|
59
|
+
* find the matching tool_use card; we treat that as "not yet emittable"
|
|
60
|
+
* and don't mark seen, so a subsequent JSONL flush can succeed once the
|
|
61
|
+
* tool_use is in the builder.
|
|
62
|
+
* @returns true if the card was emitted, false if it was a dup or no
|
|
63
|
+
* matching tool_use card exists yet.
|
|
64
|
+
*/
|
|
65
|
+
emitToolResult(toolUseId, content, isError) {
|
|
66
|
+
if (!toolUseId)
|
|
67
|
+
return false;
|
|
68
|
+
if (this.toolResultSeen.has(toolUseId))
|
|
69
|
+
return false;
|
|
70
|
+
const evt = this.cardBuilder.toolResult(toolUseId, content, isError);
|
|
71
|
+
if (!evt)
|
|
72
|
+
return false;
|
|
73
|
+
this.toolResultSeen.add(toolUseId);
|
|
74
|
+
this.emit(evt);
|
|
75
|
+
return true;
|
|
76
|
+
}
|
|
77
|
+
/** Internal: stringify a `tool_response` payload that arrives from a hook.
|
|
78
|
+
* Hooks pass the raw tool output as JSON; the card UI wants a string. */
|
|
79
|
+
static stringifyHookToolResponse(value) {
|
|
80
|
+
if (typeof value === 'string')
|
|
81
|
+
return value;
|
|
82
|
+
if (value == null)
|
|
83
|
+
return '';
|
|
84
|
+
try {
|
|
85
|
+
return JSON.stringify(value);
|
|
86
|
+
}
|
|
87
|
+
catch {
|
|
88
|
+
return String(value);
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
//# sourceMappingURL=cardSynth.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cardSynth.js","sourceRoot":"","sources":["../../../src/ai/claudeTerminal/cardSynth.ts"],"names":[],"mappings":"AAAA,qDAAqD;AACrD,+BAA+B;AAC/B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAUH,MAAM,OAAO,SAAS;IACH,WAAW,CAAoB;IAC/B,IAAI,CAA6B;IACjC,WAAW,GAAG,IAAI,GAAG,EAAU,CAAC;IAChC,cAAc,GAAG,IAAI,GAAG,EAAU,CAAC;IAEpD,YAAY,IAAmB;QAC7B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QACpC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;IACxB,CAAC;IAED;;;;OAIG;IACH,WAAW,CAAC,SAAiB,EAAE,QAAgB,EAAE,SAAkC;QACjF,IAAI,CAAC,SAAS;YAAE,OAAO,KAAK,CAAC;QAC7B,IAAI,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC;YAAE,OAAO,KAAK,CAAC;QAClD,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAChC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC;QACpE,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;OAQG;IACH,cAAc,CAAC,SAAiB,EAAE,OAAe,EAAE,OAAgB;QACjE,IAAI,CAAC,SAAS;YAAE,OAAO,KAAK,CAAC;QAC7B,IAAI,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC;YAAE,OAAO,KAAK,CAAC;QACrD,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,SAAS,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QACrE,IAAI,CAAC,GAAG;YAAE,OAAO,KAAK,CAAC;QACvB,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACnC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACf,OAAO,IAAI,CAAC;IACd,CAAC;IAED;8EAC0E;IAC1E,MAAM,CAAC,yBAAyB,CAAC,KAAc;QAC7C,IAAI,OAAO,KAAK,KAAK,QAAQ;YAAE,OAAO,KAAK,CAAC;QAC5C,IAAI,KAAK,IAAI,IAAI;YAAE,OAAO,EAAE,CAAC;QAC7B,IAAI,CAAC;YAAC,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC;YAAC,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;QAAC,CAAC;IACvE,CAAC;CACF"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Daemon-side Unix socket server that receives hook payloads from
|
|
3
|
+
* `hookHandler` instances spawned by claude. One bridge per provider session
|
|
4
|
+
* — the socket path is unique so multiple sessions don't cross-talk.
|
|
5
|
+
*
|
|
6
|
+
* Protocol (line-delimited JSON):
|
|
7
|
+
*
|
|
8
|
+
* client → server: { "event": "<HookEventName>", "payload": <hook-json> }
|
|
9
|
+
* server → client: { "decision": <hookSpecificOutput | null> }
|
|
10
|
+
*
|
|
11
|
+
* The server emits `{ event, payload, respond }` for each request. Listeners
|
|
12
|
+
* call `respond({...})` to fulfil blocking hooks (PermissionRequest); for
|
|
13
|
+
* fire-and-forget hooks (PreToolUse / PostToolUse / Stop) the bridge auto-acks
|
|
14
|
+
* with `{decision: null}` once all listeners settle (or immediately if no
|
|
15
|
+
* listener registers a deferred decision).
|
|
16
|
+
*/
|
|
17
|
+
import { EventEmitter } from 'node:events';
|
|
18
|
+
/**
|
|
19
|
+
* Hook event names accepted by claude --settings. Subset matches what we
|
|
20
|
+
* observed in the bundled cli.js v2.1.111+:
|
|
21
|
+
* PreToolUse, PostToolUse, PermissionRequest, UserPromptSubmit,
|
|
22
|
+
* SessionStart, Stop, SubagentStop, Notification
|
|
23
|
+
*/
|
|
24
|
+
export type HookEventName = 'PreToolUse' | 'PostToolUse' | 'PermissionRequest' | 'UserPromptSubmit' | 'SessionStart' | 'Stop' | 'SubagentStop' | 'Notification';
|
|
25
|
+
export interface HookRequest {
|
|
26
|
+
event: HookEventName;
|
|
27
|
+
payload: Record<string, unknown>;
|
|
28
|
+
/** Resolve the hook with a decision object. Calling more than once is a
|
|
29
|
+
* no-op (first wins) — claude only reads one response line. */
|
|
30
|
+
respond: (decision: HookDecision) => void;
|
|
31
|
+
}
|
|
32
|
+
/** What we send back to claude on the hook stdout. */
|
|
33
|
+
export type HookDecision = HookSpecificOutput | null;
|
|
34
|
+
/** Shape claude expects for actionable hook responses. */
|
|
35
|
+
export interface HookSpecificOutput {
|
|
36
|
+
hookSpecificOutput?: {
|
|
37
|
+
hookEventName: HookEventName;
|
|
38
|
+
decision?: {
|
|
39
|
+
behavior: 'allow' | 'deny';
|
|
40
|
+
message?: string;
|
|
41
|
+
};
|
|
42
|
+
[k: string]: unknown;
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
export declare class HookBridge extends EventEmitter {
|
|
46
|
+
readonly socketPath: string;
|
|
47
|
+
private server;
|
|
48
|
+
/** Bound listener count for emitter — we emit 'request' events. */
|
|
49
|
+
constructor(socketPath?: string);
|
|
50
|
+
start(): Promise<void>;
|
|
51
|
+
stop(): Promise<void>;
|
|
52
|
+
/** Subscribe to incoming hook requests. */
|
|
53
|
+
onRequest(handler: (req: HookRequest) => void): () => void;
|
|
54
|
+
private handleConnection;
|
|
55
|
+
}
|
|
56
|
+
//# sourceMappingURL=hookBridge.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hookBridge.d.ts","sourceRoot":"","sources":["../../../src/ai/claudeTerminal/hookBridge.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAM3C;;;;;GAKG;AACH,MAAM,MAAM,aAAa,GACrB,YAAY,GACZ,aAAa,GACb,mBAAmB,GACnB,kBAAkB,GAClB,cAAc,GACd,MAAM,GACN,cAAc,GACd,cAAc,CAAC;AAEnB,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,aAAa,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC;oEACgE;IAChE,OAAO,EAAE,CAAC,QAAQ,EAAE,YAAY,KAAK,IAAI,CAAC;CAC3C;AAED,sDAAsD;AACtD,MAAM,MAAM,YAAY,GAAG,kBAAkB,GAAG,IAAI,CAAC;AAErD,0DAA0D;AAC1D,MAAM,WAAW,kBAAkB;IACjC,kBAAkB,CAAC,EAAE;QACnB,aAAa,EAAE,aAAa,CAAC;QAC7B,QAAQ,CAAC,EAAE;YAAE,QAAQ,EAAE,OAAO,GAAG,MAAM,CAAC;YAAC,OAAO,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC;QAC5D,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;KACtB,CAAC;CACH;AAUD,qBAAa,UAAW,SAAQ,YAAY;IAC1C,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,OAAO,CAAC,MAAM,CAAuB;IACrC,mEAAmE;gBAEvD,UAAU,CAAC,EAAE,MAAM;IAKzB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAetB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAO3B,2CAA2C;IAC3C,SAAS,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,WAAW,KAAK,IAAI,GAAG,MAAM,IAAI;IAK1D,OAAO,CAAC,gBAAgB;CAwDzB"}
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
// SPDX-FileCopyrightText: 2026 King Young Technology
|
|
2
|
+
// SPDX-License-Identifier: MIT
|
|
3
|
+
/**
|
|
4
|
+
* Daemon-side Unix socket server that receives hook payloads from
|
|
5
|
+
* `hookHandler` instances spawned by claude. One bridge per provider session
|
|
6
|
+
* — the socket path is unique so multiple sessions don't cross-talk.
|
|
7
|
+
*
|
|
8
|
+
* Protocol (line-delimited JSON):
|
|
9
|
+
*
|
|
10
|
+
* client → server: { "event": "<HookEventName>", "payload": <hook-json> }
|
|
11
|
+
* server → client: { "decision": <hookSpecificOutput | null> }
|
|
12
|
+
*
|
|
13
|
+
* The server emits `{ event, payload, respond }` for each request. Listeners
|
|
14
|
+
* call `respond({...})` to fulfil blocking hooks (PermissionRequest); for
|
|
15
|
+
* fire-and-forget hooks (PreToolUse / PostToolUse / Stop) the bridge auto-acks
|
|
16
|
+
* with `{decision: null}` once all listeners settle (or immediately if no
|
|
17
|
+
* listener registers a deferred decision).
|
|
18
|
+
*/
|
|
19
|
+
import { createServer } from 'node:net';
|
|
20
|
+
import { EventEmitter } from 'node:events';
|
|
21
|
+
import { unlinkSync, existsSync } from 'node:fs';
|
|
22
|
+
import { tmpdir } from 'node:os';
|
|
23
|
+
import { join } from 'node:path';
|
|
24
|
+
import { randomBytes } from 'node:crypto';
|
|
25
|
+
/**
|
|
26
|
+
* Hard ceiling on how long the bridge waits for a listener to call respond().
|
|
27
|
+
* 30s is generous — PermissionRequest UI usually answers in under 10s.
|
|
28
|
+
* After this, the bridge replies with `{decision: null}` so claude isn't
|
|
29
|
+
* stuck waiting on stdin forever.
|
|
30
|
+
*/
|
|
31
|
+
const HOOK_RESPONSE_FALLBACK_MS = 30_000;
|
|
32
|
+
export class HookBridge extends EventEmitter {
|
|
33
|
+
socketPath;
|
|
34
|
+
server = null;
|
|
35
|
+
/** Bound listener count for emitter — we emit 'request' events. */
|
|
36
|
+
constructor(socketPath) {
|
|
37
|
+
super();
|
|
38
|
+
this.socketPath = socketPath ?? defaultSocketPath();
|
|
39
|
+
}
|
|
40
|
+
async start() {
|
|
41
|
+
if (this.server)
|
|
42
|
+
return;
|
|
43
|
+
if (existsSync(this.socketPath)) {
|
|
44
|
+
try {
|
|
45
|
+
unlinkSync(this.socketPath);
|
|
46
|
+
}
|
|
47
|
+
catch { /* */ }
|
|
48
|
+
}
|
|
49
|
+
await new Promise((resolve, reject) => {
|
|
50
|
+
const server = createServer((sock) => this.handleConnection(sock));
|
|
51
|
+
server.on('error', reject);
|
|
52
|
+
server.listen(this.socketPath, () => {
|
|
53
|
+
this.server = server;
|
|
54
|
+
resolve();
|
|
55
|
+
});
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
async stop() {
|
|
59
|
+
if (!this.server)
|
|
60
|
+
return;
|
|
61
|
+
await new Promise((resolve) => this.server.close(() => resolve()));
|
|
62
|
+
this.server = null;
|
|
63
|
+
try {
|
|
64
|
+
unlinkSync(this.socketPath);
|
|
65
|
+
}
|
|
66
|
+
catch { /* */ }
|
|
67
|
+
}
|
|
68
|
+
/** Subscribe to incoming hook requests. */
|
|
69
|
+
onRequest(handler) {
|
|
70
|
+
this.on('request', handler);
|
|
71
|
+
return () => this.off('request', handler);
|
|
72
|
+
}
|
|
73
|
+
handleConnection(sock) {
|
|
74
|
+
let buf = '';
|
|
75
|
+
let responded = false;
|
|
76
|
+
const sendResponse = (decision) => {
|
|
77
|
+
if (responded)
|
|
78
|
+
return;
|
|
79
|
+
responded = true;
|
|
80
|
+
try {
|
|
81
|
+
sock.write(JSON.stringify({ decision }) + '\n');
|
|
82
|
+
}
|
|
83
|
+
catch { /* socket closed */ }
|
|
84
|
+
sock.end();
|
|
85
|
+
};
|
|
86
|
+
sock.on('data', (chunk) => {
|
|
87
|
+
buf += chunk.toString('utf8');
|
|
88
|
+
const newlineIdx = buf.indexOf('\n');
|
|
89
|
+
if (newlineIdx === -1)
|
|
90
|
+
return;
|
|
91
|
+
const line = buf.slice(0, newlineIdx);
|
|
92
|
+
buf = buf.slice(newlineIdx + 1);
|
|
93
|
+
let parsed;
|
|
94
|
+
try {
|
|
95
|
+
parsed = JSON.parse(line);
|
|
96
|
+
}
|
|
97
|
+
catch {
|
|
98
|
+
sendResponse(null);
|
|
99
|
+
return;
|
|
100
|
+
}
|
|
101
|
+
const event = parsed.event;
|
|
102
|
+
const payload = parsed.payload;
|
|
103
|
+
if (typeof event !== 'string' || typeof payload !== 'object' || payload === null) {
|
|
104
|
+
sendResponse(null);
|
|
105
|
+
return;
|
|
106
|
+
}
|
|
107
|
+
const req = {
|
|
108
|
+
event: event,
|
|
109
|
+
payload: payload,
|
|
110
|
+
respond: sendResponse,
|
|
111
|
+
};
|
|
112
|
+
// Listeners are responsible for calling respond(). Fire-and-forget
|
|
113
|
+
// hooks should respond(null) immediately after recording the event;
|
|
114
|
+
// blocking hooks (PermissionRequest) respond when the user has answered.
|
|
115
|
+
// The fallback timer is a safety net so a buggy listener doesn't hang
|
|
116
|
+
// claude forever.
|
|
117
|
+
if (this.listenerCount('request') === 0) {
|
|
118
|
+
sendResponse(null);
|
|
119
|
+
}
|
|
120
|
+
else {
|
|
121
|
+
this.emit('request', req);
|
|
122
|
+
setTimeout(() => sendResponse(null), HOOK_RESPONSE_FALLBACK_MS);
|
|
123
|
+
}
|
|
124
|
+
});
|
|
125
|
+
sock.on('error', () => sendResponse(null));
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
function defaultSocketPath() {
|
|
129
|
+
return join(tmpdir(), `quicksave-hook-${randomBytes(6).toString('hex')}.sock`);
|
|
130
|
+
}
|
|
131
|
+
//# sourceMappingURL=hookBridge.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hookBridge.js","sourceRoot":"","sources":["../../../src/ai/claudeTerminal/hookBridge.ts"],"names":[],"mappings":"AAAA,qDAAqD;AACrD,+BAA+B;AAC/B;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,YAAY,EAA4B,MAAM,UAAU,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACjD,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAsC1C;;;;;GAKG;AACH,MAAM,yBAAyB,GAAG,MAAM,CAAC;AAEzC,MAAM,OAAO,UAAW,SAAQ,YAAY;IACjC,UAAU,CAAS;IACpB,MAAM,GAAkB,IAAI,CAAC;IACrC,mEAAmE;IAEnE,YAAY,UAAmB;QAC7B,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,UAAU,GAAG,UAAU,IAAI,iBAAiB,EAAE,CAAC;IACtD,CAAC;IAED,KAAK,CAAC,KAAK;QACT,IAAI,IAAI,CAAC,MAAM;YAAE,OAAO;QACxB,IAAI,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;YAChC,IAAI,CAAC;gBAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC;QACtD,CAAC;QACD,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC1C,MAAM,MAAM,GAAG,YAAY,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC;YACnE,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;YAC3B,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,EAAE;gBAClC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;gBACrB,OAAO,EAAE,CAAC;YACZ,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,IAAI;QACR,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,OAAO;QACzB,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,MAAO,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAC1E,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,IAAI,CAAC;YAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC;IACtD,CAAC;IAED,2CAA2C;IAC3C,SAAS,CAAC,OAAmC;QAC3C,IAAI,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC5B,OAAO,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAC5C,CAAC;IAEO,gBAAgB,CAAC,IAAY;QACnC,IAAI,GAAG,GAAG,EAAE,CAAC;QACb,IAAI,SAAS,GAAG,KAAK,CAAC;QAEtB,MAAM,YAAY,GAAG,CAAC,QAAsB,EAAE,EAAE;YAC9C,IAAI,SAAS;gBAAE,OAAO;YACtB,SAAS,GAAG,IAAI,CAAC;YACjB,IAAI,CAAC;gBACH,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;YAClD,CAAC;YAAC,MAAM,CAAC,CAAC,mBAAmB,CAAC,CAAC;YAC/B,IAAI,CAAC,GAAG,EAAE,CAAC;QACb,CAAC,CAAC;QAEF,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE;YACxB,GAAG,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YAC9B,MAAM,UAAU,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACrC,IAAI,UAAU,KAAK,CAAC,CAAC;gBAAE,OAAO;YAC9B,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;YACtC,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC;YAEhC,IAAI,MAA8C,CAAC;YACnD,IAAI,CAAC;gBACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC5B,CAAC;YAAC,MAAM,CAAC;gBACP,YAAY,CAAC,IAAI,CAAC,CAAC;gBACnB,OAAO;YACT,CAAC;YAED,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;YAC3B,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;YAC/B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;gBACjF,YAAY,CAAC,IAAI,CAAC,CAAC;gBACnB,OAAO;YACT,CAAC;YAED,MAAM,GAAG,GAAgB;gBACvB,KAAK,EAAE,KAAsB;gBAC7B,OAAO,EAAE,OAAkC;gBAC3C,OAAO,EAAE,YAAY;aACtB,CAAC;YAEF,mEAAmE;YACnE,oEAAoE;YACpE,yEAAyE;YACzE,sEAAsE;YACtE,kBAAkB;YAClB,IAAI,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;gBACxC,YAAY,CAAC,IAAI,CAAC,CAAC;YACrB,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;gBAC1B,UAAU,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,yBAAyB,CAAC,CAAC;YAClE,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC;IAC7C,CAAC;CACF;AAED,SAAS,iBAAiB;IACxB,OAAO,IAAI,CAAC,MAAM,EAAE,EAAE,kBAAkB,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;AACjF,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Tiny CLI invoked by claude as a hook command. Its job:
|
|
3
|
+
*
|
|
4
|
+
* 1. Read the hook payload (JSON) from stdin.
|
|
5
|
+
* 2. Forward `{event, payload}` to the daemon's Unix socket.
|
|
6
|
+
* 3. Read the `{decision}` line back.
|
|
7
|
+
* 4. If `decision` is non-null, print it on stdout for claude to consume.
|
|
8
|
+
*
|
|
9
|
+
* The event name is taken from `payload.hook_event_name` (claude tags every
|
|
10
|
+
* payload). The socket path is passed as argv[2] so settingsBuilder can
|
|
11
|
+
* generate a one-liner command without baking the path into source.
|
|
12
|
+
*
|
|
13
|
+
* Exit code is always 0 — claude treats a non-zero exit as a hook error and
|
|
14
|
+
* surfaces it in the TUI, which we don't want for transport failures
|
|
15
|
+
* (better to silently lose the structured event than break the user's turn).
|
|
16
|
+
*/
|
|
17
|
+
export {};
|
|
18
|
+
//# sourceMappingURL=hookHandler.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hookHandler.d.ts","sourceRoot":"","sources":["../../../src/ai/claudeTerminal/hookHandler.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;GAeG"}
|