@xenosystem/agent-interface-host 0.1.3

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 (482) hide show
  1. package/LICENSE +67 -0
  2. package/dist/acp/AcpAgentRegistryService.d.ts +77 -0
  3. package/dist/acp/AcpAgentRegistryService.d.ts.map +1 -0
  4. package/dist/acp/AcpAgentRegistryService.js +754 -0
  5. package/dist/acp/AcpAgentRegistryService.js.map +1 -0
  6. package/dist/acp/AcpAgentTurnExecutionAdapter.d.ts +56 -0
  7. package/dist/acp/AcpAgentTurnExecutionAdapter.d.ts.map +1 -0
  8. package/dist/acp/AcpAgentTurnExecutionAdapter.js +323 -0
  9. package/dist/acp/AcpAgentTurnExecutionAdapter.js.map +1 -0
  10. package/dist/acp/AcpApprovalPortAdapter.d.ts +41 -0
  11. package/dist/acp/AcpApprovalPortAdapter.d.ts.map +1 -0
  12. package/dist/acp/AcpApprovalPortAdapter.js +82 -0
  13. package/dist/acp/AcpApprovalPortAdapter.js.map +1 -0
  14. package/dist/acp/AcpCoordinationBridge.d.ts +13 -0
  15. package/dist/acp/AcpCoordinationBridge.d.ts.map +1 -0
  16. package/dist/acp/AcpCoordinationBridge.js +13 -0
  17. package/dist/acp/AcpCoordinationBridge.js.map +1 -0
  18. package/dist/acp/AcpDiagnosticsService.d.ts +61 -0
  19. package/dist/acp/AcpDiagnosticsService.d.ts.map +1 -0
  20. package/dist/acp/AcpDiagnosticsService.js +203 -0
  21. package/dist/acp/AcpDiagnosticsService.js.map +1 -0
  22. package/dist/acp/AcpExternalCertificationHarness.d.ts +47 -0
  23. package/dist/acp/AcpExternalCertificationHarness.d.ts.map +1 -0
  24. package/dist/acp/AcpExternalCertificationHarness.js +176 -0
  25. package/dist/acp/AcpExternalCertificationHarness.js.map +1 -0
  26. package/dist/acp/AcpHostBridge.d.ts +81 -0
  27. package/dist/acp/AcpHostBridge.d.ts.map +1 -0
  28. package/dist/acp/AcpHostBridge.js +101 -0
  29. package/dist/acp/AcpHostBridge.js.map +1 -0
  30. package/dist/acp/AcpInteractivePermissionBridge.d.ts +77 -0
  31. package/dist/acp/AcpInteractivePermissionBridge.d.ts.map +1 -0
  32. package/dist/acp/AcpInteractivePermissionBridge.js +127 -0
  33. package/dist/acp/AcpInteractivePermissionBridge.js.map +1 -0
  34. package/dist/acp/AcpPermissionBridge.d.ts +19 -0
  35. package/dist/acp/AcpPermissionBridge.d.ts.map +1 -0
  36. package/dist/acp/AcpPermissionBridge.js +110 -0
  37. package/dist/acp/AcpPermissionBridge.js.map +1 -0
  38. package/dist/acp/AcpPermissionPolicy.d.ts +111 -0
  39. package/dist/acp/AcpPermissionPolicy.d.ts.map +1 -0
  40. package/dist/acp/AcpPermissionPolicy.js +167 -0
  41. package/dist/acp/AcpPermissionPolicy.js.map +1 -0
  42. package/dist/acp/AcpProcessSupervisor.d.ts +134 -0
  43. package/dist/acp/AcpProcessSupervisor.d.ts.map +1 -0
  44. package/dist/acp/AcpProcessSupervisor.js +674 -0
  45. package/dist/acp/AcpProcessSupervisor.js.map +1 -0
  46. package/dist/acp/AcpProviderApprovalService.d.ts +27 -0
  47. package/dist/acp/AcpProviderApprovalService.d.ts.map +1 -0
  48. package/dist/acp/AcpProviderApprovalService.js +128 -0
  49. package/dist/acp/AcpProviderApprovalService.js.map +1 -0
  50. package/dist/acp/AcpProviderCatalogService.d.ts +69 -0
  51. package/dist/acp/AcpProviderCatalogService.d.ts.map +1 -0
  52. package/dist/acp/AcpProviderCatalogService.js +707 -0
  53. package/dist/acp/AcpProviderCatalogService.js.map +1 -0
  54. package/dist/acp/AcpProviderModelService.d.ts +6 -0
  55. package/dist/acp/AcpProviderModelService.d.ts.map +1 -0
  56. package/dist/acp/AcpProviderModelService.js +274 -0
  57. package/dist/acp/AcpProviderModelService.js.map +1 -0
  58. package/dist/acp/AcpProviderVersionReadiness.d.ts +6 -0
  59. package/dist/acp/AcpProviderVersionReadiness.d.ts.map +1 -0
  60. package/dist/acp/AcpProviderVersionReadiness.js +100 -0
  61. package/dist/acp/AcpProviderVersionReadiness.js.map +1 -0
  62. package/dist/acp/AcpRuntimeEventMapper.d.ts +16 -0
  63. package/dist/acp/AcpRuntimeEventMapper.d.ts.map +1 -0
  64. package/dist/acp/AcpRuntimeEventMapper.js +326 -0
  65. package/dist/acp/AcpRuntimeEventMapper.js.map +1 -0
  66. package/dist/acp/AcpSessionService.d.ts +65 -0
  67. package/dist/acp/AcpSessionService.d.ts.map +1 -0
  68. package/dist/acp/AcpSessionService.js +931 -0
  69. package/dist/acp/AcpSessionService.js.map +1 -0
  70. package/dist/acp/DurableAcpPermissionPolicyStore.d.ts +25 -0
  71. package/dist/acp/DurableAcpPermissionPolicyStore.d.ts.map +1 -0
  72. package/dist/acp/DurableAcpPermissionPolicyStore.js +100 -0
  73. package/dist/acp/DurableAcpPermissionPolicyStore.js.map +1 -0
  74. package/dist/acp/acpCommandSafety.d.ts +63 -0
  75. package/dist/acp/acpCommandSafety.d.ts.map +1 -0
  76. package/dist/acp/acpCommandSafety.js +90 -0
  77. package/dist/acp/acpCommandSafety.js.map +1 -0
  78. package/dist/acp/acpErrors.d.ts +47 -0
  79. package/dist/acp/acpErrors.d.ts.map +1 -0
  80. package/dist/acp/acpErrors.js +93 -0
  81. package/dist/acp/acpErrors.js.map +1 -0
  82. package/dist/acp/acpRedaction.d.ts +9 -0
  83. package/dist/acp/acpRedaction.d.ts.map +1 -0
  84. package/dist/acp/acpRedaction.js +69 -0
  85. package/dist/acp/acpRedaction.js.map +1 -0
  86. package/dist/acp/acpSessionResume.d.ts +8 -0
  87. package/dist/acp/acpSessionResume.d.ts.map +1 -0
  88. package/dist/acp/acpSessionResume.js +31 -0
  89. package/dist/acp/acpSessionResume.js.map +1 -0
  90. package/dist/acp/acpTypes.d.ts +467 -0
  91. package/dist/acp/acpTypes.d.ts.map +1 -0
  92. package/dist/acp/acpTypes.js +2 -0
  93. package/dist/acp/acpTypes.js.map +1 -0
  94. package/dist/agent/chooseDirectoryBridge.d.ts +29 -0
  95. package/dist/agent/chooseDirectoryBridge.d.ts.map +1 -0
  96. package/dist/agent/chooseDirectoryBridge.js +116 -0
  97. package/dist/agent/chooseDirectoryBridge.js.map +1 -0
  98. package/dist/agent/permissionProfiles.d.ts +29 -0
  99. package/dist/agent/permissionProfiles.d.ts.map +1 -0
  100. package/dist/agent/permissionProfiles.js +107 -0
  101. package/dist/agent/permissionProfiles.js.map +1 -0
  102. package/dist/agent/runtimeAuthorityPrompt.d.ts +13 -0
  103. package/dist/agent/runtimeAuthorityPrompt.d.ts.map +1 -0
  104. package/dist/agent/runtimeAuthorityPrompt.js +45 -0
  105. package/dist/agent/runtimeAuthorityPrompt.js.map +1 -0
  106. package/dist/agent/runtimeModeOutputGuard.d.ts +6 -0
  107. package/dist/agent/runtimeModeOutputGuard.d.ts.map +1 -0
  108. package/dist/agent/runtimeModeOutputGuard.js +40 -0
  109. package/dist/agent/runtimeModeOutputGuard.js.map +1 -0
  110. package/dist/agent/workspacePlacementBridge.d.ts +29 -0
  111. package/dist/agent/workspacePlacementBridge.d.ts.map +1 -0
  112. package/dist/agent/workspacePlacementBridge.js +143 -0
  113. package/dist/agent/workspacePlacementBridge.js.map +1 -0
  114. package/dist/agentSearch/AgentSearchService.d.ts +81 -0
  115. package/dist/agentSearch/AgentSearchService.d.ts.map +1 -0
  116. package/dist/agentSearch/AgentSearchService.js +1038 -0
  117. package/dist/agentSearch/AgentSearchService.js.map +1 -0
  118. package/dist/agentSearch/JsonInvertedIndexAdapter.d.ts +44 -0
  119. package/dist/agentSearch/JsonInvertedIndexAdapter.d.ts.map +1 -0
  120. package/dist/agentSearch/JsonInvertedIndexAdapter.js +307 -0
  121. package/dist/agentSearch/JsonInvertedIndexAdapter.js.map +1 -0
  122. package/dist/agentSearch/SearchIndexAdapter.d.ts +33 -0
  123. package/dist/agentSearch/SearchIndexAdapter.d.ts.map +1 -0
  124. package/dist/agentSearch/SearchIndexAdapter.js +2 -0
  125. package/dist/agentSearch/SearchIndexAdapter.js.map +1 -0
  126. package/dist/agentSearch/SearchSourceWatcher.d.ts +29 -0
  127. package/dist/agentSearch/SearchSourceWatcher.d.ts.map +1 -0
  128. package/dist/agentSearch/SearchSourceWatcher.js +150 -0
  129. package/dist/agentSearch/SearchSourceWatcher.js.map +1 -0
  130. package/dist/agentSearch/SqliteFtsIndexAdapter.d.ts +58 -0
  131. package/dist/agentSearch/SqliteFtsIndexAdapter.d.ts.map +1 -0
  132. package/dist/agentSearch/SqliteFtsIndexAdapter.js +420 -0
  133. package/dist/agentSearch/SqliteFtsIndexAdapter.js.map +1 -0
  134. package/dist/agentSearch/conversationIndexer.d.ts +69 -0
  135. package/dist/agentSearch/conversationIndexer.d.ts.map +1 -0
  136. package/dist/agentSearch/conversationIndexer.js +313 -0
  137. package/dist/agentSearch/conversationIndexer.js.map +1 -0
  138. package/dist/agentSearch/searchTypes.d.ts +264 -0
  139. package/dist/agentSearch/searchTypes.d.ts.map +1 -0
  140. package/dist/agentSearch/searchTypes.js +2 -0
  141. package/dist/agentSearch/searchTypes.js.map +1 -0
  142. package/dist/agentSearch/searchUtils.d.ts +12 -0
  143. package/dist/agentSearch/searchUtils.d.ts.map +1 -0
  144. package/dist/agentSearch/searchUtils.js +125 -0
  145. package/dist/agentSearch/searchUtils.js.map +1 -0
  146. package/dist/agentSearch/workspaceMetadataIndexer.d.ts +3 -0
  147. package/dist/agentSearch/workspaceMetadataIndexer.d.ts.map +1 -0
  148. package/dist/agentSearch/workspaceMetadataIndexer.js +125 -0
  149. package/dist/agentSearch/workspaceMetadataIndexer.js.map +1 -0
  150. package/dist/cli/CliControlPlaneService.d.ts +269 -0
  151. package/dist/cli/CliControlPlaneService.d.ts.map +1 -0
  152. package/dist/cli/CliControlPlaneService.js +1874 -0
  153. package/dist/cli/CliControlPlaneService.js.map +1 -0
  154. package/dist/cloud/XenoCloudAgentTurnExecutionAdapter.d.ts +91 -0
  155. package/dist/cloud/XenoCloudAgentTurnExecutionAdapter.d.ts.map +1 -0
  156. package/dist/cloud/XenoCloudAgentTurnExecutionAdapter.js +379 -0
  157. package/dist/cloud/XenoCloudAgentTurnExecutionAdapter.js.map +1 -0
  158. package/dist/codebase/CodebaseIntelligenceService.d.ts +68 -0
  159. package/dist/codebase/CodebaseIntelligenceService.d.ts.map +1 -0
  160. package/dist/codebase/CodebaseIntelligenceService.js +1717 -0
  161. package/dist/codebase/CodebaseIntelligenceService.js.map +1 -0
  162. package/dist/codebase/LanguageServerProcessManager.d.ts +85 -0
  163. package/dist/codebase/LanguageServerProcessManager.d.ts.map +1 -0
  164. package/dist/codebase/LanguageServerProcessManager.js +607 -0
  165. package/dist/codebase/LanguageServerProcessManager.js.map +1 -0
  166. package/dist/codebase/codeTypes.d.ts +485 -0
  167. package/dist/codebase/codeTypes.d.ts.map +1 -0
  168. package/dist/codebase/codeTypes.js +2 -0
  169. package/dist/codebase/codeTypes.js.map +1 -0
  170. package/dist/codebase/codeUtils.d.ts +24 -0
  171. package/dist/codebase/codeUtils.d.ts.map +1 -0
  172. package/dist/codebase/codeUtils.js +177 -0
  173. package/dist/codebase/codeUtils.js.map +1 -0
  174. package/dist/codebase/contextPacks.d.ts +18 -0
  175. package/dist/codebase/contextPacks.d.ts.map +1 -0
  176. package/dist/codebase/contextPacks.js +180 -0
  177. package/dist/codebase/contextPacks.js.map +1 -0
  178. package/dist/codebase/dependencyGraph.d.ts +3 -0
  179. package/dist/codebase/dependencyGraph.d.ts.map +1 -0
  180. package/dist/codebase/dependencyGraph.js +209 -0
  181. package/dist/codebase/dependencyGraph.js.map +1 -0
  182. package/dist/codebase/fileIndexer.d.ts +27 -0
  183. package/dist/codebase/fileIndexer.d.ts.map +1 -0
  184. package/dist/codebase/fileIndexer.js +167 -0
  185. package/dist/codebase/fileIndexer.js.map +1 -0
  186. package/dist/codebase/symbolIndexer.d.ts +3 -0
  187. package/dist/codebase/symbolIndexer.d.ts.map +1 -0
  188. package/dist/codebase/symbolIndexer.js +184 -0
  189. package/dist/codebase/symbolIndexer.js.map +1 -0
  190. package/dist/codebase/whatChanged.d.ts +4 -0
  191. package/dist/codebase/whatChanged.d.ts.map +1 -0
  192. package/dist/codebase/whatChanged.js +138 -0
  193. package/dist/codebase/whatChanged.js.map +1 -0
  194. package/dist/coordination/CoordinationService.d.ts +166 -0
  195. package/dist/coordination/CoordinationService.d.ts.map +1 -0
  196. package/dist/coordination/CoordinationService.js +247 -0
  197. package/dist/coordination/CoordinationService.js.map +1 -0
  198. package/dist/coordination/claims.d.ts +122 -0
  199. package/dist/coordination/claims.d.ts.map +1 -0
  200. package/dist/coordination/claims.js +196 -0
  201. package/dist/coordination/claims.js.map +1 -0
  202. package/dist/coordination/coordinationTools.d.ts +40 -0
  203. package/dist/coordination/coordinationTools.d.ts.map +1 -0
  204. package/dist/coordination/coordinationTools.js +92 -0
  205. package/dist/coordination/coordinationTools.js.map +1 -0
  206. package/dist/coordination/laneBridge.d.ts +84 -0
  207. package/dist/coordination/laneBridge.d.ts.map +1 -0
  208. package/dist/coordination/laneBridge.js +86 -0
  209. package/dist/coordination/laneBridge.js.map +1 -0
  210. package/dist/coordination/messages.d.ts +225 -0
  211. package/dist/coordination/messages.d.ts.map +1 -0
  212. package/dist/coordination/messages.js +335 -0
  213. package/dist/coordination/messages.js.map +1 -0
  214. package/dist/coordination/permissionWaitRegistry.d.ts +32 -0
  215. package/dist/coordination/permissionWaitRegistry.d.ts.map +1 -0
  216. package/dist/coordination/permissionWaitRegistry.js +59 -0
  217. package/dist/coordination/permissionWaitRegistry.js.map +1 -0
  218. package/dist/coordination/query.d.ts +187 -0
  219. package/dist/coordination/query.d.ts.map +1 -0
  220. package/dist/coordination/query.js +138 -0
  221. package/dist/coordination/query.js.map +1 -0
  222. package/dist/coordination/renderInbox.d.ts +15 -0
  223. package/dist/coordination/renderInbox.d.ts.map +1 -0
  224. package/dist/coordination/renderInbox.js +19 -0
  225. package/dist/coordination/renderInbox.js.map +1 -0
  226. package/dist/coordination/runtimeEvents.d.ts +53 -0
  227. package/dist/coordination/runtimeEvents.d.ts.map +1 -0
  228. package/dist/coordination/runtimeEvents.js +112 -0
  229. package/dist/coordination/runtimeEvents.js.map +1 -0
  230. package/dist/detachedHostService.d.ts +77 -0
  231. package/dist/detachedHostService.d.ts.map +1 -0
  232. package/dist/detachedHostService.js +66 -0
  233. package/dist/detachedHostService.js.map +1 -0
  234. package/dist/detachedHostSupervisor.d.ts +102 -0
  235. package/dist/detachedHostSupervisor.d.ts.map +1 -0
  236. package/dist/detachedHostSupervisor.js +168 -0
  237. package/dist/detachedHostSupervisor.js.map +1 -0
  238. package/dist/durableRuntimeEventStore.d.ts +49 -0
  239. package/dist/durableRuntimeEventStore.d.ts.map +1 -0
  240. package/dist/durableRuntimeEventStore.js +364 -0
  241. package/dist/durableRuntimeEventStore.js.map +1 -0
  242. package/dist/engineering/EngineeringWorkbenchService.d.ts +142 -0
  243. package/dist/engineering/EngineeringWorkbenchService.d.ts.map +1 -0
  244. package/dist/engineering/EngineeringWorkbenchService.js +2301 -0
  245. package/dist/engineering/EngineeringWorkbenchService.js.map +1 -0
  246. package/dist/engineering/LandingService.d.ts +112 -0
  247. package/dist/engineering/LandingService.d.ts.map +1 -0
  248. package/dist/engineering/LandingService.js +239 -0
  249. package/dist/engineering/LandingService.js.map +1 -0
  250. package/dist/engineering/engineeringTypes.d.ts +2 -0
  251. package/dist/engineering/engineeringTypes.d.ts.map +1 -0
  252. package/dist/engineering/engineeringTypes.js +2 -0
  253. package/dist/engineering/engineeringTypes.js.map +1 -0
  254. package/dist/engineering/patchReview.d.ts +11 -0
  255. package/dist/engineering/patchReview.d.ts.map +1 -0
  256. package/dist/engineering/patchReview.js +174 -0
  257. package/dist/engineering/patchReview.js.map +1 -0
  258. package/dist/index.d.ts +834 -0
  259. package/dist/index.d.ts.map +1 -0
  260. package/dist/index.js +3242 -0
  261. package/dist/index.js.map +1 -0
  262. package/dist/intake/IntakeService.d.ts +84 -0
  263. package/dist/intake/IntakeService.d.ts.map +1 -0
  264. package/dist/intake/IntakeService.js +117 -0
  265. package/dist/intake/IntakeService.js.map +1 -0
  266. package/dist/intake/RepositoryTodoIntakeSource.d.ts +72 -0
  267. package/dist/intake/RepositoryTodoIntakeSource.d.ts.map +1 -0
  268. package/dist/intake/RepositoryTodoIntakeSource.js +168 -0
  269. package/dist/intake/RepositoryTodoIntakeSource.js.map +1 -0
  270. package/dist/intake/WorkspaceTodoIntakeSource.d.ts +53 -0
  271. package/dist/intake/WorkspaceTodoIntakeSource.d.ts.map +1 -0
  272. package/dist/intake/WorkspaceTodoIntakeSource.js +81 -0
  273. package/dist/intake/WorkspaceTodoIntakeSource.js.map +1 -0
  274. package/dist/isolation/CommandExecution.d.ts +132 -0
  275. package/dist/isolation/CommandExecution.d.ts.map +1 -0
  276. package/dist/isolation/CommandExecution.js +48 -0
  277. package/dist/isolation/CommandExecution.js.map +1 -0
  278. package/dist/isolation/LocalCommandExecutor.d.ts +27 -0
  279. package/dist/isolation/LocalCommandExecutor.d.ts.map +1 -0
  280. package/dist/isolation/LocalCommandExecutor.js +97 -0
  281. package/dist/isolation/LocalCommandExecutor.js.map +1 -0
  282. package/dist/isolation/RunExecutionEnvironment.d.ts +135 -0
  283. package/dist/isolation/RunExecutionEnvironment.d.ts.map +1 -0
  284. package/dist/isolation/RunExecutionEnvironment.js +206 -0
  285. package/dist/isolation/RunExecutionEnvironment.js.map +1 -0
  286. package/dist/isolation/RunIsolationService.d.ts +90 -0
  287. package/dist/isolation/RunIsolationService.d.ts.map +1 -0
  288. package/dist/isolation/RunIsolationService.js +86 -0
  289. package/dist/isolation/RunIsolationService.js.map +1 -0
  290. package/dist/isolation/SandboxCommandExecutor.d.ts +93 -0
  291. package/dist/isolation/SandboxCommandExecutor.d.ts.map +1 -0
  292. package/dist/isolation/SandboxCommandExecutor.js +189 -0
  293. package/dist/isolation/SandboxCommandExecutor.js.map +1 -0
  294. package/dist/knowledge/WorkspaceKnowledgeService.d.ts +71 -0
  295. package/dist/knowledge/WorkspaceKnowledgeService.d.ts.map +1 -0
  296. package/dist/knowledge/WorkspaceKnowledgeService.js +103 -0
  297. package/dist/knowledge/WorkspaceKnowledgeService.js.map +1 -0
  298. package/dist/localHostAuthority.d.ts +24 -0
  299. package/dist/localHostAuthority.d.ts.map +1 -0
  300. package/dist/localHostAuthority.js +87 -0
  301. package/dist/localHostAuthority.js.map +1 -0
  302. package/dist/localHostLease.d.ts +51 -0
  303. package/dist/localHostLease.d.ts.map +1 -0
  304. package/dist/localHostLease.js +167 -0
  305. package/dist/localHostLease.js.map +1 -0
  306. package/dist/localHostPaths.d.ts +30 -0
  307. package/dist/localHostPaths.d.ts.map +1 -0
  308. package/dist/localHostPaths.js +60 -0
  309. package/dist/localHostPaths.js.map +1 -0
  310. package/dist/localRpcTransport.d.ts +21 -0
  311. package/dist/localRpcTransport.d.ts.map +1 -0
  312. package/dist/localRpcTransport.js +423 -0
  313. package/dist/localRpcTransport.js.map +1 -0
  314. package/dist/node.d.ts +104 -0
  315. package/dist/node.d.ts.map +1 -0
  316. package/dist/node.js +103 -0
  317. package/dist/node.js.map +1 -0
  318. package/dist/observation/DirectoryBaselineScanner.d.ts +44 -0
  319. package/dist/observation/DirectoryBaselineScanner.d.ts.map +1 -0
  320. package/dist/observation/DirectoryBaselineScanner.js +112 -0
  321. package/dist/observation/DirectoryBaselineScanner.js.map +1 -0
  322. package/dist/observation/MountContentReader.d.ts +63 -0
  323. package/dist/observation/MountContentReader.d.ts.map +1 -0
  324. package/dist/observation/MountContentReader.js +158 -0
  325. package/dist/observation/MountContentReader.js.map +1 -0
  326. package/dist/observation/RunObservationService.d.ts +229 -0
  327. package/dist/observation/RunObservationService.d.ts.map +1 -0
  328. package/dist/observation/RunObservationService.js +248 -0
  329. package/dist/observation/RunObservationService.js.map +1 -0
  330. package/dist/observation/XenoUseObservationSource.d.ts +42 -0
  331. package/dist/observation/XenoUseObservationSource.d.ts.map +1 -0
  332. package/dist/observation/XenoUseObservationSource.js +104 -0
  333. package/dist/observation/XenoUseObservationSource.js.map +1 -0
  334. package/dist/observation/XenoUseRunObserver.d.ts +140 -0
  335. package/dist/observation/XenoUseRunObserver.d.ts.map +1 -0
  336. package/dist/observation/XenoUseRunObserver.js +256 -0
  337. package/dist/observation/XenoUseRunObserver.js.map +1 -0
  338. package/dist/pluginMcp/PluginMcpManagerService.d.ts +141 -0
  339. package/dist/pluginMcp/PluginMcpManagerService.d.ts.map +1 -0
  340. package/dist/pluginMcp/PluginMcpManagerService.js +1821 -0
  341. package/dist/pluginMcp/PluginMcpManagerService.js.map +1 -0
  342. package/dist/pluginMcp/pluginMcpTypes.d.ts +349 -0
  343. package/dist/pluginMcp/pluginMcpTypes.d.ts.map +1 -0
  344. package/dist/pluginMcp/pluginMcpTypes.js +2 -0
  345. package/dist/pluginMcp/pluginMcpTypes.js.map +1 -0
  346. package/dist/policy/WorkspacePolicyService.d.ts +83 -0
  347. package/dist/policy/WorkspacePolicyService.d.ts.map +1 -0
  348. package/dist/policy/WorkspacePolicyService.js +809 -0
  349. package/dist/policy/WorkspacePolicyService.js.map +1 -0
  350. package/dist/policy/policyGuard.d.ts +27 -0
  351. package/dist/policy/policyGuard.d.ts.map +1 -0
  352. package/dist/policy/policyGuard.js +143 -0
  353. package/dist/policy/policyGuard.js.map +1 -0
  354. package/dist/policy/policyTypes.d.ts +190 -0
  355. package/dist/policy/policyTypes.d.ts.map +1 -0
  356. package/dist/policy/policyTypes.js +2 -0
  357. package/dist/policy/policyTypes.js.map +1 -0
  358. package/dist/runtime/RuntimeEventStore.d.ts +42 -0
  359. package/dist/runtime/RuntimeEventStore.d.ts.map +1 -0
  360. package/dist/runtime/RuntimeEventStore.js +412 -0
  361. package/dist/runtime/RuntimeEventStore.js.map +1 -0
  362. package/dist/runtime/RuntimeEventStoreRepositoryAdapter.d.ts +21 -0
  363. package/dist/runtime/RuntimeEventStoreRepositoryAdapter.d.ts.map +1 -0
  364. package/dist/runtime/RuntimeEventStoreRepositoryAdapter.js +41 -0
  365. package/dist/runtime/RuntimeEventStoreRepositoryAdapter.js.map +1 -0
  366. package/dist/runtime/RuntimeTimelineProjection.d.ts +5 -0
  367. package/dist/runtime/RuntimeTimelineProjection.d.ts.map +1 -0
  368. package/dist/runtime/RuntimeTimelineProjection.js +705 -0
  369. package/dist/runtime/RuntimeTimelineProjection.js.map +1 -0
  370. package/dist/runtime/runtimeEventTypes.d.ts +73 -0
  371. package/dist/runtime/runtimeEventTypes.d.ts.map +1 -0
  372. package/dist/runtime/runtimeEventTypes.js +2 -0
  373. package/dist/runtime/runtimeEventTypes.js.map +1 -0
  374. package/dist/sdk/SdkNativeAgentTurnExecutionAdapter.d.ts +117 -0
  375. package/dist/sdk/SdkNativeAgentTurnExecutionAdapter.d.ts.map +1 -0
  376. package/dist/sdk/SdkNativeAgentTurnExecutionAdapter.js +214 -0
  377. package/dist/sdk/SdkNativeAgentTurnExecutionAdapter.js.map +1 -0
  378. package/dist/session/AgentSessionService.d.ts +285 -0
  379. package/dist/session/AgentSessionService.d.ts.map +1 -0
  380. package/dist/session/AgentSessionService.js +444 -0
  381. package/dist/session/AgentSessionService.js.map +1 -0
  382. package/dist/session/bufferedSessionPty.d.ts +27 -0
  383. package/dist/session/bufferedSessionPty.d.ts.map +1 -0
  384. package/dist/session/bufferedSessionPty.js +49 -0
  385. package/dist/session/bufferedSessionPty.js.map +1 -0
  386. package/dist/session/renderSupport.d.ts +53 -0
  387. package/dist/session/renderSupport.d.ts.map +1 -0
  388. package/dist/session/renderSupport.js +41 -0
  389. package/dist/session/renderSupport.js.map +1 -0
  390. package/dist/session/runtimeEventChannel.d.ts +56 -0
  391. package/dist/session/runtimeEventChannel.d.ts.map +1 -0
  392. package/dist/session/runtimeEventChannel.js +53 -0
  393. package/dist/session/runtimeEventChannel.js.map +1 -0
  394. package/dist/state/JsonAgentStateRepository.d.ts +29 -0
  395. package/dist/state/JsonAgentStateRepository.d.ts.map +1 -0
  396. package/dist/state/JsonAgentStateRepository.js +165 -0
  397. package/dist/state/JsonAgentStateRepository.js.map +1 -0
  398. package/dist/state/SqliteAgentStateRepository.d.ts +58 -0
  399. package/dist/state/SqliteAgentStateRepository.d.ts.map +1 -0
  400. package/dist/state/SqliteAgentStateRepository.js +777 -0
  401. package/dist/state/SqliteAgentStateRepository.js.map +1 -0
  402. package/dist/state/createAgentStateRepository.d.ts +4 -0
  403. package/dist/state/createAgentStateRepository.d.ts.map +1 -0
  404. package/dist/state/createAgentStateRepository.js +12 -0
  405. package/dist/state/createAgentStateRepository.js.map +1 -0
  406. package/dist/state/stateSanitizers.d.ts +7 -0
  407. package/dist/state/stateSanitizers.d.ts.map +1 -0
  408. package/dist/state/stateSanitizers.js +87 -0
  409. package/dist/state/stateSanitizers.js.map +1 -0
  410. package/dist/subagents/AcpSubagentExecutionAdapter.d.ts +12 -0
  411. package/dist/subagents/AcpSubagentExecutionAdapter.d.ts.map +1 -0
  412. package/dist/subagents/AcpSubagentExecutionAdapter.js +119 -0
  413. package/dist/subagents/AcpSubagentExecutionAdapter.js.map +1 -0
  414. package/dist/subagents/CliSubagentExecutionAdapter.d.ts +13 -0
  415. package/dist/subagents/CliSubagentExecutionAdapter.d.ts.map +1 -0
  416. package/dist/subagents/CliSubagentExecutionAdapter.js +217 -0
  417. package/dist/subagents/CliSubagentExecutionAdapter.js.map +1 -0
  418. package/dist/subagents/HostTurnSubagentExecutionAdapter.d.ts +78 -0
  419. package/dist/subagents/HostTurnSubagentExecutionAdapter.d.ts.map +1 -0
  420. package/dist/subagents/HostTurnSubagentExecutionAdapter.js +160 -0
  421. package/dist/subagents/HostTurnSubagentExecutionAdapter.js.map +1 -0
  422. package/dist/subagents/SubagentRunService.d.ts +103 -0
  423. package/dist/subagents/SubagentRunService.d.ts.map +1 -0
  424. package/dist/subagents/SubagentRunService.js +1183 -0
  425. package/dist/subagents/SubagentRunService.js.map +1 -0
  426. package/dist/subagents/SubagentScheduler.d.ts +167 -0
  427. package/dist/subagents/SubagentScheduler.d.ts.map +1 -0
  428. package/dist/subagents/SubagentScheduler.js +530 -0
  429. package/dist/subagents/SubagentScheduler.js.map +1 -0
  430. package/dist/subagents/TeamAgentRouter.d.ts +104 -0
  431. package/dist/subagents/TeamAgentRouter.d.ts.map +1 -0
  432. package/dist/subagents/TeamAgentRouter.js +435 -0
  433. package/dist/subagents/TeamAgentRouter.js.map +1 -0
  434. package/dist/subagents/capabilityMatcher.d.ts +3 -0
  435. package/dist/subagents/capabilityMatcher.d.ts.map +1 -0
  436. package/dist/subagents/capabilityMatcher.js +127 -0
  437. package/dist/subagents/capabilityMatcher.js.map +1 -0
  438. package/dist/subagents/subagentRunPort.d.ts +43 -0
  439. package/dist/subagents/subagentRunPort.d.ts.map +1 -0
  440. package/dist/subagents/subagentRunPort.js +24 -0
  441. package/dist/subagents/subagentRunPort.js.map +1 -0
  442. package/dist/subagents/subagentTypes.d.ts +330 -0
  443. package/dist/subagents/subagentTypes.d.ts.map +1 -0
  444. package/dist/subagents/subagentTypes.js +2 -0
  445. package/dist/subagents/subagentTypes.js.map +1 -0
  446. package/dist/subagents/subagentWorkspaceAuthority.d.ts +29 -0
  447. package/dist/subagents/subagentWorkspaceAuthority.d.ts.map +1 -0
  448. package/dist/subagents/subagentWorkspaceAuthority.js +173 -0
  449. package/dist/subagents/subagentWorkspaceAuthority.js.map +1 -0
  450. package/dist/support/SupportDiagnosticsService.d.ts +87 -0
  451. package/dist/support/SupportDiagnosticsService.d.ts.map +1 -0
  452. package/dist/support/SupportDiagnosticsService.js +1199 -0
  453. package/dist/support/SupportDiagnosticsService.js.map +1 -0
  454. package/dist/turns/DurableInterruptedTurnStore.d.ts +14 -0
  455. package/dist/turns/DurableInterruptedTurnStore.d.ts.map +1 -0
  456. package/dist/turns/DurableInterruptedTurnStore.js +63 -0
  457. package/dist/turns/DurableInterruptedTurnStore.js.map +1 -0
  458. package/dist/turns/interruptedTurns.d.ts +50 -0
  459. package/dist/turns/interruptedTurns.d.ts.map +1 -0
  460. package/dist/turns/interruptedTurns.js +54 -0
  461. package/dist/turns/interruptedTurns.js.map +1 -0
  462. package/dist/turns/turnAdmission.d.ts +113 -0
  463. package/dist/turns/turnAdmission.d.ts.map +1 -0
  464. package/dist/turns/turnAdmission.js +136 -0
  465. package/dist/turns/turnAdmission.js.map +1 -0
  466. package/dist/workspace/WorkspaceHostService.d.ts +126 -0
  467. package/dist/workspace/WorkspaceHostService.d.ts.map +1 -0
  468. package/dist/workspace/WorkspaceHostService.js +841 -0
  469. package/dist/workspace/WorkspaceHostService.js.map +1 -0
  470. package/dist/workspace/WorkspaceShellService.d.ts +71 -0
  471. package/dist/workspace/WorkspaceShellService.d.ts.map +1 -0
  472. package/dist/workspace/WorkspaceShellService.js +273 -0
  473. package/dist/workspace/WorkspaceShellService.js.map +1 -0
  474. package/dist/workspace/fileAssociations.d.ts +12 -0
  475. package/dist/workspace/fileAssociations.d.ts.map +1 -0
  476. package/dist/workspace/fileAssociations.js +202 -0
  477. package/dist/workspace/fileAssociations.js.map +1 -0
  478. package/dist/workspace/scrollbackBuffer.d.ts +48 -0
  479. package/dist/workspace/scrollbackBuffer.d.ts.map +1 -0
  480. package/dist/workspace/scrollbackBuffer.js +94 -0
  481. package/dist/workspace/scrollbackBuffer.js.map +1 -0
  482. package/package.json +42 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AcpSessionService.js","sourceRoot":"","sources":["../../src/acp/AcpSessionService.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ import type { AcpPermissionPolicyStore, AcpPermissionRule } from './AcpPermissionPolicy.js';
