@1mcp/agent 0.39.5 → 0.40.0-beta.0

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 (517) hide show
  1. package/README.md +14 -7
  2. package/build/admin/assets/{admin-BackendLogsWorkspace-BKavXT9B.js → admin-BackendLogsWorkspace-DnPzXW3E.js} +1 -1
  3. package/build/admin/assets/{admin-InstructionTemplatesWorkspace-CvG4EPdZ.js → admin-InstructionTemplatesWorkspace-B7beKEgz.js} +1 -1
  4. package/build/admin/assets/{admin-OAuthServicesWorkspace-BzrCR7Bi.js → admin-OAuthServicesWorkspace-Bu74Bzt5.js} +1 -1
  5. package/build/admin/assets/{admin-PresetAuthoringWorkspace-BboJVBFl.js → admin-PresetAuthoringWorkspace-053b1zwU.js} +1 -1
  6. package/build/admin/assets/{admin-console-BpUgmlrR.js → admin-console-DVuqABnE.js} +3 -3
  7. package/build/admin/assets/admin-icons-wOzB38gm.js +1 -0
  8. package/build/admin/assets/admin-vendor-BLZ1Mauf.js +3 -0
  9. package/build/admin/assets/admin-vendor-BdHKHno1.js +1 -0
  10. package/build/admin/assets/admin-vendor-BqYiU41k.js +51 -0
  11. package/build/admin/assets/admin-vendor-C291Vs-N.js +3 -0
  12. package/build/admin/assets/admin-vendor-VzhcFgoy.js +1 -0
  13. package/build/admin/index.html +7 -5
  14. package/build/application/backendPreparationAdmission.d.ts +77 -0
  15. package/build/application/backendPreparationAdmission.d.ts.map +1 -0
  16. package/build/application/backendPreparationAdmission.js +423 -0
  17. package/build/application/backendPreparationAdmission.js.map +1 -0
  18. package/build/application/backendPreparationCoordinator.d.ts +122 -0
  19. package/build/application/backendPreparationCoordinator.d.ts.map +1 -0
  20. package/build/application/backendPreparationCoordinator.js +885 -0
  21. package/build/application/backendPreparationCoordinator.js.map +1 -0
  22. package/build/application/projectLifecycle.d.ts +49 -0
  23. package/build/application/projectLifecycle.d.ts.map +1 -0
  24. package/build/application/projectLifecycle.js +228 -0
  25. package/build/application/projectLifecycle.js.map +1 -0
  26. package/build/cli.d.ts.map +1 -1
  27. package/build/cli.js +39 -17
  28. package/build/cli.js.map +1 -1
  29. package/build/commands/admin/index.d.ts.map +1 -1
  30. package/build/commands/admin/index.js +2 -6
  31. package/build/commands/admin/index.js.map +1 -1
  32. package/build/commands/app/index.d.ts.map +1 -1
  33. package/build/commands/app/index.js +5 -17
  34. package/build/commands/app/index.js.map +1 -1
  35. package/build/commands/auth/index.d.ts.map +1 -1
  36. package/build/commands/auth/index.js +2 -7
  37. package/build/commands/auth/index.js.map +1 -1
  38. package/build/commands/bootstrap/bootstrap.d.ts +38 -0
  39. package/build/commands/bootstrap/bootstrap.d.ts.map +1 -0
  40. package/build/commands/bootstrap/bootstrap.js +265 -0
  41. package/build/commands/bootstrap/bootstrap.js.map +1 -0
  42. package/build/commands/bootstrap/bootstrapOwnership.d.ts +13 -0
  43. package/build/commands/bootstrap/bootstrapOwnership.d.ts.map +1 -0
  44. package/build/commands/bootstrap/bootstrapOwnership.js +112 -0
  45. package/build/commands/bootstrap/bootstrapOwnership.js.map +1 -0
  46. package/build/commands/bootstrap/index.d.ts +3 -0
  47. package/build/commands/bootstrap/index.d.ts.map +1 -0
  48. package/build/commands/bootstrap/index.js +22 -0
  49. package/build/commands/bootstrap/index.js.map +1 -0
  50. package/build/commands/cliSetup/index.d.ts.map +1 -1
  51. package/build/commands/cliSetup/index.js +3 -4
  52. package/build/commands/cliSetup/index.js.map +1 -1
  53. package/build/commands/cliSetup/installPreparationSkill.d.ts +8 -0
  54. package/build/commands/cliSetup/installPreparationSkill.d.ts.map +1 -0
  55. package/build/commands/cliSetup/installPreparationSkill.js +201 -0
  56. package/build/commands/cliSetup/installPreparationSkill.js.map +1 -0
  57. package/build/commands/cliSetup/preparationSkill.generated.d.ts +2 -0
  58. package/build/commands/cliSetup/preparationSkill.generated.d.ts.map +1 -0
  59. package/build/commands/cliSetup/preparationSkill.generated.js +8 -0
  60. package/build/commands/cliSetup/preparationSkill.generated.js.map +1 -0
  61. package/build/commands/cliSetup/setupFiles.d.ts +5 -1
  62. package/build/commands/cliSetup/setupFiles.d.ts.map +1 -1
  63. package/build/commands/cliSetup/setupFiles.js +54 -37
  64. package/build/commands/cliSetup/setupFiles.js.map +1 -1
  65. package/build/commands/inspect/index.d.ts.map +1 -1
  66. package/build/commands/inspect/index.js +4 -4
  67. package/build/commands/inspect/index.js.map +1 -1
  68. package/build/commands/inspect/inspect.d.ts +2 -1
  69. package/build/commands/inspect/inspect.d.ts.map +1 -1
  70. package/build/commands/inspect/inspect.js +10 -5
  71. package/build/commands/inspect/inspect.js.map +1 -1
  72. package/build/commands/inspect/inspectUtils.js +3 -0
  73. package/build/commands/inspect/inspectUtils.js.map +1 -1
  74. package/build/commands/instructions/index.d.ts.map +1 -1
  75. package/build/commands/instructions/index.js +8 -3
  76. package/build/commands/instructions/index.js.map +1 -1
  77. package/build/commands/instructions/instructions.d.ts +3 -1
  78. package/build/commands/instructions/instructions.d.ts.map +1 -1
  79. package/build/commands/instructions/instructions.js +24 -0
  80. package/build/commands/instructions/instructions.js.map +1 -1
  81. package/build/commands/instructions/instructionsUtils.d.ts +2 -0
  82. package/build/commands/instructions/instructionsUtils.d.ts.map +1 -1
  83. package/build/commands/instructions/instructionsUtils.js +14 -4
  84. package/build/commands/instructions/instructionsUtils.js.map +1 -1
  85. package/build/commands/mcp/index.d.ts.map +1 -1
  86. package/build/commands/mcp/index.js +16 -21
  87. package/build/commands/mcp/index.js.map +1 -1
  88. package/build/commands/mcp/installSource.d.ts +3 -1
  89. package/build/commands/mcp/installSource.d.ts.map +1 -1
  90. package/build/commands/mcp/installSource.js +2 -2
  91. package/build/commands/mcp/installSource.js.map +1 -1
  92. package/build/commands/mcp/knownServerSetup.d.ts +4 -0
  93. package/build/commands/mcp/knownServerSetup.d.ts.map +1 -0
  94. package/build/commands/mcp/knownServerSetup.js +102 -0
  95. package/build/commands/mcp/knownServerSetup.js.map +1 -0
  96. package/build/commands/mcp/setup.d.ts +28 -0
  97. package/build/commands/mcp/setup.d.ts.map +1 -0
  98. package/build/commands/mcp/setup.js +56 -0
  99. package/build/commands/mcp/setup.js.map +1 -0
  100. package/build/commands/mcp/tools.d.ts.map +1 -1
  101. package/build/commands/mcp/tools.js +3 -3
  102. package/build/commands/mcp/tools.js.map +1 -1
  103. package/build/commands/preparation/index.d.ts +3 -0
  104. package/build/commands/preparation/index.d.ts.map +1 -0
  105. package/build/commands/preparation/index.js +55 -0
  106. package/build/commands/preparation/index.js.map +1 -0
  107. package/build/commands/preparation/preparation.d.ts +18 -0
  108. package/build/commands/preparation/preparation.d.ts.map +1 -0
  109. package/build/commands/preparation/preparation.js +102 -0
  110. package/build/commands/preparation/preparation.js.map +1 -0
  111. package/build/commands/preset/index.d.ts.map +1 -1
  112. package/build/commands/preset/index.js +4 -51
  113. package/build/commands/preset/index.js.map +1 -1
  114. package/build/commands/project/index.d.ts +3 -0
  115. package/build/commands/project/index.d.ts.map +1 -0
  116. package/build/commands/project/index.js +40 -0
  117. package/build/commands/project/index.js.map +1 -0
  118. package/build/commands/project/project.d.ts +34 -0
  119. package/build/commands/project/project.d.ts.map +1 -0
  120. package/build/commands/project/project.js +119 -0
  121. package/build/commands/project/project.js.map +1 -0
  122. package/build/commands/proxy/index.d.ts +2 -1
  123. package/build/commands/proxy/index.d.ts.map +1 -1
  124. package/build/commands/proxy/index.js +6 -46
  125. package/build/commands/proxy/index.js.map +1 -1
  126. package/build/commands/proxy/proxy.d.ts.map +1 -1
  127. package/build/commands/proxy/proxy.js +7 -1
  128. package/build/commands/proxy/proxy.js.map +1 -1
  129. package/build/commands/registry/index.d.ts.map +1 -1
  130. package/build/commands/registry/index.js +16 -20
  131. package/build/commands/registry/index.js.map +1 -1
  132. package/build/commands/run/index.d.ts.map +1 -1
  133. package/build/commands/run/index.js +9 -3
  134. package/build/commands/run/index.js.map +1 -1
  135. package/build/commands/run/run.d.ts +4 -1
  136. package/build/commands/run/run.d.ts.map +1 -1
  137. package/build/commands/run/run.js +80 -14
  138. package/build/commands/run/run.js.map +1 -1
  139. package/build/commands/serve/cooperativeRuntime.d.ts.map +1 -1
  140. package/build/commands/serve/cooperativeRuntime.js +2 -1
  141. package/build/commands/serve/cooperativeRuntime.js.map +1 -1
  142. package/build/commands/serve/index.d.ts.map +1 -1
  143. package/build/commands/serve/index.js +57 -39
  144. package/build/commands/serve/index.js.map +1 -1
  145. package/build/commands/serve/serveStatus.d.ts.map +1 -1
  146. package/build/commands/serve/serveStatus.js +3 -0
  147. package/build/commands/serve/serveStatus.js.map +1 -1
  148. package/build/commands/serve/serveStop.d.ts.map +1 -1
  149. package/build/commands/serve/serveStop.js +38 -6
  150. package/build/commands/serve/serveStop.js.map +1 -1
  151. package/build/commands/shared/agentSession.d.ts +5 -0
  152. package/build/commands/shared/agentSession.d.ts.map +1 -0
  153. package/build/commands/shared/agentSession.js +75 -0
  154. package/build/commands/shared/agentSession.js.map +1 -0
  155. package/build/commands/shared/apiClient.d.ts +2 -0
  156. package/build/commands/shared/apiClient.d.ts.map +1 -1
  157. package/build/commands/shared/apiClient.js +10 -6
  158. package/build/commands/shared/apiClient.js.map +1 -1
  159. package/build/commands/shared/cliContext.d.ts +2 -1
  160. package/build/commands/shared/cliContext.d.ts.map +1 -1
  161. package/build/commands/shared/cliContext.js +2 -1
  162. package/build/commands/shared/cliContext.js.map +1 -1
  163. package/build/commands/shared/clientSurfaceAttachment.d.ts +7 -1
  164. package/build/commands/shared/clientSurfaceAttachment.d.ts.map +1 -1
  165. package/build/commands/shared/clientSurfaceAttachment.js +221 -140
  166. package/build/commands/shared/clientSurfaceAttachment.js.map +1 -1
  167. package/build/commands/shared/inspectApiSchemas.d.ts +4 -4
  168. package/build/commands/shared/projectOwnerStorage.d.ts +8 -0
  169. package/build/commands/shared/projectOwnerStorage.d.ts.map +1 -0
  170. package/build/commands/shared/projectOwnerStorage.js +63 -0
  171. package/build/commands/shared/projectOwnerStorage.js.map +1 -0
  172. package/build/commands/shared/projectOwnerStore.d.ts +78 -0
  173. package/build/commands/shared/projectOwnerStore.d.ts.map +1 -0
  174. package/build/commands/shared/projectOwnerStore.js +482 -0
  175. package/build/commands/shared/projectOwnerStore.js.map +1 -0
  176. package/build/commands/shared/projectSelectionOptions.d.ts +24 -0
  177. package/build/commands/shared/projectSelectionOptions.d.ts.map +1 -0
  178. package/build/commands/shared/projectSelectionOptions.js +20 -0
  179. package/build/commands/shared/projectSelectionOptions.js.map +1 -0
  180. package/build/commands/shared/serveTargetResolver.d.ts +7 -1
  181. package/build/commands/shared/serveTargetResolver.d.ts.map +1 -1
  182. package/build/commands/shared/serveTargetResolver.js +99 -4
  183. package/build/commands/shared/serveTargetResolver.js.map +1 -1
  184. package/build/commands/target/index.d.ts.map +1 -1
  185. package/build/commands/target/index.js +6 -13
  186. package/build/commands/target/index.js.map +1 -1
  187. package/build/commands/wait/index.d.ts.map +1 -1
  188. package/build/commands/wait/index.js +3 -3
  189. package/build/commands/wait/index.js.map +1 -1
  190. package/build/commands/wait/wait.d.ts +2 -1
  191. package/build/commands/wait/wait.d.ts.map +1 -1
  192. package/build/commands/wait/wait.js.map +1 -1
  193. package/build/config/configLoader.d.ts.map +1 -1
  194. package/build/config/configLoader.js +5 -1
  195. package/build/config/configLoader.js.map +1 -1
  196. package/build/config/configManager.d.ts.map +1 -1
  197. package/build/config/configManager.js +5 -1
  198. package/build/config/configManager.js.map +1 -1
  199. package/build/config/projectConfigLoader.d.ts +4 -0
  200. package/build/config/projectConfigLoader.d.ts.map +1 -1
  201. package/build/config/projectConfigLoader.js +129 -28
  202. package/build/config/projectConfigLoader.js.map +1 -1
  203. package/build/config/projectConfigTypes.d.ts +7 -0
  204. package/build/config/projectConfigTypes.d.ts.map +1 -1
  205. package/build/config/projectConfigTypes.js +1 -0
  206. package/build/config/projectConfigTypes.js.map +1 -1
  207. package/build/constants/cliTimeouts.d.ts +4 -0
  208. package/build/constants/cliTimeouts.d.ts.map +1 -0
  209. package/build/constants/cliTimeouts.js +4 -0
  210. package/build/constants/cliTimeouts.js.map +1 -0
  211. package/build/constants/mcp.d.ts +1 -1
  212. package/build/constants/mcp.d.ts.map +1 -1
  213. package/build/constants/mcp.js +1 -1
  214. package/build/constants/mcp.js.map +1 -1
  215. package/build/core/capabilities/capabilityCatalog.d.ts +7 -0
  216. package/build/core/capabilities/capabilityCatalog.d.ts.map +1 -1
  217. package/build/core/capabilities/capabilityCatalog.js +58 -2
  218. package/build/core/capabilities/capabilityCatalog.js.map +1 -1
  219. package/build/core/capabilities/capabilityPagination.d.ts +12 -4
  220. package/build/core/capabilities/capabilityPagination.d.ts.map +1 -1
  221. package/build/core/capabilities/capabilityPagination.js +15 -2
  222. package/build/core/capabilities/capabilityPagination.js.map +1 -1
  223. package/build/core/capabilities/capabilityVisibility.d.ts +3 -0
  224. package/build/core/capabilities/capabilityVisibility.d.ts.map +1 -1
  225. package/build/core/capabilities/capabilityVisibility.js.map +1 -1
  226. package/build/core/capabilities/lazyLoadingOrchestrator.d.ts +2 -1
  227. package/build/core/capabilities/lazyLoadingOrchestrator.d.ts.map +1 -1
  228. package/build/core/capabilities/lazyLoadingOrchestrator.js +2 -2
  229. package/build/core/capabilities/lazyLoadingOrchestrator.js.map +1 -1
  230. package/build/core/capabilities/metaToolProvider.d.ts +2 -2
  231. package/build/core/capabilities/metaToolProvider.d.ts.map +1 -1
  232. package/build/core/capabilities/metaToolProvider.js +2 -2
  233. package/build/core/capabilities/metaToolProvider.js.map +1 -1
  234. package/build/core/capabilities/runtimeCapabilityCatalog.d.ts +1 -0
  235. package/build/core/capabilities/runtimeCapabilityCatalog.d.ts.map +1 -1
  236. package/build/core/capabilities/runtimeCapabilityCatalog.js +23 -9
  237. package/build/core/capabilities/runtimeCapabilityCatalog.js.map +1 -1
  238. package/build/core/context/projectOwner.d.ts +16 -0
  239. package/build/core/context/projectOwner.d.ts.map +1 -0
  240. package/build/core/context/projectOwner.js +33 -0
  241. package/build/core/context/projectOwner.js.map +1 -0
  242. package/build/core/context/projectPreparationAuthority.d.ts +37 -0
  243. package/build/core/context/projectPreparationAuthority.d.ts.map +1 -0
  244. package/build/core/context/projectPreparationAuthority.js +113 -0
  245. package/build/core/context/projectPreparationAuthority.js.map +1 -0
  246. package/build/core/instructions/inspectionGuidance.d.ts +2 -0
  247. package/build/core/instructions/inspectionGuidance.d.ts.map +1 -0
  248. package/build/core/instructions/inspectionGuidance.js +2 -0
  249. package/build/core/instructions/inspectionGuidance.js.map +1 -0
  250. package/build/core/instructions/instructionAggregator.d.ts +1 -0
  251. package/build/core/instructions/instructionAggregator.d.ts.map +1 -1
  252. package/build/core/instructions/instructionAggregator.js +2 -2
  253. package/build/core/instructions/instructionAggregator.js.map +1 -1
  254. package/build/core/instructions/instructionsDistribution.d.ts +5 -0
  255. package/build/core/instructions/instructionsDistribution.d.ts.map +1 -1
  256. package/build/core/instructions/instructionsDistribution.js +72 -15
  257. package/build/core/instructions/instructionsDistribution.js.map +1 -1
  258. package/build/core/instructions/preparationGuidance.d.ts +3 -0
  259. package/build/core/instructions/preparationGuidance.d.ts.map +1 -0
  260. package/build/core/instructions/preparationGuidance.js +14 -0
  261. package/build/core/instructions/preparationGuidance.js.map +1 -0
  262. package/build/core/instructions/sessionGuidance.d.ts +3 -0
  263. package/build/core/instructions/sessionGuidance.d.ts.map +1 -0
  264. package/build/core/instructions/sessionGuidance.js +25 -0
  265. package/build/core/instructions/sessionGuidance.js.map +1 -0
  266. package/build/core/instructions/templateTypes.d.ts +3 -1
  267. package/build/core/instructions/templateTypes.d.ts.map +1 -1
  268. package/build/core/instructions/templateTypes.js +15 -5
  269. package/build/core/instructions/templateTypes.js.map +1 -1
  270. package/build/core/protocol/requestHandlerUtils.d.ts.map +1 -1
  271. package/build/core/protocol/requestHandlerUtils.js +23 -4
  272. package/build/core/protocol/requestHandlerUtils.js.map +1 -1
  273. package/build/core/server/connectionResolver.d.ts +5 -0
  274. package/build/core/server/connectionResolver.d.ts.map +1 -1
  275. package/build/core/server/connectionResolver.js +11 -0
  276. package/build/core/server/connectionResolver.js.map +1 -1
  277. package/build/core/server/pidFileManager.d.ts +20 -5
  278. package/build/core/server/pidFileManager.d.ts.map +1 -1
  279. package/build/core/server/pidFileManager.js +34 -15
  280. package/build/core/server/pidFileManager.js.map +1 -1
  281. package/build/core/server/processIdentity.d.ts +18 -0
  282. package/build/core/server/processIdentity.d.ts.map +1 -1
  283. package/build/core/server/processIdentity.js +13 -2
  284. package/build/core/server/processIdentity.js.map +1 -1
  285. package/build/core/server/runtimeLaunchIpc.d.ts +167 -2
  286. package/build/core/server/runtimeLaunchIpc.d.ts.map +1 -1
  287. package/build/core/server/runtimeOwnershipIdentityRepair.d.ts +21 -0
  288. package/build/core/server/runtimeOwnershipIdentityRepair.d.ts.map +1 -0
  289. package/build/core/server/runtimeOwnershipIdentityRepair.js +158 -0
  290. package/build/core/server/runtimeOwnershipIdentityRepair.js.map +1 -0
  291. package/build/core/server/runtimeReplacementConfig.d.ts +167 -2
  292. package/build/core/server/runtimeReplacementConfig.d.ts.map +1 -1
  293. package/build/core/server/runtimeScopeOwnership.d.ts +21 -2
  294. package/build/core/server/runtimeScopeOwnership.d.ts.map +1 -1
  295. package/build/core/server/runtimeScopeOwnership.js +145 -16
  296. package/build/core/server/runtimeScopeOwnership.js.map +1 -1
  297. package/build/core/tools/handlers/serverManagementHandler.d.ts +413 -7
  298. package/build/core/tools/handlers/serverManagementHandler.d.ts.map +1 -1
  299. package/build/core/tools/internal/adapters/helpers/configTransformers.d.ts +59 -1
  300. package/build/core/tools/internal/adapters/helpers/configTransformers.d.ts.map +1 -1
  301. package/build/core/tools/internal/schemas/index.d.ts +1 -1
  302. package/build/core/tools/internal/schemas/management.d.ts +1 -1
  303. package/build/core/types/server.d.ts +7 -1
  304. package/build/core/types/server.d.ts.map +1 -1
  305. package/build/core/types/transport.d.ts +249 -3
  306. package/build/core/types/transport.d.ts.map +1 -1
  307. package/build/core/types/transport.js +27 -0
  308. package/build/core/types/transport.js.map +1 -1
  309. package/build/domains/admin/adminInstructionPreviewRuntime.d.ts.map +1 -1
  310. package/build/domains/admin/adminInstructionPreviewRuntime.js +4 -1
  311. package/build/domains/admin/adminInstructionPreviewRuntime.js.map +1 -1
  312. package/build/domains/backend-preparation/adapterRegistry.d.ts +8 -0
  313. package/build/domains/backend-preparation/adapterRegistry.d.ts.map +1 -0
  314. package/build/domains/backend-preparation/adapterRegistry.js +15 -0
  315. package/build/domains/backend-preparation/adapterRegistry.js.map +1 -0
  316. package/build/domains/backend-preparation/builtInIntegrationDefinitions.d.ts +4 -0
  317. package/build/domains/backend-preparation/builtInIntegrationDefinitions.d.ts.map +1 -0
  318. package/build/domains/backend-preparation/builtInIntegrationDefinitions.js +3 -0
  319. package/build/domains/backend-preparation/builtInIntegrationDefinitions.js.map +1 -0
  320. package/build/domains/backend-preparation/configuredCommandAdapter.d.ts +88 -0
  321. package/build/domains/backend-preparation/configuredCommandAdapter.d.ts.map +1 -0
  322. package/build/domains/backend-preparation/configuredCommandAdapter.js +196 -0
  323. package/build/domains/backend-preparation/configuredCommandAdapter.js.map +1 -0
  324. package/build/domains/backend-preparation/configuredCommandProcess.d.ts +27 -0
  325. package/build/domains/backend-preparation/configuredCommandProcess.d.ts.map +1 -0
  326. package/build/domains/backend-preparation/configuredCommandProcess.js +183 -0
  327. package/build/domains/backend-preparation/configuredCommandProcess.js.map +1 -0
  328. package/build/domains/backend-preparation/contracts.d.ts +131 -0
  329. package/build/domains/backend-preparation/contracts.d.ts.map +1 -0
  330. package/build/domains/backend-preparation/contracts.js +2 -0
  331. package/build/domains/backend-preparation/contracts.js.map +1 -0
  332. package/build/domains/backend-preparation/integrationDefinitions.d.ts +171 -0
  333. package/build/domains/backend-preparation/integrationDefinitions.d.ts.map +1 -0
  334. package/build/domains/backend-preparation/integrationDefinitions.js +246 -0
  335. package/build/domains/backend-preparation/integrationDefinitions.js.map +1 -0
  336. package/build/domains/backend-preparation/policy.d.ts +50 -0
  337. package/build/domains/backend-preparation/policy.d.ts.map +1 -0
  338. package/build/domains/backend-preparation/policy.js +58 -0
  339. package/build/domains/backend-preparation/policy.js.map +1 -0
  340. package/build/domains/backend-preparation/scheduler.d.ts +18 -0
  341. package/build/domains/backend-preparation/scheduler.d.ts.map +1 -0
  342. package/build/domains/backend-preparation/scheduler.js +62 -0
  343. package/build/domains/backend-preparation/scheduler.js.map +1 -0
  344. package/build/domains/backend-preparation/service.d.ts +67 -0
  345. package/build/domains/backend-preparation/service.d.ts.map +1 -0
  346. package/build/domains/backend-preparation/service.js +709 -0
  347. package/build/domains/backend-preparation/service.js.map +1 -0
  348. package/build/domains/config-change/configChange.js +5 -5
  349. package/build/domains/config-change/configChange.js.map +1 -1
  350. package/build/domains/installation/knownServerCatalog.d.ts +14 -0
  351. package/build/domains/installation/knownServerCatalog.d.ts.map +1 -0
  352. package/build/domains/installation/knownServerCatalog.js +56 -0
  353. package/build/domains/installation/knownServerCatalog.js.map +1 -0
  354. package/build/domains/installation/knownServerSetup.d.ts +21 -0
  355. package/build/domains/installation/knownServerSetup.d.ts.map +1 -0
  356. package/build/domains/installation/knownServerSetup.js +330 -0
  357. package/build/domains/installation/knownServerSetup.js.map +1 -0
  358. package/build/domains/installation/knownServerSetupTypes.d.ts +34 -0
  359. package/build/domains/installation/knownServerSetupTypes.d.ts.map +1 -0
  360. package/build/domains/installation/knownServerSetupTypes.js +2 -0
  361. package/build/domains/installation/knownServerSetupTypes.js.map +1 -0
  362. package/build/domains/project-selection/projectBindingScope.d.ts +7 -0
  363. package/build/domains/project-selection/projectBindingScope.d.ts.map +1 -0
  364. package/build/domains/project-selection/projectBindingScope.js +9 -0
  365. package/build/domains/project-selection/projectBindingScope.js.map +1 -0
  366. package/build/domains/project-selection/projectPolicy.d.ts +11 -0
  367. package/build/domains/project-selection/projectPolicy.d.ts.map +1 -0
  368. package/build/domains/project-selection/projectPolicy.js +104 -0
  369. package/build/domains/project-selection/projectPolicy.js.map +1 -0
  370. package/build/domains/project-selection/projectSelection.d.ts +30 -0
  371. package/build/domains/project-selection/projectSelection.d.ts.map +1 -0
  372. package/build/domains/project-selection/projectSelection.js +124 -0
  373. package/build/domains/project-selection/projectSelection.js.map +1 -0
  374. package/build/globalOptions.d.ts +9 -0
  375. package/build/globalOptions.d.ts.map +1 -1
  376. package/build/globalOptions.js +13 -11
  377. package/build/globalOptions.js.map +1 -1
  378. package/build/observability/events/registry.d.ts +67 -1
  379. package/build/observability/events/registry.d.ts.map +1 -1
  380. package/build/observability/events/registry.js +67 -1
  381. package/build/observability/events/registry.js.map +1 -1
  382. package/build/observability/privacy/fields.d.ts +4 -0
  383. package/build/observability/privacy/fields.d.ts.map +1 -1
  384. package/build/observability/privacy/fields.js +4 -0
  385. package/build/observability/privacy/fields.js.map +1 -1
  386. package/build/sdk/legacy/client/runtime/backendDispatchLifetime.d.ts.map +1 -1
  387. package/build/sdk/legacy/client/runtime/backendDispatchLifetime.js +8 -2
  388. package/build/sdk/legacy/client/runtime/backendDispatchLifetime.js.map +1 -1
  389. package/build/sdk/legacy/client/runtime/legacyTransport.d.ts +2 -0
  390. package/build/sdk/legacy/client/runtime/legacyTransport.d.ts.map +1 -1
  391. package/build/sdk/legacy/client/runtime/serveClient.d.ts +6 -1
  392. package/build/sdk/legacy/client/runtime/serveClient.d.ts.map +1 -1
  393. package/build/sdk/legacy/client/runtime/serveClient.js +16 -5
  394. package/build/sdk/legacy/client/runtime/serveClient.js.map +1 -1
  395. package/build/sdk/legacy/commands/serve.d.ts.map +1 -1
  396. package/build/sdk/legacy/commands/serve.js +73 -4
  397. package/build/sdk/legacy/commands/serve.js.map +1 -1
  398. package/build/sdk/legacy/server/protocol/projectAdmission.d.ts +4 -0
  399. package/build/sdk/legacy/server/protocol/projectAdmission.d.ts.map +1 -0
  400. package/build/sdk/legacy/server/protocol/projectAdmission.js +24 -0
  401. package/build/sdk/legacy/server/protocol/projectAdmission.js.map +1 -0
  402. package/build/sdk/legacy/server/protocol/promptRequestHandlers.d.ts.map +1 -1
  403. package/build/sdk/legacy/server/protocol/promptRequestHandlers.js +6 -3
  404. package/build/sdk/legacy/server/protocol/promptRequestHandlers.js.map +1 -1
  405. package/build/sdk/legacy/server/protocol/resourceRequestHandlers.d.ts.map +1 -1
  406. package/build/sdk/legacy/server/protocol/resourceRequestHandlers.js +6 -4
  407. package/build/sdk/legacy/server/protocol/resourceRequestHandlers.js.map +1 -1
  408. package/build/sdk/legacy/server/protocol/resourceSubscriptions.d.ts +1 -1
  409. package/build/sdk/legacy/server/protocol/resourceSubscriptions.d.ts.map +1 -1
  410. package/build/sdk/legacy/server/protocol/resourceSubscriptions.js +193 -41
  411. package/build/sdk/legacy/server/protocol/resourceSubscriptions.js.map +1 -1
  412. package/build/sdk/legacy/server/protocol/toolRequestHandlers.d.ts.map +1 -1
  413. package/build/sdk/legacy/server/protocol/toolRequestHandlers.js +93 -17
  414. package/build/sdk/legacy/server/protocol/toolRequestHandlers.js.map +1 -1
  415. package/build/sdk/legacy/server/runtime/clientInstancePool.d.ts +12 -0
  416. package/build/sdk/legacy/server/runtime/clientInstancePool.d.ts.map +1 -1
  417. package/build/sdk/legacy/server/runtime/clientInstancePool.js +117 -4
  418. package/build/sdk/legacy/server/runtime/clientInstancePool.js.map +1 -1
  419. package/build/sdk/legacy/server/runtime/connectionManager.d.ts.map +1 -1
  420. package/build/sdk/legacy/server/runtime/connectionManager.js +2 -0
  421. package/build/sdk/legacy/server/runtime/connectionManager.js.map +1 -1
  422. package/build/sdk/legacy/server/runtime/requestContextPreparation.d.ts +19 -1
  423. package/build/sdk/legacy/server/runtime/requestContextPreparation.d.ts.map +1 -1
  424. package/build/sdk/legacy/server/runtime/requestContextPreparation.js +40 -7
  425. package/build/sdk/legacy/server/runtime/requestContextPreparation.js.map +1 -1
  426. package/build/sdk/legacy/server/runtime/serverManager.d.ts +6 -2
  427. package/build/sdk/legacy/server/runtime/serverManager.d.ts.map +1 -1
  428. package/build/sdk/legacy/server/runtime/serverManager.js +85 -17
  429. package/build/sdk/legacy/server/runtime/serverManager.js.map +1 -1
  430. package/build/sdk/legacy/server/runtime/templateServerManager.d.ts +26 -4
  431. package/build/sdk/legacy/server/runtime/templateServerManager.d.ts.map +1 -1
  432. package/build/sdk/legacy/server/runtime/templateServerManager.js +260 -14
  433. package/build/sdk/legacy/server/runtime/templateServerManager.js.map +1 -1
  434. package/build/sdk/legacy/transport/http/modernInboundLegacyBridge.js +1 -1
  435. package/build/sdk/legacy/transport/http/modernInboundLegacyBridge.js.map +1 -1
  436. package/build/sdk/legacy/transport/http/streamableSessionLifecycle.d.ts.map +1 -1
  437. package/build/sdk/legacy/transport/http/streamableSessionLifecycle.js +14 -3
  438. package/build/sdk/legacy/transport/http/streamableSessionLifecycle.js.map +1 -1
  439. package/build/sdk/legacy/transport/stdioProxyTransport.d.ts +1 -0
  440. package/build/sdk/legacy/transport/stdioProxyTransport.d.ts.map +1 -1
  441. package/build/sdk/legacy/transport/stdioProxyTransport.js +2 -0
  442. package/build/sdk/legacy/transport/stdioProxyTransport.js.map +1 -1
  443. package/build/template/handlebarsTemplateRenderer.d.ts.map +1 -1
  444. package/build/template/handlebarsTemplateRenderer.js +3 -0
  445. package/build/template/handlebarsTemplateRenderer.js.map +1 -1
  446. package/build/transport/http/middlewares/projectAdmission.d.ts +5 -0
  447. package/build/transport/http/middlewares/projectAdmission.d.ts.map +1 -0
  448. package/build/transport/http/middlewares/projectAdmission.js +33 -0
  449. package/build/transport/http/middlewares/projectAdmission.js.map +1 -0
  450. package/build/transport/http/routes/apiRoutes.d.ts.map +1 -1
  451. package/build/transport/http/routes/apiRoutes.js +4 -0
  452. package/build/transport/http/routes/apiRoutes.js.map +1 -1
  453. package/build/transport/http/routes/inspectHelpers.d.ts +1 -0
  454. package/build/transport/http/routes/inspectHelpers.d.ts.map +1 -1
  455. package/build/transport/http/routes/inspectHelpers.js +2 -0
  456. package/build/transport/http/routes/inspectHelpers.js.map +1 -1
  457. package/build/transport/http/routes/inspectRequestContext.d.ts +5 -2
  458. package/build/transport/http/routes/inspectRequestContext.d.ts.map +1 -1
  459. package/build/transport/http/routes/inspectRequestContext.js +41 -19
  460. package/build/transport/http/routes/inspectRequestContext.js.map +1 -1
  461. package/build/transport/http/routes/inspectRoutes.d.ts +11 -2
  462. package/build/transport/http/routes/inspectRoutes.d.ts.map +1 -1
  463. package/build/transport/http/routes/inspectRoutes.js +94 -24
  464. package/build/transport/http/routes/inspectRoutes.js.map +1 -1
  465. package/build/transport/http/routes/instructionsRoutes.d.ts.map +1 -1
  466. package/build/transport/http/routes/instructionsRoutes.js +20 -8
  467. package/build/transport/http/routes/instructionsRoutes.js.map +1 -1
  468. package/build/transport/http/routes/modernHttpRoutes.d.ts.map +1 -1
  469. package/build/transport/http/routes/modernHttpRoutes.js +96 -13
  470. package/build/transport/http/routes/modernHttpRoutes.js.map +1 -1
  471. package/build/transport/http/routes/modernInteractionBinding.d.ts.map +1 -1
  472. package/build/transport/http/routes/modernInteractionBinding.js +3 -9
  473. package/build/transport/http/routes/modernInteractionBinding.js.map +1 -1
  474. package/build/transport/http/routes/modernSubscriptions.d.ts.map +1 -1
  475. package/build/transport/http/routes/modernSubscriptions.js +7 -5
  476. package/build/transport/http/routes/modernSubscriptions.js.map +1 -1
  477. package/build/transport/http/routes/modernTemplateContext.d.ts +2 -1
  478. package/build/transport/http/routes/modernTemplateContext.d.ts.map +1 -1
  479. package/build/transport/http/routes/modernTemplateContext.js +14 -3
  480. package/build/transport/http/routes/modernTemplateContext.js.map +1 -1
  481. package/build/transport/http/routes/modernToolHeaderRegistry.d.ts.map +1 -1
  482. package/build/transport/http/routes/modernToolHeaderRegistry.js +2 -2
  483. package/build/transport/http/routes/modernToolHeaderRegistry.js.map +1 -1
  484. package/build/transport/http/routes/preparationRoutes.d.ts +26 -0
  485. package/build/transport/http/routes/preparationRoutes.d.ts.map +1 -0
  486. package/build/transport/http/routes/preparationRoutes.js +132 -0
  487. package/build/transport/http/routes/preparationRoutes.js.map +1 -0
  488. package/build/transport/http/routes/projectRoutes.d.ts +18 -0
  489. package/build/transport/http/routes/projectRoutes.d.ts.map +1 -0
  490. package/build/transport/http/routes/projectRoutes.js +159 -0
  491. package/build/transport/http/routes/projectRoutes.js.map +1 -0
  492. package/build/transport/http/routes/streamableHttpRoutes.d.ts.map +1 -1
  493. package/build/transport/http/routes/streamableHttpRoutes.js +24 -4
  494. package/build/transport/http/routes/streamableHttpRoutes.js.map +1 -1
  495. package/build/transport/http/routes/toolRoutes.d.ts.map +1 -1
  496. package/build/transport/http/routes/toolRoutes.js +163 -20
  497. package/build/transport/http/routes/toolRoutes.js.map +1 -1
  498. package/build/transport/http/utils/contextExtractor.d.ts +2 -0
  499. package/build/transport/http/utils/contextExtractor.d.ts.map +1 -1
  500. package/build/transport/http/utils/contextExtractor.js +11 -0
  501. package/build/transport/http/utils/contextExtractor.js.map +1 -1
  502. package/build/transport/http/utils/templateContextAuthority.d.ts +2 -0
  503. package/build/transport/http/utils/templateContextAuthority.d.ts.map +1 -1
  504. package/build/transport/http/utils/templateContextAuthority.js +23 -2
  505. package/build/transport/http/utils/templateContextAuthority.js.map +1 -1
  506. package/build/types/context.d.ts +13 -0
  507. package/build/types/context.d.ts.map +1 -1
  508. package/build/types/context.js.map +1 -1
  509. package/build/utils/cli/help.d.ts +7 -0
  510. package/build/utils/cli/help.d.ts.map +1 -0
  511. package/build/utils/cli/help.js +57 -0
  512. package/build/utils/cli/help.js.map +1 -0
  513. package/package.json +20 -22
  514. package/build/admin/assets/admin-icons-CYGTDZA5.js +0 -1
  515. package/build/admin/assets/admin-vendor-62eL-qdH.js +0 -1
  516. package/build/admin/assets/admin-vendor-BbMrl7MK.js +0 -3
  517. package/build/admin/assets/admin-vendor-DpjVwd81.js +0 -62
