@agimon-ai/po-core 0.0.0-alpha.2 → 0.0.0-alpha.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +149 -21
- package/NOTICE +41 -0
- package/dist/agentModel.cjs +1 -1
- package/dist/agentModel.d.mts +2 -2
- package/dist/agentModel.mjs +1 -2
- package/dist/apiContracts.cjs +623 -802
- package/dist/apiContracts.cjs.map +1 -1
- package/dist/apiContracts.d.mts +277 -615
- package/dist/apiContracts.d.mts.map +1 -1
- package/dist/apiContracts.mjs +617 -794
- package/dist/apiContracts.mjs.map +1 -1
- package/dist/askUser.cjs +2 -2
- package/dist/askUser.d.mts +2 -2
- package/dist/askUser.mjs +1 -2
- package/dist/authorTools.mjs +1 -2
- package/dist/backgroundWork.cjs +3 -3
- package/dist/backgroundWork.d.mts +2 -2
- package/dist/backgroundWork.mjs +1 -2
- package/dist/bundleAssetPolicy.mjs +1 -2
- package/dist/chatgptAuth.cjs +3 -2
- package/dist/chatgptAuth.d.mts +3 -2
- package/dist/chatgptAuth.mjs +2 -1
- package/dist/childProcess.cjs +1 -1
- package/dist/childProcess.d.mts +2 -2
- package/dist/childProcess.mjs +1 -2
- package/dist/childSession.cjs +11 -6
- package/dist/childSession.d.mts +3 -3
- package/dist/childSession.mjs +3 -3
- package/dist/cockpitContainer.mjs +1 -2
- package/dist/config.cjs +1 -1
- package/dist/config.d.mts +3 -3
- package/dist/config.mjs +1 -2
- package/dist/contextApi.cjs +1 -0
- package/dist/contextApi.d.mts +2 -2
- package/dist/contextApi.mjs +2 -2
- package/dist/contextContributions.cjs +4 -4
- package/dist/contextContributions.d.mts +3 -3
- package/dist/contextContributions.mjs +3 -3
- package/dist/contextDetailStore.cjs +7 -5
- package/dist/contextDetailStore.cjs.map +1 -1
- package/dist/contextDetailStore.d.mts +2 -1
- package/dist/contextDetailStore.d.mts.map +1 -1
- package/dist/contextDetailStore.mjs +6 -4
- package/dist/contextDetailStore.mjs.map +1 -1
- package/dist/contextProjection.cjs +7 -2
- package/dist/contextProjection.cjs.map +1 -1
- package/dist/contextProjection.d.mts +4 -1
- package/dist/contextProjection.d.mts.map +1 -1
- package/dist/contextProjection.mjs +5 -2
- package/dist/contextProjection.mjs.map +1 -1
- package/dist/cordisHost.cjs +11 -11
- package/dist/cordisHost.d.mts +2 -2
- package/dist/cordisHost.mjs +1 -2
- package/dist/delegation.cjs +8 -8
- package/dist/delegation.d.mts +2 -2
- package/dist/delegation.mjs +1 -2
- package/dist/executionBudget.cjs +4 -3
- package/dist/executionBudget.cjs.map +1 -1
- package/dist/executionBudget.d.mts +2 -2
- package/dist/executionBudget.d.mts.map +1 -1
- package/dist/executionBudget.mjs +4 -3
- package/dist/executionBudget.mjs.map +1 -1
- package/dist/extensionFile.cjs +5 -0
- package/dist/extensionFile.d.mts +4 -2
- package/dist/extensionFile.mjs +4 -2
- package/dist/footer.d.mts +2 -2
- package/dist/footer.mjs +1 -2
- package/dist/headless.cjs +14 -14
- package/dist/headless.d.mts +2 -2
- package/dist/headless.mjs +1 -2
- package/dist/headlessHub.cjs +308 -109
- package/dist/headlessHub.cjs.map +1 -1
- package/dist/headlessHub.d.mts +71 -36
- package/dist/headlessHub.d.mts.map +1 -1
- package/dist/headlessHub.mjs +309 -110
- package/dist/headlessHub.mjs.map +1 -1
- package/dist/headlessProtocol.cjs +327 -0
- package/dist/headlessProtocol.cjs.map +1 -0
- package/dist/headlessProtocol.d.mts +30 -0
- package/dist/headlessProtocol.d.mts.map +1 -0
- package/dist/headlessProtocol.mjs +326 -0
- package/dist/headlessProtocol.mjs.map +1 -0
- package/dist/headlessServer.cjs +166 -151
- package/dist/headlessServer.cjs.map +1 -1
- package/dist/headlessServer.d.mts +13 -5
- package/dist/headlessServer.d.mts.map +1 -1
- package/dist/headlessServer.mjs +166 -151
- package/dist/headlessServer.mjs.map +1 -1
- package/dist/headlessSessionHost.d.mts +58 -21
- package/dist/headlessSessionHost.d.mts.map +1 -1
- package/dist/help.cjs +20 -20
- package/dist/help.d.mts +2 -2
- package/dist/help.mjs +2 -2
- package/dist/history.cjs +16 -20
- package/dist/history.d.mts +9 -7
- package/dist/history.mjs +6 -7
- package/dist/historyOwnership.cjs.map +1 -1
- package/dist/historyOwnership.d.mts +1 -1
- package/dist/historyOwnership.mjs.map +1 -1
- package/dist/hubChannel.cjs +9 -0
- package/dist/hubChannel.d.mts +3 -2
- package/dist/hubChannel.mjs +3 -2
- package/dist/index.cjs +26 -28
- package/dist/index.d.mts +6 -6
- package/dist/index.mjs +6 -6
- package/dist/interop/chord.mjs +1 -0
- package/dist/interop/chordContext.mjs +1 -0
- package/dist/json.cjs +11 -5
- package/dist/json.d.mts +4 -2
- package/dist/json.mjs +4 -2
- package/dist/kernel.cjs +1 -1
- package/dist/kernel.d.mts +3 -3
- package/dist/kernel.mjs +1 -2
- package/dist/leader.d.mts +2 -2
- package/dist/leader.mjs +1 -2
- package/dist/logSinkTelemetry.mjs +1 -2
- package/dist/machineApi.cjs +80 -74
- package/dist/machineApi.cjs.map +1 -1
- package/dist/machineApi.d.mts +5 -2
- package/dist/machineApi.d.mts.map +1 -1
- package/dist/machineApi.mjs +78 -71
- package/dist/machineApi.mjs.map +1 -1
- package/dist/main.cjs +2 -1
- package/dist/main.d.mts +2 -1
- package/dist/main.mjs +2 -1
- package/dist/mcpFacet.d.mts +3 -3
- package/dist/mcpProjection.cjs +13 -13
- package/dist/mcpProjection.d.mts +2 -2
- package/dist/mcpProjection.mjs +1 -2
- package/dist/mcpSchemaCost.cjs +4 -4
- package/dist/mcpSchemaCost.cjs.map +1 -1
- package/dist/mcpSchemaCost.d.mts +2 -2
- package/dist/mcpSchemaCost.mjs +4 -4
- package/dist/mcpSchemaCost.mjs.map +1 -1
- package/dist/mcpSession.cjs +7 -7
- package/dist/mcpSession.d.mts +2 -2
- package/dist/mcpSession.mjs +1 -2
- package/dist/mcpStatus.cjs +2 -2
- package/dist/mcpStatus.d.mts +2 -2
- package/dist/mcpStatus.mjs +1 -2
- package/dist/mcpToolResolver.cjs +3 -3
- package/dist/mcpToolResolver.d.mts +2 -2
- package/dist/mcpToolResolver.mjs +1 -2
- package/dist/mcpWidget.d.mts +2 -2
- package/dist/moduleResolution.cjs +43 -8
- package/dist/moduleResolution.cjs.map +1 -1
- package/dist/moduleResolution.d.mts +10 -1
- package/dist/moduleResolution.d.mts.map +1 -1
- package/dist/moduleResolution.mjs +40 -7
- package/dist/moduleResolution.mjs.map +1 -1
- package/dist/narration.cjs +3 -3
- package/dist/narration.d.mts +2 -2
- package/dist/narration.mjs +1 -2
- package/dist/native.cjs +9 -0
- package/dist/native.d.mts +4 -3
- package/dist/native.mjs +3 -2
- package/dist/nodePlatform.cjs +77 -0
- package/dist/nodePlatform.cjs.map +1 -0
- package/dist/nodePlatform.d.mts +17 -0
- package/dist/nodePlatform.d.mts.map +1 -0
- package/dist/nodePlatform.mjs +72 -0
- package/dist/nodePlatform.mjs.map +1 -0
- package/dist/notification.cjs +15 -15
- package/dist/notification.d.mts +2 -2
- package/dist/notification.mjs +1 -2
- package/dist/packageApi.cjs +11 -11
- package/dist/packageApi.d.mts +2 -2
- package/dist/packageApi.mjs +2 -2
- package/dist/packageApiServer.cjs +45 -27
- package/dist/packageApiServer.cjs.map +1 -1
- package/dist/packageApiServer.d.mts +36 -26
- package/dist/packageApiServer.d.mts.map +1 -1
- package/dist/packageApiServer.mjs +44 -26
- package/dist/packageApiServer.mjs.map +1 -1
- package/dist/piSettings.cjs +41 -20
- package/dist/piSettings.d.mts +4 -2
- package/dist/piSettings.mjs +4 -2
- package/dist/platform.cjs +62 -0
- package/dist/platform.d.mts +10 -0
- package/dist/platform.mjs +10 -0
- package/dist/pluginProtocol.cjs +7 -8
- package/dist/pluginProtocol.d.mts +2 -2
- package/dist/pluginProtocol.mjs +1 -2
- package/dist/poPackage.cjs +12 -0
- package/dist/poPackage.d.mts +3 -0
- package/dist/poPackage.mjs +3 -0
- package/dist/profileIdentity.cjs +1 -1
- package/dist/profileIdentity.d.mts +2 -2
- package/dist/profileIdentity.mjs +1 -2
- package/dist/protocol.cjs +3 -3
- package/dist/protocol.d.mts +2 -2
- package/dist/protocol.mjs +1 -2
- package/dist/readiness.cjs +6 -6
- package/dist/readiness.d.mts +2 -2
- package/dist/readiness.mjs +1 -2
- package/dist/remoteApi.cjs.map +1 -1
- package/dist/remoteApi.d.mts +2 -2
- package/dist/remoteApi.mjs.map +1 -1
- package/dist/remoteRuntime.cjs +42 -65
- package/dist/remoteRuntime.cjs.map +1 -1
- package/dist/remoteRuntime.d.mts +3 -2
- package/dist/remoteRuntime.d.mts.map +1 -1
- package/dist/remoteRuntime.mjs +41 -62
- package/dist/remoteRuntime.mjs.map +1 -1
- package/dist/runtimeConfig.cjs +4 -4
- package/dist/runtimeConfig.cjs.map +1 -1
- package/dist/runtimeConfig.d.mts +10 -9
- package/dist/runtimeConfig.d.mts.map +1 -1
- package/dist/runtimeConfig.mjs +4 -4
- package/dist/runtimeConfig.mjs.map +1 -1
- package/dist/runtimeContextApi.cjs +10 -3
- package/dist/runtimeContextApi.cjs.map +1 -1
- package/dist/runtimeContextApi.d.mts +3 -3
- package/dist/runtimeContextApi.d.mts.map +1 -1
- package/dist/runtimeContextApi.mjs +10 -3
- package/dist/runtimeContextApi.mjs.map +1 -1
- package/dist/runtimeCordisHost.cjs +46 -46
- package/dist/runtimeCordisHost.cjs.map +1 -1
- package/dist/runtimeCordisHost.d.mts +29 -28
- package/dist/runtimeCordisHost.d.mts.map +1 -1
- package/dist/runtimeCordisHost.mjs +42 -42
- package/dist/runtimeCordisHost.mjs.map +1 -1
- package/dist/runtimeIdentity.cjs +6 -9
- package/dist/runtimeIdentity.cjs.map +1 -1
- package/dist/runtimeIdentity.d.mts +5 -1
- package/dist/runtimeIdentity.d.mts.map +1 -1
- package/dist/runtimeIdentity.mjs +5 -8
- package/dist/runtimeIdentity.mjs.map +1 -1
- package/dist/runtimeJson.cjs +10 -45
- package/dist/runtimeJson.d.mts +3 -22
- package/dist/runtimeJson.mjs +3 -39
- package/dist/runtimeLogSinkTelemetry.cjs +19 -19
- package/dist/runtimeLogSinkTelemetry.cjs.map +1 -1
- package/dist/runtimeLogSinkTelemetry.d.mts +19 -19
- package/dist/runtimeLogSinkTelemetry.mjs +19 -19
- package/dist/runtimeLogSinkTelemetry.mjs.map +1 -1
- package/dist/runtimePackages.cjs +7 -2
- package/dist/runtimePackages.cjs.map +1 -1
- package/dist/runtimePackages.d.mts +4 -1
- package/dist/runtimePackages.d.mts.map +1 -1
- package/dist/runtimePackages.mjs +7 -2
- package/dist/runtimePackages.mjs.map +1 -1
- package/dist/runtimePiSettings.cjs +40 -263
- package/dist/runtimePiSettings.d.mts +3 -72
- package/dist/runtimePiSettings.mjs +3 -241
- package/dist/runtimeProtocol.cjs +19 -19
- package/dist/runtimeProtocol.cjs.map +1 -1
- package/dist/runtimeProtocol.d.mts +7 -7
- package/dist/runtimeProtocol.d.mts.map +1 -1
- package/dist/runtimeProtocol.mjs +17 -17
- package/dist/runtimeProtocol.mjs.map +1 -1
- package/dist/runtimeTransition.cjs +9 -9
- package/dist/runtimeTransition.cjs.map +1 -1
- package/dist/runtimeTransition.d.mts +10 -10
- package/dist/runtimeTransition.d.mts.map +1 -1
- package/dist/runtimeTransition.mjs +7 -7
- package/dist/runtimeTransition.mjs.map +1 -1
- package/dist/sandboxHarness.mjs +1 -2
- package/dist/server.cjs +3 -7
- package/dist/server.d.mts +6 -6
- package/dist/server.mjs +3 -4
- package/dist/serverPlugin.cjs +39 -0
- package/dist/serverPlugin.d.mts +12 -0
- package/dist/serverPlugin.mjs +11 -0
- package/dist/serverTelemetry.cjs +1 -1
- package/dist/serverTelemetry.cjs.map +1 -1
- package/dist/serverTelemetry.d.mts +2 -2
- package/dist/serverTelemetry.mjs +2 -2
- package/dist/serverTelemetry.mjs.map +1 -1
- package/dist/sessionFilesApi.cjs +41 -37
- package/dist/sessionFilesApi.cjs.map +1 -1
- package/dist/sessionFilesApi.d.mts +6 -3
- package/dist/sessionFilesApi.d.mts.map +1 -1
- package/dist/sessionFilesApi.mjs +41 -36
- package/dist/sessionFilesApi.mjs.map +1 -1
- package/dist/sessionProtocol.cjs +31 -6
- package/dist/sessionProtocol.d.mts +8 -3
- package/dist/sessionProtocol.mjs +8 -2
- package/dist/skills.cjs +5 -5
- package/dist/skills.d.mts +2 -2
- package/dist/skills.mjs +1 -2
- package/dist/sqliteSessionStorage.cjs +28 -50
- package/dist/sqliteSessionStorage.cjs.map +1 -1
- package/dist/sqliteSessionStorage.d.mts +13 -20
- package/dist/sqliteSessionStorage.d.mts.map +1 -1
- package/dist/sqliteSessionStorage.mjs +25 -48
- package/dist/sqliteSessionStorage.mjs.map +1 -1
- package/dist/src/constants/agentSettled.cjs +7 -0
- package/dist/src/constants/agentSettled.cjs.map +1 -0
- package/dist/src/constants/agentSettled.mjs +7 -0
- package/dist/src/constants/agentSettled.mjs.map +1 -0
- package/dist/src/constants/contextApi.cjs +3 -1
- package/dist/src/constants/contextApi.cjs.map +1 -1
- package/dist/src/constants/contextApi.d.mts +2 -1
- package/dist/src/constants/contextApi.d.mts.map +1 -1
- package/dist/src/constants/contextApi.mjs +3 -2
- package/dist/src/constants/contextApi.mjs.map +1 -1
- package/dist/src/constants/voiceTools.cjs +6 -6
- package/dist/src/constants/voiceTools.cjs.map +1 -1
- package/dist/src/constants/voiceTools.d.mts +3 -3
- package/dist/src/constants/voiceTools.mjs +4 -4
- package/dist/src/constants/voiceTools.mjs.map +1 -1
- package/dist/src/extensions/extensionFile.cjs +22 -5
- package/dist/src/extensions/extensionFile.cjs.map +1 -1
- package/dist/src/extensions/extensionFile.d.mts +17 -4
- package/dist/src/extensions/extensionFile.d.mts.map +1 -1
- package/dist/src/extensions/extensionFile.mjs +22 -6
- package/dist/src/extensions/extensionFile.mjs.map +1 -1
- package/dist/src/extensions/serverPlugin.cjs +231 -92
- package/dist/src/extensions/serverPlugin.cjs.map +1 -1
- package/dist/src/extensions/serverPlugin.d.mts +2 -2
- package/dist/src/extensions/serverPlugin.d.mts.map +1 -1
- package/dist/src/extensions/serverPlugin.mjs +232 -93
- package/dist/src/extensions/serverPlugin.mjs.map +1 -1
- package/dist/src/pi/piSessionRuntime.cjs +349 -142
- package/dist/src/pi/piSessionRuntime.cjs.map +1 -1
- package/dist/src/pi/piSessionRuntime.d.mts +18 -17
- package/dist/src/pi/piSessionRuntime.d.mts.map +1 -1
- package/dist/src/pi/piSessionRuntime.mjs +342 -135
- package/dist/src/pi/piSessionRuntime.mjs.map +1 -1
- package/dist/src/schemas/agentModel.cjs +2 -2
- package/dist/src/schemas/agentModel.cjs.map +1 -1
- package/dist/src/schemas/agentModel.d.mts +1 -1
- package/dist/src/schemas/agentModel.mjs +2 -2
- package/dist/src/schemas/agentModel.mjs.map +1 -1
- package/dist/src/schemas/apiContracts.d.mts +2 -2
- package/dist/src/schemas/apiContracts.d.mts.map +1 -1
- package/dist/src/schemas/askUser.cjs +4 -4
- package/dist/src/schemas/askUser.cjs.map +1 -1
- package/dist/src/schemas/askUser.d.mts +4 -4
- package/dist/src/schemas/askUser.d.mts.map +1 -1
- package/dist/src/schemas/askUser.mjs +3 -3
- package/dist/src/schemas/askUser.mjs.map +1 -1
- package/dist/src/schemas/backgroundWork.cjs +10 -10
- package/dist/src/schemas/backgroundWork.cjs.map +1 -1
- package/dist/src/schemas/backgroundWork.d.mts +9 -9
- package/dist/src/schemas/backgroundWork.d.mts.map +1 -1
- package/dist/src/schemas/backgroundWork.mjs +8 -8
- package/dist/src/schemas/backgroundWork.mjs.map +1 -1
- package/dist/src/schemas/childProcess.cjs +5 -5
- package/dist/src/schemas/childProcess.cjs.map +1 -1
- package/dist/src/schemas/childProcess.d.mts +2 -2
- package/dist/src/schemas/childProcess.mjs +5 -5
- package/dist/src/schemas/childProcess.mjs.map +1 -1
- package/dist/src/schemas/contextContributions.cjs +10 -10
- package/dist/src/schemas/contextContributions.cjs.map +1 -1
- package/dist/src/schemas/contextContributions.d.mts +16 -16
- package/dist/src/schemas/contextContributions.d.mts.map +1 -1
- package/dist/src/schemas/contextContributions.mjs +8 -8
- package/dist/src/schemas/contextContributions.mjs.map +1 -1
- package/dist/src/schemas/delegation.cjs +17 -17
- package/dist/src/schemas/delegation.cjs.map +1 -1
- package/dist/src/schemas/delegation.d.mts +16 -16
- package/dist/src/schemas/delegation.d.mts.map +1 -1
- package/dist/src/schemas/delegation.mjs +10 -10
- package/dist/src/schemas/delegation.mjs.map +1 -1
- package/dist/src/schemas/extensionFile.d.mts +23 -19
- package/dist/src/schemas/extensionFile.d.mts.map +1 -1
- package/dist/src/schemas/footer.cjs.map +1 -1
- package/dist/src/schemas/footer.d.mts +5 -5
- package/dist/src/schemas/footer.d.mts.map +1 -1
- package/dist/src/schemas/footer.mjs.map +1 -1
- package/dist/src/schemas/headless.cjs +37 -37
- package/dist/src/schemas/headless.cjs.map +1 -1
- package/dist/src/schemas/headless.d.mts +100 -101
- package/dist/src/schemas/headless.d.mts.map +1 -1
- package/dist/src/schemas/headless.mjs +24 -24
- package/dist/src/schemas/headless.mjs.map +1 -1
- package/dist/src/schemas/help.cjs +60 -60
- package/dist/src/schemas/help.cjs.map +1 -1
- package/dist/src/schemas/help.d.mts +43 -43
- package/dist/src/schemas/help.d.mts.map +1 -1
- package/dist/src/schemas/help.mjs +41 -41
- package/dist/src/schemas/help.mjs.map +1 -1
- package/dist/src/schemas/home.cjs +127 -0
- package/dist/src/schemas/home.cjs.map +1 -0
- package/dist/src/schemas/home.d.mts +63 -0
- package/dist/src/schemas/home.d.mts.map +1 -0
- package/dist/src/schemas/home.mjs +121 -0
- package/dist/src/schemas/home.mjs.map +1 -0
- package/dist/src/schemas/httpApiContracts.cjs +441 -0
- package/dist/src/schemas/httpApiContracts.cjs.map +1 -0
- package/dist/src/schemas/httpApiContracts.d.mts +78 -0
- package/dist/src/schemas/httpApiContracts.d.mts.map +1 -0
- package/dist/src/schemas/httpApiContracts.mjs +434 -0
- package/dist/src/schemas/httpApiContracts.mjs.map +1 -0
- package/dist/src/schemas/hubChannel.cjs +3 -0
- package/dist/src/schemas/hubChannel.cjs.map +1 -1
- package/dist/src/schemas/hubChannel.d.mts +84 -60
- package/dist/src/schemas/hubChannel.d.mts.map +1 -1
- package/dist/src/schemas/hubChannel.mjs +3 -1
- package/dist/src/schemas/hubChannel.mjs.map +1 -1
- package/dist/src/schemas/leader.cjs.map +1 -1
- package/dist/src/schemas/leader.d.mts +3 -3
- package/dist/src/schemas/leader.d.mts.map +1 -1
- package/dist/src/schemas/leader.mjs.map +1 -1
- package/dist/src/schemas/mcpBundle.d.mts +3 -3
- package/dist/src/schemas/mcpFacet.cjs.map +1 -1
- package/dist/src/schemas/mcpFacet.d.mts +22 -22
- package/dist/src/schemas/mcpFacet.d.mts.map +1 -1
- package/dist/src/schemas/mcpFacet.mjs.map +1 -1
- package/dist/src/schemas/mcpProjection.cjs +41 -41
- package/dist/src/schemas/mcpProjection.cjs.map +1 -1
- package/dist/src/schemas/mcpProjection.d.mts +31 -30
- package/dist/src/schemas/mcpProjection.d.mts.map +1 -1
- package/dist/src/schemas/mcpProjection.mjs +29 -29
- package/dist/src/schemas/mcpProjection.mjs.map +1 -1
- package/dist/src/schemas/mcpSession.cjs +23 -23
- package/dist/src/schemas/mcpSession.cjs.map +1 -1
- package/dist/src/schemas/mcpSession.d.mts +12 -12
- package/dist/src/schemas/mcpSession.d.mts.map +1 -1
- package/dist/src/schemas/mcpSession.mjs +18 -18
- package/dist/src/schemas/mcpSession.mjs.map +1 -1
- package/dist/src/schemas/mcpStatus.cjs +5 -5
- package/dist/src/schemas/mcpStatus.cjs.map +1 -1
- package/dist/src/schemas/mcpStatus.d.mts +4 -4
- package/dist/src/schemas/mcpStatus.d.mts.map +1 -1
- package/dist/src/schemas/mcpStatus.mjs +4 -4
- package/dist/src/schemas/mcpStatus.mjs.map +1 -1
- package/dist/src/schemas/mcpToolResolver.cjs +9 -9
- package/dist/src/schemas/mcpToolResolver.cjs.map +1 -1
- package/dist/src/schemas/mcpToolResolver.d.mts +7 -7
- package/dist/src/schemas/mcpToolResolver.d.mts.map +1 -1
- package/dist/src/schemas/mcpToolResolver.mjs +7 -7
- package/dist/src/schemas/mcpToolResolver.mjs.map +1 -1
- package/dist/src/schemas/narration.cjs +9 -9
- package/dist/src/schemas/narration.cjs.map +1 -1
- package/dist/src/schemas/narration.d.mts +5 -5
- package/dist/src/schemas/narration.d.mts.map +1 -1
- package/dist/src/schemas/narration.mjs +7 -7
- package/dist/src/schemas/narration.mjs.map +1 -1
- package/dist/src/schemas/notification.cjs +45 -45
- package/dist/src/schemas/notification.cjs.map +1 -1
- package/dist/src/schemas/notification.d.mts +22 -22
- package/dist/src/schemas/notification.d.mts.map +1 -1
- package/dist/src/schemas/notification.mjs +31 -31
- package/dist/src/schemas/notification.mjs.map +1 -1
- package/dist/src/schemas/packageApi.cjs +28 -28
- package/dist/src/schemas/packageApi.cjs.map +1 -1
- package/dist/src/schemas/packageApi.d.mts +91 -65
- package/dist/src/schemas/packageApi.d.mts.map +1 -1
- package/dist/src/schemas/packageApi.mjs +18 -18
- package/dist/src/schemas/packageApi.mjs.map +1 -1
- package/dist/src/schemas/platform.cjs +34 -0
- package/dist/src/schemas/platform.cjs.map +1 -0
- package/dist/src/schemas/platform.d.mts +75 -0
- package/dist/src/schemas/platform.d.mts.map +1 -0
- package/dist/src/schemas/platform.mjs +27 -0
- package/dist/src/schemas/platform.mjs.map +1 -0
- package/dist/src/schemas/pluginContributions.cjs.map +1 -1
- package/dist/src/schemas/pluginContributions.d.mts +12 -12
- package/dist/src/schemas/pluginContributions.d.mts.map +1 -1
- package/dist/src/schemas/pluginContributions.mjs.map +1 -1
- package/dist/src/schemas/pluginProtocol.cjs +24 -27
- package/dist/src/schemas/pluginProtocol.cjs.map +1 -1
- package/dist/src/schemas/pluginProtocol.d.mts +21 -21
- package/dist/src/schemas/pluginProtocol.d.mts.map +1 -1
- package/dist/src/schemas/pluginProtocol.mjs +18 -20
- package/dist/src/schemas/pluginProtocol.mjs.map +1 -1
- package/dist/src/schemas/profileIdentity.cjs +2 -2
- package/dist/src/schemas/profileIdentity.cjs.map +1 -1
- package/dist/src/schemas/profileIdentity.d.mts +1 -1
- package/dist/src/schemas/profileIdentity.mjs +2 -2
- package/dist/src/schemas/profileIdentity.mjs.map +1 -1
- package/dist/src/schemas/protocolChannelsContract.cjs +27 -0
- package/dist/src/schemas/protocolChannelsContract.cjs.map +1 -0
- package/dist/src/schemas/protocolChannelsContract.d.mts +37 -0
- package/dist/src/schemas/protocolChannelsContract.d.mts.map +1 -0
- package/dist/src/schemas/protocolChannelsContract.mjs +25 -0
- package/dist/src/schemas/protocolChannelsContract.mjs.map +1 -0
- package/dist/src/schemas/protocolContracts.cjs +168 -0
- package/dist/src/schemas/protocolContracts.cjs.map +1 -0
- package/dist/src/schemas/protocolContracts.d.mts +69 -0
- package/dist/src/schemas/protocolContracts.d.mts.map +1 -0
- package/dist/src/schemas/protocolContracts.mjs +164 -0
- package/dist/src/schemas/protocolContracts.mjs.map +1 -0
- package/dist/src/schemas/protocolHubContract.cjs +51 -0
- package/dist/src/schemas/protocolHubContract.cjs.map +1 -0
- package/dist/src/schemas/protocolHubContract.d.mts +218 -0
- package/dist/src/schemas/protocolHubContract.d.mts.map +1 -0
- package/dist/src/schemas/protocolHubContract.mjs +49 -0
- package/dist/src/schemas/protocolHubContract.mjs.map +1 -0
- package/dist/src/schemas/protocolSessionContract.cjs +22 -0
- package/dist/src/schemas/protocolSessionContract.cjs.map +1 -0
- package/dist/src/schemas/protocolSessionContract.d.mts +324 -0
- package/dist/src/schemas/protocolSessionContract.d.mts.map +1 -0
- package/dist/src/schemas/protocolSessionContract.mjs +22 -0
- package/dist/src/schemas/protocolSessionContract.mjs.map +1 -0
- package/dist/src/schemas/protocolThreadContract.cjs +21 -0
- package/dist/src/schemas/protocolThreadContract.cjs.map +1 -0
- package/dist/src/schemas/protocolThreadContract.d.mts +29 -0
- package/dist/src/schemas/protocolThreadContract.d.mts.map +1 -0
- package/dist/src/schemas/protocolThreadContract.mjs +20 -0
- package/dist/src/schemas/protocolThreadContract.mjs.map +1 -0
- package/dist/src/schemas/readiness.cjs +36 -36
- package/dist/src/schemas/readiness.cjs.map +1 -1
- package/dist/src/schemas/readiness.d.mts +37 -37
- package/dist/src/schemas/readiness.d.mts.map +1 -1
- package/dist/src/schemas/readiness.mjs +31 -31
- package/dist/src/schemas/readiness.mjs.map +1 -1
- package/dist/src/schemas/serverBundle.d.mts +5 -5
- package/dist/src/schemas/serverPlugin.cjs +103 -0
- package/dist/src/schemas/serverPlugin.cjs.map +1 -0
- package/dist/src/schemas/serverPlugin.d.mts +176 -0
- package/dist/src/schemas/serverPlugin.d.mts.map +1 -0
- package/dist/src/schemas/serverPlugin.mjs +95 -0
- package/dist/src/schemas/serverPlugin.mjs.map +1 -0
- package/dist/src/schemas/serverScope.cjs +37 -0
- package/dist/src/schemas/serverScope.cjs.map +1 -0
- package/dist/src/schemas/serverScope.d.mts +77 -0
- package/dist/src/schemas/serverScope.d.mts.map +1 -0
- package/dist/src/schemas/serverScope.mjs +33 -0
- package/dist/src/schemas/serverScope.mjs.map +1 -0
- package/dist/src/schemas/sessionApiContracts.cjs +320 -0
- package/dist/src/schemas/sessionApiContracts.cjs.map +1 -0
- package/dist/src/schemas/sessionApiContracts.mjs +318 -0
- package/dist/src/schemas/sessionApiContracts.mjs.map +1 -0
- package/dist/src/schemas/sessionProtocol.cjs +20 -13
- package/dist/src/schemas/sessionProtocol.cjs.map +1 -1
- package/dist/src/schemas/sessionProtocol.d.mts +37 -54
- package/dist/src/schemas/sessionProtocol.d.mts.map +1 -1
- package/dist/src/schemas/sessionProtocol.mjs +17 -8
- package/dist/src/schemas/sessionProtocol.mjs.map +1 -1
- package/dist/src/schemas/skills.cjs +16 -16
- package/dist/src/schemas/skills.cjs.map +1 -1
- package/dist/src/schemas/skills.d.mts +7 -7
- package/dist/src/schemas/skills.d.mts.map +1 -1
- package/dist/src/schemas/skills.mjs +12 -12
- package/dist/src/schemas/skills.mjs.map +1 -1
- package/dist/src/schemas/toolOverrides.cjs +9 -9
- package/dist/src/schemas/toolOverrides.cjs.map +1 -1
- package/dist/src/schemas/toolOverrides.d.mts +8 -8
- package/dist/src/schemas/toolOverrides.d.mts.map +1 -1
- package/dist/src/schemas/toolOverrides.mjs +7 -7
- package/dist/src/schemas/toolOverrides.mjs.map +1 -1
- package/dist/src/schemas/toolSurface.cjs +9 -9
- package/dist/src/schemas/toolSurface.cjs.map +1 -1
- package/dist/src/schemas/toolSurface.d.mts +13 -13
- package/dist/src/schemas/toolSurface.d.mts.map +1 -1
- package/dist/src/schemas/toolSurface.mjs +7 -7
- package/dist/src/schemas/toolSurface.mjs.map +1 -1
- package/dist/src/schemas/uiHub.cjs +9 -9
- package/dist/src/schemas/uiHub.cjs.map +1 -1
- package/dist/src/schemas/uiHub.d.mts +12 -12
- package/dist/src/schemas/uiHub.d.mts.map +1 -1
- package/dist/src/schemas/uiHub.mjs +7 -7
- package/dist/src/schemas/uiHub.mjs.map +1 -1
- package/dist/src/server/directHarnessRuntime.cjs +691 -775
- package/dist/src/server/directHarnessRuntime.cjs.map +1 -1
- package/dist/src/server/directHarnessRuntime.d.mts +5 -1
- package/dist/src/server/directHarnessRuntime.d.mts.map +1 -0
- package/dist/src/server/directHarnessRuntime.mjs +671 -754
- package/dist/src/server/directHarnessRuntime.mjs.map +1 -1
- package/dist/src/server/largeFrameLink.cjs +47 -0
- package/dist/src/server/largeFrameLink.cjs.map +1 -0
- package/dist/src/server/largeFrameLink.mjs +47 -0
- package/dist/src/server/largeFrameLink.mjs.map +1 -0
- package/dist/src/server/liveImport.cjs +1 -1
- package/dist/src/server/liveImport.cjs.map +1 -1
- package/dist/src/server/liveImport.d.mts +1 -1
- package/dist/src/server/liveImport.mjs +1 -1
- package/dist/src/server/liveImport.mjs.map +1 -1
- package/dist/src/server/mcpBundleLoader.cjs.map +1 -1
- package/dist/src/server/mcpBundleLoader.d.mts +6 -6
- package/dist/src/server/mcpBundleLoader.d.mts.map +1 -1
- package/dist/src/server/mcpBundleLoader.mjs.map +1 -1
- package/dist/src/server/serverPackages.cjs +60 -0
- package/dist/src/server/serverPackages.cjs.map +1 -0
- package/dist/src/server/serverPackages.d.mts +44 -0
- package/dist/src/server/serverPackages.d.mts.map +1 -0
- package/dist/src/server/serverPackages.mjs +59 -0
- package/dist/src/server/serverPackages.mjs.map +1 -0
- package/dist/src/server/serverScope.cjs +510 -0
- package/dist/src/server/serverScope.cjs.map +1 -0
- package/dist/src/server/serverScope.d.mts +123 -0
- package/dist/src/server/serverScope.d.mts.map +1 -0
- package/dist/src/server/serverScope.mjs +510 -0
- package/dist/src/server/serverScope.mjs.map +1 -0
- package/dist/src/server/sessionMcpHandler.cjs +3 -3
- package/dist/src/server/sessionMcpHandler.cjs.map +1 -1
- package/dist/src/server/sessionMcpHandler.mjs +4 -4
- package/dist/src/server/sessionMcpHandler.mjs.map +1 -1
- package/dist/src/server/sessionMcpRoutes.cjs +2 -1
- package/dist/src/server/sessionMcpRoutes.cjs.map +1 -1
- package/dist/src/server/sessionMcpRoutes.mjs +2 -1
- package/dist/src/server/sessionMcpRoutes.mjs.map +1 -1
- package/dist/src/server/threadJournals.cjs +38 -107
- package/dist/src/server/threadJournals.cjs.map +1 -1
- package/dist/src/server/threadJournals.mjs +38 -104
- package/dist/src/server/threadJournals.mjs.map +1 -1
- package/dist/src/services/apiSurfaceAssert/index.cjs +1 -1
- package/dist/src/services/apiSurfaceAssert/index.cjs.map +1 -1
- package/dist/src/services/apiSurfaceAssert/index.d.mts +6 -6
- package/dist/src/services/apiSurfaceAssert/index.mjs +1 -1
- package/dist/src/services/apiSurfaceAssert/index.mjs.map +1 -1
- package/dist/src/services/chatgptAuth/index.cjs +1 -220
- package/dist/src/services/chatgptAuth/index.cjs.map +1 -1
- package/dist/src/services/chatgptAuth/index.d.mts +0 -18
- package/dist/src/services/chatgptAuth/index.d.mts.map +1 -1
- package/dist/src/services/chatgptAuth/index.mjs +1 -217
- package/dist/src/services/chatgptAuth/index.mjs.map +1 -1
- package/dist/src/services/chatgptImages/index.cjs +1 -1
- package/dist/src/services/chatgptImages/index.cjs.map +1 -1
- package/dist/src/services/chatgptImages/index.mjs +1 -1
- package/dist/src/services/chatgptImages/index.mjs.map +1 -1
- package/dist/src/services/chatgptLogin/index.cjs +230 -0
- package/dist/src/services/chatgptLogin/index.cjs.map +1 -0
- package/dist/src/services/chatgptLogin/index.d.mts +21 -0
- package/dist/src/services/chatgptLogin/index.d.mts.map +1 -0
- package/dist/src/services/chatgptLogin/index.mjs +227 -0
- package/dist/src/services/chatgptLogin/index.mjs.map +1 -0
- package/dist/src/services/chatgptWebSearch/index.cjs +1 -1
- package/dist/src/services/chatgptWebSearch/index.cjs.map +1 -1
- package/dist/src/services/chatgptWebSearch/index.mjs +1 -1
- package/dist/src/services/chatgptWebSearch/index.mjs.map +1 -1
- package/dist/src/services/contextContributions/index.cjs +8 -8
- package/dist/src/services/contextContributions/index.cjs.map +1 -1
- package/dist/src/services/contextContributions/index.d.mts +3 -3
- package/dist/src/services/contextContributions/index.d.mts.map +1 -1
- package/dist/src/services/contextContributions/index.mjs +8 -8
- package/dist/src/services/contextContributions/index.mjs.map +1 -1
- package/dist/src/services/devProxyStore/devProxyRecords.cjs +59 -0
- package/dist/src/services/devProxyStore/devProxyRecords.cjs.map +1 -0
- package/dist/src/services/devProxyStore/devProxyRecords.mjs +56 -0
- package/dist/src/services/devProxyStore/devProxyRecords.mjs.map +1 -0
- package/dist/src/services/devProxyStore/index.cjs +7 -101
- package/dist/src/services/devProxyStore/index.cjs.map +1 -1
- package/dist/src/services/devProxyStore/index.mjs +7 -101
- package/dist/src/services/devProxyStore/index.mjs.map +1 -1
- package/dist/src/services/devProxyStore/sync.cjs +66 -0
- package/dist/src/services/devProxyStore/sync.cjs.map +1 -0
- package/dist/src/services/devProxyStore/sync.mjs +63 -0
- package/dist/src/services/devProxyStore/sync.mjs.map +1 -0
- package/dist/src/services/durableNavigation/docs.cjs +15 -0
- package/dist/src/services/durableNavigation/docs.cjs.map +1 -0
- package/dist/src/services/durableNavigation/docs.mjs +16 -0
- package/dist/src/services/durableNavigation/docs.mjs.map +1 -0
- package/dist/src/services/durableNavigation/index.cjs +3 -18
- package/dist/src/services/durableNavigation/index.cjs.map +1 -1
- package/dist/src/services/durableNavigation/index.mjs +2 -17
- package/dist/src/services/durableNavigation/index.mjs.map +1 -1
- package/dist/src/services/durableQueue/docs.cjs +12 -0
- package/dist/src/services/durableQueue/docs.cjs.map +1 -0
- package/dist/src/services/durableQueue/docs.mjs +13 -0
- package/dist/src/services/durableQueue/docs.mjs.map +1 -0
- package/dist/src/services/durableQueue/index.cjs +151 -0
- package/dist/src/services/durableQueue/index.cjs.map +1 -0
- package/dist/src/services/durableQueue/index.mjs +149 -0
- package/dist/src/services/durableQueue/index.mjs.map +1 -0
- package/dist/src/services/durableRequestReceipts/docs.cjs +11 -0
- package/dist/src/services/durableRequestReceipts/docs.cjs.map +1 -0
- package/dist/src/services/durableRequestReceipts/docs.mjs +12 -0
- package/dist/src/services/durableRequestReceipts/docs.mjs.map +1 -0
- package/dist/src/services/{requestReceipts → durableRequestReceipts}/index.cjs +10 -16
- package/dist/src/services/durableRequestReceipts/index.cjs.map +1 -0
- package/dist/src/services/durableRequestReceipts/index.d.mts +12 -0
- package/dist/src/services/durableRequestReceipts/index.d.mts.map +1 -0
- package/dist/src/services/{requestReceipts → durableRequestReceipts}/index.mjs +7 -13
- package/dist/src/services/durableRequestReceipts/index.mjs.map +1 -0
- package/dist/src/services/durableSession/docs.cjs +65 -0
- package/dist/src/services/durableSession/docs.cjs.map +1 -0
- package/dist/src/services/durableSession/docs.d.mts +17 -0
- package/dist/src/services/durableSession/docs.d.mts.map +1 -0
- package/dist/src/services/durableSession/docs.mjs +60 -0
- package/dist/src/services/durableSession/docs.mjs.map +1 -0
- package/dist/src/services/durableSession/index.cjs +21 -0
- package/dist/src/services/durableSession/index.cjs.map +1 -0
- package/dist/src/services/durableSession/index.d.mts +13 -0
- package/dist/src/services/durableSession/index.d.mts.map +1 -0
- package/dist/src/services/durableSession/index.mjs +20 -0
- package/dist/src/services/durableSession/index.mjs.map +1 -0
- package/dist/src/services/durableSubagents/docs.cjs +15 -0
- package/dist/src/services/durableSubagents/docs.cjs.map +1 -0
- package/dist/src/services/durableSubagents/docs.mjs +16 -0
- package/dist/src/services/durableSubagents/docs.mjs.map +1 -0
- package/dist/src/services/durableSubagents/extension.cjs +11 -0
- package/dist/src/services/durableSubagents/extension.cjs.map +1 -0
- package/dist/src/services/durableSubagents/extension.mjs +12 -0
- package/dist/src/services/durableSubagents/extension.mjs.map +1 -0
- package/dist/src/services/durableSubagents/index.cjs +95 -0
- package/dist/src/services/durableSubagents/index.cjs.map +1 -0
- package/dist/src/services/durableSubagents/index.mjs +90 -0
- package/dist/src/services/durableSubagents/index.mjs.map +1 -0
- package/dist/src/services/durableSubagents/tasks.cjs +25 -0
- package/dist/src/services/durableSubagents/tasks.cjs.map +1 -0
- package/dist/src/services/durableSubagents/tasks.mjs +26 -0
- package/dist/src/services/durableSubagents/tasks.mjs.map +1 -0
- package/dist/src/services/headlessClient/index.cjs +20 -13
- package/dist/src/services/headlessClient/index.cjs.map +1 -1
- package/dist/src/services/headlessClient/index.mjs +21 -14
- package/dist/src/services/headlessClient/index.mjs.map +1 -1
- package/dist/src/services/historyOwnership/type.d.mts +15 -0
- package/dist/src/services/historyOwnership/type.d.mts.map +1 -0
- package/dist/src/services/hubChannelHarness/index.cjs +2 -2
- package/dist/src/services/hubChannelHarness/index.cjs.map +1 -1
- package/dist/src/services/hubChannelHarness/index.d.mts +8 -8
- package/dist/src/services/hubChannelHarness/index.d.mts.map +1 -1
- package/dist/src/services/hubChannelHarness/index.mjs +2 -2
- package/dist/src/services/hubChannelHarness/index.mjs.map +1 -1
- package/dist/src/services/json/core.cjs +30 -0
- package/dist/src/services/json/core.cjs.map +1 -0
- package/dist/src/services/json/core.d.mts +21 -0
- package/dist/src/services/json/core.d.mts.map +1 -0
- package/dist/src/services/json/core.mjs +26 -0
- package/dist/src/services/json/core.mjs.map +1 -0
- package/dist/src/services/json/sync.cjs +48 -0
- package/dist/src/services/json/sync.cjs.map +1 -0
- package/dist/src/services/json/sync.d.mts +22 -0
- package/dist/src/services/json/sync.d.mts.map +1 -0
- package/dist/src/services/json/sync.mjs +43 -0
- package/dist/src/services/json/sync.mjs.map +1 -0
- package/dist/src/services/kernel/index.cjs +2 -2
- package/dist/src/services/kernel/index.cjs.map +1 -1
- package/dist/src/services/kernel/index.d.mts +3 -3
- package/dist/src/services/kernel/index.d.mts.map +1 -1
- package/dist/src/services/kernel/index.mjs +2 -2
- package/dist/src/services/kernel/index.mjs.map +1 -1
- package/dist/src/services/nativeChildTools/index.cjs +16 -0
- package/dist/src/services/nativeChildTools/index.cjs.map +1 -0
- package/dist/src/services/nativeChildTools/index.mjs +16 -0
- package/dist/src/services/nativeChildTools/index.mjs.map +1 -0
- package/dist/src/services/nodeHost/index.cjs +30 -0
- package/dist/src/services/nodeHost/index.cjs.map +1 -0
- package/dist/src/services/nodeHost/index.d.mts +16 -0
- package/dist/src/services/nodeHost/index.d.mts.map +1 -0
- package/dist/src/services/nodeHost/index.mjs +27 -0
- package/dist/src/services/nodeHost/index.mjs.map +1 -0
- package/dist/src/services/nodeModelDependencies/index.cjs +89 -0
- package/dist/src/services/nodeModelDependencies/index.cjs.map +1 -0
- package/dist/src/services/nodeModelDependencies/index.mjs +86 -0
- package/dist/src/services/nodeModelDependencies/index.mjs.map +1 -0
- package/dist/src/services/openSessionRegistry/index.cjs +6 -128
- package/dist/src/services/openSessionRegistry/index.cjs.map +1 -1
- package/dist/src/services/openSessionRegistry/index.d.mts +5 -36
- package/dist/src/services/openSessionRegistry/index.mjs +6 -128
- package/dist/src/services/openSessionRegistry/index.mjs.map +1 -1
- package/dist/src/services/openSessionRegistry/openSessionRecords.cjs +87 -0
- package/dist/src/services/openSessionRegistry/openSessionRecords.cjs.map +1 -0
- package/dist/src/services/openSessionRegistry/openSessionRecords.d.mts +30 -0
- package/dist/src/services/openSessionRegistry/openSessionRecords.d.mts.map +1 -0
- package/dist/src/services/openSessionRegistry/openSessionRecords.mjs +81 -0
- package/dist/src/services/openSessionRegistry/openSessionRecords.mjs.map +1 -0
- package/dist/src/services/openSessionRegistry/sync.cjs +71 -0
- package/dist/src/services/openSessionRegistry/sync.cjs.map +1 -0
- package/dist/src/services/openSessionRegistry/sync.d.mts +14 -0
- package/dist/src/services/openSessionRegistry/sync.d.mts.map +1 -0
- package/dist/src/services/openSessionRegistry/sync.mjs +68 -0
- package/dist/src/services/openSessionRegistry/sync.mjs.map +1 -0
- package/dist/src/services/packageApiHarness/index.cjs +1 -1
- package/dist/src/services/packageApiHarness/index.cjs.map +1 -1
- package/dist/src/services/packageApiHarness/index.d.mts +6 -6
- package/dist/src/services/packageApiHarness/index.d.mts.map +1 -1
- package/dist/src/services/packageApiHarness/index.mjs +2 -2
- package/dist/src/services/packageApiHarness/index.mjs.map +1 -1
- package/dist/src/services/piArgs/index.cjs +53 -0
- package/dist/src/services/piArgs/index.cjs.map +1 -0
- package/dist/src/services/piArgs/index.d.mts +6 -0
- package/dist/src/services/piArgs/index.d.mts.map +1 -0
- package/dist/src/services/piArgs/index.mjs +53 -0
- package/dist/src/services/piArgs/index.mjs.map +1 -0
- package/dist/src/services/piExtensionHost/index.cjs +47 -39
- package/dist/src/services/piExtensionHost/index.cjs.map +1 -1
- package/dist/src/services/piExtensionHost/index.d.mts +83 -0
- package/dist/src/services/piExtensionHost/index.d.mts.map +1 -0
- package/dist/src/services/piExtensionHost/index.mjs +47 -38
- package/dist/src/services/piExtensionHost/index.mjs.map +1 -1
- package/dist/src/services/piHelpTools/index.cjs +5 -5
- package/dist/src/services/piHelpTools/index.cjs.map +1 -1
- package/dist/src/services/piHelpTools/index.d.mts.map +1 -1
- package/dist/src/services/piHelpTools/index.mjs +7 -7
- package/dist/src/services/piHelpTools/index.mjs.map +1 -1
- package/dist/src/services/piMessages/index.cjs +106 -0
- package/dist/src/services/piMessages/index.cjs.map +1 -0
- package/dist/src/services/piMessages/index.mjs +105 -0
- package/dist/src/services/piMessages/index.mjs.map +1 -0
- package/dist/src/services/piSessionEntries/index.cjs +4 -4
- package/dist/src/services/piSessionEntries/index.cjs.map +1 -1
- package/dist/src/services/piSessionEntries/index.mjs +3 -3
- package/dist/src/services/piSessionEntries/index.mjs.map +1 -1
- package/dist/src/services/piSettings/core.cjs +308 -0
- package/dist/src/services/piSettings/core.cjs.map +1 -0
- package/dist/src/services/piSettings/core.d.mts +102 -0
- package/dist/src/services/piSettings/core.d.mts.map +1 -0
- package/dist/src/services/piSettings/core.mjs +276 -0
- package/dist/src/services/piSettings/core.mjs.map +1 -0
- package/dist/src/services/piSettings/sync.cjs +119 -0
- package/dist/src/services/piSettings/sync.cjs.map +1 -0
- package/dist/src/services/piSettings/sync.d.mts +44 -0
- package/dist/src/services/piSettings/sync.d.mts.map +1 -0
- package/dist/src/services/piSettings/sync.mjs +110 -0
- package/dist/src/services/piSettings/sync.mjs.map +1 -0
- package/dist/src/services/piSummary/index.cjs +7 -0
- package/dist/src/services/piSummary/index.cjs.map +1 -0
- package/dist/src/services/piSummary/index.mjs +7 -0
- package/dist/src/services/piSummary/index.mjs.map +1 -0
- package/dist/src/services/platformFiles/index.cjs +44 -0
- package/dist/src/services/platformFiles/index.cjs.map +1 -0
- package/dist/src/services/platformFiles/index.d.mts +16 -0
- package/dist/src/services/platformFiles/index.d.mts.map +1 -0
- package/dist/src/services/platformFiles/index.mjs +39 -0
- package/dist/src/services/platformFiles/index.mjs.map +1 -0
- package/dist/src/services/pluginLifecycle/index.cjs +19 -13
- package/dist/src/services/pluginLifecycle/index.cjs.map +1 -1
- package/dist/src/services/pluginLifecycle/index.d.mts +2 -0
- package/dist/src/services/pluginLifecycle/index.d.mts.map +1 -1
- package/dist/src/services/pluginLifecycle/index.mjs +19 -14
- package/dist/src/services/pluginLifecycle/index.mjs.map +1 -1
- package/dist/src/services/poPackage/core.cjs +73 -0
- package/dist/src/services/poPackage/core.cjs.map +1 -0
- package/dist/src/services/poPackage/core.d.mts +32 -0
- package/dist/src/services/poPackage/core.d.mts.map +1 -0
- package/dist/src/services/poPackage/core.mjs +66 -0
- package/dist/src/services/poPackage/core.mjs.map +1 -0
- package/dist/src/services/poPackage/sync.cjs +55 -0
- package/dist/src/services/poPackage/sync.cjs.map +1 -0
- package/dist/src/services/poPackage/sync.d.mts +21 -0
- package/dist/src/services/poPackage/sync.d.mts.map +1 -0
- package/dist/src/services/poPackage/sync.mjs +50 -0
- package/dist/src/services/poPackage/sync.mjs.map +1 -0
- package/dist/src/services/providerAuth/index.cjs +11 -7
- package/dist/src/services/providerAuth/index.cjs.map +1 -1
- package/dist/src/services/providerAuth/index.mjs +11 -7
- package/dist/src/services/providerAuth/index.mjs.map +1 -1
- package/dist/src/services/publicFileShares/index.cjs +1 -1
- package/dist/src/services/publicFileShares/index.cjs.map +1 -1
- package/dist/src/services/publicFileShares/index.d.mts +2 -2
- package/dist/src/services/publicFileShares/index.mjs +2 -2
- package/dist/src/services/publicFileShares/index.mjs.map +1 -1
- package/dist/src/services/remoteAccess/index.d.mts +1 -0
- package/dist/src/services/remoteAccess/index.d.mts.map +1 -1
- package/dist/src/services/remoteAccessStore/index.cjs +8 -190
- package/dist/src/services/remoteAccessStore/index.cjs.map +1 -1
- package/dist/src/services/remoteAccessStore/index.d.mts +2 -0
- package/dist/src/services/remoteAccessStore/index.mjs +7 -187
- package/dist/src/services/remoteAccessStore/index.mjs.map +1 -1
- package/dist/src/services/remoteAccessStore/remoteAccessRecords.cjs +98 -0
- package/dist/src/services/remoteAccessStore/remoteAccessRecords.cjs.map +1 -0
- package/dist/src/services/remoteAccessStore/remoteAccessRecords.mjs +88 -0
- package/dist/src/services/remoteAccessStore/remoteAccessRecords.mjs.map +1 -0
- package/dist/src/services/remoteAccessStore/sync.cjs +111 -0
- package/dist/src/services/remoteAccessStore/sync.cjs.map +1 -0
- package/dist/src/services/remoteAccessStore/sync.mjs +108 -0
- package/dist/src/services/remoteAccessStore/sync.mjs.map +1 -0
- package/dist/src/services/runtimeIdentity/sync.cjs +23 -0
- package/dist/src/services/runtimeIdentity/sync.cjs.map +1 -0
- package/dist/src/services/runtimeIdentity/sync.d.mts +9 -0
- package/dist/src/services/runtimeIdentity/sync.d.mts.map +1 -0
- package/dist/src/services/runtimeIdentity/sync.mjs +20 -0
- package/dist/src/services/runtimeIdentity/sync.mjs.map +1 -0
- package/dist/src/services/serialRunner/index.cjs +25 -0
- package/dist/src/services/serialRunner/index.cjs.map +1 -0
- package/dist/src/services/serialRunner/index.d.mts +10 -0
- package/dist/src/services/serialRunner/index.d.mts.map +1 -0
- package/dist/src/services/serialRunner/index.mjs +25 -0
- package/dist/src/services/serialRunner/index.mjs.map +1 -0
- package/dist/src/services/{serverFacet → serverHost}/index.cjs +5 -5
- package/dist/src/services/serverHost/index.cjs.map +1 -0
- package/dist/src/services/serverHost/index.d.mts +31 -0
- package/dist/src/services/serverHost/index.d.mts.map +1 -0
- package/dist/src/services/{serverFacet → serverHost}/index.mjs +5 -5
- package/dist/src/services/serverHost/index.mjs.map +1 -0
- package/dist/src/services/sessionAttachments/index.cjs +4 -3
- package/dist/src/services/sessionAttachments/index.cjs.map +1 -1
- package/dist/src/services/sessionAttachments/index.d.mts +1 -6
- package/dist/src/services/sessionAttachments/index.d.mts.map +1 -1
- package/dist/src/services/sessionAttachments/index.mjs +3 -2
- package/dist/src/services/sessionAttachments/index.mjs.map +1 -1
- package/dist/src/services/sessionAttachments/type.d.mts +9 -0
- package/dist/src/services/sessionAttachments/type.d.mts.map +1 -0
- package/dist/src/services/sessionFiles/index.cjs +96 -0
- package/dist/src/services/sessionFiles/index.cjs.map +1 -0
- package/dist/src/services/sessionFiles/index.d.mts +33 -0
- package/dist/src/services/sessionFiles/index.d.mts.map +1 -0
- package/dist/src/services/sessionFiles/index.mjs +89 -0
- package/dist/src/services/sessionFiles/index.mjs.map +1 -0
- package/dist/src/services/sessionFiles/sessionDirectory.cjs +66 -0
- package/dist/src/services/sessionFiles/sessionDirectory.cjs.map +1 -0
- package/dist/src/services/sessionFiles/sessionDirectory.mjs +62 -0
- package/dist/src/services/sessionFiles/sessionDirectory.mjs.map +1 -0
- package/dist/src/services/sessionGitStatus/index.cjs +31 -33
- package/dist/src/services/sessionGitStatus/index.cjs.map +1 -1
- package/dist/src/services/sessionGitStatus/index.mjs +31 -33
- package/dist/src/services/sessionGitStatus/index.mjs.map +1 -1
- package/dist/src/services/sessionPresentation/index.cjs +3 -27
- package/dist/src/services/sessionPresentation/index.cjs.map +1 -1
- package/dist/src/services/sessionPresentation/index.mjs +3 -27
- package/dist/src/services/sessionPresentation/index.mjs.map +1 -1
- package/dist/src/services/skillPrompt/index.cjs +11 -0
- package/dist/src/services/skillPrompt/index.cjs.map +1 -0
- package/dist/src/services/skillPrompt/index.mjs +11 -0
- package/dist/src/services/skillPrompt/index.mjs.map +1 -0
- package/dist/src/services/sqliteSessionHistory/index.cjs +44 -30
- package/dist/src/services/sqliteSessionHistory/index.cjs.map +1 -1
- package/dist/src/services/sqliteSessionHistory/index.d.mts +7 -4
- package/dist/src/services/sqliteSessionHistory/index.d.mts.map +1 -1
- package/dist/src/services/sqliteSessionHistory/index.mjs +43 -28
- package/dist/src/services/sqliteSessionHistory/index.mjs.map +1 -1
- package/dist/src/services/sqliteTranscriptReader/index.cjs +21 -45
- package/dist/src/services/sqliteTranscriptReader/index.cjs.map +1 -1
- package/dist/src/services/sqliteTranscriptReader/index.d.mts +3 -2
- package/dist/src/services/sqliteTranscriptReader/index.d.mts.map +1 -1
- package/dist/src/services/sqliteTranscriptReader/index.mjs +16 -38
- package/dist/src/services/sqliteTranscriptReader/index.mjs.map +1 -1
- package/dist/src/services/testMode/index.cjs +162 -0
- package/dist/src/services/testMode/index.cjs.map +1 -0
- package/dist/src/services/testMode/index.d.mts +17 -0
- package/dist/src/services/testMode/index.d.mts.map +1 -0
- package/dist/src/services/testMode/index.mjs +155 -0
- package/dist/src/services/testMode/index.mjs.map +1 -0
- package/dist/src/services/toolOverrides/index.cjs +6 -6
- package/dist/src/services/toolOverrides/index.cjs.map +1 -1
- package/dist/src/services/toolOverrides/index.d.mts +3 -3
- package/dist/src/services/toolOverrides/index.d.mts.map +1 -1
- package/dist/src/services/toolOverrides/index.mjs +6 -6
- package/dist/src/services/toolOverrides/index.mjs.map +1 -1
- package/dist/src/services/toolPrompt/index.d.mts +17 -0
- package/dist/src/services/toolPrompt/index.d.mts.map +1 -0
- package/dist/src/services/toolSurface/index.cjs +3 -3
- package/dist/src/services/toolSurface/index.cjs.map +1 -1
- package/dist/src/services/toolSurface/index.d.mts +3 -3
- package/dist/src/services/toolSurface/index.d.mts.map +1 -1
- package/dist/src/services/toolSurface/index.mjs +4 -4
- package/dist/src/services/toolSurface/index.mjs.map +1 -1
- package/dist/src/services/traceContext/index.cjs.map +1 -1
- package/dist/src/services/traceContext/index.mjs.map +1 -1
- package/dist/src/services/transcriptPages/index.cjs +159 -33
- package/dist/src/services/transcriptPages/index.cjs.map +1 -1
- package/dist/src/services/transcriptPages/index.mjs +158 -34
- package/dist/src/services/transcriptPages/index.mjs.map +1 -1
- package/dist/src/services/voiceToolsContract/index.cjs +7 -7
- package/dist/src/services/voiceToolsContract/index.cjs.map +1 -1
- package/dist/src/services/voiceToolsContract/index.d.mts +4 -4
- package/dist/src/services/voiceToolsContract/index.d.mts.map +1 -1
- package/dist/src/services/voiceToolsContract/index.mjs +7 -7
- package/dist/src/services/voiceToolsContract/index.mjs.map +1 -1
- package/dist/src/services/workspaceRegistry/index.cjs +9 -179
- package/dist/src/services/workspaceRegistry/index.cjs.map +1 -1
- package/dist/src/services/workspaceRegistry/index.d.mts +5 -47
- package/dist/src/services/workspaceRegistry/index.mjs +7 -176
- package/dist/src/services/workspaceRegistry/index.mjs.map +1 -1
- package/dist/src/services/workspaceRegistry/sync.cjs +148 -0
- package/dist/src/services/workspaceRegistry/sync.cjs.map +1 -0
- package/dist/src/services/workspaceRegistry/sync.d.mts +34 -0
- package/dist/src/services/workspaceRegistry/sync.d.mts.map +1 -0
- package/dist/src/services/workspaceRegistry/sync.mjs +140 -0
- package/dist/src/services/workspaceRegistry/sync.mjs.map +1 -0
- package/dist/src/services/workspaceRegistry/workspaceRecords.cjs +114 -0
- package/dist/src/services/workspaceRegistry/workspaceRecords.cjs.map +1 -0
- package/dist/src/services/workspaceRegistry/workspaceRecords.d.mts +31 -0
- package/dist/src/services/workspaceRegistry/workspaceRecords.d.mts.map +1 -0
- package/dist/src/services/workspaceRegistry/workspaceRecords.mjs +101 -0
- package/dist/src/services/workspaceRegistry/workspaceRecords.mjs.map +1 -0
- package/dist/src/systems/child/adapters/headlessChildSessionService.cjs +339 -202
- package/dist/src/systems/child/adapters/headlessChildSessionService.cjs.map +1 -1
- package/dist/src/systems/child/adapters/headlessChildSessionService.d.mts +16 -21
- package/dist/src/systems/child/adapters/headlessChildSessionService.d.mts.map +1 -1
- package/dist/src/systems/child/adapters/headlessChildSessionService.mjs +329 -191
- package/dist/src/systems/child/adapters/headlessChildSessionService.mjs.map +1 -1
- package/dist/src/systems/child/services/childSession/index.cjs +94 -20
- package/dist/src/systems/child/services/childSession/index.cjs.map +1 -1
- package/dist/src/systems/child/services/childSession/index.d.mts +12 -3
- package/dist/src/systems/child/services/childSession/index.d.mts.map +1 -1
- package/dist/src/systems/child/services/childSession/index.mjs +94 -20
- package/dist/src/systems/child/services/childSession/index.mjs.map +1 -1
- package/dist/src/systems/child/types/childSession.cjs +33 -13
- package/dist/src/systems/child/types/childSession.cjs.map +1 -1
- package/dist/src/systems/child/types/childSession.d.mts +143 -80
- package/dist/src/systems/child/types/childSession.d.mts.map +1 -1
- package/dist/src/systems/child/types/childSession.mjs +24 -9
- package/dist/src/systems/child/types/childSession.mjs.map +1 -1
- package/dist/src/systems/main/adapters/headlessHost.cjs +30 -27
- package/dist/src/systems/main/adapters/headlessHost.cjs.map +1 -1
- package/dist/src/systems/main/adapters/headlessHost.d.mts +22 -22
- package/dist/src/systems/main/adapters/headlessHost.d.mts.map +1 -1
- package/dist/src/systems/main/adapters/headlessHost.mjs +33 -30
- package/dist/src/systems/main/adapters/headlessHost.mjs.map +1 -1
- package/dist/src/systems/main/adapters/headlessSessionHost.cjs +248 -229
- package/dist/src/systems/main/adapters/headlessSessionHost.cjs.map +1 -1
- package/dist/src/systems/main/adapters/headlessSessionHost.d.mts +4 -5
- package/dist/src/systems/main/adapters/headlessSessionHost.d.mts.map +1 -1
- package/dist/src/systems/main/adapters/headlessSessionHost.mjs +239 -219
- package/dist/src/systems/main/adapters/headlessSessionHost.mjs.map +1 -1
- package/dist/src/systems/main/types/headlessHost.d.mts +16 -14
- package/dist/src/systems/main/types/headlessHost.d.mts.map +1 -1
- package/dist/src/testing/pi/testHost.cjs +2 -2
- package/dist/src/testing/pi/testHost.cjs.map +1 -1
- package/dist/src/testing/pi/testHost.d.mts +3 -2
- package/dist/src/testing/pi/testHost.mjs +3 -3
- package/dist/src/testing/pi/testHost.mjs.map +1 -1
- package/dist/src/types/config.d.mts +1 -1
- package/dist/src/types/config.d.mts.map +1 -1
- package/dist/src/types/kernel.d.mts +3 -3
- package/dist/src/types/server/directHarnessRuntime.d.mts +54 -25
- package/dist/src/types/server/directHarnessRuntime.d.mts.map +1 -1
- package/dist/src/types/server/sessionToolSurface.d.mts +9 -9
- package/dist/src/web/services/apiClient/index.d.mts +1 -0
- package/dist/src/web/services/apiPaths/index.cjs.map +1 -1
- package/dist/src/web/services/apiPaths/index.d.mts +1 -1
- package/dist/src/web/services/apiPaths/index.mjs.map +1 -1
- package/dist/src/web/services/mcpWidget.cjs.map +1 -1
- package/dist/src/web/services/mcpWidget.d.mts +2 -2
- package/dist/src/web/services/mcpWidget.d.mts.map +1 -1
- package/dist/src/web/services/mcpWidget.mjs.map +1 -1
- package/dist/src/web/services/testing/templateRail.cjs +3 -0
- package/dist/src/web/services/testing/templateRail.cjs.map +1 -1
- package/dist/src/web/services/testing/templateRail.mjs +3 -0
- package/dist/src/web/services/testing/templateRail.mjs.map +1 -1
- package/dist/src/web/types/mcpWidget.d.mts +1 -1
- package/dist/src/web/types/nativeTemplate.d.mts +1 -1
- package/dist/src/web/types/nativeTemplate.d.mts.map +1 -1
- package/dist/src/web/types/template.d.mts +8 -0
- package/dist/src/web/types/template.d.mts.map +1 -1
- package/dist/src/web/types/webPlugin.d.mts +17 -5
- package/dist/src/web/types/webPlugin.d.mts.map +1 -1
- package/dist/testMode.cjs +4 -0
- package/dist/testMode.d.mts +2 -0
- package/dist/testMode.mjs +1 -0
- package/dist/testing.cjs +1 -1
- package/dist/testing.d.mts +2 -2
- package/dist/testing.mjs +2 -2
- package/dist/toolInventory.cjs.map +1 -1
- package/dist/toolInventory.mjs.map +1 -1
- package/dist/toolNames.mjs +1 -2
- package/dist/toolOverrides.cjs +4 -4
- package/dist/toolOverrides.d.mts +3 -3
- package/dist/toolOverrides.mjs +3 -3
- package/dist/toolSurface.cjs +4 -4
- package/dist/toolSurface.d.mts +3 -3
- package/dist/toolSurface.mjs +3 -3
- package/dist/transition.cjs +3 -3
- package/dist/transition.d.cjs +3 -3
- package/dist/transition.d.mts +2 -2
- package/dist/transition.mjs +1 -2
- package/dist/transitionClassifier.cjs.map +1 -1
- package/dist/transitionClassifier.d.mts +2 -2
- package/dist/transitionClassifier.d.mts.map +1 -1
- package/dist/transitionClassifier.mjs.map +1 -1
- package/dist/transitionCoordinator.cjs +3 -3
- package/dist/transitionCoordinator.cjs.map +1 -1
- package/dist/transitionCoordinator.d.mts +4 -4
- package/dist/transitionCoordinator.d.mts.map +1 -1
- package/dist/transitionCoordinator.mjs +3 -3
- package/dist/transitionCoordinator.mjs.map +1 -1
- package/dist/typesContextApi.d.mts +2 -1
- package/dist/typesContextApi.d.mts.map +1 -1
- package/dist/uiHub.cjs +3 -3
- package/dist/uiHub.d.mts +2 -2
- package/dist/uiHub.mjs +1 -2
- package/dist/voiceTools.cjs +5 -5
- package/dist/voiceTools.d.mts +3 -3
- package/dist/voiceTools.mjs +3 -3
- package/dist/web.cjs +8 -0
- package/dist/web.d.mts +3 -2
- package/dist/web.mjs +2 -1
- package/dist/webCompositions.cjs.map +1 -1
- package/dist/webCompositions.d.mts +7 -7
- package/dist/webCompositions.d.mts.map +1 -1
- package/dist/webCompositions.mjs.map +1 -1
- package/licenses/Codex-Apache-2.0.txt +201 -0
- package/package.json +58 -53
- package/dist/doomPackage.cjs +0 -61
- package/dist/doomPackage.cjs.map +0 -1
- package/dist/doomPackage.d.mts +0 -17
- package/dist/doomPackage.d.mts.map +0 -1
- package/dist/doomPackage.mjs +0 -54
- package/dist/doomPackage.mjs.map +0 -1
- package/dist/jsonlSessionRepo.cjs +0 -44
- package/dist/jsonlSessionRepo.cjs.map +0 -1
- package/dist/jsonlSessionRepo.d.mts +0 -7
- package/dist/jsonlSessionRepo.d.mts.map +0 -1
- package/dist/jsonlSessionRepo.mjs +0 -42
- package/dist/jsonlSessionRepo.mjs.map +0 -1
- package/dist/runtimeJson.cjs.map +0 -1
- package/dist/runtimeJson.d.mts.map +0 -1
- package/dist/runtimeJson.mjs.map +0 -1
- package/dist/runtimePiSettings.cjs.map +0 -1
- package/dist/runtimePiSettings.d.mts.map +0 -1
- package/dist/runtimePiSettings.mjs.map +0 -1
- package/dist/serverFacet.cjs +0 -34
- package/dist/serverFacet.d.mts +0 -10
- package/dist/serverFacet.mjs +0 -9
- package/dist/src/pi/piWebSocketListener.cjs +0 -115
- package/dist/src/pi/piWebSocketListener.cjs.map +0 -1
- package/dist/src/pi/piWebSocketListener.mjs +0 -115
- package/dist/src/pi/piWebSocketListener.mjs.map +0 -1
- package/dist/src/schemas/serverFacet.cjs +0 -111
- package/dist/src/schemas/serverFacet.cjs.map +0 -1
- package/dist/src/schemas/serverFacet.d.mts +0 -152
- package/dist/src/schemas/serverFacet.d.mts.map +0 -1
- package/dist/src/schemas/serverFacet.mjs +0 -101
- package/dist/src/schemas/serverFacet.mjs.map +0 -1
- package/dist/src/schemas/sessionUpdates.d.mts +0 -34
- package/dist/src/schemas/sessionUpdates.d.mts.map +0 -1
- package/dist/src/server/headlessProtocol.cjs +0 -382
- package/dist/src/server/headlessProtocol.cjs.map +0 -1
- package/dist/src/server/headlessProtocol.mjs +0 -382
- package/dist/src/server/headlessProtocol.mjs.map +0 -1
- package/dist/src/server/nativeChildTranscriptReader.cjs +0 -20
- package/dist/src/server/nativeChildTranscriptReader.cjs.map +0 -1
- package/dist/src/server/nativeChildTranscriptReader.mjs +0 -18
- package/dist/src/server/nativeChildTranscriptReader.mjs.map +0 -1
- package/dist/src/server/serverFacetLoader.cjs +0 -214
- package/dist/src/server/serverFacetLoader.cjs.map +0 -1
- package/dist/src/server/serverFacetLoader.d.mts +0 -72
- package/dist/src/server/serverFacetLoader.d.mts.map +0 -1
- package/dist/src/server/serverFacetLoader.mjs +0 -212
- package/dist/src/server/serverFacetLoader.mjs.map +0 -1
- package/dist/src/services/acpSessionUpdates/index.cjs +0 -129
- package/dist/src/services/acpSessionUpdates/index.cjs.map +0 -1
- package/dist/src/services/acpSessionUpdates/index.mjs +0 -129
- package/dist/src/services/acpSessionUpdates/index.mjs.map +0 -1
- package/dist/src/services/historyImport/index.cjs +0 -8
- package/dist/src/services/historyImport/index.cjs.map +0 -1
- package/dist/src/services/historyImport/index.d.mts +0 -68
- package/dist/src/services/historyImport/index.d.mts.map +0 -1
- package/dist/src/services/historyImport/index.mjs +0 -8
- package/dist/src/services/historyImport/index.mjs.map +0 -1
- package/dist/src/services/openSessionRegistry/index.d.mts.map +0 -1
- package/dist/src/services/requestReceipts/index.cjs.map +0 -1
- package/dist/src/services/requestReceipts/index.d.mts +0 -11
- package/dist/src/services/requestReceipts/index.d.mts.map +0 -1
- package/dist/src/services/requestReceipts/index.mjs.map +0 -1
- package/dist/src/services/rpcTranscript/index.cjs +0 -633
- package/dist/src/services/rpcTranscript/index.cjs.map +0 -1
- package/dist/src/services/rpcTranscript/index.d.mts +0 -50
- package/dist/src/services/rpcTranscript/index.d.mts.map +0 -1
- package/dist/src/services/rpcTranscript/index.mjs +0 -632
- package/dist/src/services/rpcTranscript/index.mjs.map +0 -1
- package/dist/src/services/serverFacet/index.cjs.map +0 -1
- package/dist/src/services/serverFacet/index.d.mts +0 -31
- package/dist/src/services/serverFacet/index.d.mts.map +0 -1
- package/dist/src/services/serverFacet/index.mjs.map +0 -1
- package/dist/src/services/workspaceRegistry/index.d.mts.map +0 -1
- package/dist/src/systems/child/adapters/nativeChildRuntimes.cjs +0 -28
- package/dist/src/systems/child/adapters/nativeChildRuntimes.cjs.map +0 -1
- package/dist/src/systems/child/adapters/nativeChildRuntimes.mjs +0 -25
- package/dist/src/systems/child/adapters/nativeChildRuntimes.mjs.map +0 -1
- package/dist/terminalPiChildSessionService.cjs +0 -324
- package/dist/terminalPiChildSessionService.cjs.map +0 -1
- package/dist/terminalPiChildSessionService.d.mts +0 -46
- package/dist/terminalPiChildSessionService.d.mts.map +0 -1
- package/dist/terminalPiChildSessionService.mjs +0 -318
- package/dist/terminalPiChildSessionService.mjs.map +0 -1
- package/dist/v3Export.cjs +0 -10
- package/dist/v3Export.cjs.map +0 -1
- package/dist/v3Export.d.mts +0 -35
- package/dist/v3Export.d.mts.map +0 -1
- package/dist/v3Export.mjs +0 -9
- package/dist/v3Export.mjs.map +0 -1
|
@@ -1,35 +1,39 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
1
|
+
import { piAgentDirectory } from "../../../services/piSettings/core.mjs";
|
|
2
|
+
import { PO_AGENT_MODEL_ENTRY_TYPE } from "../../../schemas/agentModel.mjs";
|
|
3
|
+
import { PO_BACKGROUND_WORK_CHANGED_EVENT, PO_BACKGROUND_WORK_SERVICE, readPoBackgroundWorkService } from "../../../schemas/backgroundWork.mjs";
|
|
4
4
|
import "../../../../backgroundWork.mjs";
|
|
5
|
-
import { CHATGPT_AUTH_PROVIDER_ID
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
5
|
+
import { CHATGPT_AUTH_PROVIDER_ID } from "../../../services/chatgptAuth/index.mjs";
|
|
6
|
+
import { PO_CHILD_SESSION_HOOKS_SERVICE, PO_CHILD_SESSION_HOOK_REGISTRY_SERVICE, PO_CHILD_SESSION_MCP_TOOL_SERVICE, PO_CHILD_SESSION_SERVICE } from "../../child/types/childSession.mjs";
|
|
7
|
+
import { registerPoSessionEnvironment } from "../../../../runtimeCordisHost.mjs";
|
|
8
8
|
import "../../../../cordisHost.mjs";
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import { SessionMetadataDoc } from "../../../../sqliteSessionStorage.mjs";
|
|
9
|
+
import { PoHeadlessPromptAdmissionError, isPoHeadlessToolModelVisible } from "../../../schemas/headless.mjs";
|
|
10
|
+
import { SessionMetadataDoc } from "../../../services/durableSession/docs.mjs";
|
|
12
11
|
import { validationDetails } from "../../../../runtimeProtocol.mjs";
|
|
13
|
-
import {
|
|
12
|
+
import { formatSkillsForSystemPrompt } from "../../../services/skillPrompt/index.mjs";
|
|
14
13
|
import { HeadlessHost, describeLoadSkillTool, headlessHarnessSkill } from "./headlessHost.mjs";
|
|
14
|
+
import { abandonSubagent } from "../../../services/durableSubagents/index.mjs";
|
|
15
15
|
import { createDirectHarnessRuntime } from "../../../server/directHarnessRuntime.mjs";
|
|
16
16
|
import { harnessErrorMessage } from "../../../server/harnessErrorMessage.mjs";
|
|
17
17
|
import { createChatgptImageClient } from "../../../services/chatgptImages/index.mjs";
|
|
18
18
|
import { createChatgptWebSearchClient } from "../../../services/chatgptWebSearch/index.mjs";
|
|
19
19
|
import { buildContextDetail } from "../../../../contextDetail.mjs";
|
|
20
|
-
import { writeContextDetail } from "../../../../contextDetailStore.mjs";
|
|
21
|
-
import {
|
|
20
|
+
import { removeContextDetail, writeContextDetail } from "../../../../contextDetailStore.mjs";
|
|
21
|
+
import { PO_CONTEXT_ENTRY_TYPE, projectContext } from "../../../../contextProjection.mjs";
|
|
22
22
|
import { createHeadlessClient } from "../../../services/headlessClient/index.mjs";
|
|
23
|
+
import { createNodeModelDependencies } from "../../../services/nodeModelDependencies/index.mjs";
|
|
24
|
+
import { validateDirectHeadlessArgs } from "../../../services/piArgs/index.mjs";
|
|
25
|
+
import { summarize } from "../../../services/piSummary/index.mjs";
|
|
23
26
|
import { observe } from "../../../../serverTelemetry.mjs";
|
|
27
|
+
import { PO_SESSION_TEMP_DIR, prepareSessionEnvironment } from "../../../services/sessionFiles/index.mjs";
|
|
24
28
|
import { formatToolPrompt } from "../../../services/toolPrompt/index.mjs";
|
|
25
|
-
import { createHeadlessChildSessionServiceProvider } from "../../child/adapters/headlessChildSessionService.mjs";
|
|
29
|
+
import { composeChildSessionHooks, createHeadlessChildSessionServiceProvider, createPoChildSessionHookRegistry } from "../../child/adapters/headlessChildSessionService.mjs";
|
|
26
30
|
import { randomUUID } from "node:crypto";
|
|
27
|
-
import fs from "node:fs";
|
|
28
31
|
import path from "node:path";
|
|
29
|
-
import { DEFAULT_COMPACTION_SETTINGS, ModelRuntime, SettingsManager, generateSummary, getAgentDir, loadProjectContextFiles, parseArgs, resolveCliModel, resolveModelScopeWithDiagnostics } from "@earendil-works/pi-coding-agent";
|
|
30
32
|
import { Value } from "typebox/value";
|
|
31
33
|
import { BACKGROUND_CONTEXT, withAbortSignal } from "@earendil-works/chord/context";
|
|
32
|
-
import {
|
|
34
|
+
import { AsyncLocalStorage } from "node:async_hooks";
|
|
35
|
+
import { createAssistantMessageEventStream, isContextOverflow } from "@earendil-works/pi-ai";
|
|
36
|
+
import { clampMaxTokensToContext } from "@earendil-works/pi-ai/api/simple-options";
|
|
33
37
|
//#region src/systems/main/adapters/headlessSessionHost.ts
|
|
34
38
|
const EXTERNAL_OPERATION = "external";
|
|
35
39
|
const REMOTE_TOOL_WAIT_MS = 3e4;
|
|
@@ -46,7 +50,7 @@ function restoreHeadlessSelection(entries, fallback) {
|
|
|
46
50
|
for (let index = entries.length - 1; index >= 0 && projected === void 0; index -= 1) {
|
|
47
51
|
const entry = entries[index];
|
|
48
52
|
if (!isRecord(entry) || entry.type !== "custom" || !isRecord(entry.data)) continue;
|
|
49
|
-
if (projected === void 0 && entry.customType === "
|
|
53
|
+
if (projected === void 0 && entry.customType === "po-context") {
|
|
50
54
|
const selection = entry.data.selection;
|
|
51
55
|
if (!isRecord(selection) || typeof selection.majorMode !== "string") continue;
|
|
52
56
|
const domains = stringArray(selection.domains);
|
|
@@ -137,51 +141,6 @@ function isAgentMessage(value) {
|
|
|
137
141
|
function isCompactResult(value) {
|
|
138
142
|
return isRecord(value) && typeof value.summary === "string" && typeof value.tokensBefore === "number" && Number.isFinite(value.tokensBefore) && Array.isArray(value.retainedTail) && value.retainedTail.every(isAgentMessage) && (value.usage === void 0 || isUsage(value.usage)) && (value.details === void 0 || isJsonValue(value.details));
|
|
139
143
|
}
|
|
140
|
-
const unsupported = (parsed) => {
|
|
141
|
-
const match = [
|
|
142
|
-
["--help", parsed.help],
|
|
143
|
-
["--version", parsed.version],
|
|
144
|
-
["--mode", parsed.mode],
|
|
145
|
-
["--print", parsed.print],
|
|
146
|
-
["--export", parsed.export],
|
|
147
|
-
["--no-session", parsed.noSession],
|
|
148
|
-
["--continue", parsed.continue],
|
|
149
|
-
["--resume", parsed.resume],
|
|
150
|
-
["--fork", parsed.fork],
|
|
151
|
-
["--list-models", parsed.listModels],
|
|
152
|
-
["--offline", parsed.offline],
|
|
153
|
-
["--tui-mode", parsed.tuiMode],
|
|
154
|
-
["--extensions", parsed.extensions],
|
|
155
|
-
["--no-extensions", parsed.noExtensions],
|
|
156
|
-
["--skills", parsed.skills],
|
|
157
|
-
["--no-skills", parsed.noSkills],
|
|
158
|
-
["--prompt-templates", parsed.promptTemplates],
|
|
159
|
-
["--no-prompt-templates", parsed.noPromptTemplates],
|
|
160
|
-
["--themes", parsed.themes],
|
|
161
|
-
["--no-themes", parsed.noThemes],
|
|
162
|
-
["--no-context-files", parsed.noContextFiles],
|
|
163
|
-
["--tools", parsed.tools],
|
|
164
|
-
["--exclude-tools", parsed.excludeTools],
|
|
165
|
-
["--no-tools", parsed.noTools],
|
|
166
|
-
["--no-builtin-tools", parsed.noBuiltinTools],
|
|
167
|
-
["--project-trust-override", parsed.projectTrustOverride],
|
|
168
|
-
["--verbose", parsed.verbose]
|
|
169
|
-
].find(([, value]) => value !== void 0 && value !== false);
|
|
170
|
-
if (match) return `Direct headless mode does not support ${match[0]}.`;
|
|
171
|
-
if (parsed.messages.length > 0 || parsed.fileArgs.length > 0) return "Direct headless mode does not support positional prompts or files.";
|
|
172
|
-
const unknown = parsed.unknownFlags.keys().next().value;
|
|
173
|
-
return typeof unknown === "string" ? `Direct headless mode does not support --${unknown}.` : void 0;
|
|
174
|
-
};
|
|
175
|
-
/** Validate the Pi flags that remain after Doom's harness flags are removed. */
|
|
176
|
-
function validateDirectHeadlessArgs(agentArgs) {
|
|
177
|
-
if (agentArgs.includes("--mode")) throw new Error("Direct headless mode does not support --mode.");
|
|
178
|
-
const parsed = parseArgs([...agentArgs]);
|
|
179
|
-
const diagnostics = parsed.diagnostics.filter((diagnostic) => diagnostic.type === "error");
|
|
180
|
-
if (diagnostics.length) throw new Error(diagnostics.map((diagnostic) => diagnostic.message).join("\n"));
|
|
181
|
-
const error = unsupported(parsed);
|
|
182
|
-
if (error) throw new Error(error);
|
|
183
|
-
return parsed;
|
|
184
|
-
}
|
|
185
144
|
function modelIdentity(model) {
|
|
186
145
|
return {
|
|
187
146
|
provider: model.provider,
|
|
@@ -230,30 +189,6 @@ function modelMetadata(model) {
|
|
|
230
189
|
compat: Object.freeze(compat)
|
|
231
190
|
});
|
|
232
191
|
}
|
|
233
|
-
async function resolveModel(parsed, modelRuntime, settings) {
|
|
234
|
-
const cli = resolveCliModel({
|
|
235
|
-
cliProvider: parsed.provider,
|
|
236
|
-
cliModel: parsed.model,
|
|
237
|
-
cliThinking: parsed.thinking,
|
|
238
|
-
modelRuntime
|
|
239
|
-
});
|
|
240
|
-
if (cli.error) throw new Error(cli.error);
|
|
241
|
-
let scoped;
|
|
242
|
-
if (parsed.models !== void 0 && parsed.models.length > 0) {
|
|
243
|
-
scoped = (await resolveModelScopeWithDiagnostics(parsed.models, modelRuntime)).scopedModels[0]?.model;
|
|
244
|
-
if (scoped === void 0) throw new DoomSessionSetupError(`No configured model matched --models ${parsed.models.join(", ")}.`);
|
|
245
|
-
}
|
|
246
|
-
const configured = cli.model ?? scoped ?? (settings.getDefaultProvider() && settings.getDefaultModel() ? modelRuntime.getModel(settings.getDefaultProvider(), settings.getDefaultModel()) : void 0) ?? (await modelRuntime.getAvailable())[0];
|
|
247
|
-
if (configured === void 0) {
|
|
248
|
-
const agentDir = getAgentDir();
|
|
249
|
-
const runtimeError = modelRuntime.getError();
|
|
250
|
-
throw new DoomSessionSetupError(`No model is configured, so the session cannot start. Add a provider and its credentials in ${agentDir} (auth.json, or models.json for a custom provider), then set defaultProvider and defaultModel in ${path.join(agentDir, "settings.json")}.` + (runtimeError ? `\n\n${runtimeError}` : ""));
|
|
251
|
-
}
|
|
252
|
-
return {
|
|
253
|
-
model: configured,
|
|
254
|
-
thinkingLevel: cli.thinkingLevel ?? parsed.thinking ?? settings.getModelThinkingLevel(configured.provider, configured.id) ?? settings.getDefaultThinkingLevel()
|
|
255
|
-
};
|
|
256
|
-
}
|
|
257
192
|
function mapResources(resources) {
|
|
258
193
|
const skills = [];
|
|
259
194
|
const advertised = [];
|
|
@@ -309,9 +244,9 @@ function eventHook(event) {
|
|
|
309
244
|
message_start: "message_start",
|
|
310
245
|
message_update: "message_update",
|
|
311
246
|
message_end: "message_end",
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
247
|
+
tool_execution_start: "tool_execution_start",
|
|
248
|
+
tool_execution_update: "tool_execution_update",
|
|
249
|
+
tool_execution_end: "tool_execution_end",
|
|
315
250
|
compaction_end: "session_compact",
|
|
316
251
|
navigation_start: "session_tree",
|
|
317
252
|
navigation_end: "session_tree"
|
|
@@ -323,13 +258,15 @@ function emitTo(listeners, frame) {
|
|
|
323
258
|
listener(frame);
|
|
324
259
|
} catch {}
|
|
325
260
|
}
|
|
326
|
-
function createHeadlessCompositionPublisher(runtime, host, environment, groups, readSystemPrompt) {
|
|
261
|
+
function createHeadlessCompositionPublisher(runtime, host, environment, groups, readSystemPrompt, alive) {
|
|
327
262
|
let countTokens;
|
|
328
263
|
let contextRevision = 0;
|
|
329
264
|
let publishedContext;
|
|
330
265
|
let tail = Promise.resolve();
|
|
331
266
|
const publish = async (selection) => {
|
|
267
|
+
if (!alive()) return;
|
|
332
268
|
countTokens ??= (await import("gpt-tokenizer")).countTokens;
|
|
269
|
+
if (!alive()) return;
|
|
333
270
|
const inventory = host.getContextInventory(selection, countTokens);
|
|
334
271
|
const prompt = readSystemPrompt();
|
|
335
272
|
const promptCost = prompt === void 0 ? void 0 : {
|
|
@@ -365,11 +302,15 @@ function createHeadlessCompositionPublisher(runtime, host, environment, groups,
|
|
|
365
302
|
stage: prompt.stage
|
|
366
303
|
} }
|
|
367
304
|
});
|
|
368
|
-
await runtime.appendCustomEntry(
|
|
305
|
+
await runtime.appendCustomEntry(PO_CONTEXT_ENTRY_TYPE, {
|
|
306
|
+
...context,
|
|
307
|
+
revision
|
|
308
|
+
});
|
|
309
|
+
if (!alive()) return;
|
|
310
|
+
writeContextDetail(runtime.sessionId, revision, details, environment, {
|
|
369
311
|
...context,
|
|
370
312
|
revision
|
|
371
313
|
});
|
|
372
|
-
writeContextDetail(runtime.sessionId, revision, details, environment);
|
|
373
314
|
contextRevision = revision;
|
|
374
315
|
publishedContext = contextKey;
|
|
375
316
|
};
|
|
@@ -378,6 +319,41 @@ function createHeadlessCompositionPublisher(runtime, host, environment, groups,
|
|
|
378
319
|
return tail;
|
|
379
320
|
};
|
|
380
321
|
}
|
|
322
|
+
/**
|
|
323
|
+
* The project instructions an MCP client may read: repository-relative, never the global AGENTS.md,
|
|
324
|
+
* and never a file whose canonical path leaves the repository. Resolved once, like the files
|
|
325
|
+
* themselves; an unresolvable root or agent directory is kept and reported on read.
|
|
326
|
+
*/
|
|
327
|
+
async function repositoryInstructions(platform, repoRoot, agentDir, files) {
|
|
328
|
+
const env = platform.env(repoRoot);
|
|
329
|
+
const canonical = async (target) => {
|
|
330
|
+
const result = await env.canonicalPath(target, BACKGROUND_CONTEXT);
|
|
331
|
+
if (!result.ok) throw result.error;
|
|
332
|
+
return result.value;
|
|
333
|
+
};
|
|
334
|
+
try {
|
|
335
|
+
const root = await canonical(repoRoot);
|
|
336
|
+
const globalInstruction = path.join(await canonical(agentDir), "AGENTS.md");
|
|
337
|
+
const out = [];
|
|
338
|
+
for (const { path: filePath, content } of files) {
|
|
339
|
+
const relative = path.relative(repoRoot, filePath);
|
|
340
|
+
if (relative === "" || relative.startsWith("..") || path.isAbsolute(relative)) continue;
|
|
341
|
+
const canonicalPath = await canonical(filePath).catch(() => void 0);
|
|
342
|
+
if (canonicalPath === void 0 || canonicalPath === globalInstruction) continue;
|
|
343
|
+
const canonicalRelative = path.relative(root, canonicalPath);
|
|
344
|
+
if (canonicalRelative === "" || canonicalRelative.startsWith("..") || path.isAbsolute(canonicalRelative)) continue;
|
|
345
|
+
out.push({
|
|
346
|
+
path: relative.replaceAll(path.sep, "/"),
|
|
347
|
+
content
|
|
348
|
+
});
|
|
349
|
+
}
|
|
350
|
+
return out;
|
|
351
|
+
} catch (error) {
|
|
352
|
+
return error instanceof Error ? error : new Error(String(error));
|
|
353
|
+
} finally {
|
|
354
|
+
await env.cleanup(BACKGROUND_CONTEXT);
|
|
355
|
+
}
|
|
356
|
+
}
|
|
381
357
|
/** Create the gated, same-process host used by direct-headless startup tests. */
|
|
382
358
|
/**
|
|
383
359
|
* Composes one server session's host.
|
|
@@ -386,45 +362,26 @@ function createHeadlessCompositionPublisher(runtime, host, environment, groups,
|
|
|
386
362
|
* registered under its id for them to read instead of `process.env`, and released with it.
|
|
387
363
|
*/
|
|
388
364
|
async function createHeadlessSessionHost(options) {
|
|
389
|
-
|
|
365
|
+
let releaseEnvironment;
|
|
390
366
|
try {
|
|
367
|
+
options = {
|
|
368
|
+
...options,
|
|
369
|
+
environment: await prepareSessionEnvironment(options)
|
|
370
|
+
};
|
|
371
|
+
releaseEnvironment = registerPoSessionEnvironment(options.sessionId, options.environment);
|
|
391
372
|
return await composeHeadlessSessionHost(options, releaseEnvironment);
|
|
392
373
|
} catch (error) {
|
|
393
|
-
|
|
374
|
+
removeContextDetail(options.sessionId, options.environment);
|
|
375
|
+
releaseEnvironment?.();
|
|
394
376
|
throw error;
|
|
395
377
|
}
|
|
396
378
|
}
|
|
397
379
|
async function composeHeadlessSessionHost(options, releaseEnvironment) {
|
|
398
380
|
const parsed = validateDirectHeadlessArgs(options.agentArgs);
|
|
399
|
-
const
|
|
400
|
-
const
|
|
401
|
-
const
|
|
402
|
-
const
|
|
403
|
-
const modelSettings = settingsDir === agentDir ? settings : SettingsManager.create(options.cwd, settingsDir);
|
|
404
|
-
const modelRuntime = await ModelRuntime.create({
|
|
405
|
-
authPath: path.join(modelDir, "auth.json"),
|
|
406
|
-
modelsPath: path.join(modelDir, "models.json"),
|
|
407
|
-
refreshOnCreate: false
|
|
408
|
-
});
|
|
409
|
-
registerChatgptAuthProvider(modelRuntime);
|
|
410
|
-
const piExtensionPaths = options.piExtensions === false ? [] : [
|
|
411
|
-
...options.piExtensionFactories !== void 0 ? [] : options.piExtensionPaths ?? [],
|
|
412
|
-
...await resolvePiSettingsPackageEntries({
|
|
413
|
-
cwd: options.cwd,
|
|
414
|
-
agentDir,
|
|
415
|
-
settings,
|
|
416
|
-
...options.onNotice === void 0 ? {} : { onNotice: options.onNotice }
|
|
417
|
-
}),
|
|
418
|
-
...modelDir !== agentDir && fs.existsSync(path.join(modelDir, "extensions")) ? [path.join(modelDir, "extensions")] : []
|
|
419
|
-
];
|
|
420
|
-
const piPreload = await preloadPiExtensions({
|
|
421
|
-
cwd: options.cwd,
|
|
422
|
-
agentDir,
|
|
423
|
-
models: modelRuntime,
|
|
424
|
-
extensionPaths: [...new Set(piExtensionPaths)],
|
|
425
|
-
...options.piExtensions === false || options.piExtensionFactories === void 0 ? {} : { extensionFactories: await options.piExtensionFactories() },
|
|
426
|
-
...options.onNotice === void 0 ? {} : { onNotice: options.onNotice }
|
|
427
|
-
});
|
|
381
|
+
const models = await (options.modelDependencies ?? createNodeModelDependencies)(options);
|
|
382
|
+
const { agentDir, modelRuntime, projectContextFiles } = models;
|
|
383
|
+
const { platform } = options;
|
|
384
|
+
const instructions = await repositoryInstructions(platform, options.repoRoot, agentDir, projectContextFiles);
|
|
428
385
|
for (const override of options.providerOverrides?.() ?? []) {
|
|
429
386
|
if (!override.name.trim() || override.name !== override.name.trim()) throw new Error("Invalid native provider identity.");
|
|
430
387
|
const url = new URL(override.baseUrl);
|
|
@@ -432,7 +389,7 @@ async function composeHeadlessSessionHost(options, releaseEnvironment) {
|
|
|
432
389
|
if (modelRuntime.getRegisteredNativeProvider(override.name)) continue;
|
|
433
390
|
modelRuntime.registerProvider(override.name, { baseUrl: override.baseUrl });
|
|
434
391
|
}
|
|
435
|
-
const resolved = await resolveModel(parsed
|
|
392
|
+
const resolved = await models.resolveModel(parsed);
|
|
436
393
|
if (parsed.apiKey !== void 0) await modelRuntime.setRuntimeApiKey(resolved.model.provider, parsed.apiKey);
|
|
437
394
|
const reportedToolErrors = /* @__PURE__ */ new Set();
|
|
438
395
|
let promptPreparationFailed = false;
|
|
@@ -459,10 +416,6 @@ async function composeHeadlessSessionHost(options, releaseEnvironment) {
|
|
|
459
416
|
* Resolved once: cwd is fixed for the host's lifetime, and composeSystemPrompt runs
|
|
460
417
|
* on every generation.
|
|
461
418
|
*/
|
|
462
|
-
const projectContextFiles = loadProjectContextFiles({
|
|
463
|
-
cwd: options.cwd,
|
|
464
|
-
agentDir
|
|
465
|
-
});
|
|
466
419
|
const projectContextBlock = (() => {
|
|
467
420
|
if (projectContextFiles.length === 0) return "";
|
|
468
421
|
return `<project_context>\n\nProject-specific instructions and guidelines:\n\n${projectContextFiles.map(({ path: filePath, content }) => `<project_instructions path="${filePath}">\n${content}\n</project_instructions>\n`).join("\n")}\n</project_context>`;
|
|
@@ -484,7 +437,8 @@ async function composeHeadlessSessionHost(options, releaseEnvironment) {
|
|
|
484
437
|
formatToolPrompt(toolGuidance),
|
|
485
438
|
skills,
|
|
486
439
|
...mapped.context,
|
|
487
|
-
workingDirectoryLine
|
|
440
|
+
workingDirectoryLine,
|
|
441
|
+
options.environment["PO_SESSION_TEMP_DIR"] ? `Session temporary folder: ${options.environment[PO_SESSION_TEMP_DIR]}\nUse this folder for generated scratch files outside the workspace. Keep workspace edits in place and save important deliverables in session artifacts. Temporary files may be removed by the operating system.` : ""
|
|
488
442
|
].filter(Boolean).join("\n\n");
|
|
489
443
|
};
|
|
490
444
|
/** The last prompt a turn actually built, once one has. */
|
|
@@ -576,17 +530,16 @@ async function composeHeadlessSessionHost(options, releaseEnvironment) {
|
|
|
576
530
|
...terminate === void 0 ? {} : { terminate }
|
|
577
531
|
};
|
|
578
532
|
};
|
|
533
|
+
const selectionCommand = new AsyncLocalStorage();
|
|
579
534
|
const runtime = await createDirectHarnessRuntime({
|
|
580
535
|
cwd: options.cwd,
|
|
581
536
|
sessionId: options.sessionId,
|
|
582
537
|
...options.initialFastMode === void 0 ? {} : { initialFastMode: options.initialFastMode },
|
|
583
538
|
...options.initialAgentLocked === void 0 ? {} : { initialAgentLocked: options.initialAgentLocked },
|
|
584
539
|
...options.parentSessionId === void 0 ? {} : { parentSessionId: options.parentSessionId },
|
|
585
|
-
|
|
586
|
-
|
|
540
|
+
...options.resume ? { resume: true } : {},
|
|
541
|
+
platform,
|
|
587
542
|
sessionName: parsed.name ?? options.sessionName,
|
|
588
|
-
...parsed.session === void 0 ? {} : { sessionPath: parsed.session },
|
|
589
|
-
sessionsRoot: parsed.sessionDir ?? path.join(agentDir, "server", "sessions"),
|
|
590
543
|
models: modelRuntime,
|
|
591
544
|
model: resolved.model,
|
|
592
545
|
...resolved.thinkingLevel === void 0 ? {} : { thinkingLevel: resolved.thinkingLevel },
|
|
@@ -705,7 +658,12 @@ async function composeHeadlessSessionHost(options, releaseEnvironment) {
|
|
|
705
658
|
headlessHost.assertActive();
|
|
706
659
|
return false;
|
|
707
660
|
}
|
|
708
|
-
await
|
|
661
|
+
await selectionCommand.run([
|
|
662
|
+
"mode",
|
|
663
|
+
"domains",
|
|
664
|
+
"profile",
|
|
665
|
+
"minor"
|
|
666
|
+
].includes(name), () => headlessHost.dispatchCommand(name, args));
|
|
709
667
|
return true;
|
|
710
668
|
},
|
|
711
669
|
guardModelRequest: () => {
|
|
@@ -723,13 +681,17 @@ async function composeHeadlessSessionHost(options, releaseEnvironment) {
|
|
|
723
681
|
workspaceId: options.workspaceId,
|
|
724
682
|
groupingRoot: options.groupingRoot ?? options.repoRoot,
|
|
725
683
|
parentSessionId: options.parentSessionId,
|
|
726
|
-
sessionProvenance: options.sessionProvenance
|
|
684
|
+
sessionProvenance: options.sessionProvenance,
|
|
685
|
+
files: {
|
|
686
|
+
agentDirectory: path.resolve(piAgentDirectory(options.environment, options.platform.homeDirectory)),
|
|
687
|
+
...options.environment["PO_SESSION_TEMP_DIR"] === void 0 ? {} : { temporaryDirectory: options.environment[PO_SESSION_TEMP_DIR] }
|
|
688
|
+
}
|
|
727
689
|
});
|
|
728
690
|
}, BACKGROUND_CONTEXT);
|
|
729
691
|
const agent = await runtime.lane.agent(BACKGROUND_CONTEXT);
|
|
730
692
|
return {
|
|
731
693
|
model: agent.model ? modelRuntime.getModel(agent.model.provider, agent.model.modelId) : void 0,
|
|
732
|
-
entries: (await runtime.readEntries()).entries.filter((entry) => entry.type === "custom" && entry.customType === "
|
|
694
|
+
entries: (await runtime.readEntries()).entries.filter((entry) => entry.type === "custom" && entry.customType === "po-context").slice(-1)
|
|
733
695
|
};
|
|
734
696
|
})().catch(async (error) => {
|
|
735
697
|
await runtime.dispose().catch((disposeError) => options.onNotice?.(`Session runtime failed to close: ${String(disposeError)}`));
|
|
@@ -749,6 +711,9 @@ async function composeHeadlessSessionHost(options, releaseEnvironment) {
|
|
|
749
711
|
const entries = opened.entries;
|
|
750
712
|
const listeners = /* @__PURE__ */ new Set();
|
|
751
713
|
const selectionListeners = /* @__PURE__ */ new Set();
|
|
714
|
+
const backgroundWorkListeners = /* @__PURE__ */ new Set();
|
|
715
|
+
let backgroundWorkActive = null;
|
|
716
|
+
let backgroundWorkBinding;
|
|
752
717
|
let latestSelection = options.selection;
|
|
753
718
|
const initialSelection = restoreHeadlessSelection(entries, options.selection);
|
|
754
719
|
let headlessHost;
|
|
@@ -768,24 +733,7 @@ async function composeHeadlessSessionHost(options, releaseEnvironment) {
|
|
|
768
733
|
if (!host || disposed) throw new Error("Session context is unavailable.");
|
|
769
734
|
const status = host.status;
|
|
770
735
|
if (!status.ready || status.requestedRevision !== status.appliedRevision) throw new Error("Session context is unavailable.");
|
|
771
|
-
|
|
772
|
-
const globalInstruction = path.join(fs.realpathSync(agentDir), "AGENTS.md");
|
|
773
|
-
const instructions = projectContextFiles.flatMap(({ path: filePath, content }) => {
|
|
774
|
-
const relative = path.relative(options.repoRoot, filePath);
|
|
775
|
-
if (relative === "" || relative.startsWith("..") || path.isAbsolute(relative)) return [];
|
|
776
|
-
try {
|
|
777
|
-
const canonicalPath = fs.realpathSync(filePath);
|
|
778
|
-
if (canonicalPath === globalInstruction) return [];
|
|
779
|
-
const canonicalRelative = path.relative(root, canonicalPath);
|
|
780
|
-
if (canonicalRelative === "" || canonicalRelative.startsWith("..") || path.isAbsolute(canonicalRelative)) return [];
|
|
781
|
-
} catch {
|
|
782
|
-
return [];
|
|
783
|
-
}
|
|
784
|
-
return [{
|
|
785
|
-
path: relative.replaceAll(path.sep, "/"),
|
|
786
|
-
content
|
|
787
|
-
}];
|
|
788
|
-
});
|
|
736
|
+
if (instructions instanceof Error) throw instructions;
|
|
789
737
|
const selection = host.context.selection;
|
|
790
738
|
const persona = host.appliedResources.find(({ name, kind }) => name === "po/profile-config" && kind === "context")?.text;
|
|
791
739
|
signal.throwIfAborted();
|
|
@@ -811,29 +759,22 @@ async function composeHeadlessSessionHost(options, releaseEnvironment) {
|
|
|
811
759
|
persona: persona ?? null
|
|
812
760
|
};
|
|
813
761
|
};
|
|
762
|
+
const childHookRegistry = createPoChildSessionHookRegistry();
|
|
814
763
|
const childSessionProvider = createHeadlessChildSessionServiceProvider({
|
|
815
|
-
|
|
764
|
+
runtime,
|
|
816
765
|
cwd: options.cwd,
|
|
817
|
-
sessionsRoot: parsed.sessionDir ?? path.join(agentDir, "server", "sessions"),
|
|
818
|
-
models: modelRuntime,
|
|
819
|
-
defaultModel: () => currentModel,
|
|
820
|
-
parentFastMode: async () => {
|
|
821
|
-
const state = await runtime.readState();
|
|
822
|
-
if (typeof state.fastMode !== "boolean") throw new Error("Parent Fast mode must be a boolean.");
|
|
823
|
-
return state.fastMode;
|
|
824
|
-
},
|
|
825
766
|
subscribeMcpTool: (listener) => {
|
|
826
767
|
return mcpServiceRoot?.on("internal/service", (name) => {
|
|
827
|
-
if (name === "
|
|
768
|
+
if (name === "po/child-session-mcp-tool") listener();
|
|
828
769
|
}) ?? (() => void 0);
|
|
829
770
|
},
|
|
830
771
|
hooks: () => {
|
|
831
772
|
if (disposed || !headlessReady || !headlessHost?.status.ready) throw new Error("Headless capabilities are not installed.");
|
|
832
|
-
return mcpServiceRoot?.get(
|
|
773
|
+
return composeChildSessionHooks([mcpServiceRoot?.get(PO_CHILD_SESSION_HOOKS_SERVICE), ...childHookRegistry.list()], options.onNotice);
|
|
833
774
|
},
|
|
834
775
|
mcpTool: () => {
|
|
835
776
|
if (disposed || !headlessReady || !headlessHost?.status.ready) return void 0;
|
|
836
|
-
return mcpServiceRoot?.get(
|
|
777
|
+
return mcpServiceRoot?.get(PO_CHILD_SESSION_MCP_TOOL_SERVICE);
|
|
837
778
|
}
|
|
838
779
|
});
|
|
839
780
|
const completeAuxiliaryModel = async (reference, request) => {
|
|
@@ -887,9 +828,9 @@ async function composeHeadlessSessionHost(options, releaseEnvironment) {
|
|
|
887
828
|
const model = modelRuntime.getModel(provider, id);
|
|
888
829
|
return model ? modelMetadata(model) : void 0;
|
|
889
830
|
},
|
|
890
|
-
getAvailableModels() {
|
|
831
|
+
async getAvailableModels() {
|
|
891
832
|
if (disposed) throw new Error("The session is closed.");
|
|
892
|
-
return modelRuntime.
|
|
833
|
+
return (await modelRuntime.getAvailable()).filter((model) => modelRuntime.hasConfiguredAuth(model.provider)).map(({ provider, id }) => ({
|
|
893
834
|
provider,
|
|
894
835
|
id
|
|
895
836
|
}));
|
|
@@ -948,24 +889,27 @@ async function composeHeadlessSessionHost(options, releaseEnvironment) {
|
|
|
948
889
|
"max"
|
|
949
890
|
].includes(request.thinkingLevel)) throw new TypeError("Unsupported summary thinking level.");
|
|
950
891
|
let summaryFailure;
|
|
951
|
-
|
|
892
|
+
let overflowed = false;
|
|
893
|
+
const attempt = (target) => summarize(messages, target, request.signal, request.instructions, request.previousSummary, request.thinkingLevel, (_model, context, options) => {
|
|
952
894
|
const stream = createAssistantMessageEventStream();
|
|
953
|
-
|
|
895
|
+
const maxTokens = target.maxTokens > 0 ? clampMaxTokensToContext(target, context, target.maxTokens) : options?.maxTokens;
|
|
896
|
+
runtime.completeModel(target, context, {
|
|
954
897
|
signal: options?.signal,
|
|
955
|
-
maxTokens
|
|
898
|
+
maxTokens,
|
|
956
899
|
cacheRetention: "none",
|
|
957
|
-
reasoningEffort: !
|
|
900
|
+
reasoningEffort: !target.reasoning || request.thinkingLevel === "off" ? "none" : request.thinkingLevel,
|
|
958
901
|
maxRetries: 0
|
|
959
902
|
}).then((response) => {
|
|
960
903
|
if (response.stopReason === "aborted") summaryFailure = new Error(response.errorMessage ?? "Summary was aborted.");
|
|
904
|
+
overflowed = isContextOverflow(response, target.contextWindow) || response.stopReason === "length" && maxTokens !== void 0 && maxTokens < target.maxTokens;
|
|
961
905
|
stream.end(response);
|
|
962
906
|
}, (error) => {
|
|
963
907
|
summaryFailure = error instanceof Error ? error : new Error(String(error));
|
|
964
908
|
stream.end({
|
|
965
909
|
role: "assistant",
|
|
966
|
-
api:
|
|
967
|
-
provider:
|
|
968
|
-
model:
|
|
910
|
+
api: target.api,
|
|
911
|
+
provider: target.provider,
|
|
912
|
+
model: target.id,
|
|
969
913
|
content: [],
|
|
970
914
|
stopReason: request.signal?.aborted ? "aborted" : "error",
|
|
971
915
|
errorMessage: error instanceof Error ? error.message : String(error),
|
|
@@ -988,6 +932,15 @@ async function composeHeadlessSessionHost(options, releaseEnvironment) {
|
|
|
988
932
|
});
|
|
989
933
|
return stream;
|
|
990
934
|
});
|
|
935
|
+
let summary;
|
|
936
|
+
try {
|
|
937
|
+
summary = await attempt(model);
|
|
938
|
+
} catch (error) {
|
|
939
|
+
const widest = overflowed && !request.signal?.aborted ? (await modelRuntime.getAvailable()).reduce((best, item) => item.contextWindow > best.contextWindow ? item : best, model) : model;
|
|
940
|
+
if (widest === model) throw error;
|
|
941
|
+
summaryFailure = void 0;
|
|
942
|
+
summary = await attempt(widest);
|
|
943
|
+
}
|
|
991
944
|
request.signal?.throwIfAborted();
|
|
992
945
|
if (summaryFailure) throw summaryFailure;
|
|
993
946
|
if (!summary.trim()) throw new Error("Summarization returned an empty checkpoint.");
|
|
@@ -1024,13 +977,9 @@ async function composeHeadlessSessionHost(options, releaseEnvironment) {
|
|
|
1024
977
|
if (settings.thinkingLevel !== void 0) await runtime.setThinkingLevel(settings.thinkingLevel);
|
|
1025
978
|
},
|
|
1026
979
|
async forkSource() {
|
|
1027
|
-
const sessionFile = runtime.sessionFile;
|
|
1028
|
-
if (typeof sessionFile !== "string") throw new Error("The parent session has no persisted journal.");
|
|
1029
980
|
const { leafId } = await runtime.readEntries();
|
|
1030
981
|
return {
|
|
1031
|
-
kind: "
|
|
1032
|
-
sessionFile,
|
|
1033
|
-
branch: runtime.laneName,
|
|
982
|
+
kind: "fork",
|
|
1034
983
|
...leafId === null ? {} : { entryId: leafId }
|
|
1035
984
|
};
|
|
1036
985
|
},
|
|
@@ -1047,12 +996,14 @@ async function composeHeadlessSessionHost(options, releaseEnvironment) {
|
|
|
1047
996
|
if (disposed || !headlessReady || promptPreparationFailed || !headlessHost?.status.ready) throw new Error("Headless capability preparation is not ready.");
|
|
1048
997
|
if (delivery !== "steer" && delivery !== "followUp") throw new TypeError("Custom message delivery must be steer or followUp.");
|
|
1049
998
|
if (requestId !== void 0 && (typeof requestId !== "string" || !requestId.trim())) throw new TypeError("Custom message requestId must be a non-empty string.");
|
|
1050
|
-
|
|
999
|
+
const submission = await runtime.submitInternalMessage(informationalMessage(message), delivery, requestId);
|
|
1000
|
+
submission.settled.catch((error) => client.client.notify({
|
|
1051
1001
|
body: error instanceof Error ? error.message : String(error),
|
|
1052
1002
|
level: "error"
|
|
1053
1003
|
}));
|
|
1004
|
+
if ("admitted" in submission) await submission.admitted;
|
|
1054
1005
|
} catch (error) {
|
|
1055
|
-
throw new
|
|
1006
|
+
throw new PoHeadlessPromptAdmissionError(error);
|
|
1056
1007
|
}
|
|
1057
1008
|
},
|
|
1058
1009
|
registerCheckpointBoundary(callback) {
|
|
@@ -1095,12 +1046,14 @@ async function composeHeadlessSessionHost(options, releaseEnvironment) {
|
|
|
1095
1046
|
async admitPrompt(text, delivery, origin, requestId) {
|
|
1096
1047
|
try {
|
|
1097
1048
|
if (origin === "operator" && delivery === "followUp") return await runtime.followUp(text);
|
|
1098
|
-
|
|
1049
|
+
const submission = delivery === "interrupt" ? await runtime.submitUserPrompt(text) : origin === "operator" ? await runtime.submitPrompt(text, void 0, delivery === "steer" ? "steer" : void 0) : await runtime.submitInternalMessage(text, delivery === "steer" ? "steer" : "followUp", requestId);
|
|
1050
|
+
submission.settled.catch((error) => client.client.notify({
|
|
1099
1051
|
body: error instanceof Error ? error.message : String(error),
|
|
1100
1052
|
level: "error"
|
|
1101
1053
|
}));
|
|
1054
|
+
if ("admitted" in submission) await submission.admitted;
|
|
1102
1055
|
} catch (error) {
|
|
1103
|
-
throw new
|
|
1056
|
+
throw new PoHeadlessPromptAdmissionError(error);
|
|
1104
1057
|
}
|
|
1105
1058
|
},
|
|
1106
1059
|
abort: () => runtime.abort(),
|
|
@@ -1152,7 +1105,7 @@ async function composeHeadlessSessionHost(options, releaseEnvironment) {
|
|
|
1152
1105
|
const serialized = JSON.stringify(projection);
|
|
1153
1106
|
if (serialized !== publishedAgentModel) {
|
|
1154
1107
|
publishedAgentModel = serialized;
|
|
1155
|
-
await runtime.appendCustomEntry(
|
|
1108
|
+
await runtime.appendCustomEntry(PO_AGENT_MODEL_ENTRY_TYPE, projection);
|
|
1156
1109
|
}
|
|
1157
1110
|
}
|
|
1158
1111
|
}
|
|
@@ -1162,7 +1115,7 @@ async function composeHeadlessSessionHost(options, releaseEnvironment) {
|
|
|
1162
1115
|
status: "started"
|
|
1163
1116
|
} : event);
|
|
1164
1117
|
});
|
|
1165
|
-
let
|
|
1118
|
+
let appliedPackageTools = [];
|
|
1166
1119
|
let appliedSessionTools = /* @__PURE__ */ new Map();
|
|
1167
1120
|
let appliedSkills = /* @__PURE__ */ new Map();
|
|
1168
1121
|
let surfaceRevision = 0;
|
|
@@ -1265,13 +1218,13 @@ async function composeHeadlessSessionHost(options, releaseEnvironment) {
|
|
|
1265
1218
|
};
|
|
1266
1219
|
const applyToolSurface = async (tools) => {
|
|
1267
1220
|
toolSurfaceReady = false;
|
|
1268
|
-
const modelTools = tools.filter(
|
|
1269
|
-
const
|
|
1221
|
+
const modelTools = tools.filter(isPoHeadlessToolModelVisible);
|
|
1222
|
+
const packageTools = modelTools.map((tool) => toolAdapter(tool.name === "load_skill" ? {
|
|
1270
1223
|
...tool,
|
|
1271
1224
|
description: describeLoadSkillTool(tool.description, headlessHost?.appliedResources ?? [])
|
|
1272
1225
|
} : tool, () => headlessHost.context, reportedToolErrors));
|
|
1273
|
-
const
|
|
1274
|
-
const piTools = (piHost?.tools ?? []).filter((tool) => !
|
|
1226
|
+
const packageNames = headlessHost?.declaredToolNames ?? new Set(packageTools.map((tool) => tool.name));
|
|
1227
|
+
const piTools = (piHost?.tools ?? []).filter((tool) => !packageNames.has(tool.name) && headlessHost?.allowsTool(tool.name) !== false).map((tool) => ({
|
|
1275
1228
|
...tool,
|
|
1276
1229
|
async execute(...args) {
|
|
1277
1230
|
headlessHost.assertActive();
|
|
@@ -1285,7 +1238,7 @@ async function composeHeadlessSessionHost(options, releaseEnvironment) {
|
|
|
1285
1238
|
...tool.promptSnippet === void 0 ? {} : { promptSnippet: tool.promptSnippet },
|
|
1286
1239
|
...tool.promptGuidelines === void 0 ? {} : { promptGuidelines: tool.promptGuidelines }
|
|
1287
1240
|
}))];
|
|
1288
|
-
await runtime.replaceTools([...piTools, ...
|
|
1241
|
+
await runtime.replaceTools([...piTools, ...packageTools]);
|
|
1289
1242
|
const next = /* @__PURE__ */ new Map();
|
|
1290
1243
|
for (const tool of piTools) next.set(tool.name, {
|
|
1291
1244
|
descriptor: {
|
|
@@ -1318,11 +1271,11 @@ async function composeHeadlessSessionHost(options, releaseEnvironment) {
|
|
|
1318
1271
|
*
|
|
1319
1272
|
* Deferred because the tool surface arbiter calls `setActiveTools` synchronously from inside
|
|
1320
1273
|
* `register`, and coalesced because several extensions register their restrictions in the same
|
|
1321
|
-
* tick. The
|
|
1274
|
+
* tick. The package set is unchanged, so this never re-enters the kernel.
|
|
1322
1275
|
*/
|
|
1323
1276
|
let toolLine = Promise.resolve();
|
|
1324
1277
|
const applyLatestTools = () => {
|
|
1325
|
-
toolLine = toolLine.catch(() => void 0).then(() => applyToolSurface(
|
|
1278
|
+
toolLine = toolLine.catch(() => void 0).then(() => applyToolSurface(appliedPackageTools));
|
|
1326
1279
|
return toolLine;
|
|
1327
1280
|
};
|
|
1328
1281
|
const scheduleToolReapply = () => {
|
|
@@ -1334,21 +1287,43 @@ async function composeHeadlessSessionHost(options, releaseEnvironment) {
|
|
|
1334
1287
|
applyLatestTools().catch((error) => options.onNotice?.(`Pi extension tool refresh failed: ${error instanceof Error ? error.message : String(error)}`));
|
|
1335
1288
|
});
|
|
1336
1289
|
};
|
|
1290
|
+
const publishBackgroundWork = (active) => {
|
|
1291
|
+
if (disposed || active === backgroundWorkActive) return;
|
|
1292
|
+
backgroundWorkActive = active;
|
|
1293
|
+
for (const listener of backgroundWorkListeners) listener(active);
|
|
1294
|
+
};
|
|
1337
1295
|
let admittedToolSurface;
|
|
1338
|
-
const
|
|
1296
|
+
const preparePackages = (root) => {
|
|
1339
1297
|
mcpServiceRoot = root;
|
|
1298
|
+
backgroundWorkBinding = root.inject([PO_BACKGROUND_WORK_SERVICE], (context) => {
|
|
1299
|
+
const service = readPoBackgroundWorkService(context);
|
|
1300
|
+
if (service === void 0) return void 0;
|
|
1301
|
+
let active = true;
|
|
1302
|
+
const refresh = () => {
|
|
1303
|
+
if (disposed || !active) return;
|
|
1304
|
+
try {
|
|
1305
|
+
const snapshot = service.snapshot(options.sessionId);
|
|
1306
|
+
publishBackgroundWork(snapshot.items.length > 0 ? true : snapshot.errors.length > 0 ? null : false);
|
|
1307
|
+
} catch {
|
|
1308
|
+
publishBackgroundWork(null);
|
|
1309
|
+
}
|
|
1310
|
+
};
|
|
1311
|
+
const unsubscribe = context.on(PO_BACKGROUND_WORK_CHANGED_EVENT, refresh);
|
|
1312
|
+
refresh();
|
|
1313
|
+
return () => {
|
|
1314
|
+
active = false;
|
|
1315
|
+
unsubscribe();
|
|
1316
|
+
publishBackgroundWork(null);
|
|
1317
|
+
};
|
|
1318
|
+
});
|
|
1340
1319
|
root.plugin((context) => {
|
|
1341
|
-
context.provide(
|
|
1320
|
+
context.provide(PO_CHILD_SESSION_SERVICE, childSessionProvider.get());
|
|
1321
|
+
context.provide(PO_CHILD_SESSION_HOOK_REGISTRY_SERVICE, childHookRegistry);
|
|
1342
1322
|
context.effect(() => () => childSessionProvider.close(), "headless child session service lifetime");
|
|
1343
1323
|
});
|
|
1344
|
-
if (headlessHost !== void 0) throw new Error("Direct headless
|
|
1345
|
-
if (
|
|
1346
|
-
cwd: options.cwd,
|
|
1347
|
-
agentDir,
|
|
1348
|
-
models: modelRuntime,
|
|
1349
|
-
settings,
|
|
1324
|
+
if (headlessHost !== void 0) throw new Error("Direct headless packages were prepared more than once.");
|
|
1325
|
+
if (models.piExtensions !== void 0) piHost = models.piExtensions({
|
|
1350
1326
|
runtime,
|
|
1351
|
-
preload: piPreload,
|
|
1352
1327
|
getModel: () => currentModel,
|
|
1353
1328
|
getThinkingLevel: () => resolved.thinkingLevel ?? "off",
|
|
1354
1329
|
client: () => client?.client,
|
|
@@ -1360,6 +1335,20 @@ async function composeHeadlessSessionHost(options, releaseEnvironment) {
|
|
|
1360
1335
|
...options.onNotice === void 0 ? {} : { onNotice: options.onNotice }
|
|
1361
1336
|
});
|
|
1362
1337
|
headlessHost = new HeadlessHost(root, {
|
|
1338
|
+
scheduleSelection: (change, apply) => {
|
|
1339
|
+
if (!selectionCommand.getStore()) return apply(change);
|
|
1340
|
+
const previous = headlessHost.context.selection.state?.["minor-mode"] ?? [];
|
|
1341
|
+
return runtime.runAtToolBoundary(() => selectionCommand.run(false, () => {
|
|
1342
|
+
if (change.axis !== "state" || change.key !== "minor-mode") return apply(change);
|
|
1343
|
+
const removed = previous.filter((name) => !change.values.includes(name));
|
|
1344
|
+
const added = change.values.filter((name) => !previous.includes(name));
|
|
1345
|
+
const current = headlessHost.context.selection.state?.["minor-mode"] ?? [];
|
|
1346
|
+
return apply({
|
|
1347
|
+
...change,
|
|
1348
|
+
values: [.../* @__PURE__ */ new Set([...current.filter((name) => !removed.includes(name)), ...added])]
|
|
1349
|
+
});
|
|
1350
|
+
}));
|
|
1351
|
+
},
|
|
1363
1352
|
candidates: options.candidates,
|
|
1364
1353
|
toolSurface: () => admittedToolSurface,
|
|
1365
1354
|
selection: initialSelection,
|
|
@@ -1375,13 +1364,13 @@ async function composeHeadlessSessionHost(options, releaseEnvironment) {
|
|
|
1375
1364
|
},
|
|
1376
1365
|
...options.allowedTools === void 0 ? {} : { allowedTools: () => options.allowedTools },
|
|
1377
1366
|
applyTools: async (tools) => {
|
|
1378
|
-
|
|
1367
|
+
appliedPackageTools = tools;
|
|
1379
1368
|
await applyLatestTools();
|
|
1380
1369
|
},
|
|
1381
1370
|
applyResources: async (next) => {
|
|
1382
1371
|
const mapped = mapResources(next);
|
|
1383
|
-
const
|
|
1384
|
-
const piSkills = (piHost?.skills ?? []).filter((skill) => !
|
|
1372
|
+
const packageNames = new Set((mapped.harness.skills ?? []).map((skill) => skill.name));
|
|
1373
|
+
const piSkills = (piHost?.skills ?? []).filter((skill) => !packageNames.has(skill.name));
|
|
1385
1374
|
const mergedSkills = [...piSkills, ...mapped.harness.skills ?? []];
|
|
1386
1375
|
await runtime.replaceResources(piSkills.length === 0 ? mapped.harness : {
|
|
1387
1376
|
...mapped.harness,
|
|
@@ -1399,16 +1388,16 @@ async function composeHeadlessSessionHost(options, releaseEnvironment) {
|
|
|
1399
1388
|
}];
|
|
1400
1389
|
}));
|
|
1401
1390
|
surfaceRevision += 1;
|
|
1402
|
-
if (
|
|
1391
|
+
if (appliedPackageTools.some((tool) => tool.name === "load_skill")) await applyLatestTools();
|
|
1403
1392
|
},
|
|
1404
1393
|
onApplied: async (selection) => {
|
|
1405
1394
|
options.publishSelectionStatus?.((source, text) => client.client.setStatus(source, text), selection);
|
|
1406
1395
|
latestSelection = selection;
|
|
1407
1396
|
for (const listener of selectionListeners) listener(selection);
|
|
1408
1397
|
},
|
|
1409
|
-
onError: (error) => options.onNotice?.(`Headless
|
|
1398
|
+
onError: (error, source) => options.onNotice?.(`Headless ${source ?? "host"} failed: ${harnessErrorMessage(error)}`)
|
|
1410
1399
|
});
|
|
1411
|
-
publishComposition = createHeadlessCompositionPublisher(runtime, headlessHost, options.environment, (selection) => options.contextGroups?.(root, selection) ?? [], readSystemPrompt);
|
|
1400
|
+
publishComposition = createHeadlessCompositionPublisher(runtime, headlessHost, options.environment, (selection) => options.contextGroups?.(root, selection) ?? [], readSystemPrompt, () => !disposed);
|
|
1412
1401
|
headlessHost.subscribeSelection(async (selection) => {
|
|
1413
1402
|
if (!headlessReady || !headlessHost?.status.ready) return;
|
|
1414
1403
|
try {
|
|
@@ -1419,16 +1408,16 @@ async function composeHeadlessSessionHost(options, releaseEnvironment) {
|
|
|
1419
1408
|
await publishComposition(selection);
|
|
1420
1409
|
});
|
|
1421
1410
|
};
|
|
1422
|
-
const
|
|
1411
|
+
const activatePackages = async (installedPackages) => {
|
|
1423
1412
|
if (headlessHost === void 0) throw new Error("Direct headless host was not prepared.");
|
|
1424
1413
|
const host = headlessHost;
|
|
1425
1414
|
const assertLive = () => {
|
|
1426
1415
|
if (disposed) throw new Error("The session was closed while it was starting.");
|
|
1427
1416
|
};
|
|
1428
1417
|
requiredServerPackages = await options.requiredServerPackages?.() ?? [];
|
|
1429
|
-
installedServerPackages =
|
|
1418
|
+
installedServerPackages = installedPackages;
|
|
1430
1419
|
assertLive();
|
|
1431
|
-
host.setAvailableSources(
|
|
1420
|
+
host.setAvailableSources(installedPackages);
|
|
1432
1421
|
if (piHost !== void 0) try {
|
|
1433
1422
|
await piHost.load();
|
|
1434
1423
|
} catch (error) {
|
|
@@ -1445,6 +1434,22 @@ async function composeHeadlessSessionHost(options, releaseEnvironment) {
|
|
|
1445
1434
|
assertLive();
|
|
1446
1435
|
await host.dispatchHook("session_start", {});
|
|
1447
1436
|
await publishComposition();
|
|
1437
|
+
const children = childSessionProvider.get();
|
|
1438
|
+
for (const run of await children.stored?.() ?? []) {
|
|
1439
|
+
if (run.settled) continue;
|
|
1440
|
+
const runId = run.request.runId;
|
|
1441
|
+
try {
|
|
1442
|
+
await children.restore?.(runId);
|
|
1443
|
+
} catch (error) {
|
|
1444
|
+
options.onNotice?.(`Child run ${runId} could not resume: ${harnessErrorMessage(error)}`);
|
|
1445
|
+
assertLive();
|
|
1446
|
+
const conversationId = await abandonSubagent(runtime.harness, runId, BACKGROUND_CONTEXT).catch((abandonError) => {
|
|
1447
|
+
options.onNotice?.(`Child run ${runId} could not be stopped: ${harnessErrorMessage(abandonError)}`);
|
|
1448
|
+
});
|
|
1449
|
+
if (conversationId !== void 0) runtime.closeLane(conversationId);
|
|
1450
|
+
}
|
|
1451
|
+
}
|
|
1452
|
+
assertLive();
|
|
1448
1453
|
(await runtime.admitResume()).settled.catch((error) => options.onNotice?.(`Session resume failed: ${harnessErrorMessage(error)}`));
|
|
1449
1454
|
assertLive();
|
|
1450
1455
|
};
|
|
@@ -1458,6 +1463,13 @@ async function composeHeadlessSessionHost(options, releaseEnvironment) {
|
|
|
1458
1463
|
mcpLifecycle.abort();
|
|
1459
1464
|
chatgptLifecycle.abort();
|
|
1460
1465
|
const failures = [];
|
|
1466
|
+
removeContextDetail(runtime.sessionId, options.environment);
|
|
1467
|
+
backgroundWorkListeners.clear();
|
|
1468
|
+
try {
|
|
1469
|
+
await backgroundWorkBinding?.dispose();
|
|
1470
|
+
} catch (error) {
|
|
1471
|
+
failures.push(error);
|
|
1472
|
+
}
|
|
1461
1473
|
try {
|
|
1462
1474
|
await runtime.interrupt();
|
|
1463
1475
|
} catch (error) {
|
|
@@ -1468,6 +1480,11 @@ async function composeHeadlessSessionHost(options, releaseEnvironment) {
|
|
|
1468
1480
|
} catch (error) {
|
|
1469
1481
|
failures.push(error);
|
|
1470
1482
|
}
|
|
1483
|
+
try {
|
|
1484
|
+
await childSessionProvider.close();
|
|
1485
|
+
} catch (error) {
|
|
1486
|
+
failures.push(error);
|
|
1487
|
+
}
|
|
1471
1488
|
try {
|
|
1472
1489
|
await runtime.dispose();
|
|
1473
1490
|
} catch (error) {
|
|
@@ -1486,11 +1503,6 @@ async function composeHeadlessSessionHost(options, releaseEnvironment) {
|
|
|
1486
1503
|
client?.dispose();
|
|
1487
1504
|
unsubscribePresentation();
|
|
1488
1505
|
unsubscribeEvents();
|
|
1489
|
-
try {
|
|
1490
|
-
await childSessionProvider.close();
|
|
1491
|
-
} catch (error) {
|
|
1492
|
-
failures.push(error);
|
|
1493
|
-
}
|
|
1494
1506
|
releaseEnvironment();
|
|
1495
1507
|
if (failures.length) throw new AggregateError(failures, "Headless session shutdown failed");
|
|
1496
1508
|
})();
|
|
@@ -1660,7 +1672,7 @@ async function composeHeadlessSessionHost(options, releaseEnvironment) {
|
|
|
1660
1672
|
runtime,
|
|
1661
1673
|
async readExecutionState() {
|
|
1662
1674
|
const state = await runtime.readState();
|
|
1663
|
-
const backgroundWork = mcpServiceRoot === void 0 ? void 0 :
|
|
1675
|
+
const backgroundWork = mcpServiceRoot === void 0 ? void 0 : readPoBackgroundWorkService(mcpServiceRoot)?.snapshot(options.sessionId);
|
|
1664
1676
|
return {
|
|
1665
1677
|
isIdle: state.isIdle === true,
|
|
1666
1678
|
hasPendingMessages: Number(state.pendingMessageCount) > 0,
|
|
@@ -1673,11 +1685,13 @@ async function composeHeadlessSessionHost(options, releaseEnvironment) {
|
|
|
1673
1685
|
},
|
|
1674
1686
|
toolSurface,
|
|
1675
1687
|
mcpSurface,
|
|
1676
|
-
|
|
1677
|
-
|
|
1688
|
+
preparePackages,
|
|
1689
|
+
activatePackages,
|
|
1678
1690
|
canDispatch: () => !disposed && headlessReady && !promptPreparationFailed && headlessHost?.status.ready === true,
|
|
1691
|
+
childThread: (runId) => childSessionProvider.get().thread(runId),
|
|
1679
1692
|
onPresentationFrame(listener) {
|
|
1680
1693
|
listeners.add(listener);
|
|
1694
|
+
client?.replay(listener);
|
|
1681
1695
|
return () => listeners.delete(listener);
|
|
1682
1696
|
},
|
|
1683
1697
|
onSelection(listener) {
|
|
@@ -1687,6 +1701,12 @@ async function composeHeadlessSessionHost(options, releaseEnvironment) {
|
|
|
1687
1701
|
selectionListeners.delete(listener);
|
|
1688
1702
|
};
|
|
1689
1703
|
},
|
|
1704
|
+
onBackgroundWork(listener) {
|
|
1705
|
+
if (disposed) return () => void 0;
|
|
1706
|
+
backgroundWorkListeners.add(listener);
|
|
1707
|
+
listener(backgroundWorkActive);
|
|
1708
|
+
return () => backgroundWorkListeners.delete(listener);
|
|
1709
|
+
},
|
|
1690
1710
|
respondToExtensionUi(frame) {
|
|
1691
1711
|
return client?.receive(frame) ?? false;
|
|
1692
1712
|
},
|