2
+ export interface DurableAcpPermissionPolicyStoreOptions {
3
+ /** Directory to hold `acp-permission-rules.json`. */
4
+ rootDirectory: string;
5
+ }
6
+ export declare class DurableAcpPermissionPolicyStore implements AcpPermissionPolicyStore {
7
+ private readonly filePath;
8
+ private readonly rules;
9
+ constructor(options: DurableAcpPermissionPolicyStoreOptions);
10
+ list(): AcpPermissionRule[];
11
+ add(rule: AcpPermissionRule): void;
12
+ /** Removes a rule by id. Returns whether anything was removed. */
13
+ remove(ruleId: string): boolean;
14
+ private load;
15
+ private persist;
16
+ }
17
+ /**
18
+ * Returns the rule only if every field is exactly what it should be.
19
+ *
20
+ * Deliberately not lenient: a rule missing its `pathPrefix` is not a scoped rule
21
+ * with a gap, it is an UNSCOPED rule — strictly broader than what the user
22
+ * approved. Coercion here silently widens permission.
23
+ */
24
+ export declare function validateRule(value: unknown): AcpPermissionRule | undefined;
25
+ //# sourceMappingURL=DurableAcpPermissionPolicyStore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DurableAcpPermissionPolicyStore.d.ts","sourceRoot":"","sources":["../../src/acp/DurableAcpPermissionPolicyStore.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,wBAAwB,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAA;AAyC3F,MAAM,WAAW,sCAAsC;IACrD,qDAAqD;IACrD,aAAa,EAAE,MAAM,CAAA;CACtB;AAED,qBAAa,+BAAgC,YAAW,wBAAwB;IAC9E,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAQ;IACjC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAA0B;gBAEpC,OAAO,EAAE,sCAAsC;IAO3D,IAAI,IAAI,iBAAiB,EAAE;IAI3B,GAAG,CAAC,IAAI,EAAE,iBAAiB,GAAG,IAAI;IAMlC,kEAAkE;IAClE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAQ/B,OAAO,CAAC,IAAI;IAgBZ,OAAO,CAAC,OAAO;CAShB;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,iBAAiB,GAAG,SAAS,CAoB1E"}
@@ -0,0 +1,100 @@
1
+ import { closeSync, existsSync, fsyncSync, mkdirSync, openSync, readFileSync, renameSync, writeFileSync, } from 'node:fs';
2
+ import { dirname, join, resolve } from 'node:path';
3
+ const MAX_RULES = 1_000;
4
+ const VALID_DECISIONS = new Set(['allow', 'deny']);
5
+ const VALID_KINDS = new Set([
6
+ 'read', 'edit', 'delete', 'move', 'search', 'execute', 'think', 'fetch', 'switch_mode', 'other',
7
+ ]);
8
+ export class DurableAcpPermissionPolicyStore {
9
+ filePath;
10
+ rules = [];
11
+ constructor(options) {
12
+ const root = resolve(options.rootDirectory);
13
+ mkdirSync(root, { recursive: true });
14
+ this.filePath = join(root, 'acp-permission-rules.json');
15
+ this.load();
16
+ }
17
+ list() {
18
+ return this.rules.map((rule) => ({ ...rule }));
19
+ }
20
+ add(rule) {
21
+ this.rules.push({ ...rule });
22
+ if (this.rules.length > MAX_RULES)
23
+ this.rules.splice(0, this.rules.length - MAX_RULES);
24
+ this.persist();
25
+ }
26
+ /** Removes a rule by id. Returns whether anything was removed. */
27
+ remove(ruleId) {
28
+ const index = this.rules.findIndex((rule) => rule.id === ruleId);
29
+ if (index === -1)
30
+ return false;
31
+ this.rules.splice(index, 1);
32
+ this.persist();
33
+ return true;
34
+ }
35
+ load() {
36
+ try {
37
+ if (!existsSync(this.filePath))
38
+ return;
39
+ const parsed = JSON.parse(readFileSync(this.filePath, 'utf8'));
40
+ if (parsed.version !== 1 || !Array.isArray(parsed.rules))
41
+ return;
42
+ for (const candidate of parsed.rules.slice(0, MAX_RULES)) {
43
+ const rule = validateRule(candidate);
44
+ if (rule)
45
+ this.rules.push(rule);
46
+ }
47
+ }
48
+ catch {
49
+ // Fail closed: an unreadable policy file grants nothing. One extra prompt
50
+ // is cheaper than one unintended grant.
51
+ this.rules.length = 0;
52
+ }
53
+ }
54
+ persist() {
55
+ const payload = { version: 1, rules: this.rules };
56
+ mkdirSync(dirname(this.filePath), { recursive: true });
57
+ const temporary = `${this.filePath}.tmp-${process.pid}-${this.rules.length}`;
58
+ writeFileSync(temporary, JSON.stringify(payload, null, 2), 'utf8');
59
+ const descriptor = openSync(temporary, 'r+');
60
+ try {
61
+ fsyncSync(descriptor);
62
+ }
63
+ finally {
64
+ closeSync(descriptor);
65
+ }
66
+ renameSync(temporary, this.filePath);
67
+ }
68
+ }
69
+ /**
70
+ * Returns the rule only if every field is exactly what it should be.
71
+ *
72
+ * Deliberately not lenient: a rule missing its `pathPrefix` is not a scoped rule
73
+ * with a gap, it is an UNSCOPED rule — strictly broader than what the user
74
+ * approved. Coercion here silently widens permission.
75
+ */
76
+ export function validateRule(value) {
77
+ if (!value || typeof value !== 'object' || Array.isArray(value))
78
+ return undefined;
79
+ const record = value;
80
+ if (typeof record.id !== 'string' || !record.id)
81
+ return undefined;
82
+ if (typeof record.decision !== 'string' || !VALID_DECISIONS.has(record.decision))
83
+ return undefined;
84
+ if (record.kind !== undefined && (typeof record.kind !== 'string' || !VALID_KINDS.has(record.kind))) {
85
+ return undefined;
86
+ }
87
+ if (record.pathPrefix !== undefined && (typeof record.pathPrefix !== 'string' || !record.pathPrefix)) {
88
+ return undefined;
89
+ }
90
+ return {
91
+ id: record.id,
92
+ decision: record.decision,
93
+ ...(typeof record.kind === 'string' ? { kind: record.kind } : {}),
94
+ ...(typeof record.pathPrefix === 'string' ? { pathPrefix: record.pathPrefix } : {}),
95
+ ...(typeof record.createdAt === 'number' && Number.isFinite(record.createdAt)
96
+ ? { createdAt: record.createdAt }
97
+ : {}),
98
+ };
99
+ }
100
+ //# sourceMappingURL=DurableAcpPermissionPolicyStore.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DurableAcpPermissionPolicyStore.js","sourceRoot":"","sources":["../../src/acp/DurableAcpPermissionPolicyStore.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,UAAU,EACV,SAAS,EACT,SAAS,EACT,QAAQ,EACR,YAAY,EACZ,UAAU,EACV,aAAa,GACd,MAAM,SAAS,CAAA;AAChB,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAoClD,MAAM,SAAS,GAAG,KAAK,CAAA;AACvB,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAA;AAClD,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC;IAC1B,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,OAAO;CAChG,CAAC,CAAA;AAOF,MAAM,OAAO,+BAA+B;IACzB,QAAQ,CAAQ;IAChB,KAAK,GAAwB,EAAE,CAAA;IAEhD,YAAY,OAA+C;QACzD,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,CAAA;QAC3C,SAAS,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;QACpC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,EAAE,2BAA2B,CAAC,CAAA;QACvD,IAAI,CAAC,IAAI,EAAE,CAAA;IACb,CAAC;IAED,IAAI;QACF,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC,CAAA;IAChD,CAAC;IAED,GAAG,CAAC,IAAuB;QACzB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,CAAA;QAC5B,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS;YAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,CAAA;QACtF,IAAI,CAAC,OAAO,EAAE,CAAA;IAChB,CAAC;IAED,kEAAkE;IAClE,MAAM,CAAC,MAAc;QACnB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,MAAM,CAAC,CAAA;QAChE,IAAI,KAAK,KAAK,CAAC,CAAC;YAAE,OAAO,KAAK,CAAA;QAC9B,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;QAC3B,IAAI,CAAC,OAAO,EAAE,CAAA;QACd,OAAO,IAAI,CAAA;IACb,CAAC;IAEO,IAAI;QACV,IAAI,CAAC;YACH,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC;gBAAE,OAAM;YACtC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAkC,CAAA;YAC/F,IAAI,MAAM,CAAC,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;gBAAE,OAAM;YAChE,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,EAAE,CAAC;gBACzD,MAAM,IAAI,GAAG,YAAY,CAAC,SAAS,CAAC,CAAA;gBACpC,IAAI,IAAI;oBAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YACjC,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,0EAA0E;YAC1E,wCAAwC;YACxC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAA;QACvB,CAAC;IACH,CAAC;IAEO,OAAO;QACb,MAAM,OAAO,GAAyB,EAAE,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAA;QACvE,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;QACtD,MAAM,SAAS,GAAG,GAAG,IAAI,CAAC,QAAQ,QAAQ,OAAO,CAAC,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAA;QAC5E,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,MAAM,CAAC,CAAA;QAClE,MAAM,UAAU,GAAG,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;QAC5C,IAAI,CAAC;YAAC,SAAS,CAAC,UAAU,CAAC,CAAA;QAAC,CAAC;gBAAS,CAAC;YAAC,SAAS,CAAC,UAAU,CAAC,CAAA;QAAC,CAAC;QAC/D,UAAU,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAA;IACtC,CAAC;CACF;AAED;;;;;;GAMG;AACH,MAAM,UAAU,YAAY,CAAC,KAAc;IACzC,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,SAAS,CAAA;IACjF,MAAM,MAAM,GAAG,KAAgC,CAAA;IAC/C,IAAI,OAAO,MAAM,CAAC,EAAE,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,EAAE;QAAE,OAAO,SAAS,CAAA;IACjE,IAAI,OAAO,MAAM,CAAC,QAAQ,KAAK,QAAQ,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC;QAAE,OAAO,SAAS,CAAA;IAClG,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;QACpG,OAAO,SAAS,CAAA;IAClB,CAAC;IACD,IAAI,MAAM,CAAC,UAAU,KAAK,SAAS,IAAI,CAAC,OAAO,MAAM,CAAC,UAAU,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;QACrG,OAAO,SAAS,CAAA;IAClB,CAAC;IACD,OAAO;QACL,EAAE,EAAE,MAAM,CAAC,EAAE;QACb,QAAQ,EAAE,MAAM,CAAC,QAA4B;QAC7C,GAAG,CAAC,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,IAAiC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9F,GAAG,CAAC,OAAO,MAAM,CAAC,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnF,GAAG,CAAC,OAAO,MAAM,CAAC,SAAS,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC;YAC3E,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE;YACjC,CAAC,CAAC,EAAE,CAAC;KACR,CAAA;AACH,CAAC"}
@@ -0,0 +1,63 @@
1
+ /**
2
+ * ACP COMMAND SAFETY — the single source of truth for "is this an executable
3
+ * path, or a shell command line?"
4
+ *
5
+ * ## Why this module exists
6
+ *
7
+ * These rules used to be duplicated, character for character, in
8
+ * `AcpAgentRegistryService` (admission time) and `AcpProcessSupervisor` (launch
9
+ * time). Two copies of a security constant that MUST agree is a defect waiting
10
+ * to happen, and it happened: when the Linux blind spot below was found, it had
11
+ * to be found twice, and either copy could have been fixed alone leaving the
12
+ * other silently permissive.
13
+ *
14
+ * Admission and launch are deliberately BOTH still checked — that is defence in
15
+ * depth, not redundancy, because a config can reach disk by a path that never
16
+ * passed through the registry. What must not be duplicated is the RULE.
17
+ *
18
+ * ## The blind spot this was written to close
19
+ *
20
+ * 🔴 The original command-line rule was `/\.(?:exe|cmd|bat|ps1|sh)\s+\S/i` —
21
+ * it detects arguments only after a FILE EXTENSION. Windows executables end in
22
+ * `.exe`, so `C:\...\node.exe --version` was caught. Unix executables have no
23
+ * extension, so `/usr/bin/node --version` matched nothing and the rule enforced
24
+ * NOTHING on Linux or macOS.
25
+ *
26
+ * It stayed invisible because the test that covers it builds its input from
27
+ * `process.execPath`, which ends in `.exe` on Windows and nothing on Linux. The
28
+ * suite therefore proved the rule worked on the platform it ran on, and never
29
+ * on the platform it failed to protect. Packaging for Linux is what surfaced it.
30
+ */
31
+ export declare const ACP_SHELL_COMMAND_BASENAMES: ReadonlySet<string>;
32
+ export declare const ACP_SHELL_METACHARACTER_PATTERN: RegExp;
33
+ /** Arguments after a Windows executable extension. Cannot fire on Unix. */
34
+ export declare const ACP_RAW_COMMAND_LINE_PATTERN: RegExp;
35
+ /**
36
+ * The platform-neutral half: an argument beginning with `-`.
37
+ *
38
+ * Chosen because it separates the two cases that are otherwise syntactically
39
+ * identical — a path containing a space (`/opt/My App/tool`, legitimate) from a
40
+ * path with arguments appended (`/usr/bin/node --version`, a command line).
41
+ * Executable paths essentially never contain a ` -x` segment; command lines
42
+ * almost always do, because that is what arguments look like.
43
+ *
44
+ * ⚠️ Stated honestly rather than overclaimed: this does not catch a non-flag
45
+ * argument on an extensionless path (`/usr/bin/node script.js`). Closing that
46
+ * needs the filesystem to distinguish a path from a prefix, which would make a
47
+ * validator's verdict depend on what happens to be installed on the machine
48
+ * doing the validating. The launch-time check runs where the file must exist.
49
+ */
50
+ export declare const ACP_ARGUMENT_SUFFIX_PATTERN: RegExp;
51
+ /** True when `command` carries arguments or shell syntax instead of being one path. */
52
+ export declare function isAcpShellCommandLine(command: string): boolean;
53
+ /**
54
+ * True when `command` points at a shell interpreter rather than an agent binary.
55
+ *
56
+ * Splits on BOTH separators rather than using `path.basename`, which is
57
+ * platform-dependent: on Linux `basename('C:\\Windows\\System32\\cmd.exe')`
58
+ * returns the whole string, because `\` is a legal filename character there —
59
+ * so a Windows-shaped config would pass this check unexamined on a Linux host.
60
+ * A security rule must not read differently depending on where it runs.
61
+ */
62
+ export declare function isAcpShellExecutable(command: string): boolean;
63
+ //# sourceMappingURL=acpCommandSafety.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acpCommandSafety.d.ts","sourceRoot":"","sources":["../../src/acp/acpCommandSafety.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAEH,eAAO,MAAM,2BAA2B,EAAE,WAAW,CAAC,MAAM,CAoB1D,CAAA;AAEF,eAAO,MAAM,+BAA+B,QAAyC,CAAA;AAErF,2EAA2E;AAC3E,eAAO,MAAM,4BAA4B,QAAmC,CAAA;AAE5E;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,2BAA2B,QAAe,CAAA;AAEvD,uFAAuF;AACvF,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAI9D;AAED;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAG7D"}
@@ -0,0 +1,90 @@
1
+ /**
2
+ * ACP COMMAND SAFETY — the single source of truth for "is this an executable
3
+ * path, or a shell command line?"
4
+ *
5
+ * ## Why this module exists
6
+ *
7
+ * These rules used to be duplicated, character for character, in
8
+ * `AcpAgentRegistryService` (admission time) and `AcpProcessSupervisor` (launch
9
+ * time). Two copies of a security constant that MUST agree is a defect waiting
10
+ * to happen, and it happened: when the Linux blind spot below was found, it had
11
+ * to be found twice, and either copy could have been fixed alone leaving the
12
+ * other silently permissive.
13
+ *
14
+ * Admission and launch are deliberately BOTH still checked — that is defence in
15
+ * depth, not redundancy, because a config can reach disk by a path that never
16
+ * passed through the registry. What must not be duplicated is the RULE.
17
+ *
18
+ * ## The blind spot this was written to close
19
+ *
20
+ * 🔴 The original command-line rule was `/\.(?:exe|cmd|bat|ps1|sh)\s+\S/i` —
21
+ * it detects arguments only after a FILE EXTENSION. Windows executables end in
22
+ * `.exe`, so `C:\...\node.exe --version` was caught. Unix executables have no
23
+ * extension, so `/usr/bin/node --version` matched nothing and the rule enforced
24
+ * NOTHING on Linux or macOS.
25
+ *
26
+ * It stayed invisible because the test that covers it builds its input from
27
+ * `process.execPath`, which ends in `.exe` on Windows and nothing on Linux. The
28
+ * suite therefore proved the rule worked on the platform it ran on, and never
29
+ * on the platform it failed to protect. Packaging for Linux is what surfaced it.
30
+ */
31
+ export const ACP_SHELL_COMMAND_BASENAMES = new Set([
32
+ 'cmd',
33
+ 'cmd.exe',
34
+ 'powershell',
35
+ 'powershell.exe',
36
+ 'pwsh',
37
+ 'pwsh.exe',
38
+ 'bash',
39
+ 'bash.exe',
40
+ 'sh',
41
+ 'sh.exe',
42
+ // The POSIX shells the original set was missing. A host that rejects
43
+ // `/bin/sh` but accepts `/bin/zsh` is not enforcing anything.
44
+ 'zsh',
45
+ 'dash',
46
+ 'ksh',
47
+ 'csh',
48
+ 'tcsh',
49
+ 'fish',
50
+ 'busybox',
51
+ ]);
52
+ export const ACP_SHELL_METACHARACTER_PATTERN = /(?:&&|\|\||[;|<>`]|[\r\n]|\$\(|\$\{)/;
53
+ /** Arguments after a Windows executable extension. Cannot fire on Unix. */
54
+ export const ACP_RAW_COMMAND_LINE_PATTERN = /\.(?:exe|cmd|bat|ps1|sh)\s+\S/i;
55
+ /**
56
+ * The platform-neutral half: an argument beginning with `-`.
57
+ *
58
+ * Chosen because it separates the two cases that are otherwise syntactically
59
+ * identical — a path containing a space (`/opt/My App/tool`, legitimate) from a
60
+ * path with arguments appended (`/usr/bin/node --version`, a command line).
61
+ * Executable paths essentially never contain a ` -x` segment; command lines
62
+ * almost always do, because that is what arguments look like.
63
+ *
64
+ * ⚠️ Stated honestly rather than overclaimed: this does not catch a non-flag
65
+ * argument on an extensionless path (`/usr/bin/node script.js`). Closing that
66
+ * needs the filesystem to distinguish a path from a prefix, which would make a
67
+ * validator's verdict depend on what happens to be installed on the machine
68
+ * doing the validating. The launch-time check runs where the file must exist.
69
+ */
70
+ export const ACP_ARGUMENT_SUFFIX_PATTERN = /\s-{1,2}\S/;
71
+ /** True when `command` carries arguments or shell syntax instead of being one path. */
72
+ export function isAcpShellCommandLine(command) {
73
+ return ACP_SHELL_METACHARACTER_PATTERN.test(command)
74
+ || ACP_RAW_COMMAND_LINE_PATTERN.test(command)
75
+ || ACP_ARGUMENT_SUFFIX_PATTERN.test(command);
76
+ }
77
+ /**
78
+ * True when `command` points at a shell interpreter rather than an agent binary.
79
+ *
80
+ * Splits on BOTH separators rather than using `path.basename`, which is
81
+ * platform-dependent: on Linux `basename('C:\\Windows\\System32\\cmd.exe')`
82
+ * returns the whole string, because `\` is a legal filename character there —
83
+ * so a Windows-shaped config would pass this check unexamined on a Linux host.
84
+ * A security rule must not read differently depending on where it runs.
85
+ */
86
+ export function isAcpShellExecutable(command) {
87
+ const lastSegment = command.split(/[\\/]/u).pop() ?? command;
88
+ return ACP_SHELL_COMMAND_BASENAMES.has(lastSegment.trim().toLowerCase());
89
+ }
90
+ //# sourceMappingURL=acpCommandSafety.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acpCommandSafety.js","sourceRoot":"","sources":["../../src/acp/acpCommandSafety.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAEH,MAAM,CAAC,MAAM,2BAA2B,GAAwB,IAAI,GAAG,CAAC;IACtE,KAAK;IACL,SAAS;IACT,YAAY;IACZ,gBAAgB;IAChB,MAAM;IACN,UAAU;IACV,MAAM;IACN,UAAU;IACV,IAAI;IACJ,QAAQ;IACR,qEAAqE;IACrE,8DAA8D;IAC9D,KAAK;IACL,MAAM;IACN,KAAK;IACL,KAAK;IACL,MAAM;IACN,MAAM;IACN,SAAS;CACV,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,+BAA+B,GAAG,sCAAsC,CAAA;AAErF,2EAA2E;AAC3E,MAAM,CAAC,MAAM,4BAA4B,GAAG,gCAAgC,CAAA;AAE5E;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,YAAY,CAAA;AAEvD,uFAAuF;AACvF,MAAM,UAAU,qBAAqB,CAAC,OAAe;IACnD,OAAO,+BAA+B,CAAC,IAAI,CAAC,OAAO,CAAC;WAC/C,4BAA4B,CAAC,IAAI,CAAC,OAAO,CAAC;WAC1C,2BAA2B,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;AAChD,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,oBAAoB,CAAC,OAAe;IAClD,MAAM,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,GAAG,EAAE,IAAI,OAAO,CAAA;IAC5D,OAAO,2BAA2B,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAA;AAC1E,CAAC"}
@@ -0,0 +1,47 @@
1
+ import type { AcpJsonRpcId } from './acpTypes.js';
2
+ export interface AcpErrorOptions {
3
+ code: string;
4
+ message: string;
5
+ processId?: undefined | number;
6
+ requestId?: undefined | AcpJsonRpcId;
7
+ method?: undefined | string;
8
+ diagnostics?: undefined | Record<string, unknown>;
9
+ cause?: undefined | unknown;
10
+ }
11
+ export declare class AcpError extends Error {
12
+ readonly code: string;
13
+ readonly processId?: undefined | number;
14
+ readonly requestId?: undefined | AcpJsonRpcId;
15
+ readonly method?: undefined | string;
16
+ readonly diagnostics?: undefined | Record<string, unknown>;
17
+ readonly cause?: undefined | unknown;
18
+ constructor(options: AcpErrorOptions);
19
+ }
20
+ export declare class AcpProtocolError extends AcpError {
21
+ constructor(message: string, options?: Partial<AcpErrorOptions>);
22
+ }
23
+ export declare class AcpTransportError extends AcpError {
24
+ constructor(message: string, options?: Partial<AcpErrorOptions>);
25
+ }
26
+ export declare class AcpTimeoutError extends AcpError {
27
+ constructor(message: string, options?: Partial<AcpErrorOptions>);
28
+ }
29
+ export declare class AcpCancelledError extends AcpError {
30
+ constructor(message: string, options?: Partial<AcpErrorOptions>);
31
+ }
32
+ export declare class AcpProcessExitedError extends AcpError {
33
+ constructor(message: string, options?: Partial<AcpErrorOptions>);
34
+ }
35
+ export declare class AcpInvalidMessageError extends AcpError {
36
+ constructor(message: string, options?: Partial<AcpErrorOptions>);
37
+ }
38
+ export declare class AcpUnsupportedMethodError extends AcpError {
39
+ constructor(method: string, options?: Partial<AcpErrorOptions>);
40
+ }
41
+ export declare class AcpVersionMismatchError extends AcpError {
42
+ constructor(message: string, options?: Partial<AcpErrorOptions>);
43
+ }
44
+ export declare function acpJsonRpcErrorCode(error: unknown): number;
45
+ export declare function acpErrorCode(error: unknown): string;
46
+ export declare function acpSafeErrorMessage(error: unknown): string;
47
+ //# sourceMappingURL=acpErrors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acpErrors.d.ts","sourceRoot":"","sources":["../../src/acp/acpErrors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAEjD,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,CAAC,EAAE,SAAS,GAAG,MAAM,CAAA;IAC9B,SAAS,CAAC,EAAE,SAAS,GAAG,YAAY,CAAA;IACpC,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAA;IAC3B,WAAW,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACjD,KAAK,CAAC,EAAE,SAAS,GAAG,OAAO,CAAA;CAC5B;AAED,qBAAa,QAAS,SAAQ,KAAK;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,GAAG,MAAM,CAAA;IACvC,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,GAAG,YAAY,CAAA;IAC7C,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAA;IACpC,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC1D,SAAkB,KAAK,CAAC,EAAE,SAAS,GAAG,OAAO,CAAA;gBAEjC,OAAO,EAAE,eAAe;CAUrC;AAED,qBAAa,gBAAiB,SAAQ,QAAQ;gBAChC,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,OAAO,CAAC,eAAe,CAAM;CAGpE;AAED,qBAAa,iBAAkB,SAAQ,QAAQ;gBACjC,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,OAAO,CAAC,eAAe,CAAM;CAGpE;AAED,qBAAa,eAAgB,SAAQ,QAAQ;gBAC/B,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,OAAO,CAAC,eAAe,CAAM;CAGpE;AAED,qBAAa,iBAAkB,SAAQ,QAAQ;gBACjC,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,OAAO,CAAC,eAAe,CAAM;CAGpE;AAED,qBAAa,qBAAsB,SAAQ,QAAQ;gBACrC,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,OAAO,CAAC,eAAe,CAAM;CAGpE;AAED,qBAAa,sBAAuB,SAAQ,QAAQ;gBACtC,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,OAAO,CAAC,eAAe,CAAM;CAGpE;AAED,qBAAa,yBAA0B,SAAQ,QAAQ;gBACzC,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,OAAO,CAAC,eAAe,CAAM;CAQnE;AAED,qBAAa,uBAAwB,SAAQ,QAAQ;gBACvC,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,OAAO,CAAC,eAAe,CAAM;CAGpE;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAU1D;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAEnD;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAI1D"}
@@ -0,0 +1,93 @@
1
+ export class AcpError extends Error {
2
+ code;
3
+ processId;
4
+ requestId;
5
+ method;
6
+ diagnostics;
7
+ cause;
8
+ constructor(options) {
9
+ super(options.message);
10
+ this.name = new.target.name;
11
+ this.code = options.code;
12
+ this.processId = options.processId;
13
+ this.requestId = options.requestId;
14
+ this.method = options.method;
15
+ this.diagnostics = options.diagnostics;
16
+ this.cause = options.cause;
17
+ }
18
+ }
19
+ export class AcpProtocolError extends AcpError {
20
+ constructor(message, options = {}) {
21
+ super({ ...options, code: options.code || 'ACP_PROTOCOL_ERROR', message });
22
+ }
23
+ }
24
+ export class AcpTransportError extends AcpError {
25
+ constructor(message, options = {}) {
26
+ super({ ...options, code: options.code || 'ACP_TRANSPORT_ERROR', message });
27
+ }
28
+ }
29
+ export class AcpTimeoutError extends AcpError {
30
+ constructor(message, options = {}) {
31
+ super({ ...options, code: options.code || 'ACP_TIMEOUT', message });
32
+ }
33
+ }
34
+ export class AcpCancelledError extends AcpError {
35
+ constructor(message, options = {}) {
36
+ super({ ...options, code: options.code || 'ACP_CANCELLED', message });
37
+ }
38
+ }
39
+ export class AcpProcessExitedError extends AcpError {
40
+ constructor(message, options = {}) {
41
+ super({ ...options, code: options.code || 'ACP_PROCESS_EXITED', message });
42
+ }
43
+ }
44
+ export class AcpInvalidMessageError extends AcpError {
45
+ constructor(message, options = {}) {
46
+ super({ ...options, code: options.code || 'ACP_INVALID_MESSAGE', message });
47
+ }
48
+ }
49
+ export class AcpUnsupportedMethodError extends AcpError {
50
+ constructor(method, options = {}) {
51
+ super({
52
+ ...options,
53
+ code: options.code || 'ACP_UNSUPPORTED_METHOD',
54
+ method,
55
+ message: `ACP method is not supported by XENO Hub in this milestone: ${method}`,
56
+ });
57
+ }
58
+ }
59
+ export class AcpVersionMismatchError extends AcpError {
60
+ constructor(message, options = {}) {
61
+ super({ ...options, code: options.code || 'ACP_VERSION_MISMATCH', message });
62
+ }
63
+ }
64
+ export function acpJsonRpcErrorCode(error) {
65
+ if (error instanceof AcpUnsupportedMethodError)
66
+ return -32601;
67
+ if (error instanceof AcpInvalidMessageError)
68
+ return -32700;
69
+ if (error instanceof AcpProtocolError)
70
+ return -32600;
71
+ if (error instanceof AcpCancelledError)
72
+ return -32800;
73
+ if (error instanceof AcpTimeoutError)
74
+ return -32001;
75
+ if (error instanceof AcpVersionMismatchError)
76
+ return -32002;
77
+ if (error instanceof AcpProcessExitedError)
78
+ return -32003;
79
+ if (error instanceof AcpError)
80
+ return -32000;
81
+ return -32603;
82
+ }
83
+ export function acpErrorCode(error) {
84
+ return error instanceof AcpError ? error.code : 'ACP_INTERNAL_ERROR';
85
+ }
86
+ export function acpSafeErrorMessage(error) {
87
+ if (error instanceof AcpError)
88
+ return error.message;
89
+ if (error instanceof Error && error.message)
90
+ return error.message;
91
+ return 'Unexpected ACP error.';
92
+ }
93
+ //# sourceMappingURL=acpErrors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acpErrors.js","sourceRoot":"","sources":["../../src/acp/acpErrors.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import type { AcpAgentCertification, AcpAgentConfig, AcpAgentConfigView } from './acpTypes.js';
2
+ export declare function redactAcpText(value: string, maxLength?: number): string;
3
+ export declare function redactAcpArgs(args: string[]): string[];
4
+ export declare function redactAcpPath(value: string | undefined): string | undefined;
5
+ export declare function redactAcpEnvKeys(env: Record<string, string> | undefined): string[];
6
+ export declare function redactAcpAgentConfig(config: AcpAgentConfig): AcpAgentConfigView;
7
+ export declare function redactAcpCertification(certification: AcpAgentCertification | undefined): AcpAgentCertification | undefined;
8
+ export declare function boundedPush<T>(items: T[], value: T, maxItems: number): T[];
9
+ //# sourceMappingURL=acpRedaction.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acpRedaction.d.ts","sourceRoot":"","sources":["../../src/acp/acpRedaction.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,qBAAqB,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA;AAa9F,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,SAAO,GAAG,MAAM,CAKrE;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAOtD;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAG3E;AAED,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,GAAG,MAAM,EAAE,CAElF;AAED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,cAAc,GAAG,kBAAkB,CAc/E;AAED,wBAAgB,sBAAsB,CAAC,aAAa,EAAE,qBAAqB,GAAG,SAAS,GAAG,qBAAqB,GAAG,SAAS,CAW1H;AAED,wBAAgB,WAAW,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,CAAC,EAAE,CAG1E"}
@@ -0,0 +1,69 @@
1
+ import { basename } from 'path';
2
+ const SECRET_PATTERNS = [
3
+ /\bBearer\s+[A-Za-z0-9._~+/=-]+/gi,
4
+ /\bsk-[A-Za-z0-9_-]{12,}/gi,
5
+ /\bxai-[A-Za-z0-9_-]{12,}/gi,
6
+ /\bghp_[A-Za-z0-9_]{12,}/gi,
7
+ /\bAKIA[0-9A-Z]{16}\b/g,
8
+ /\b(token|secret|password|cookie|authorization|api[-_]?key|credential)\b\s*[:=]\s*[^\s,;]+/gi,
9
+ ];
10
+ const SECRET_ARG_HINT = /\b(token|secret|password|cookie|authorization|api[-_]?key|credential|key)\b/i;
11
+ export function redactAcpText(value, maxLength = 4000) {
12
+ let result = value;
13
+ for (const pattern of SECRET_PATTERNS)
14
+ result = result.replace(pattern, '[redacted]');
15
+ if (result.length > maxLength)
16
+ result = `${result.slice(0, maxLength)}...[truncated]`;
17
+ return result;
18
+ }
19
+ export function redactAcpArgs(args) {
20
+ return args.map((arg, index) => {
21
+ if (SECRET_ARG_HINT.test(arg))
22
+ return '[redacted]';
23
+ const previous = args[index - 1];
24
+ if (previous && SECRET_ARG_HINT.test(previous))
25
+ return '[redacted]';
26
+ return redactAcpText(arg, 500);
27
+ });
28
+ }
29
+ export function redactAcpPath(value) {
30
+ if (!value)
31
+ return undefined;
32
+ return basename(value) || '[redacted-path]';
33
+ }
34
+ export function redactAcpEnvKeys(env) {
35
+ return Object.keys(env || {}).sort();
36
+ }
37
+ export function redactAcpAgentConfig(config) {
38
+ return {
39
+ id: redactAcpText(config.id, 200),
40
+ name: redactAcpText(config.name, 500),
41
+ command: redactAcpPath(config.command) || '[redacted-command]',
42
+ args: redactAcpArgs(config.args),
43
+ cwd: redactAcpPath(config.cwd),
44
+ envKeys: redactAcpEnvKeys(config.env),
45
+ enabled: config.enabled,
46
+ trustLevel: config.trustLevel,
47
+ certification: redactAcpCertification(config.certification),
48
+ createdAt: config.createdAt,
49
+ updatedAt: config.updatedAt,
50
+ };
51
+ }
52
+ export function redactAcpCertification(certification) {
53
+ if (!certification)
54
+ return undefined;
55
+ return {
56
+ status: certification.status,
57
+ certifiedAt: certification.certifiedAt,
58
+ certifiedBy: certification.certifiedBy,
59
+ protocolVersion: certification.protocolVersion,
60
+ agentName: certification.agentName ? redactAcpText(certification.agentName, 200) : undefined,
61
+ agentVersion: certification.agentVersion ? redactAcpText(certification.agentVersion, 120) : undefined,
62
+ notes: certification.notes ? redactAcpText(certification.notes, 500) : undefined,
63
+ };
64
+ }
65
+ export function boundedPush(items, value, maxItems) {
66
+ const next = [...items, value];
67
+ return next.length > maxItems ? next.slice(next.length - maxItems) : next;
68
+ }
69
+ //# sourceMappingURL=acpRedaction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acpRedaction.js","sourceRoot":"","sources":["../../src/acp/acpRedaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAA;AAG/B,MAAM,eAAe,GAAG;IACtB,kCAAkC;IAClC,2BAA2B;IAC3B,4BAA4B;IAC5B,2BAA2B;IAC3B,uBAAuB;IACvB,6FAA6F;CAC9F,CAAA;AAED,MAAM,eAAe,GAAG,8EAA8E,CAAA;AAEtG,MAAM,UAAU,aAAa,CAAC,KAAa,EAAE,SAAS,GAAG,IAAI;IAC3D,IAAI,MAAM,GAAG,KAAK,CAAA;IAClB,KAAK,MAAM,OAAO,IAAI,eAAe;QAAE,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,YAAY,CAAC,CAAA;IACrF,IAAI,MAAM,CAAC,MAAM,GAAG,SAAS;QAAE,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,gBAAgB,CAAA;IACrF,OAAO,MAAM,CAAA;AACf,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,IAAc;IAC1C,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;QAC7B,IAAI,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC;YAAE,OAAO,YAAY,CAAA;QAClD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAA;QAChC,IAAI,QAAQ,IAAI,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC;YAAE,OAAO,YAAY,CAAA;QACnE,OAAO,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;IAChC,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,KAAyB;IACrD,IAAI,CAAC,KAAK;QAAE,OAAO,SAAS,CAAA;IAC5B,OAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,iBAAiB,CAAA;AAC7C,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,GAAuC;IACtE,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAA;AACtC,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,MAAsB;IACzD,OAAO;QACL,EAAE,EAAE,aAAa,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,CAAC;QACjC,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC;QACrC,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,oBAAoB;QAC9D,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC;QAChC,GAAG,EAAE,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC;QAC9B,OAAO,EAAE,gBAAgB,CAAC,MAAM,CAAC,GAAG,CAAC;QACrC,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,aAAa,EAAE,sBAAsB,CAAC,MAAM,CAAC,aAAa,CAAC;QAC3D,SAAS,EAAE,MAAM,CAAC,SAAS;QAC3B,SAAS,EAAE,MAAM,CAAC,SAAS;KAC5B,CAAA;AACH,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,aAAgD;IACrF,IAAI,CAAC,aAAa;QAAE,OAAO,SAAS,CAAA;IACpC,OAAO;QACL,MAAM,EAAE,aAAa,CAAC,MAAM;QAC5B,WAAW,EAAE,aAAa,CAAC,WAAW;QACtC,WAAW,EAAE,aAAa,CAAC,WAAW;QACtC,eAAe,EAAE,aAAa,CAAC,eAAe;QAC9C,SAAS,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,aAAa,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS;QAC5F,YAAY,EAAE,aAAa,CAAC,YAAY,CAAC,CAAC,CAAC,aAAa,CAAC,aAAa,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS;QACrG,KAAK,EAAE,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC,aAAa,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS;KACjF,CAAA;AACH,CAAC;AAED,MAAM,UAAU,WAAW,CAAI,KAAU,EAAE,KAAQ,EAAE,QAAgB;IACnE,MAAM,IAAI,GAAG,CAAC,GAAG,KAAK,EAAE,KAAK,CAAC,CAAA;IAC9B,OAAO,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;AAC3E,CAAC"}
@@ -0,0 +1,8 @@
1
+ import type { AcpSessionResumeState } from './acpTypes.js';
2
+ export declare const XENO_ACP_SESSION_RESUME_META_KEY = "xeno.dev/session-resume";
3
+ /**
4
+ * Accept only the bounded, non-secret continuation identifier defined by XENO ACP.
5
+ * Arbitrary provider metadata is never persisted or reflected back into `session/resume`.
6
+ */
7
+ export declare function normalizeAcpSessionResumeState(value: unknown): AcpSessionResumeState | undefined;
8
+ //# sourceMappingURL=acpSessionResume.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acpSessionResume.d.ts","sourceRoot":"","sources":["../../src/acp/acpSessionResume.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAA;AAE1D,eAAO,MAAM,gCAAgC,4BAA4B,CAAA;AAMzE;;;GAGG;AACH,wBAAgB,8BAA8B,CAAC,KAAK,EAAE,OAAO,GAAG,qBAAqB,GAAG,SAAS,CAqBhG"}