actoviq-agent-sdk 0.4.21 → 0.4.22

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 (278) hide show
  1. package/README-zh.md +50 -113
  2. package/README.md +51 -164
  3. package/assets/hadamard-icon.ico +0 -0
  4. package/assets/hadamard-icon.png +0 -0
  5. package/bin/hadamard-gui.js +31 -12
  6. package/dist/src/codeIntel/codeIntelligenceService.d.ts +16 -0
  7. package/dist/src/codeIntel/codeIntelligenceService.d.ts.map +1 -1
  8. package/dist/src/codeIntel/codeIntelligenceService.js +87 -2
  9. package/dist/src/codeIntel/codeIntelligenceService.js.map +1 -1
  10. package/dist/src/codeIntel/codeIntelligenceTools.d.ts.map +1 -1
  11. package/dist/src/codeIntel/codeIntelligenceTools.js +6 -0
  12. package/dist/src/codeIntel/codeIntelligenceTools.js.map +1 -1
  13. package/dist/src/codeIntel/index.d.ts +1 -0
  14. package/dist/src/codeIntel/index.d.ts.map +1 -1
  15. package/dist/src/codeIntel/index.js +1 -0
  16. package/dist/src/codeIntel/index.js.map +1 -1
  17. package/dist/src/codeIntel/languageServerPresets.d.ts +13 -0
  18. package/dist/src/codeIntel/languageServerPresets.d.ts.map +1 -0
  19. package/dist/src/codeIntel/languageServerPresets.js +51 -0
  20. package/dist/src/codeIntel/languageServerPresets.js.map +1 -0
  21. package/dist/src/codeIntel/languageServerRegistry.d.ts +1 -0
  22. package/dist/src/codeIntel/languageServerRegistry.d.ts.map +1 -1
  23. package/dist/src/codeIntel/languageServerRegistry.js +2 -2
  24. package/dist/src/codeIntel/languageServerRegistry.js.map +1 -1
  25. package/dist/src/config/resolveRuntimeConfig.d.ts.map +1 -1
  26. package/dist/src/config/resolveRuntimeConfig.js +5 -0
  27. package/dist/src/config/resolveRuntimeConfig.js.map +1 -1
  28. package/dist/src/extensions/builtInExtensions.d.ts +61 -0
  29. package/dist/src/extensions/builtInExtensions.d.ts.map +1 -0
  30. package/dist/src/extensions/builtInExtensions.js +218 -0
  31. package/dist/src/extensions/builtInExtensions.js.map +1 -0
  32. package/dist/src/extensions/filterOutputPolicy.d.ts +21 -0
  33. package/dist/src/extensions/filterOutputPolicy.d.ts.map +1 -0
  34. package/dist/src/extensions/filterOutputPolicy.js +121 -0
  35. package/dist/src/extensions/filterOutputPolicy.js.map +1 -0
  36. package/dist/src/extensions/securityPolicy.d.ts +27 -0
  37. package/dist/src/extensions/securityPolicy.d.ts.map +1 -0
  38. package/dist/src/extensions/securityPolicy.js +238 -0
  39. package/dist/src/extensions/securityPolicy.js.map +1 -0
  40. package/dist/src/extensions/sessionCostTracker.d.ts +63 -0
  41. package/dist/src/extensions/sessionCostTracker.d.ts.map +1 -0
  42. package/dist/src/extensions/sessionCostTracker.js +213 -0
  43. package/dist/src/extensions/sessionCostTracker.js.map +1 -0
  44. package/dist/src/extensions/taskNotifications.d.ts +31 -0
  45. package/dist/src/extensions/taskNotifications.d.ts.map +1 -0
  46. package/dist/src/extensions/taskNotifications.js +50 -0
  47. package/dist/src/extensions/taskNotifications.js.map +1 -0
  48. package/dist/src/extensions/usageBar.d.ts +35 -0
  49. package/dist/src/extensions/usageBar.d.ts.map +1 -0
  50. package/dist/src/extensions/usageBar.js +67 -0
  51. package/dist/src/extensions/usageBar.js.map +1 -0
  52. package/dist/src/gui/contextRailStore.d.ts +13 -0
  53. package/dist/src/gui/contextRailStore.d.ts.map +1 -1
  54. package/dist/src/gui/contextRailStore.js +16 -0
  55. package/dist/src/gui/contextRailStore.js.map +1 -1
  56. package/dist/src/gui/electronMain.js +45 -5
  57. package/dist/src/gui/electronMain.js.map +1 -1
  58. package/dist/src/gui/guiDesignClientScript.d.ts.map +1 -1
  59. package/dist/src/gui/guiDesignClientScript.js +31 -0
  60. package/dist/src/gui/guiDesignClientScript.js.map +1 -1
  61. package/dist/src/gui/guiUsageRoutingAssets.d.ts +7 -0
  62. package/dist/src/gui/guiUsageRoutingAssets.d.ts.map +1 -0
  63. package/dist/src/gui/guiUsageRoutingAssets.js +509 -0
  64. package/dist/src/gui/guiUsageRoutingAssets.js.map +1 -0
  65. package/dist/src/gui/guiUsageRoutingHttpController.d.ts +11 -0
  66. package/dist/src/gui/guiUsageRoutingHttpController.d.ts.map +1 -0
  67. package/dist/src/gui/guiUsageRoutingHttpController.js +125 -0
  68. package/dist/src/gui/guiUsageRoutingHttpController.js.map +1 -0
  69. package/dist/src/gui/guiUsageRoutingRuntime.d.ts +36 -0
  70. package/dist/src/gui/guiUsageRoutingRuntime.d.ts.map +1 -0
  71. package/dist/src/gui/guiUsageRoutingRuntime.js +98 -0
  72. package/dist/src/gui/guiUsageRoutingRuntime.js.map +1 -0
  73. package/dist/src/gui/hadamardGui.d.ts +5 -0
  74. package/dist/src/gui/hadamardGui.d.ts.map +1 -1
  75. package/dist/src/gui/hadamardGui.js +159 -16
  76. package/dist/src/gui/hadamardGui.js.map +1 -1
  77. package/dist/src/gui/hadamardGuiAssets.d.ts.map +1 -1
  78. package/dist/src/gui/hadamardGuiAssets.js +297 -41
  79. package/dist/src/gui/hadamardGuiAssets.js.map +1 -1
  80. package/dist/src/index.d.ts +32 -2
  81. package/dist/src/index.d.ts.map +1 -1
  82. package/dist/src/index.js +16 -1
  83. package/dist/src/index.js.map +1 -1
  84. package/dist/src/keyway/electronSecretStore.d.ts +37 -0
  85. package/dist/src/keyway/electronSecretStore.d.ts.map +1 -0
  86. package/dist/src/keyway/electronSecretStore.js +105 -0
  87. package/dist/src/keyway/electronSecretStore.js.map +1 -0
  88. package/dist/src/keyway/embeddedKeyway.d.ts +34 -0
  89. package/dist/src/keyway/embeddedKeyway.d.ts.map +1 -0
  90. package/dist/src/keyway/embeddedKeyway.js +81 -0
  91. package/dist/src/keyway/embeddedKeyway.js.map +1 -0
  92. package/dist/src/keyway/keywayLoopbackGateway.d.ts +30 -0
  93. package/dist/src/keyway/keywayLoopbackGateway.d.ts.map +1 -0
  94. package/dist/src/keyway/keywayLoopbackGateway.js +71 -0
  95. package/dist/src/keyway/keywayLoopbackGateway.js.map +1 -0
  96. package/dist/src/keyway/keywayMigrationService.d.ts +44 -0
  97. package/dist/src/keyway/keywayMigrationService.d.ts.map +1 -0
  98. package/dist/src/keyway/keywayMigrationService.js +219 -0
  99. package/dist/src/keyway/keywayMigrationService.js.map +1 -0
  100. package/dist/src/keyway/keywayModelApi.d.ts +24 -0
  101. package/dist/src/keyway/keywayModelApi.d.ts.map +1 -0
  102. package/dist/src/keyway/keywayModelApi.js +106 -0
  103. package/dist/src/keyway/keywayModelApi.js.map +1 -0
  104. package/dist/src/keyway/keywayPorts.d.ts +189 -0
  105. package/dist/src/keyway/keywayPorts.d.ts.map +1 -0
  106. package/dist/src/keyway/keywayPorts.js +2 -0
  107. package/dist/src/keyway/keywayPorts.js.map +1 -0
  108. package/dist/src/keyway/keywayProviderExecutor.d.ts +30 -0
  109. package/dist/src/keyway/keywayProviderExecutor.d.ts.map +1 -0
  110. package/dist/src/keyway/keywayProviderExecutor.js +257 -0
  111. package/dist/src/keyway/keywayProviderExecutor.js.map +1 -0
  112. package/dist/src/keyway/routingComposition.d.ts +18 -0
  113. package/dist/src/keyway/routingComposition.d.ts.map +1 -0
  114. package/dist/src/keyway/routingComposition.js +19 -0
  115. package/dist/src/keyway/routingComposition.js.map +1 -0
  116. package/dist/src/keyway/usageRoutingAdminService.d.ts +86 -0
  117. package/dist/src/keyway/usageRoutingAdminService.d.ts.map +1 -0
  118. package/dist/src/keyway/usageRoutingAdminService.js +384 -0
  119. package/dist/src/keyway/usageRoutingAdminService.js.map +1 -0
  120. package/dist/src/nativeCli/crushManagedClient.d.ts +84 -0
  121. package/dist/src/nativeCli/crushManagedClient.d.ts.map +1 -0
  122. package/dist/src/nativeCli/crushManagedClient.js +978 -0
  123. package/dist/src/nativeCli/crushManagedClient.js.map +1 -0
  124. package/dist/src/nativeCli/crushNativeCliClient.d.ts +19 -0
  125. package/dist/src/nativeCli/crushNativeCliClient.d.ts.map +1 -0
  126. package/dist/src/nativeCli/crushNativeCliClient.js +243 -0
  127. package/dist/src/nativeCli/crushNativeCliClient.js.map +1 -0
  128. package/dist/src/nativeCli/keywayNativeCliAdapter.d.ts +31 -0
  129. package/dist/src/nativeCli/keywayNativeCliAdapter.d.ts.map +1 -0
  130. package/dist/src/nativeCli/keywayNativeCliAdapter.js +35 -0
  131. package/dist/src/nativeCli/keywayNativeCliAdapter.js.map +1 -0
  132. package/dist/src/nativeCli/nativeCliAuth.d.ts +24 -0
  133. package/dist/src/nativeCli/nativeCliAuth.d.ts.map +1 -0
  134. package/dist/src/nativeCli/nativeCliAuth.js +327 -0
  135. package/dist/src/nativeCli/nativeCliAuth.js.map +1 -0
  136. package/dist/src/nativeCli/nativeCliClient.d.ts +16 -0
  137. package/dist/src/nativeCli/nativeCliClient.d.ts.map +1 -0
  138. package/dist/src/nativeCli/nativeCliClient.js +575 -0
  139. package/dist/src/nativeCli/nativeCliClient.js.map +1 -0
  140. package/dist/src/nativeCli/nativeCliCodewhaleProtocol.d.ts +18 -0
  141. package/dist/src/nativeCli/nativeCliCodewhaleProtocol.d.ts.map +1 -0
  142. package/dist/src/nativeCli/nativeCliCodewhaleProtocol.js +376 -0
  143. package/dist/src/nativeCli/nativeCliCodewhaleProtocol.js.map +1 -0
  144. package/dist/src/nativeCli/nativeCliContracts.d.ts +22 -0
  145. package/dist/src/nativeCli/nativeCliContracts.d.ts.map +1 -0
  146. package/dist/src/nativeCli/nativeCliContracts.js +2 -0
  147. package/dist/src/nativeCli/nativeCliContracts.js.map +1 -0
  148. package/dist/src/nativeCli/nativeCliCursorProtocol.d.ts +7 -0
  149. package/dist/src/nativeCli/nativeCliCursorProtocol.d.ts.map +1 -0
  150. package/dist/src/nativeCli/nativeCliCursorProtocol.js +210 -0
  151. package/dist/src/nativeCli/nativeCliCursorProtocol.js.map +1 -0
  152. package/dist/src/nativeCli/nativeCliEnvironment.d.ts +3 -0
  153. package/dist/src/nativeCli/nativeCliEnvironment.d.ts.map +1 -0
  154. package/dist/src/nativeCli/nativeCliEnvironment.js +17 -0
  155. package/dist/src/nativeCli/nativeCliEnvironment.js.map +1 -0
  156. package/dist/src/nativeCli/nativeCliExecResolver.d.ts +26 -0
  157. package/dist/src/nativeCli/nativeCliExecResolver.d.ts.map +1 -0
  158. package/dist/src/nativeCli/nativeCliExecResolver.js +152 -0
  159. package/dist/src/nativeCli/nativeCliExecResolver.js.map +1 -0
  160. package/dist/src/nativeCli/nativeCliPiProtocol.d.ts +15 -0
  161. package/dist/src/nativeCli/nativeCliPiProtocol.d.ts.map +1 -0
  162. package/dist/src/nativeCli/nativeCliPiProtocol.js +329 -0
  163. package/dist/src/nativeCli/nativeCliPiProtocol.js.map +1 -0
  164. package/dist/src/nativeCli/nativeCliProcessTree.d.ts +3 -0
  165. package/dist/src/nativeCli/nativeCliProcessTree.d.ts.map +1 -0
  166. package/dist/src/nativeCli/nativeCliProcessTree.js +104 -0
  167. package/dist/src/nativeCli/nativeCliProcessTree.js.map +1 -0
  168. package/dist/src/nativeCli/reasonixAcpSession.d.ts +35 -0
  169. package/dist/src/nativeCli/reasonixAcpSession.d.ts.map +1 -0
  170. package/dist/src/nativeCli/reasonixAcpSession.js +472 -0
  171. package/dist/src/nativeCli/reasonixAcpSession.js.map +1 -0
  172. package/dist/src/nativeCli/reasonixManagedClient.d.ts +56 -0
  173. package/dist/src/nativeCli/reasonixManagedClient.d.ts.map +1 -0
  174. package/dist/src/nativeCli/reasonixManagedClient.js +293 -0
  175. package/dist/src/nativeCli/reasonixManagedClient.js.map +1 -0
  176. package/dist/src/nativeCli/reasonixNativeCliClient.d.ts +20 -0
  177. package/dist/src/nativeCli/reasonixNativeCliClient.d.ts.map +1 -0
  178. package/dist/src/nativeCli/reasonixNativeCliClient.js +317 -0
  179. package/dist/src/nativeCli/reasonixNativeCliClient.js.map +1 -0
  180. package/dist/src/parity/bridgeExecResolver.d.ts +2 -25
  181. package/dist/src/parity/bridgeExecResolver.d.ts.map +1 -1
  182. package/dist/src/parity/bridgeExecResolver.js +2 -151
  183. package/dist/src/parity/bridgeExecResolver.js.map +1 -1
  184. package/dist/src/parity/bridgeProcessTree.d.ts +2 -2
  185. package/dist/src/parity/bridgeProcessTree.d.ts.map +1 -1
  186. package/dist/src/parity/bridgeProcessTree.js +2 -82
  187. package/dist/src/parity/bridgeProcessTree.js.map +1 -1
  188. package/dist/src/parity/crushManagedClient.d.ts +2 -83
  189. package/dist/src/parity/crushManagedClient.d.ts.map +1 -1
  190. package/dist/src/parity/crushManagedClient.js +2 -977
  191. package/dist/src/parity/crushManagedClient.js.map +1 -1
  192. package/dist/src/parity/externalCliAuth.d.ts +2 -22
  193. package/dist/src/parity/externalCliAuth.d.ts.map +1 -1
  194. package/dist/src/parity/externalCliAuth.js +2 -295
  195. package/dist/src/parity/externalCliAuth.js.map +1 -1
  196. package/dist/src/parity/hadamardBridgeSdk.d.ts.map +1 -1
  197. package/dist/src/parity/hadamardBridgeSdk.js +14 -1
  198. package/dist/src/parity/hadamardBridgeSdk.js.map +1 -1
  199. package/dist/src/parity/nativeCliBridgeAdapter.d.ts +6 -0
  200. package/dist/src/parity/nativeCliBridgeAdapter.d.ts.map +1 -0
  201. package/dist/src/parity/nativeCliBridgeAdapter.js +38 -0
  202. package/dist/src/parity/nativeCliBridgeAdapter.js.map +1 -0
  203. package/dist/src/parity/reasonixAcpSession.d.ts +2 -34
  204. package/dist/src/parity/reasonixAcpSession.d.ts.map +1 -1
  205. package/dist/src/parity/reasonixAcpSession.js +2 -471
  206. package/dist/src/parity/reasonixAcpSession.js.map +1 -1
  207. package/dist/src/parity/reasonixManagedClient.d.ts +2 -55
  208. package/dist/src/parity/reasonixManagedClient.d.ts.map +1 -1
  209. package/dist/src/parity/reasonixManagedClient.js +2 -292
  210. package/dist/src/parity/reasonixManagedClient.js.map +1 -1
  211. package/dist/src/provider/openai-client.js +2 -2
  212. package/dist/src/provider/openai-client.js.map +1 -1
  213. package/dist/src/provider/openai-model-api.d.ts.map +1 -1
  214. package/dist/src/provider/openai-model-api.js +5 -1
  215. package/dist/src/provider/openai-model-api.js.map +1 -1
  216. package/dist/src/runtime/agentClient.d.ts +14 -1
  217. package/dist/src/runtime/agentClient.d.ts.map +1 -1
  218. package/dist/src/runtime/agentClient.js +60 -6
  219. package/dist/src/runtime/agentClient.js.map +1 -1
  220. package/dist/src/runtime/toolPolicyPipeline.d.ts +32 -1
  221. package/dist/src/runtime/toolPolicyPipeline.d.ts.map +1 -1
  222. package/dist/src/runtime/toolPolicyPipeline.js +43 -3
  223. package/dist/src/runtime/toolPolicyPipeline.js.map +1 -1
  224. package/dist/src/tui/hadamardTuiController.d.ts.map +1 -1
  225. package/dist/src/tui/hadamardTuiController.js +62 -8
  226. package/dist/src/tui/hadamardTuiController.js.map +1 -1
  227. package/dist/src/tui/tuiBasicCommandHandler.d.ts +4 -0
  228. package/dist/src/tui/tuiBasicCommandHandler.d.ts.map +1 -1
  229. package/dist/src/tui/tuiBasicCommandHandler.js +23 -2
  230. package/dist/src/tui/tuiBasicCommandHandler.js.map +1 -1
  231. package/dist/src/tui/tuiCatalogCommandHandler.d.ts +2 -0
  232. package/dist/src/tui/tuiCatalogCommandHandler.d.ts.map +1 -1
  233. package/dist/src/tui/tuiCatalogCommandHandler.js +10 -1
  234. package/dist/src/tui/tuiCatalogCommandHandler.js.map +1 -1
  235. package/dist/src/tui/tuiUsageRoutingRuntime.d.ts +22 -0
  236. package/dist/src/tui/tuiUsageRoutingRuntime.d.ts.map +1 -0
  237. package/dist/src/tui/tuiUsageRoutingRuntime.js +81 -0
  238. package/dist/src/tui/tuiUsageRoutingRuntime.js.map +1 -0
  239. package/dist/src/types.d.ts +16 -0
  240. package/dist/src/types.d.ts.map +1 -1
  241. package/dist/src/types.js.map +1 -1
  242. package/dist/src/ui/commandSurface.d.ts.map +1 -1
  243. package/dist/src/ui/commandSurface.js +45 -1
  244. package/dist/src/ui/commandSurface.js.map +1 -1
  245. package/dist/src/ui/extensionsCommandView.d.ts +18 -0
  246. package/dist/src/ui/extensionsCommandView.d.ts.map +1 -0
  247. package/dist/src/ui/extensionsCommandView.js +82 -0
  248. package/dist/src/ui/extensionsCommandView.js.map +1 -0
  249. package/dist/src/ui/lspCommandView.d.ts +17 -0
  250. package/dist/src/ui/lspCommandView.d.ts.map +1 -0
  251. package/dist/src/ui/lspCommandView.js +25 -0
  252. package/dist/src/ui/lspCommandView.js.map +1 -0
  253. package/dist/src/ui/usageRoutingCommand.d.ts +13 -0
  254. package/dist/src/ui/usageRoutingCommand.d.ts.map +1 -0
  255. package/dist/src/ui/usageRoutingCommand.js +224 -0
  256. package/dist/src/ui/usageRoutingCommand.js.map +1 -0
  257. package/dist/src/usage/budgetService.d.ts +28 -0
  258. package/dist/src/usage/budgetService.d.ts.map +1 -0
  259. package/dist/src/usage/budgetService.js +50 -0
  260. package/dist/src/usage/budgetService.js.map +1 -0
  261. package/dist/src/usage/contracts.d.ts +149 -0
  262. package/dist/src/usage/contracts.d.ts.map +1 -0
  263. package/dist/src/usage/contracts.js +2 -0
  264. package/dist/src/usage/contracts.js.map +1 -0
  265. package/dist/src/usage/index.d.ts +7 -0
  266. package/dist/src/usage/index.d.ts.map +1 -0
  267. package/dist/src/usage/index.js +4 -0
  268. package/dist/src/usage/index.js.map +1 -0
  269. package/dist/src/usage/usageLedger.d.ts +19 -0
  270. package/dist/src/usage/usageLedger.d.ts.map +1 -0
  271. package/dist/src/usage/usageLedger.js +389 -0
  272. package/dist/src/usage/usageLedger.js.map +1 -0
  273. package/dist/src/usage/usageQueryService.d.ts +12 -0
  274. package/dist/src/usage/usageQueryService.d.ts.map +1 -0
  275. package/dist/src/usage/usageQueryService.js +29 -0
  276. package/dist/src/usage/usageQueryService.js.map +1 -0
  277. package/package.json +14 -2
  278. package/scripts/prepare-gui-launcher.mjs +62 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nativeCliCursorProtocol.js","sourceRoot":"","sources":["../../../src/nativeCli/nativeCliCursorProtocol.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export declare function nativeChildEnvironment(overrides: Record<string, string> | undefined): Record<string, string>;
