@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.
Files changed (122) hide show
  1. package/dist/ai/cardBuilder.d.ts +65 -4
  2. package/dist/ai/cardBuilder.d.ts.map +1 -1
  3. package/dist/ai/cardBuilder.js +338 -28
  4. package/dist/ai/cardBuilder.js.map +1 -1
  5. package/dist/ai/claudeCliProvider.d.ts +15 -0
  6. package/dist/ai/claudeCliProvider.d.ts.map +1 -1
  7. package/dist/ai/claudeCliProvider.js +87 -3
  8. package/dist/ai/claudeCliProvider.js.map +1 -1
  9. package/dist/ai/claudeCodeProvider.d.ts +4 -0
  10. package/dist/ai/claudeCodeProvider.d.ts.map +1 -1
  11. package/dist/ai/claudeCodeProvider.js +41 -0
  12. package/dist/ai/claudeCodeProvider.js.map +1 -1
  13. package/dist/ai/claudeSdkProvider.d.ts +1 -0
  14. package/dist/ai/claudeSdkProvider.d.ts.map +1 -1
  15. package/dist/ai/claudeSdkProvider.js +14 -2
  16. package/dist/ai/claudeSdkProvider.js.map +1 -1
  17. package/dist/ai/claudeTerminal/cardSynth.d.ts +63 -0
  18. package/dist/ai/claudeTerminal/cardSynth.d.ts.map +1 -0
  19. package/dist/ai/claudeTerminal/cardSynth.js +92 -0
  20. package/dist/ai/claudeTerminal/cardSynth.js.map +1 -0
  21. package/dist/ai/claudeTerminal/hookBridge.d.ts +56 -0
  22. package/dist/ai/claudeTerminal/hookBridge.d.ts.map +1 -0
  23. package/dist/ai/claudeTerminal/hookBridge.js +131 -0
  24. package/dist/ai/claudeTerminal/hookBridge.js.map +1 -0
  25. package/dist/ai/claudeTerminal/hookHandler.d.ts +18 -0
  26. package/dist/ai/claudeTerminal/hookHandler.d.ts.map +1 -0
  27. package/dist/ai/claudeTerminal/hookHandler.js +124 -0
  28. package/dist/ai/claudeTerminal/hookHandler.js.map +1 -0
  29. package/dist/ai/claudeTerminal/index.d.ts +5 -0
  30. package/dist/ai/claudeTerminal/index.d.ts.map +1 -0
  31. package/dist/ai/claudeTerminal/index.js +7 -0
  32. package/dist/ai/claudeTerminal/index.js.map +1 -0
  33. package/dist/ai/claudeTerminal/jsonlTail.d.ts +40 -0
  34. package/dist/ai/claudeTerminal/jsonlTail.d.ts.map +1 -0
  35. package/dist/ai/claudeTerminal/jsonlTail.js +129 -0
  36. package/dist/ai/claudeTerminal/jsonlTail.js.map +1 -0
  37. package/dist/ai/claudeTerminal/provider.d.ts +106 -0
  38. package/dist/ai/claudeTerminal/provider.d.ts.map +1 -0
  39. package/dist/ai/claudeTerminal/provider.js +579 -0
  40. package/dist/ai/claudeTerminal/provider.js.map +1 -0
  41. package/dist/ai/claudeTerminal/settingsBuilder.d.ts +44 -0
  42. package/dist/ai/claudeTerminal/settingsBuilder.d.ts.map +1 -0
  43. package/dist/ai/claudeTerminal/settingsBuilder.js +40 -0
  44. package/dist/ai/claudeTerminal/settingsBuilder.js.map +1 -0
  45. package/dist/ai/codexAppServer/cardAdapter.d.ts.map +1 -1
  46. package/dist/ai/codexAppServer/cardAdapter.js +13 -5
  47. package/dist/ai/codexAppServer/cardAdapter.js.map +1 -1
  48. package/dist/ai/codexAppServer/provider.d.ts +10 -2
  49. package/dist/ai/codexAppServer/provider.d.ts.map +1 -1
  50. package/dist/ai/codexAppServer/provider.js +158 -22
  51. package/dist/ai/codexAppServer/provider.js.map +1 -1
  52. package/dist/ai/openCodeProvider.d.ts +106 -0
  53. package/dist/ai/openCodeProvider.d.ts.map +1 -0
  54. package/dist/ai/openCodeProvider.js +617 -0
  55. package/dist/ai/openCodeProvider.js.map +1 -0
  56. package/dist/ai/openCodeServer.d.ts +88 -0
  57. package/dist/ai/openCodeServer.d.ts.map +1 -0
  58. package/dist/ai/openCodeServer.js +350 -0
  59. package/dist/ai/openCodeServer.js.map +1 -0
  60. package/dist/ai/profiles/project-sandbox.sb +26 -0
  61. package/dist/ai/provider.d.ts +54 -1
  62. package/dist/ai/provider.d.ts.map +1 -1
  63. package/dist/ai/provider.js +10 -0
  64. package/dist/ai/provider.js.map +1 -1
  65. package/dist/ai/queuedUserPrompts.d.ts +8 -0
  66. package/dist/ai/queuedUserPrompts.d.ts.map +1 -0
  67. package/dist/ai/queuedUserPrompts.js +19 -0
  68. package/dist/ai/queuedUserPrompts.js.map +1 -0
  69. package/dist/ai/realtimeTranscription.d.ts +39 -0
  70. package/dist/ai/realtimeTranscription.d.ts.map +1 -0
  71. package/dist/ai/realtimeTranscription.js +154 -0
  72. package/dist/ai/realtimeTranscription.js.map +1 -0
  73. package/dist/ai/sandboxMcp.d.ts +7 -0
  74. package/dist/ai/sandboxMcp.d.ts.map +1 -1
  75. package/dist/ai/sandboxMcp.js +4 -0
  76. package/dist/ai/sandboxMcp.js.map +1 -1
  77. package/dist/ai/sandboxMcpStdio.d.ts +1 -1
  78. package/dist/ai/sandboxMcpStdio.js +120 -47
  79. package/dist/ai/sandboxMcpStdio.js.map +1 -1
  80. package/dist/ai/sessionManager.d.ts +20 -1
  81. package/dist/ai/sessionManager.d.ts.map +1 -1
  82. package/dist/ai/sessionManager.js +220 -10
  83. package/dist/ai/sessionManager.js.map +1 -1
  84. package/dist/ai/sessionRegistry.d.ts +6 -0
  85. package/dist/ai/sessionRegistry.d.ts.map +1 -1
  86. package/dist/ai/sessionRegistry.js +13 -0
  87. package/dist/ai/sessionRegistry.js.map +1 -1
  88. package/dist/ai/sessionRegistryLocator.d.ts +14 -0
  89. package/dist/ai/sessionRegistryLocator.d.ts.map +1 -0
  90. package/dist/ai/sessionRegistryLocator.js +44 -0
  91. package/dist/ai/sessionRegistryLocator.js.map +1 -0
  92. package/dist/ai/systemPrompt.d.ts.map +1 -1
  93. package/dist/ai/systemPrompt.js +2 -1
  94. package/dist/ai/systemPrompt.js.map +1 -1
  95. package/dist/ai/voiceStream.d.ts +74 -0
  96. package/dist/ai/voiceStream.d.ts.map +1 -0
  97. package/dist/ai/voiceStream.js +179 -0
  98. package/dist/ai/voiceStream.js.map +1 -0
  99. package/dist/ai/voiceTranscription.d.ts +33 -0
  100. package/dist/ai/voiceTranscription.d.ts.map +1 -0
  101. package/dist/ai/voiceTranscription.js +122 -0
  102. package/dist/ai/voiceTranscription.js.map +1 -0
  103. package/dist/files/fileBrowser.d.ts.map +1 -1
  104. package/dist/files/fileBrowser.js +15 -2
  105. package/dist/files/fileBrowser.js.map +1 -1
  106. package/dist/handlers/legacyBusAdapter.d.ts +1 -1
  107. package/dist/handlers/legacyBusAdapter.d.ts.map +1 -1
  108. package/dist/handlers/legacyBusAdapter.js +7 -1
  109. package/dist/handlers/legacyBusAdapter.js.map +1 -1
  110. package/dist/handlers/messageHandler.d.ts +6 -0
  111. package/dist/handlers/messageHandler.d.ts.map +1 -1
  112. package/dist/handlers/messageHandler.js +119 -8
  113. package/dist/handlers/messageHandler.js.map +1 -1
  114. package/dist/index.js +2 -2
  115. package/dist/index.js.map +1 -1
  116. package/dist/service/ipcClient.js +1 -1
  117. package/dist/service/ipcClient.js.map +1 -1
  118. package/dist/service/run.d.ts.map +1 -1
  119. package/dist/service/run.js +81 -3
  120. package/dist/service/run.js.map +1 -1
  121. package/dist/service/types.js +1 -1
  122. 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;IAE/C,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;CAG5D"}
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;IAE9B,WAAW,GAAG,IAAI,iBAAiB,EAAE,CAAC;IACtC,WAAW,GAAG,IAAI,iBAAiB,EAAE,CAAC;IAE/C,YAAY;QAClB,OAAO,sBAAsB,EAAE,KAAK,KAAK;YACvC,CAAC,CAAC,IAAI,CAAC,WAAW;YAClB,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,YAAY,CAChB,IAAsB,EACtB,WAA8B,EAC9B,SAA4B;QAE5B,OAAO,IAAI,CAAC,YAAY,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;IACxE,CAAC;IAED,KAAK,CAAC,aAAa,CACjB,IAAuB,EACvB,WAA8B,EAC9B,SAA4B;QAE5B,OAAO,IAAI,CAAC,YAAY,EAAE,CAAC,aAAa,CAAC,IAAI,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;IACzE,CAAC;CACF"}
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;IACtC,KAAK,GAAG,aAAa,CAAC;IAEd,WAAW,GAAG,IAAI,iBAAiB,EAAE,CAAC;IACtC,WAAW,GAAG,IAAI,iBAAiB,EAAE,CAAC;IAE/C,YAAY;QAClB,OAAO,sBAAsB,EAAE,KAAK,KAAK;YACvC,CAAC,CAAC,IAAI,CAAC,WAAW;YAClB,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,YAAY,CAChB,IAAsB,EACtB,WAA8B,EAC9B,SAA4B;QAE5B,OAAO,IAAI,CAAC,YAAY,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;IACxE,CAAC;IAED,KAAK,CAAC,aAAa,CACjB,IAAuB,EACvB,WAA8B,EAC9B,SAA4B;QAE5B,OAAO,IAAI,CAAC,YAAY,EAAE,CAAC,aAAa,CAAC,IAAI,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;IACzE,CAAC;IAED,KAAK,CAAC,aAAa;QACjB,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QACrC,MAAM,SAAS,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;QAElD,MAAM,YAAY,GAAG;YACnB,SAAS;YACT,MAAM;YACN,SAAS,EAAE,KAAK;YAChB,cAAc,EAAE,IAAI;YACpB,eAAe,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB;YAChD,iBAAiB,EAAE,IAAI;YACvB,mBAAmB,EAAE,IAAI;YACzB,wBAAwB,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC;SACnD,CAAC;QAEF,OAAO;YACL,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS;YAC/D,YAAY;SACb,CAAC;IACJ,CAAC;IAEO,cAAc;QACpB,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC,QAAQ,CAAC;YACnD,MAAM,MAAM,GAAG,QAAQ,CAAC,cAAc,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YACrF,OAAO,CAAC,CAAC,MAAM,CAAC;QAClB,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,WAAW,CAAC,SAAkB;QAC1C,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC,QAAQ,CAAC;YACnD,MAAM,MAAM,GAAG,SAAS;gBACtB,CAAC,CAAC,OAAO;gBACT,CAAC,CAAC,QAAQ,CAAC,kBAAkB,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YAC9E,OAAO,MAAM,IAAI,SAAS,CAAC;QAC7B,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;QACvC,CAAC;IACH,CAAC;CACF"}
@@ -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;IAEzC,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;IAqFpB,OAAO,CAAC,iBAAiB;YAWX,WAAW;YAiCX,aAAa;YAkFb,YAAY;CAmO3B"}
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 !== 'Agent') {
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"}