@@ -0,0 +1,78 @@
1
+ import type { ProjectSetMember } from '../../types/context.js';
2
+ import { z } from 'zod';
3
+ declare const targetSchema: z.ZodObject<{
4
+ project: z.ZodArray<z.ZodString>;
5
+ 'project-set': z.ZodOptional<z.ZodString>;
6
+ 'config-dir': z.ZodString;
7
+ runtimeScopeId: z.ZodString;
8
+ config: z.ZodOptional<z.ZodString>;
9
+ context: z.ZodOptional<z.ZodString>;
10
+ url: z.ZodOptional<z.ZodString>;
11
+ }, z.core.$strict>;
12
+ export type ProjectOwnerTarget = z.infer<typeof targetSchema>;
13
+ export interface HookOwnerIdentity {
14
+ client: 'codex' | 'claude';
15
+ sessionId: string;
16
+ agentId?: string;
17
+ }
18
+ export declare function hookProjectOwnerPath(storageDirectory: string, identity: HookOwnerIdentity): string;
19
+ /** A host identifier locates a private credential; it is never itself runtime authority. */
20
+ export declare function createHookProjectOwner(storageDirectory: string, identity: HookOwnerIdentity): Promise<string>;
21
+ export declare function readProjectOwner(file: string): Promise<string>;
22
+ export declare function projectOwnerId(token: string): string;
23
+ export declare function recordProjectOwnerTarget(ownerFile: string, input: ProjectOwnerTarget): Promise<void>;
24
+ export declare function readProjectOwnerTargets(ownerFile: string): Promise<ProjectOwnerTarget[]>;
25
+ /** Only verified terminal hooks may call this. Unknown files keep recovery state intact. */
26
+ export declare function removeProjectOwner(ownerFile: string): Promise<void>;
27
+ declare const assignmentSchema: z.ZodObject<{
28
+ version: z.ZodLiteral<1>;
29
+ worker: z.ZodBoolean;
30
+ project: z.ZodOptional<z.ZodArray<z.ZodString>>;
31
+ 'project-set': z.ZodOptional<z.ZodString>;
32
+ }, z.core.$strict>;
33
+ export type ProjectOwnerAssignment = z.infer<typeof assignmentSchema>;
34
+ export declare function recordProjectOwnerAssignment(ownerFile: string, assignment: ProjectOwnerAssignment): Promise<void>;
35
+ export declare function readProjectOwnerAssignment(ownerFile: string): Promise<ProjectOwnerAssignment | undefined>;
36
+ export declare function recordProjectOwnerSelection(ownerFile: string, target: Omit<ProjectOwnerTarget, 'project' | 'project-set'>, projects: ProjectSetMember[]): Promise<void>;
37
+ /** A stale lock is retained for inspection, never cleared by age or process guesses. */
38
+ export declare function withProjectOwnerLock<T>(ownerFile: string, action: () => Promise<T>): Promise<T>;
39
+ export declare function markProjectOwnerEnded(ownerFile: string, identity?: HookOwnerIdentity): Promise<void>;
40
+ export declare function readProjectOwnerTerminal(ownerFile: string): Promise<z.infer<typeof terminalOwnerSchema> | undefined>;
41
+ export declare function isProjectOwnerEnded(ownerFile: string): Promise<boolean>;
42
+ /** Persist successful runtime release before deleting any retry state. Caller holds the owner lock. */
43
+ export declare function markProjectOwnerReleased(ownerFile: string): Promise<void>;
44
+ export declare function assertProjectOwnerAbsent(ownerFile: string, identity: HookOwnerIdentity): Promise<void>;
45
+ declare const terminalOwnerSchema: z.ZodObject<{
46
+ version: z.ZodLiteral<1>;
47
+ identity: z.ZodOptional<z.ZodObject<{
48
+ client: z.ZodEnum<{
49
+ codex: "codex";
50
+ claude: "claude";
51
+ }>;
52
+ sessionId: z.ZodString;
53
+ agentId: z.ZodOptional<z.ZodString>;
54
+ }, z.core.$strict>>;
55
+ released: z.ZodOptional<z.ZodLiteral<true>>;
56
+ }, z.core.$strict>;
57
+ declare const threadLocatorSchema: z.ZodObject<{
58
+ version: z.ZodLiteral<1>;
59
+ identity: z.ZodObject<{
60
+ client: z.ZodEnum<{
61
+ codex: "codex";
62
+ claude: "claude";
63
+ }>;
64
+ sessionId: z.ZodString;
65
+ agentId: z.ZodOptional<z.ZodString>;
66
+ }, z.core.$strict>;
67
+ ownerFile: z.ZodString;
68
+ }, z.core.$strict>;
69
+ export declare function hookThreadLocatorPath(storageDirectory: string, client: HookOwnerIdentity['client'], threadId: string): string;
70
+ /** Only trusted hook input writes a locator; shell environment can only read it. */
71
+ export declare function recordHookThreadLocator(storageDirectory: string, identity: HookOwnerIdentity, ownerFile: string): Promise<void>;
72
+ /** A call holds its lease through admission and completion, without holding the owner lock. */
73
+ export declare function acquireProjectOwnerLease(ownerFile: string): Promise<() => Promise<void>>;
74
+ /** Unknown or crashed calls retain authority for inspection; age never clears a lease. */
75
+ export declare function assertNoProjectOwnerCalls(ownerFile: string): Promise<void>;
76
+ export declare function readHookThreadLocator(storageDirectory: string, client: HookOwnerIdentity['client'], threadId: string): Promise<z.infer<typeof threadLocatorSchema> | undefined>;
77
+ export {};
78
+ //# sourceMappingURL=projectOwnerStore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"projectOwnerStore.d.ts","sourceRoot":"","sources":["../../../src/commands/shared/projectOwnerStore.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,482 @@
1
+ import { createHash, randomBytes } from 'node:crypto';
2
+ import { link, lstat, mkdir, open, readdir, rename, rmdir, unlink, writeFile } from 'node:fs/promises';
3
+ import path from 'node:path';
4
+ import { setTimeout } from 'node:timers/promises';
5
+ import { projectSetSchema } from '../../domains/project-selection/projectSelection.js';
6
+ import { credentialReadFlags, hasSafeCredentialPermissions } from '../../utils/filePermissions.js';
7
+ import { z } from 'zod';
8
+ const credentialSchema = z.object({ version: z.literal(1), token: z.string().regex(/^[a-f0-9]{64}$/) }).strict();
9
+ const targetSchema = z
10
+ .object({
11
+ project: z.array(z.string().refine(path.isAbsolute)).min(1).max(32),
12
+ 'project-set': z.string().refine(path.isAbsolute).optional(),
13
+ 'config-dir': z.string().refine(path.isAbsolute),
14
+ runtimeScopeId: z.string().min(1),
15
+ config: z.string().refine(path.isAbsolute).optional(),
16
+ context: z.string().optional(),
17
+ url: z.string().url().optional(),
18
+ })
19
+ .strict()
20
+ .refine((target) => target.project.length === 1 || Boolean(target['project-set']), {
21
+ message: 'Native-set cleanup requires an immutable selection snapshot',
22
+ });
23
+ export function hookProjectOwnerPath(storageDirectory, identity) {
24
+ if (!identity.sessionId || identity.agentId === '')
25
+ throw new Error('Missing hook owner identity');
26
+ const key = createHash('sha256')
27
+ .update(JSON.stringify([identity.client, identity.sessionId, identity.agentId ?? null]))
28
+ .digest('hex');
29
+ return path.resolve(storageDirectory, 'project-owners', `${key}.json`);
30
+ }
31
+ /** A host identifier locates a private credential; it is never itself runtime authority. */
32
+ export async function createHookProjectOwner(storageDirectory, identity) {
33
+ const file = hookProjectOwnerPath(storageDirectory, identity);
34
+ const directory = path.dirname(file);
35
+ await mkdir(directory, { recursive: true, mode: 0o700 });
36
+ await assertPrivateDirectory(directory);
37
+ await publishPrivateRecord(file, JSON.stringify({ version: 1, token: randomBytes(32).toString('hex') }));
38
+ await readProjectOwner(file);
39
+ return file;
40
+ }
41
+ export async function readProjectOwner(file) {
42
+ if (!path.isAbsolute(file))
43
+ throw new Error('Project owner credential must be an absolute path');
44
+ await assertPrivateDirectory(path.dirname(file));
45
+ const handle = await open(file, credentialReadFlags(), 0o600);
46
+ try {
47
+ const info = await handle.stat();
48
+ if (!info.isFile() || !hasSafeCredentialPermissions(info, 0o077)) {
49
+ throw new Error('Project owner credential must be a private owner-only file');
50
+ }
51
+ if (info.size > 4096)
52
+ throw new Error('Invalid project owner credential');
53
+ return credentialSchema.parse(JSON.parse(await handle.readFile('utf8'))).token;
54
+ }
55
+ finally {
56
+ await handle.close();
57
+ }
58
+ }
59
+ export function projectOwnerId(token) {
60
+ const bytes = createHash('sha256').update(token).digest();
61
+ bytes[6] = (bytes[6] & 0x0f) | 0x40;
62
+ bytes[8] = (bytes[8] & 0x3f) | 0x80;
63
+ const hex = bytes.subarray(0, 16).toString('hex');
64
+ return `${hex.slice(0, 8)}-${hex.slice(8, 12)}-${hex.slice(12, 16)}-${hex.slice(16, 20)}-${hex.slice(20)}`;
65
+ }
66
+ export async function recordProjectOwnerTarget(ownerFile, input) {
67
+ await withProjectOwnerLock(ownerFile, async () => {
68
+ await assertOwnerActive(ownerFile);
69
+ await recordProjectOwnerTargetUnlocked(ownerFile, input);
70
+ });
71
+ }
72
+ async function recordProjectOwnerTargetUnlocked(ownerFile, input) {
73
+ await readProjectOwner(ownerFile);
74
+ const target = targetSchema.parse(input);
75
+ const directory = `${ownerFile}.targets`;
76
+ await mkdir(directory, { recursive: true, mode: 0o700 });
77
+ await assertPrivateDirectory(directory);
78
+ const content = JSON.stringify(target);
79
+ const file = path.join(directory, `${createHash('sha256').update(content).digest('hex')}.json`);
80
+ await publishPrivateRecord(file, content);
81
+ }
82
+ /** Snapshot only the canonical selected members, independent of the original definition file. */
83
+ async function recordProjectOwnerSelectionUnlocked(ownerFile, target, projects) {
84
+ await readProjectOwner(ownerFile);
85
+ const selection = projectSetSchema.parse({ projects, selection: projects.map((project) => project.label) });
86
+ const directory = `${ownerFile}.targets`;
87
+ await mkdir(directory, { recursive: true, mode: 0o700 });
88
+ await assertPrivateDirectory(directory);
89
+ const content = JSON.stringify(selection);
90
+ const snapshot = path.join(directory, `${createHash('sha256').update(content).digest('hex')}.selection.json`);
91
+ await publishPrivateRecord(snapshot, content);
92
+ await recordProjectOwnerTargetUnlocked(ownerFile, {
93
+ ...target,
94
+ project: projects.map((project) => project.path),
95
+ 'project-set': snapshot,
96
+ });
97
+ }
98
+ export async function readProjectOwnerTargets(ownerFile) {
99
+ await readProjectOwner(ownerFile);
100
+ const directory = `${ownerFile}.targets`;
101
+ let names;
102
+ try {
103
+ await assertPrivateDirectory(directory);
104
+ names = await readdir(directory);
105
+ }
106
+ catch (error) {
107
+ if (error instanceof Error && 'code' in error && error.code === 'ENOENT')
108
+ return [];
109
+ throw error;
110
+ }
111
+ const targets = [];
112
+ for (const name of names.filter((entry) => /^[a-f0-9]{64}\.json$/.test(entry)).sort()) {
113
+ const handle = await open(path.join(directory, name), credentialReadFlags(), 0o600);
114
+ try {
115
+ const info = await handle.stat();
116
+ if (!info.isFile() || info.size > 16384 || !hasSafeCredentialPermissions(info, 0o077))
117
+ throw new Error('Invalid project owner target');
118
+ targets.push(targetSchema.parse(JSON.parse(await handle.readFile('utf8'))));
119
+ }
120
+ finally {
121
+ await handle.close();
122
+ }
123
+ }
124
+ return targets;
125
+ }
126
+ async function assertPrivateDirectory(directory) {
127
+ const info = await lstat(directory);
128
+ if (!info.isDirectory() || info.isSymbolicLink() || !hasSafeCredentialPermissions(info, 0o077)) {
129
+ throw new Error('Project owner credentials require a private owner-only directory');
130
+ }
131
+ }
132
+ /** Publish complete records without replacing a concurrent hook's credential or target. */
133
+ async function publishPrivateRecord(file, content) {
134
+ const temporary = `${file}.${randomBytes(12).toString('hex')}.tmp`;
135
+ try {
136
+ const handle = await open(temporary, 'wx', 0o600);
137
+ try {
138
+ await handle.writeFile(content);
139
+ }
140
+ finally {
141
+ await handle.close();
142
+ }
143
+ await link(temporary, file);
144
+ }
145
+ catch (error) {
146
+ if (!(error instanceof Error && 'code' in error && error.code === 'EEXIST'))
147
+ throw error;
148
+ }
149
+ finally {
150
+ await unlink(temporary).catch((error) => {
151
+ if (!(error instanceof Error && 'code' in error && error.code === 'ENOENT'))
152
+ throw error;
153
+ });
154
+ }
155
+ }
156
+ /** Only verified terminal hooks may call this. Unknown files keep recovery state intact. */
157
+ export async function removeProjectOwner(ownerFile) {
158
+ const ended = await readProjectOwnerTerminal(ownerFile);
159
+ if (!ended?.released)
160
+ throw new Error('Terminal cleanup requires persisted release proof');
161
+ await assertNoProjectOwnerCalls(ownerFile);
162
+ try {
163
+ await readProjectOwner(ownerFile);
164
+ }
165
+ catch (error) {
166
+ if (!(error instanceof Error && 'code' in error && error.code === 'ENOENT'))
167
+ throw error;
168
+ }
169
+ const directory = `${ownerFile}.targets`;
170
+ let names = [];
171
+ try {
172
+ await assertPrivateDirectory(directory);
173
+ names = await readdir(directory);
174
+ }
175
+ catch (error) {
176
+ if (!(error instanceof Error && 'code' in error && error.code === 'ENOENT'))
177
+ throw error;
178
+ }
179
+ if (names.some((name) => !/^[a-f0-9]{64}(\.selection)?\.json$/.test(name))) {
180
+ throw new Error('Unrecognized owner records; terminal cleanup requires inspection');
181
+ }
182
+ let locatorFile;
183
+ if (ended.identity) {
184
+ const storageDirectory = path.dirname(path.dirname(ownerFile));
185
+ const thread = ended.identity.agentId ?? ended.identity.sessionId;
186
+ const locator = await readHookThreadLocatorRecord(storageDirectory, ended.identity.client, thread);
187
+ if (locator && locator.ownerFile !== ownerFile)
188
+ throw new Error('Terminal locator and owner disagree');
189
+ if (locator)
190
+ locatorFile = hookThreadLocatorPath(storageDirectory, ended.identity.client, thread);
191
+ }
192
+ for (const name of names)
193
+ await unlink(path.join(directory, name));
194
+ await rmdir(directory).catch((error) => {
195
+ if (!(error instanceof Error && 'code' in error && error.code === 'ENOENT'))
196
+ throw error;
197
+ });
198
+ await assertNoProjectOwnerCalls(ownerFile);
199
+ await rmdir(`${ownerFile}.calls`).catch((error) => {
200
+ if (!(error instanceof Error && 'code' in error && error.code === 'ENOENT'))
201
+ throw error;
202
+ });
203
+ for (const suffix of ['.assignment.json', '.worker']) {
204
+ await unlink(`${ownerFile}${suffix}`).catch((error) => {
205
+ if (!(error instanceof Error && 'code' in error && error.code === 'ENOENT'))
206
+ throw error;
207
+ });
208
+ }
209
+ if (locatorFile)
210
+ await unlink(locatorFile);
211
+ await unlink(ownerFile).catch((error) => {
212
+ if (!(error instanceof Error && 'code' in error && error.code === 'ENOENT'))
213
+ throw error;
214
+ });
215
+ await unlink(`${ownerFile}.ended`).catch((error) => {
216
+ if (!(error instanceof Error && 'code' in error && error.code === 'ENOENT'))
217
+ throw error;
218
+ });
219
+ }
220
+ const assignmentSchema = z
221
+ .object({
222
+ version: z.literal(1),
223
+ worker: z.boolean(),
224
+ project: z.array(z.string().min(1)).min(1).max(32).optional(),
225
+ 'project-set': z.string().refine(path.isAbsolute).optional(),
226
+ })
227
+ .strict()
228
+ .refine((value) => Boolean(value['project-set']) ||
229
+ !value.project ||
230
+ (value.project.length === 1 && path.isAbsolute(value.project[0])), 'Worker assignment must name one absolute checkout or a project set');
231
+ export async function recordProjectOwnerAssignment(ownerFile, assignment) {
232
+ await withProjectOwnerLock(ownerFile, async () => {
233
+ await assertOwnerActive(ownerFile);
234
+ await recordProjectOwnerAssignmentUnlocked(ownerFile, assignment);
235
+ });
236
+ }
237
+ async function recordProjectOwnerAssignmentUnlocked(ownerFile, assignment) {
238
+ await readProjectOwner(ownerFile);
239
+ // An unresolved startup can be followed by the worker's explicit dispatch assignment.
240
+ // Do not publish a default until dispatch actually provides it.
241
+ if (!assignment.project && !assignment['project-set']) {
242
+ if (assignment.worker)
243
+ await publishPrivateRecord(`${ownerFile}.worker`, '{}');
244
+ return;
245
+ }
246
+ if (assignment.worker)
247
+ await publishPrivateRecord(`${ownerFile}.worker`, '{}');
248
+ const content = JSON.stringify(assignmentSchema.parse(assignment));
249
+ await publishPrivateRecord(`${ownerFile}.assignment.json`, content);
250
+ const existing = await readProjectOwnerAssignment(ownerFile);
251
+ if (assignment.worker && JSON.stringify(existing) !== content)
252
+ throw new Error('Worker assignment already exists; use a per-call --project override');
253
+ }
254
+ export async function readProjectOwnerAssignment(ownerFile) {
255
+ await readProjectOwner(ownerFile);
256
+ try {
257
+ const handle = await open(`${ownerFile}.assignment.json`, credentialReadFlags(), 0o600);
258
+ try {
259
+ const info = await handle.stat();
260
+ if (!info.isFile() || info.size > 65536 || !hasSafeCredentialPermissions(info, 0o077))
261
+ throw new Error('Invalid worker assignment');
262
+ return assignmentSchema.parse(JSON.parse(await handle.readFile('utf8')));
263
+ }
264
+ finally {
265
+ await handle.close();
266
+ }
267
+ }
268
+ catch (error) {
269
+ if (!(error instanceof Error && 'code' in error && error.code === 'ENOENT'))
270
+ throw error;
271
+ }
272
+ try {
273
+ const info = await lstat(`${ownerFile}.worker`);
274
+ if (!info.isFile() || info.isSymbolicLink() || !hasSafeCredentialPermissions(info, 0o077))
275
+ throw new Error('Invalid worker marker');
276
+ return { version: 1, worker: true };
277
+ }
278
+ catch (error) {
279
+ if (error instanceof Error && 'code' in error && error.code === 'ENOENT')
280
+ return undefined;
281
+ throw error;
282
+ }
283
+ }
284
+ export async function recordProjectOwnerSelection(ownerFile, target, projects) {
285
+ await withProjectOwnerLock(ownerFile, async () => {
286
+ await assertOwnerActive(ownerFile);
287
+ await recordProjectOwnerSelectionUnlocked(ownerFile, target, projects);
288
+ });
289
+ }
290
+ /** A stale lock is retained for inspection, never cleared by age or process guesses. */
291
+ export async function withProjectOwnerLock(ownerFile, action) {
292
+ await assertPrivateDirectory(path.dirname(ownerFile));
293
+ const lock = `${ownerFile}.lock`;
294
+ const deadline = Date.now() + 5000;
295
+ for (;;) {
296
+ try {
297
+ await mkdir(lock, { mode: 0o700 });
298
+ break;
299
+ }
300
+ catch (error) {
301
+ if (!(error instanceof Error && 'code' in error && error.code === 'EEXIST'))
302
+ throw error;
303
+ if (Date.now() >= deadline)
304
+ throw new Error('Owner state is busy or has an abandoned lock; inspect before recovery');
305
+ await setTimeout(25);
306
+ }
307
+ }
308
+ try {
309
+ return await action();
310
+ }
311
+ finally {
312
+ await rmdir(lock);
313
+ }
314
+ }
315
+ export async function markProjectOwnerEnded(ownerFile, identity) {
316
+ await readProjectOwner(ownerFile);
317
+ await publishPrivateRecord(`${ownerFile}.ended`, JSON.stringify({ version: 1, ...(identity ? { identity } : {}) }));
318
+ }
319
+ export async function readProjectOwnerTerminal(ownerFile) {
320
+ if (!path.isAbsolute(ownerFile))
321
+ throw new Error('Owner path must be absolute');
322
+ await assertPrivateDirectory(path.dirname(ownerFile));
323
+ try {
324
+ const handle = await open(`${ownerFile}.ended`, credentialReadFlags(), 0o600);
325
+ try {
326
+ const info = await handle.stat();
327
+ if (!info.isFile() || info.size > 16384 || !hasSafeCredentialPermissions(info, 0o077))
328
+ throw new Error('Invalid terminal owner record');
329
+ return terminalOwnerSchema.parse(JSON.parse(await handle.readFile('utf8')));
330
+ }
331
+ finally {
332
+ await handle.close();
333
+ }
334
+ }
335
+ catch (error) {
336
+ if (error instanceof Error && 'code' in error && error.code === 'ENOENT')
337
+ return undefined;
338
+ throw error;
339
+ }
340
+ }
341
+ export async function isProjectOwnerEnded(ownerFile) {
342
+ return Boolean(await readProjectOwnerTerminal(ownerFile));
343
+ }
344
+ /** Persist successful runtime release before deleting any retry state. Caller holds the owner lock. */
345
+ export async function markProjectOwnerReleased(ownerFile) {
346
+ const terminal = await readProjectOwnerTerminal(ownerFile);
347
+ if (!terminal)
348
+ throw new Error('Verified terminal record required');
349
+ const temporary = `${ownerFile}.${randomBytes(12).toString('hex')}.tmp`;
350
+ try {
351
+ await writeFile(temporary, JSON.stringify({ ...terminal, released: true }), { flag: 'wx', mode: 0o600 });
352
+ await rename(temporary, `${ownerFile}.ended`);
353
+ }
354
+ finally {
355
+ await unlink(temporary).catch((error) => {
356
+ if (!(error instanceof Error && 'code' in error && error.code === 'ENOENT'))
357
+ throw error;
358
+ });
359
+ }
360
+ }
361
+ export async function assertProjectOwnerAbsent(ownerFile, identity) {
362
+ const names = ['.targets', '.assignment.json', '.worker', '.calls', '.ended'].map((suffix) => `${ownerFile}${suffix}`);
363
+ names.push(hookThreadLocatorPath(path.dirname(path.dirname(ownerFile)), identity.client, identity.agentId ?? identity.sessionId));
364
+ for (const file of names) {
365
+ try {
366
+ await lstat(file);
367
+ }
368
+ catch (error) {
369
+ if (error instanceof Error && 'code' in error && error.code === 'ENOENT')
370
+ continue;
371
+ throw error;
372
+ }
373
+ throw new Error('Owner credential is missing but recovery records remain; inspect uncertain cleanup');
374
+ }
375
+ }
376
+ async function assertOwnerActive(ownerFile) {
377
+ if (await isProjectOwnerEnded(ownerFile))
378
+ throw new Error('Session has ended; use project recover to retry recorded cleanup');
379
+ }
380
+ const hookOwnerIdentitySchema = z
381
+ .object({
382
+ client: z.enum(['codex', 'claude']),
383
+ sessionId: z.string().min(1).max(512),
384
+ agentId: z.string().min(1).max(512).optional(),
385
+ })
386
+ .strict();
387
+ const terminalOwnerSchema = z
388
+ .object({ version: z.literal(1), identity: hookOwnerIdentitySchema.optional(), released: z.literal(true).optional() })
389
+ .strict();
390
+ const threadLocatorSchema = z
391
+ .object({
392
+ version: z.literal(1),
393
+ identity: hookOwnerIdentitySchema,
394
+ ownerFile: z.string().refine(path.isAbsolute),
395
+ })
396
+ .strict();
397
+ export function hookThreadLocatorPath(storageDirectory, client, threadId) {
398
+ const key = createHash('sha256')
399
+ .update(JSON.stringify([client, threadId]))
400
+ .digest('hex');
401
+ return path.resolve(storageDirectory, 'project-owners', `${key}.thread.json`);
402
+ }
403
+ /** Only trusted hook input writes a locator; shell environment can only read it. */
404
+ export async function recordHookThreadLocator(storageDirectory, identity, ownerFile) {
405
+ await readProjectOwner(ownerFile);
406
+ if (ownerFile !== hookProjectOwnerPath(storageDirectory, identity))
407
+ throw new Error('Hook identity and explicit owner disagree');
408
+ const file = hookThreadLocatorPath(storageDirectory, identity.client, identity.agentId ?? identity.sessionId);
409
+ const content = JSON.stringify(threadLocatorSchema.parse({ version: 1, identity, ownerFile }));
410
+ await publishPrivateRecord(file, content);
411
+ const existing = await readHookThreadLocator(storageDirectory, identity.client, identity.agentId ?? identity.sessionId);
412
+ if (JSON.stringify(existing) !== content)
413
+ throw new Error('Hook thread identity records disagree');
414
+ }
415
+ async function readHookThreadLocatorRecord(storageDirectory, client, threadId) {
416
+ const file = hookThreadLocatorPath(storageDirectory, client, threadId);
417
+ let handle;
418
+ try {
419
+ await assertPrivateDirectory(path.dirname(file));
420
+ handle = await open(file, credentialReadFlags(), 0o600);
421
+ }
422
+ catch (error) {
423
+ if (error instanceof Error && 'code' in error && error.code === 'ENOENT')
424
+ return undefined;
425
+ throw error;
426
+ }
427
+ try {
428
+ const info = await handle.stat();
429
+ if (!info.isFile() || info.size > 16384 || !hasSafeCredentialPermissions(info, 0o077))
430
+ throw new Error('Invalid private thread locator');
431
+ const record = threadLocatorSchema.parse(JSON.parse(await handle.readFile('utf8')));
432
+ if (record.identity.client !== client || (record.identity.agentId ?? record.identity.sessionId) !== threadId)
433
+ throw new Error('Thread locator identity mismatch');
434
+ if (record.ownerFile !== hookProjectOwnerPath(storageDirectory, record.identity))
435
+ throw new Error('Thread locator owner mismatch');
436
+ return record;
437
+ }
438
+ finally {
439
+ await handle.close();
440
+ }
441
+ }
442
+ /** A call holds its lease through admission and completion, without holding the owner lock. */
443
+ export async function acquireProjectOwnerLease(ownerFile) {
444
+ const directory = `${ownerFile}.calls`;
445
+ const file = path.join(directory, `${randomBytes(16).toString('hex')}.json`);
446
+ await withProjectOwnerLock(ownerFile, async () => {
447
+ await readProjectOwner(ownerFile);
448
+ await assertOwnerActive(ownerFile);
449
+ await mkdir(directory, { recursive: true, mode: 0o700 });
450
+ await assertPrivateDirectory(directory);
451
+ await publishPrivateRecord(file, '{"version":1}');
452
+ });
453
+ let released = false;
454
+ return async () => {
455
+ if (released)
456
+ return;
457
+ await withProjectOwnerLock(ownerFile, async () => {
458
+ await unlink(file);
459
+ });
460
+ released = true;
461
+ };
462
+ }
463
+ /** Unknown or crashed calls retain authority for inspection; age never clears a lease. */
464
+ export async function assertNoProjectOwnerCalls(ownerFile) {
465
+ const directory = `${ownerFile}.calls`;
466
+ try {
467
+ await assertPrivateDirectory(directory);
468
+ if ((await readdir(directory)).length)
469
+ throw new Error('Session cleanup has pending or uncertain caller leases; retry after calls finish or inspect abandoned state');
470
+ }
471
+ catch (error) {
472
+ if (!(error instanceof Error && 'code' in error && error.code === 'ENOENT'))
473
+ throw error;
474
+ }
475
+ }
476
+ export async function readHookThreadLocator(storageDirectory, client, threadId) {
477
+ const record = await readHookThreadLocatorRecord(storageDirectory, client, threadId);
478
+ if (record)
479
+ await readProjectOwner(record.ownerFile);
480
+ return record;
481
+ }
482
+ //# sourceMappingURL=projectOwnerStore.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"projectOwnerStore.js","sourceRoot":"","sources":["../../../src/commands/shared/projectOwnerStore.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ import type { GlobalOptions } from '../../globalOptions.js';
2
+ import type { Argv } from 'yargs';
3
+ export interface ProjectSelectionOptions {
4
+ project?: string[];
5
+ 'project-set'?: string;
6
+ }
7
+ export declare const projectSelectionOptions: {
8
+ readonly project: {
9
+ readonly describe: "Per-call checkout override, or selected labels from --project-set; defaults to the assigned session project or cwd";
10
+ readonly type: "array";
11
+ readonly string: true;
12
+ readonly nargs: 1;
13
+ readonly requiresArg: true;
14
+ readonly global: false;
15
+ };
16
+ readonly 'project-set': {
17
+ readonly describe: "Path to a saved JSON project-set definition (no global project switch)";
18
+ readonly type: "string";
19
+ readonly requiresArg: true;
20
+ readonly global: false;
21
+ };
22
+ };
23
+ export declare function withProjectSelectionOptions(yargs: Argv): Argv<GlobalOptions & ProjectSelectionOptions>;
24
+ //# sourceMappingURL=projectSelectionOptions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"projectSelectionOptions.d.ts","sourceRoot":"","sources":["../../../src/commands/shared/projectSelectionOptions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAE3D,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AAElC,MAAM,WAAW,uBAAuB;IACtC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;CAgB1B,CAAC;AAEX,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,IAAI,GAAG,IAAI,CAAC,aAAa,GAAG,uBAAuB,CAAC,CAEtG"}
@@ -0,0 +1,20 @@
1
+ export const projectSelectionOptions = {
2
+ project: {
3
+ describe: 'Per-call checkout override, or selected labels from --project-set; defaults to the assigned session project or cwd',
4
+ type: 'array',
5
+ string: true,
6
+ nargs: 1,
7
+ requiresArg: true,
8
+ global: false,
9
+ },
10
+ 'project-set': {
11
+ describe: 'Path to a saved JSON project-set definition (no global project switch)',
12
+ type: 'string',
13
+ requiresArg: true,
14
+ global: false,
15
+ },
16
+ };
17
+ export function withProjectSelectionOptions(yargs) {
18
+ return yargs.options(projectSelectionOptions).group(Object.keys(projectSelectionOptions), 'Project selection:');
19
+ }
20
+ //# sourceMappingURL=projectSelectionOptions.js.map