2
+ export declare function nativeSensitiveValues(environment: Record<string, string>): string[];
3
+ //# sourceMappingURL=nativeCliEnvironment.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nativeCliEnvironment.d.ts","sourceRoot":"","sources":["../../../src/nativeCli/nativeCliEnvironment.ts"],"names":[],"mappings":"AAOA,wBAAgB,sBAAsB,CACpC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,GAC5C,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAQxB;AAED,wBAAgB,qBAAqB,CAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,EAAE,CAInF"}
@@ -0,0 +1,17 @@
1
+ const HADAMARD_AUTH_ENV_KEYS = new Set([
2
+ 'HADAMARD_API_KEY',
3
+ 'HADAMARD_AUTH_TOKEN',
4
+ 'HADAMARD_BASE_URL',
5
+ ]);
6
+ const SENSITIVE_ENV_KEY = /(?:^|_)(?:API_?KEY|AUTH|COOKIE|CREDENTIALS?|KEY|PASS(?:WORD|WD)?|PRIVATE_KEY|SECRET|TOKEN)(?:$|_)/iu;
7
+ export function nativeChildEnvironment(overrides) {
8
+ const base = Object.fromEntries(Object.entries(process.env).filter((entry) => typeof entry[1] === 'string'));
9
+ return Object.fromEntries(Object.entries({ ...base, ...overrides })
10
+ .filter(([key]) => !HADAMARD_AUTH_ENV_KEYS.has(key)));
11
+ }
12
+ export function nativeSensitiveValues(environment) {
13
+ return Object.entries(environment)
14
+ .filter(([key, value]) => value.length > 0 && SENSITIVE_ENV_KEY.test(key))
15
+ .map(([, value]) => value);
16
+ }
17
+ //# sourceMappingURL=nativeCliEnvironment.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nativeCliEnvironment.js","sourceRoot":"","sources":["../../../src/nativeCli/nativeCliEnvironment.ts"],"names":[],"mappings":"AAAA,MAAM,sBAAsB,GAAG,IAAI,GAAG,CAAC;IACrC,kBAAkB;IAClB,qBAAqB;IACrB,mBAAmB;CACpB,CAAC,CAAC;AACH,MAAM,iBAAiB,GAAG,qGAAqG,CAAC;AAEhI,MAAM,UAAU,sBAAsB,CACpC,SAA6C;IAE7C,MAAM,IAAI,GAAG,MAAM,CAAC,WAAW,CAC7B,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,CAChC,CAAC,KAAK,EAA6B,EAAE,CAAC,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,QAAQ,CACnE,CACF,CAAC;IACF,OAAO,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,GAAG,IAAI,EAAE,GAAG,SAAS,EAAE,CAAC;SAChE,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,sBAAsB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AAC1D,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,WAAmC;IACvE,OAAO,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC;SAC/B,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;SACzE,GAAG,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC;AAC/B,CAAC"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * Executable resolution primitives shared by native CLI consumers and bridge
3
+ * compatibility adapters. Kept in a leaf module so providers can resolve a
4
+ * binary on PATH without importing the full `hadamardBridgeSdk.ts` (which would
5
+ * create a circular import).
6
+ */
7
+ declare const IS_WINDOWS: boolean;
8
+ export declare function pathExists(filePath: string): Promise<boolean>;
9
+ export declare function isExecutable(filePath: string): Promise<boolean>;
10
+ export declare function splitPathEnv(pathValue: string | undefined): string[];
11
+ export declare function findExecutableOnPath(name: string): Promise<string | undefined>;
12
+ export declare function findFirstExistingPath(candidates: string[]): Promise<string | undefined>;
13
+ export interface ResolvedExecutableInvocation {
14
+ file: string;
15
+ args: string[];
16
+ }
17
+ /**
18
+ * Resolve an npm-generated Windows .cmd/.bat shim to its real executable.
19
+ * User-controlled prompts must never be concatenated into a cmd.exe command
20
+ * line: cmd expands `%VAR%` even inside quotes and its quote rules cannot make
21
+ * arbitrary argv safe. Standard npm shims point at either a package .exe or a
22
+ * JavaScript entry point; both can be launched directly with shell:false.
23
+ */
24
+ export declare function resolveExecutableInvocation(executable: string, args: string[]): Promise<ResolvedExecutableInvocation>;
25
+ export { IS_WINDOWS };
26
+ //# sourceMappingURL=nativeCliExecResolver.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nativeCliExecResolver.d.ts","sourceRoot":"","sources":["../../../src/nativeCli/nativeCliExecResolver.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,QAAA,MAAM,UAAU,SAA+B,CAAC;AAEhD,wBAAsB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAOnE;AAED,wBAAsB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAOrE;AAED,wBAAgB,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,EAAE,CAKpE;AAED,wBAAsB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAyBpF;AAED,wBAAsB,qBAAqB,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAU7F;AAED,MAAM,WAAW,4BAA4B;IAC3C,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,EAAE,CAAC;CAChB;AAED;;;;;;GAMG;AACH,wBAAsB,2BAA2B,CAC/C,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,MAAM,EAAE,GACb,OAAO,CAAC,4BAA4B,CAAC,CAkDvC;AAyCD,OAAO,EAAE,UAAU,EAAE,CAAC"}
@@ -0,0 +1,152 @@
1
+ /**
2
+ * Executable resolution primitives shared by native CLI consumers and bridge
3
+ * compatibility adapters. Kept in a leaf module so providers can resolve a
4
+ * binary on PATH without importing the full `hadamardBridgeSdk.ts` (which would
5
+ * create a circular import).
6
+ */
7
+ import { constants as fsConstants } from 'node:fs';
8
+ import { access, readFile, readdir } from 'node:fs/promises';
9
+ import path from 'node:path';
10
+ const IS_WINDOWS = process.platform === 'win32';
11
+ export async function pathExists(filePath) {
12
+ try {
13
+ await access(filePath, fsConstants.F_OK);
14
+ return true;
15
+ }
16
+ catch {
17
+ return false;
18
+ }
19
+ }
20
+ export async function isExecutable(filePath) {
21
+ try {
22
+ await access(filePath, IS_WINDOWS ? fsConstants.F_OK : fsConstants.X_OK);
23
+ return true;
24
+ }
25
+ catch {
26
+ return false;
27
+ }
28
+ }
29
+ export function splitPathEnv(pathValue) {
30
+ if (!pathValue) {
31
+ return [];
32
+ }
33
+ return pathValue.split(path.delimiter).filter(Boolean);
34
+ }
35
+ export async function findExecutableOnPath(name) {
36
+ const pathDirectories = splitPathEnv(process.env.PATH);
37
+ const extensions = IS_WINDOWS
38
+ ? (process.env.PATHEXT ?? '.COM;.EXE;.BAT;.CMD')
39
+ .split(';')
40
+ .filter(Boolean)
41
+ : [''];
42
+ for (const directory of pathDirectories) {
43
+ const directCandidate = path.join(directory, name);
44
+ if (!IS_WINDOWS && (await isExecutable(directCandidate))) {
45
+ return directCandidate;
46
+ }
47
+ for (const extension of extensions) {
48
+ const candidate = directCandidate.endsWith(extension.toLowerCase())
49
+ ? directCandidate
50
+ : `${directCandidate}${extension.toLowerCase()}`;
51
+ if (await isExecutable(candidate)) {
52
+ return candidate;
53
+ }
54
+ }
55
+ }
56
+ return undefined;
57
+ }
58
+ export async function findFirstExistingPath(candidates) {
59
+ for (const candidate of candidates) {
60
+ if (!candidate) {
61
+ continue;
62
+ }
63
+ if (await pathExists(candidate)) {
64
+ return candidate;
65
+ }
66
+ }
67
+ return undefined;
68
+ }
69
+ /**
70
+ * Resolve an npm-generated Windows .cmd/.bat shim to its real executable.
71
+ * User-controlled prompts must never be concatenated into a cmd.exe command
72
+ * line: cmd expands `%VAR%` even inside quotes and its quote rules cannot make
73
+ * arbitrary argv safe. Standard npm shims point at either a package .exe or a
74
+ * JavaScript entry point; both can be launched directly with shell:false.
75
+ */
76
+ export async function resolveExecutableInvocation(executable, args) {
77
+ if (!IS_WINDOWS || !/\.(?:cmd|bat)$/i.test(executable)) {
78
+ return { file: executable, args };
79
+ }
80
+ let source;
81
+ try {
82
+ source = await readFile(executable, 'utf8');
83
+ }
84
+ catch (error) {
85
+ throw new Error(`Unable to read Windows CLI shim: ${executable}`, { cause: error });
86
+ }
87
+ const candidates = [...source.matchAll(/%~?dp0%?[\\/]([^"\r\n]+?\.(?:exe|com|cjs|mjs|js))(?=["\s])/giu)];
88
+ const match = candidates.at(-1);
89
+ if (!match?.[1]) {
90
+ // Not an npm-style shim. The Cursor CLI ships a PowerShell shim that
91
+ // dispatches to versions/<version>/node.exe versions/<version>/index.js
92
+ // next to the wrapper; resolve that bundle directly.
93
+ const bundled = await resolveVersionedNodeBundle(path.dirname(executable), args);
94
+ if (bundled) {
95
+ return bundled;
96
+ }
97
+ throw new Error(`Unsupported Windows CLI wrapper: ${executable}. Configure the underlying .exe or JavaScript entry point instead.`);
98
+ }
99
+ const target = path.resolve(path.dirname(executable), match[1].replace(/[\\/]+/gu, path.sep));
100
+ if (!(await pathExists(target))) {
101
+ throw new Error(`Windows CLI shim target was not found: ${target}`);
102
+ }
103
+ if (/\.(?:cjs|mjs|js)$/i.test(target)) {
104
+ // `process.execPath` is electron.exe inside the desktop app. Launching a
105
+ // JavaScript npm shim with it would start another Electron application,
106
+ // not the CLI runtime. An npm-installed CLI necessarily has a Node host
107
+ // available on PATH, so resolve that host explicitly in Electron.
108
+ const nodeExecutable = process.versions.electron
109
+ ? await findExecutableOnPath('node')
110
+ : process.execPath;
111
+ if (!nodeExecutable) {
112
+ throw new Error(`Node.js was not found on PATH for Windows CLI shim target: ${target}`);
113
+ }
114
+ return { file: nodeExecutable, args: [target, ...args] };
115
+ }
116
+ return { file: target, args };
117
+ }
118
+ const VERSIONED_BUNDLE_DIR = /^(\d{4})\.(\d{1,2})\.(\d{1,2})(?:-\d{2}-\d{2}-\d{2})?-[a-f0-9]+$/iu;
119
+ /**
120
+ * Resolve a Cursor-style versioned Node bundle next to a Windows shim:
121
+ * versions/<YYYY.MM.DD[-HH-MM-SS]-commit>/node.exe plus index.js. Mirrors the
122
+ * version selection of the vendor PowerShell shim (latest date wins).
123
+ */
124
+ async function resolveVersionedNodeBundle(shimDir, args) {
125
+ let entries;
126
+ try {
127
+ entries = await readdir(path.join(shimDir, 'versions'), { withFileTypes: true });
128
+ }
129
+ catch {
130
+ return undefined;
131
+ }
132
+ const versions = entries
133
+ .filter(entry => entry.isDirectory())
134
+ .map(entry => ({ name: entry.name, match: VERSIONED_BUNDLE_DIR.exec(entry.name) }))
135
+ .filter((candidate) => candidate.match !== null)
136
+ .map(candidate => ({
137
+ name: candidate.name,
138
+ key: Number(candidate.match[1]) * 10000 + Number(candidate.match[2]) * 100 + Number(candidate.match[3]),
139
+ }))
140
+ .sort((a, b) => b.key - a.key || b.name.localeCompare(a.name));
141
+ for (const version of versions) {
142
+ const bundleDir = path.join(shimDir, 'versions', version.name);
143
+ const nodeExecutable = path.join(bundleDir, 'node.exe');
144
+ const entryPoint = path.join(bundleDir, 'index.js');
145
+ if (await pathExists(nodeExecutable) && await pathExists(entryPoint)) {
146
+ return { file: nodeExecutable, args: [entryPoint, ...args] };
147
+ }
148
+ }
149
+ return undefined;
150
+ }
151
+ export { IS_WINDOWS };
152
+ //# sourceMappingURL=nativeCliExecResolver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nativeCliExecResolver.js","sourceRoot":"","sources":["../../../src/nativeCli/nativeCliExecResolver.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import type { HadamardBridgeJsonEvent, HadamardBridgeRunOptions } from '../types.js';
2
+ export interface PiProcessControl {
3
+ write(record: Record<string, unknown>): void;
4
+ endInput(): void;
5
+ }
6
+ export interface PiCliNormalizer {
7
+ readonly interactive: true;
8
+ readonly abortGraceMs: number;
9
+ start(control: PiProcessControl): void;
10
+ abort(control: PiProcessControl): void;
11
+ translate(raw: Record<string, unknown>, control?: PiProcessControl): HadamardBridgeJsonEvent[];
12
+ }
13
+ export declare function buildPiArgs(_prompt: string, options: HadamardBridgeRunOptions): string[];
14
+ export declare function createPiNormalizer(prompt: string, options: HadamardBridgeRunOptions): PiCliNormalizer;
15
+ //# sourceMappingURL=nativeCliPiProtocol.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nativeCliPiProtocol.d.ts","sourceRoot":"","sources":["../../../src/nativeCli/nativeCliPiProtocol.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,uBAAuB,EACvB,wBAAwB,EACzB,MAAM,aAAa,CAAC;AAErB,MAAM,WAAW,gBAAgB;IAC/B,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAC7C,QAAQ,IAAI,IAAI,CAAC;CAClB;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,WAAW,EAAE,IAAI,CAAC;IAC3B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,KAAK,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACvC,KAAK,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACvC,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,EAAE,gBAAgB,GAAG,uBAAuB,EAAE,CAAC;CAChG;AAED,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,wBAAwB,GAAG,MAAM,EAAE,CAoBxF;AAED,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,wBAAwB,GAChC,eAAe,CAEjB"}
@@ -0,0 +1,329 @@
1
+ import { HadamardBridgeProcessError } from '../errors.js';
2
+ import { isRecord } from '../runtime/helpers.js';
3
+ export function buildPiArgs(_prompt, options) {
4
+ const args = ['--mode', 'rpc'];
5
+ args.push(options.trustProjectResources ? '--approve' : '--no-approve');
6
+ const model = splitPiModel(options.model);
7
+ const provider = model.provider ?? normalizePiProvider(options.credentialProvider);
8
+ if (provider)
9
+ args.push('--provider', provider);
10
+ if (model.model)
11
+ args.push('--model', model.model);
12
+ if (options.appendSystemPrompt)
13
+ args.push('--append-system-prompt', options.appendSystemPrompt);
14
+ else if (options.systemPrompt)
15
+ args.push('--system-prompt', options.systemPrompt);
16
+ if (options.effort)
17
+ args.push('--thinking', options.effort);
18
+ args.push(...piToolArguments(options));
19
+ if (typeof options.resume === 'string')
20
+ args.push('--session', validatePiSessionId(options.resume));
21
+ else if (options.resume === true) {
22
+ throw new HadamardBridgeProcessError('Pi managed mode requires an exact session id; the interactive --resume picker is unavailable.');
23
+ }
24
+ else if (options.sessionId)
25
+ args.push('--session-id', validatePiSessionId(options.sessionId));
26
+ else if (options.continueMostRecent)
27
+ args.push('--continue');
28
+ return args;
29
+ }
30
+ export function createPiNormalizer(prompt, options) {
31
+ return new PiNormalizer(prompt, options);
32
+ }
33
+ const PI_READ_ONLY_TOOLS = ['read', 'grep', 'find', 'ls'];
34
+ const PI_EDIT_TOOLS = [...PI_READ_ONLY_TOOLS, 'edit', 'write'];
35
+ function validatePiSessionId(value) {
36
+ const sessionId = value.trim();
37
+ if (!sessionId || sessionId.length > 256 || sessionId.startsWith('-')
38
+ || !/^[A-Za-z0-9][A-Za-z0-9._-]*$/u.test(sessionId)) {
39
+ throw new HadamardBridgeProcessError('Pi session id must contain only letters, numbers, dots, underscores, or hyphens.');
40
+ }
41
+ return sessionId;
42
+ }
43
+ function splitPiModel(value) {
44
+ const normalized = value?.trim();
45
+ if (!normalized)
46
+ return {};
47
+ const separator = normalized.indexOf('/');
48
+ if (separator <= 0 || separator === normalized.length - 1)
49
+ return { model: normalized };
50
+ return { provider: normalized.slice(0, separator), model: normalized.slice(separator + 1) };
51
+ }
52
+ function normalizePiProvider(value) {
53
+ const provider = value?.trim();
54
+ if (!provider)
55
+ return undefined;
56
+ if (!/^[A-Za-z0-9][A-Za-z0-9._-]*$/u.test(provider)) {
57
+ throw new HadamardBridgeProcessError('Pi credential provider must contain only letters, numbers, dots, underscores, or hyphens.');
58
+ }
59
+ return provider;
60
+ }
61
+ function piToolArguments(options) {
62
+ if (options.tools === 'none')
63
+ return ['--no-tools'];
64
+ const bypass = options.dangerouslySkipPermissions || options.permissionMode === 'bypassPermissions';
65
+ const permissionUpperBound = bypass ? undefined : new Set(options.permissionMode === 'acceptEdits' ? PI_EDIT_TOOLS : PI_READ_ONLY_TOOLS);
66
+ let permitted;
67
+ if (Array.isArray(options.tools))
68
+ permitted = [...options.tools];
69
+ else if (!bypass)
70
+ permitted = options.permissionMode === 'acceptEdits'
71
+ ? [...PI_EDIT_TOOLS]
72
+ : [...PI_READ_ONLY_TOOLS];
73
+ if (options.allowedTools?.length) {
74
+ permitted = permitted
75
+ ? permitted.filter(tool => options.allowedTools.includes(tool))
76
+ : [...options.allowedTools];
77
+ }
78
+ if (options.disallowedTools?.length && permitted) {
79
+ permitted = permitted.filter(tool => !options.disallowedTools.includes(tool));
80
+ }
81
+ if (permissionUpperBound && permitted) {
82
+ permitted = permitted.filter(tool => permissionUpperBound.has(tool));
83
+ }
84
+ const args = [];
85
+ if (permitted) {
86
+ if (permitted.length === 0)
87
+ return ['--no-tools'];
88
+ args.push('--tools', [...new Set(permitted)].join(','));
89
+ }
90
+ if (options.disallowedTools?.length) {
91
+ args.push('--exclude-tools', [...new Set(options.disallowedTools)].join(','));
92
+ }
93
+ return args;
94
+ }
95
+ class PiNormalizer {
96
+ prompt;
97
+ options;
98
+ interactive = true;
99
+ abortGraceMs = 250;
100
+ sessionId;
101
+ cwd;
102
+ model;
103
+ initEmitted = false;
104
+ finalAssistantText = '';
105
+ streamedAssistantText = '';
106
+ lastError;
107
+ stopReason;
108
+ turns = 0;
109
+ finished = false;
110
+ totalCostUsd;
111
+ constructor(prompt, options) {
112
+ this.prompt = prompt;
113
+ this.options = options;
114
+ }
115
+ start(control) {
116
+ control.write({ id: 'hadamard-state', type: 'get_state' });
117
+ control.write({ id: 'hadamard-prompt', type: 'prompt', message: this.prompt });
118
+ }
119
+ abort(control) {
120
+ control.write({ id: 'hadamard-abort', type: 'abort' });
121
+ }
122
+ translate(raw, control) {
123
+ const type = typeof raw.type === 'string' ? raw.type : '';
124
+ if (type === 'response' && raw.id === 'hadamard-state') {
125
+ const state = piRpcPayload(raw);
126
+ this.sessionId = stringField(state, 'sessionId', 'session_id', 'id') ?? this.sessionId;
127
+ this.cwd = stringField(state, 'cwd') ?? this.cwd;
128
+ this.model = stringField(state, 'model') ?? this.model;
129
+ return this.emitInit();
130
+ }
131
+ if (type === 'response' && raw.id === 'hadamard-prompt' && raw.success === false) {
132
+ this.lastError = rpcErrorMessage(raw) ?? 'Pi rejected the prompt request.';
133
+ return this.finish(control, true);
134
+ }
135
+ if (type === 'session') {
136
+ this.sessionId = typeof raw.id === 'string' ? raw.id : this.sessionId;
137
+ this.cwd = typeof raw.cwd === 'string' ? raw.cwd : this.cwd;
138
+ return [];
139
+ }
140
+ if (type === 'agent_start')
141
+ return this.emitInit();
142
+ if (type === 'message_update')
143
+ return this.translateMessageUpdate(raw);
144
+ if (type === 'tool_execution_start')
145
+ return [event('assistant', {
146
+ session_id: this.sessionId ?? '',
147
+ message: { role: 'assistant', content: [{
148
+ type: 'tool_use',
149
+ id: stringField(raw, 'toolCallId', 'tool_call_id') ?? 'pi-tool-unknown',
150
+ name: stringField(raw, 'toolName', 'tool_name') ?? 'tool',
151
+ input: isRecord(raw.args) ? raw.args : {},
152
+ }] },
153
+ })];
154
+ if (type === 'tool_execution_update')
155
+ return [event('stream_event', {
156
+ session_id: this.sessionId ?? '',
157
+ event: {
158
+ type: 'tool_progress',
159
+ tool_call_id: stringField(raw, 'toolCallId', 'tool_call_id'),
160
+ tool_name: stringField(raw, 'toolName', 'tool_name'),
161
+ content: piResultText(raw.partialResult),
162
+ cumulative: true,
163
+ },
164
+ })];
165
+ if (type === 'tool_execution_end')
166
+ return [event('user', {
167
+ session_id: this.sessionId ?? '',
168
+ message: { role: 'user', content: [{
169
+ type: 'tool_result',
170
+ tool_use_id: stringField(raw, 'toolCallId', 'tool_call_id') ?? 'pi-tool-unknown',
171
+ content: piResultText(raw.result),
172
+ is_error: raw.isError === true,
173
+ }] },
174
+ })];
175
+ if (type === 'message_end')
176
+ return this.translateMessageEnd(raw);
177
+ if (type === 'turn_end') {
178
+ this.turns += 1;
179
+ return [];
180
+ }
181
+ if (type === 'auto_retry_start' || type === 'auto_retry_end'
182
+ || type === 'compaction_start' || type === 'compaction_end'
183
+ || type === 'queue_update' || type === 'extension_error') {
184
+ return [event('system', { ...raw, subtype: type, session_id: this.sessionId ?? '' })];
185
+ }
186
+ if (type === 'agent_end' || type === 'agent_settled')
187
+ return this.finish(control, false);
188
+ return [];
189
+ }
190
+ translateMessageUpdate(raw) {
191
+ const update = raw.assistantMessageEvent;
192
+ if (isRecord(update) && update.type === 'text_delta' && typeof update.delta === 'string') {
193
+ this.streamedAssistantText += update.delta;
194
+ return [event('stream_event', {
195
+ session_id: this.sessionId ?? '',
196
+ event: { type: 'content_block_delta', index: numberField(update.contentIndex) ?? 0,
197
+ delta: { type: 'text_delta', text: update.delta } },
198
+ })];
199
+ }
200
+ if (isRecord(update) && update.type === 'thinking_delta' && typeof update.delta === 'string') {
201
+ return [event('stream_event', {
202
+ session_id: this.sessionId ?? '',
203
+ event: { type: 'content_block_delta', index: numberField(update.contentIndex) ?? 0,
204
+ delta: { type: 'thinking_delta', thinking: update.delta } },
205
+ })];
206
+ }
207
+ if (isRecord(update) && update.type === 'error') {
208
+ this.lastError = stringField(update, 'error', 'message') ?? 'Pi assistant stream failed.';
209
+ }
210
+ return [];
211
+ }
212
+ translateMessageEnd(raw) {
213
+ const message = raw.message;
214
+ if (!isRecord(message) || message.role !== 'assistant')
215
+ return [];
216
+ this.model = stringField(message, 'model') ?? this.model;
217
+ const text = extractPiAssistantText(message);
218
+ if (text)
219
+ this.finalAssistantText = text;
220
+ this.stopReason = stringField(message, 'stopReason', 'stop_reason') ?? this.stopReason;
221
+ this.lastError = stringField(message, 'errorMessage', 'error_message') ?? this.lastError;
222
+ const usage = isRecord(message.usage) ? message.usage : undefined;
223
+ const cost = usage && typeof usage.cost === 'number'
224
+ ? usage.cost
225
+ : usage && isRecord(usage.cost) && typeof usage.cost.total === 'number'
226
+ ? usage.cost.total
227
+ : undefined;
228
+ if (cost != null)
229
+ this.totalCostUsd = (this.totalCostUsd ?? 0) + cost;
230
+ return [event('assistant', {
231
+ session_id: this.sessionId ?? '',
232
+ message: { role: 'assistant', content: extractPiAssistantContent(message), model: this.model, usage },
233
+ })];
234
+ }
235
+ emitInit() {
236
+ if (this.initEmitted)
237
+ return [];
238
+ this.initEmitted = true;
239
+ return [event('system', {
240
+ subtype: 'init',
241
+ session_id: this.sessionId ?? (this.options.sessionId ?? ''),
242
+ cwd: this.cwd,
243
+ tools: [], mcp_servers: [], slash_commands: [], agents: [], skills: [], plugins: [],
244
+ model: this.model ?? this.options.model,
245
+ permission_mode: this.options.permissionMode ?? 'default',
246
+ })];
247
+ }
248
+ finish(control, forcedError) {
249
+ if (this.finished)
250
+ return [];
251
+ this.finished = true;
252
+ control?.endInput();
253
+ const isError = forcedError || Boolean(this.lastError) || this.stopReason === 'error';
254
+ return [...this.emitInit(), event('result', {
255
+ subtype: isError ? 'error' : 'success',
256
+ session_id: this.sessionId ?? (this.options.sessionId ?? ''),
257
+ is_error: isError,
258
+ result: this.lastError || this.finalAssistantText || this.streamedAssistantText,
259
+ stop_reason: isError ? 'error' : (this.stopReason ?? 'end_turn'),
260
+ num_turns: Math.max(1, this.turns),
261
+ total_cost_usd: this.totalCostUsd,
262
+ })];
263
+ }
264
+ }
265
+ function piRpcPayload(raw) {
266
+ if (isRecord(raw.data))
267
+ return raw.data;
268
+ if (isRecord(raw.result))
269
+ return raw.result;
270
+ return raw;
271
+ }
272
+ function rpcErrorMessage(raw) {
273
+ if (typeof raw.error === 'string')
274
+ return raw.error;
275
+ if (isRecord(raw.error))
276
+ return stringField(raw.error, 'message', 'error');
277
+ return stringField(raw, 'message');
278
+ }
279
+ function stringField(value, ...keys) {
280
+ for (const key of keys)
281
+ if (typeof value[key] === 'string' && value[key])
282
+ return value[key];
283
+ return undefined;
284
+ }
285
+ function numberField(value) {
286
+ return typeof value === 'number' && Number.isFinite(value) ? value : undefined;
287
+ }
288
+ function piResultText(value) {
289
+ if (typeof value === 'string')
290
+ return value;
291
+ if (!isRecord(value))
292
+ return value == null ? '' : (JSON.stringify(value) ?? '');
293
+ if (Array.isArray(value.content))
294
+ return value.content.map(block => {
295
+ if (typeof block === 'string')
296
+ return block;
297
+ if (isRecord(block) && typeof block.text === 'string')
298
+ return block.text;
299
+ return isRecord(block) ? (JSON.stringify(block) ?? '') : '';
300
+ }).join('\n');
301
+ return JSON.stringify(value, null, 2) ?? '';
302
+ }
303
+ function extractPiAssistantText(message) {
304
+ if (!Array.isArray(message.content))
305
+ return typeof message.content === 'string' ? message.content : '';
306
+ return message.content.map(block => isRecord(block) && block.type === 'text'
307
+ && typeof block.text === 'string' ? block.text : '').join('');
308
+ }
309
+ function extractPiAssistantContent(message) {
310
+ if (!Array.isArray(message.content)) {
311
+ const text = typeof message.content === 'string' ? message.content : '';
312
+ return text ? [{ type: 'text', text }] : [];
313
+ }
314
+ const content = [];
315
+ for (const block of message.content) {
316
+ if (!isRecord(block))
317
+ continue;
318
+ if (block.type === 'text' && typeof block.text === 'string')
319
+ content.push({ type: 'text', text: block.text });
320
+ if (block.type === 'thinking' && typeof block.thinking === 'string') {
321
+ content.push({ type: 'thinking', thinking: block.thinking });
322
+ }
323
+ }
324
+ return content;
325
+ }
326
+ function event(type, fields) {
327
+ return { type, ...fields };
328
+ }
329
+ //# sourceMappingURL=nativeCliPiProtocol.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nativeCliPiProtocol.js","sourceRoot":"","sources":["../../../src/nativeCli/nativeCliPiProtocol.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { type ChildProcess } from 'node:child_process';
2
+ export declare function terminateManagedProcessTree(child: ChildProcess): Promise<void>;
3
+ //# sourceMappingURL=nativeCliProcessTree.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nativeCliProcessTree.d.ts","sourceRoot":"","sources":["../../../src/nativeCli/nativeCliProcessTree.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAC;AA+FjE,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAM9E"}