@xenosystem/agent-interface-host 0.1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +67 -0
- package/dist/acp/AcpAgentRegistryService.d.ts +77 -0
- package/dist/acp/AcpAgentRegistryService.d.ts.map +1 -0
- package/dist/acp/AcpAgentRegistryService.js +754 -0
- package/dist/acp/AcpAgentRegistryService.js.map +1 -0
- package/dist/acp/AcpAgentTurnExecutionAdapter.d.ts +56 -0
- package/dist/acp/AcpAgentTurnExecutionAdapter.d.ts.map +1 -0
- package/dist/acp/AcpAgentTurnExecutionAdapter.js +323 -0
- package/dist/acp/AcpAgentTurnExecutionAdapter.js.map +1 -0
- package/dist/acp/AcpApprovalPortAdapter.d.ts +41 -0
- package/dist/acp/AcpApprovalPortAdapter.d.ts.map +1 -0
- package/dist/acp/AcpApprovalPortAdapter.js +82 -0
- package/dist/acp/AcpApprovalPortAdapter.js.map +1 -0
- package/dist/acp/AcpCoordinationBridge.d.ts +13 -0
- package/dist/acp/AcpCoordinationBridge.d.ts.map +1 -0
- package/dist/acp/AcpCoordinationBridge.js +13 -0
- package/dist/acp/AcpCoordinationBridge.js.map +1 -0
- package/dist/acp/AcpDiagnosticsService.d.ts +61 -0
- package/dist/acp/AcpDiagnosticsService.d.ts.map +1 -0
- package/dist/acp/AcpDiagnosticsService.js +203 -0
- package/dist/acp/AcpDiagnosticsService.js.map +1 -0
- package/dist/acp/AcpExternalCertificationHarness.d.ts +47 -0
- package/dist/acp/AcpExternalCertificationHarness.d.ts.map +1 -0
- package/dist/acp/AcpExternalCertificationHarness.js +176 -0
- package/dist/acp/AcpExternalCertificationHarness.js.map +1 -0
- package/dist/acp/AcpHostBridge.d.ts +81 -0
- package/dist/acp/AcpHostBridge.d.ts.map +1 -0
- package/dist/acp/AcpHostBridge.js +101 -0
- package/dist/acp/AcpHostBridge.js.map +1 -0
- package/dist/acp/AcpInteractivePermissionBridge.d.ts +77 -0
- package/dist/acp/AcpInteractivePermissionBridge.d.ts.map +1 -0
- package/dist/acp/AcpInteractivePermissionBridge.js +127 -0
- package/dist/acp/AcpInteractivePermissionBridge.js.map +1 -0
- package/dist/acp/AcpPermissionBridge.d.ts +19 -0
- package/dist/acp/AcpPermissionBridge.d.ts.map +1 -0
- package/dist/acp/AcpPermissionBridge.js +110 -0
- package/dist/acp/AcpPermissionBridge.js.map +1 -0
- package/dist/acp/AcpPermissionPolicy.d.ts +111 -0
- package/dist/acp/AcpPermissionPolicy.d.ts.map +1 -0
- package/dist/acp/AcpPermissionPolicy.js +167 -0
- package/dist/acp/AcpPermissionPolicy.js.map +1 -0
- package/dist/acp/AcpProcessSupervisor.d.ts +134 -0
- package/dist/acp/AcpProcessSupervisor.d.ts.map +1 -0
- package/dist/acp/AcpProcessSupervisor.js +674 -0
- package/dist/acp/AcpProcessSupervisor.js.map +1 -0
- package/dist/acp/AcpProviderApprovalService.d.ts +27 -0
- package/dist/acp/AcpProviderApprovalService.d.ts.map +1 -0
- package/dist/acp/AcpProviderApprovalService.js +128 -0
- package/dist/acp/AcpProviderApprovalService.js.map +1 -0
- package/dist/acp/AcpProviderCatalogService.d.ts +69 -0
- package/dist/acp/AcpProviderCatalogService.d.ts.map +1 -0
- package/dist/acp/AcpProviderCatalogService.js +707 -0
- package/dist/acp/AcpProviderCatalogService.js.map +1 -0
- package/dist/acp/AcpProviderModelService.d.ts +6 -0
- package/dist/acp/AcpProviderModelService.d.ts.map +1 -0
- package/dist/acp/AcpProviderModelService.js +274 -0
- package/dist/acp/AcpProviderModelService.js.map +1 -0
- package/dist/acp/AcpProviderVersionReadiness.d.ts +6 -0
- package/dist/acp/AcpProviderVersionReadiness.d.ts.map +1 -0
- package/dist/acp/AcpProviderVersionReadiness.js +100 -0
- package/dist/acp/AcpProviderVersionReadiness.js.map +1 -0
- package/dist/acp/AcpRuntimeEventMapper.d.ts +16 -0
- package/dist/acp/AcpRuntimeEventMapper.d.ts.map +1 -0
- package/dist/acp/AcpRuntimeEventMapper.js +326 -0
- package/dist/acp/AcpRuntimeEventMapper.js.map +1 -0
- package/dist/acp/AcpSessionService.d.ts +65 -0
- package/dist/acp/AcpSessionService.d.ts.map +1 -0
- package/dist/acp/AcpSessionService.js +931 -0
- package/dist/acp/AcpSessionService.js.map +1 -0
- package/dist/acp/DurableAcpPermissionPolicyStore.d.ts +25 -0
- package/dist/acp/DurableAcpPermissionPolicyStore.d.ts.map +1 -0
- package/dist/acp/DurableAcpPermissionPolicyStore.js +100 -0
- package/dist/acp/DurableAcpPermissionPolicyStore.js.map +1 -0
- package/dist/acp/acpCommandSafety.d.ts +63 -0
- package/dist/acp/acpCommandSafety.d.ts.map +1 -0
- package/dist/acp/acpCommandSafety.js +90 -0
- package/dist/acp/acpCommandSafety.js.map +1 -0
- package/dist/acp/acpErrors.d.ts +47 -0
- package/dist/acp/acpErrors.d.ts.map +1 -0
- package/dist/acp/acpErrors.js +93 -0
- package/dist/acp/acpErrors.js.map +1 -0
- package/dist/acp/acpRedaction.d.ts +9 -0
- package/dist/acp/acpRedaction.d.ts.map +1 -0
- package/dist/acp/acpRedaction.js +69 -0
- package/dist/acp/acpRedaction.js.map +1 -0
- package/dist/acp/acpSessionResume.d.ts +8 -0
- package/dist/acp/acpSessionResume.d.ts.map +1 -0
- package/dist/acp/acpSessionResume.js +31 -0
- package/dist/acp/acpSessionResume.js.map +1 -0
- package/dist/acp/acpTypes.d.ts +467 -0
- package/dist/acp/acpTypes.d.ts.map +1 -0
- package/dist/acp/acpTypes.js +2 -0
- package/dist/acp/acpTypes.js.map +1 -0
- package/dist/agent/chooseDirectoryBridge.d.ts +29 -0
- package/dist/agent/chooseDirectoryBridge.d.ts.map +1 -0
- package/dist/agent/chooseDirectoryBridge.js +116 -0
- package/dist/agent/chooseDirectoryBridge.js.map +1 -0
- package/dist/agent/permissionProfiles.d.ts +29 -0
- package/dist/agent/permissionProfiles.d.ts.map +1 -0
- package/dist/agent/permissionProfiles.js +107 -0
- package/dist/agent/permissionProfiles.js.map +1 -0
- package/dist/agent/runtimeAuthorityPrompt.d.ts +13 -0
- package/dist/agent/runtimeAuthorityPrompt.d.ts.map +1 -0
- package/dist/agent/runtimeAuthorityPrompt.js +45 -0
- package/dist/agent/runtimeAuthorityPrompt.js.map +1 -0
- package/dist/agent/runtimeModeOutputGuard.d.ts +6 -0
- package/dist/agent/runtimeModeOutputGuard.d.ts.map +1 -0
- package/dist/agent/runtimeModeOutputGuard.js +40 -0
- package/dist/agent/runtimeModeOutputGuard.js.map +1 -0
- package/dist/agent/workspacePlacementBridge.d.ts +29 -0
- package/dist/agent/workspacePlacementBridge.d.ts.map +1 -0
- package/dist/agent/workspacePlacementBridge.js +143 -0
- package/dist/agent/workspacePlacementBridge.js.map +1 -0
- package/dist/agentSearch/AgentSearchService.d.ts +81 -0
- package/dist/agentSearch/AgentSearchService.d.ts.map +1 -0
- package/dist/agentSearch/AgentSearchService.js +1038 -0
- package/dist/agentSearch/AgentSearchService.js.map +1 -0
- package/dist/agentSearch/JsonInvertedIndexAdapter.d.ts +44 -0
- package/dist/agentSearch/JsonInvertedIndexAdapter.d.ts.map +1 -0
- package/dist/agentSearch/JsonInvertedIndexAdapter.js +307 -0
- package/dist/agentSearch/JsonInvertedIndexAdapter.js.map +1 -0
- package/dist/agentSearch/SearchIndexAdapter.d.ts +33 -0
- package/dist/agentSearch/SearchIndexAdapter.d.ts.map +1 -0
- package/dist/agentSearch/SearchIndexAdapter.js +2 -0
- package/dist/agentSearch/SearchIndexAdapter.js.map +1 -0
- package/dist/agentSearch/SearchSourceWatcher.d.ts +29 -0
- package/dist/agentSearch/SearchSourceWatcher.d.ts.map +1 -0
- package/dist/agentSearch/SearchSourceWatcher.js +150 -0
- package/dist/agentSearch/SearchSourceWatcher.js.map +1 -0
- package/dist/agentSearch/SqliteFtsIndexAdapter.d.ts +58 -0
- package/dist/agentSearch/SqliteFtsIndexAdapter.d.ts.map +1 -0
- package/dist/agentSearch/SqliteFtsIndexAdapter.js +420 -0
- package/dist/agentSearch/SqliteFtsIndexAdapter.js.map +1 -0
- package/dist/agentSearch/conversationIndexer.d.ts +69 -0
- package/dist/agentSearch/conversationIndexer.d.ts.map +1 -0
- package/dist/agentSearch/conversationIndexer.js +313 -0
- package/dist/agentSearch/conversationIndexer.js.map +1 -0
- package/dist/agentSearch/searchTypes.d.ts +264 -0
- package/dist/agentSearch/searchTypes.d.ts.map +1 -0
- package/dist/agentSearch/searchTypes.js +2 -0
- package/dist/agentSearch/searchTypes.js.map +1 -0
- package/dist/agentSearch/searchUtils.d.ts +12 -0
- package/dist/agentSearch/searchUtils.d.ts.map +1 -0
- package/dist/agentSearch/searchUtils.js +125 -0
- package/dist/agentSearch/searchUtils.js.map +1 -0
- package/dist/agentSearch/workspaceMetadataIndexer.d.ts +3 -0
- package/dist/agentSearch/workspaceMetadataIndexer.d.ts.map +1 -0
- package/dist/agentSearch/workspaceMetadataIndexer.js +125 -0
- package/dist/agentSearch/workspaceMetadataIndexer.js.map +1 -0
- package/dist/cli/CliControlPlaneService.d.ts +269 -0
- package/dist/cli/CliControlPlaneService.d.ts.map +1 -0
- package/dist/cli/CliControlPlaneService.js +1874 -0
- package/dist/cli/CliControlPlaneService.js.map +1 -0
- package/dist/cloud/XenoCloudAgentTurnExecutionAdapter.d.ts +91 -0
- package/dist/cloud/XenoCloudAgentTurnExecutionAdapter.d.ts.map +1 -0
- package/dist/cloud/XenoCloudAgentTurnExecutionAdapter.js +379 -0
- package/dist/cloud/XenoCloudAgentTurnExecutionAdapter.js.map +1 -0
- package/dist/codebase/CodebaseIntelligenceService.d.ts +68 -0
- package/dist/codebase/CodebaseIntelligenceService.d.ts.map +1 -0
- package/dist/codebase/CodebaseIntelligenceService.js +1717 -0
- package/dist/codebase/CodebaseIntelligenceService.js.map +1 -0
- package/dist/codebase/LanguageServerProcessManager.d.ts +85 -0
- package/dist/codebase/LanguageServerProcessManager.d.ts.map +1 -0
- package/dist/codebase/LanguageServerProcessManager.js +607 -0
- package/dist/codebase/LanguageServerProcessManager.js.map +1 -0
- package/dist/codebase/codeTypes.d.ts +485 -0
- package/dist/codebase/codeTypes.d.ts.map +1 -0
- package/dist/codebase/codeTypes.js +2 -0
- package/dist/codebase/codeTypes.js.map +1 -0
- package/dist/codebase/codeUtils.d.ts +24 -0
- package/dist/codebase/codeUtils.d.ts.map +1 -0
- package/dist/codebase/codeUtils.js +177 -0
- package/dist/codebase/codeUtils.js.map +1 -0
- package/dist/codebase/contextPacks.d.ts +18 -0
- package/dist/codebase/contextPacks.d.ts.map +1 -0
- package/dist/codebase/contextPacks.js +180 -0
- package/dist/codebase/contextPacks.js.map +1 -0
- package/dist/codebase/dependencyGraph.d.ts +3 -0
- package/dist/codebase/dependencyGraph.d.ts.map +1 -0
- package/dist/codebase/dependencyGraph.js +209 -0
- package/dist/codebase/dependencyGraph.js.map +1 -0
- package/dist/codebase/fileIndexer.d.ts +27 -0
- package/dist/codebase/fileIndexer.d.ts.map +1 -0
- package/dist/codebase/fileIndexer.js +167 -0
- package/dist/codebase/fileIndexer.js.map +1 -0
- package/dist/codebase/symbolIndexer.d.ts +3 -0
- package/dist/codebase/symbolIndexer.d.ts.map +1 -0
- package/dist/codebase/symbolIndexer.js +184 -0
- package/dist/codebase/symbolIndexer.js.map +1 -0
- package/dist/codebase/whatChanged.d.ts +4 -0
- package/dist/codebase/whatChanged.d.ts.map +1 -0
- package/dist/codebase/whatChanged.js +138 -0
- package/dist/codebase/whatChanged.js.map +1 -0
- package/dist/coordination/CoordinationService.d.ts +166 -0
- package/dist/coordination/CoordinationService.d.ts.map +1 -0
- package/dist/coordination/CoordinationService.js +247 -0
- package/dist/coordination/CoordinationService.js.map +1 -0
- package/dist/coordination/claims.d.ts +122 -0
- package/dist/coordination/claims.d.ts.map +1 -0
- package/dist/coordination/claims.js +196 -0
- package/dist/coordination/claims.js.map +1 -0
- package/dist/coordination/coordinationTools.d.ts +40 -0
- package/dist/coordination/coordinationTools.d.ts.map +1 -0
- package/dist/coordination/coordinationTools.js +92 -0
- package/dist/coordination/coordinationTools.js.map +1 -0
- package/dist/coordination/laneBridge.d.ts +84 -0
- package/dist/coordination/laneBridge.d.ts.map +1 -0
- package/dist/coordination/laneBridge.js +86 -0
- package/dist/coordination/laneBridge.js.map +1 -0
- package/dist/coordination/messages.d.ts +225 -0
- package/dist/coordination/messages.d.ts.map +1 -0
- package/dist/coordination/messages.js +335 -0
- package/dist/coordination/messages.js.map +1 -0
- package/dist/coordination/permissionWaitRegistry.d.ts +32 -0
- package/dist/coordination/permissionWaitRegistry.d.ts.map +1 -0
- package/dist/coordination/permissionWaitRegistry.js +59 -0
- package/dist/coordination/permissionWaitRegistry.js.map +1 -0
- package/dist/coordination/query.d.ts +187 -0
- package/dist/coordination/query.d.ts.map +1 -0
- package/dist/coordination/query.js +138 -0
- package/dist/coordination/query.js.map +1 -0
- package/dist/coordination/renderInbox.d.ts +15 -0
- package/dist/coordination/renderInbox.d.ts.map +1 -0
- package/dist/coordination/renderInbox.js +19 -0
- package/dist/coordination/renderInbox.js.map +1 -0
- package/dist/coordination/runtimeEvents.d.ts +53 -0
- package/dist/coordination/runtimeEvents.d.ts.map +1 -0
- package/dist/coordination/runtimeEvents.js +112 -0
- package/dist/coordination/runtimeEvents.js.map +1 -0
- package/dist/detachedHostService.d.ts +77 -0
- package/dist/detachedHostService.d.ts.map +1 -0
- package/dist/detachedHostService.js +66 -0
- package/dist/detachedHostService.js.map +1 -0
- package/dist/detachedHostSupervisor.d.ts +102 -0
- package/dist/detachedHostSupervisor.d.ts.map +1 -0
- package/dist/detachedHostSupervisor.js +168 -0
- package/dist/detachedHostSupervisor.js.map +1 -0
- package/dist/durableRuntimeEventStore.d.ts +49 -0
- package/dist/durableRuntimeEventStore.d.ts.map +1 -0
- package/dist/durableRuntimeEventStore.js +364 -0
- package/dist/durableRuntimeEventStore.js.map +1 -0
- package/dist/engineering/EngineeringWorkbenchService.d.ts +142 -0
- package/dist/engineering/EngineeringWorkbenchService.d.ts.map +1 -0
- package/dist/engineering/EngineeringWorkbenchService.js +2301 -0
- package/dist/engineering/EngineeringWorkbenchService.js.map +1 -0
- package/dist/engineering/LandingService.d.ts +112 -0
- package/dist/engineering/LandingService.d.ts.map +1 -0
- package/dist/engineering/LandingService.js +239 -0
- package/dist/engineering/LandingService.js.map +1 -0
- package/dist/engineering/engineeringTypes.d.ts +2 -0
- package/dist/engineering/engineeringTypes.d.ts.map +1 -0
- package/dist/engineering/engineeringTypes.js +2 -0
- package/dist/engineering/engineeringTypes.js.map +1 -0
- package/dist/engineering/patchReview.d.ts +11 -0
- package/dist/engineering/patchReview.d.ts.map +1 -0
- package/dist/engineering/patchReview.js +174 -0
- package/dist/engineering/patchReview.js.map +1 -0
- package/dist/index.d.ts +834 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +3242 -0
- package/dist/index.js.map +1 -0
- package/dist/intake/IntakeService.d.ts +84 -0
- package/dist/intake/IntakeService.d.ts.map +1 -0
- package/dist/intake/IntakeService.js +117 -0
- package/dist/intake/IntakeService.js.map +1 -0
- package/dist/intake/RepositoryTodoIntakeSource.d.ts +72 -0
- package/dist/intake/RepositoryTodoIntakeSource.d.ts.map +1 -0
- package/dist/intake/RepositoryTodoIntakeSource.js +168 -0
- package/dist/intake/RepositoryTodoIntakeSource.js.map +1 -0
- package/dist/intake/WorkspaceTodoIntakeSource.d.ts +53 -0
- package/dist/intake/WorkspaceTodoIntakeSource.d.ts.map +1 -0
- package/dist/intake/WorkspaceTodoIntakeSource.js +81 -0
- package/dist/intake/WorkspaceTodoIntakeSource.js.map +1 -0
- package/dist/isolation/CommandExecution.d.ts +132 -0
- package/dist/isolation/CommandExecution.d.ts.map +1 -0
- package/dist/isolation/CommandExecution.js +48 -0
- package/dist/isolation/CommandExecution.js.map +1 -0
- package/dist/isolation/LocalCommandExecutor.d.ts +27 -0
- package/dist/isolation/LocalCommandExecutor.d.ts.map +1 -0
- package/dist/isolation/LocalCommandExecutor.js +97 -0
- package/dist/isolation/LocalCommandExecutor.js.map +1 -0
- package/dist/isolation/RunExecutionEnvironment.d.ts +135 -0
- package/dist/isolation/RunExecutionEnvironment.d.ts.map +1 -0
- package/dist/isolation/RunExecutionEnvironment.js +206 -0
- package/dist/isolation/RunExecutionEnvironment.js.map +1 -0
- package/dist/isolation/RunIsolationService.d.ts +90 -0
- package/dist/isolation/RunIsolationService.d.ts.map +1 -0
- package/dist/isolation/RunIsolationService.js +86 -0
- package/dist/isolation/RunIsolationService.js.map +1 -0
- package/dist/isolation/SandboxCommandExecutor.d.ts +93 -0
- package/dist/isolation/SandboxCommandExecutor.d.ts.map +1 -0
- package/dist/isolation/SandboxCommandExecutor.js +189 -0
- package/dist/isolation/SandboxCommandExecutor.js.map +1 -0
- package/dist/knowledge/WorkspaceKnowledgeService.d.ts +71 -0
- package/dist/knowledge/WorkspaceKnowledgeService.d.ts.map +1 -0
- package/dist/knowledge/WorkspaceKnowledgeService.js +103 -0
- package/dist/knowledge/WorkspaceKnowledgeService.js.map +1 -0
- package/dist/localHostAuthority.d.ts +24 -0
- package/dist/localHostAuthority.d.ts.map +1 -0
- package/dist/localHostAuthority.js +87 -0
- package/dist/localHostAuthority.js.map +1 -0
- package/dist/localHostLease.d.ts +51 -0
- package/dist/localHostLease.d.ts.map +1 -0
- package/dist/localHostLease.js +167 -0
- package/dist/localHostLease.js.map +1 -0
- package/dist/localHostPaths.d.ts +30 -0
- package/dist/localHostPaths.d.ts.map +1 -0
- package/dist/localHostPaths.js +60 -0
- package/dist/localHostPaths.js.map +1 -0
- package/dist/localRpcTransport.d.ts +21 -0
- package/dist/localRpcTransport.d.ts.map +1 -0
- package/dist/localRpcTransport.js +423 -0
- package/dist/localRpcTransport.js.map +1 -0
- package/dist/node.d.ts +104 -0
- package/dist/node.d.ts.map +1 -0
- package/dist/node.js +103 -0
- package/dist/node.js.map +1 -0
- package/dist/observation/DirectoryBaselineScanner.d.ts +44 -0
- package/dist/observation/DirectoryBaselineScanner.d.ts.map +1 -0
- package/dist/observation/DirectoryBaselineScanner.js +112 -0
- package/dist/observation/DirectoryBaselineScanner.js.map +1 -0
- package/dist/observation/MountContentReader.d.ts +63 -0
- package/dist/observation/MountContentReader.d.ts.map +1 -0
- package/dist/observation/MountContentReader.js +158 -0
- package/dist/observation/MountContentReader.js.map +1 -0
- package/dist/observation/RunObservationService.d.ts +229 -0
- package/dist/observation/RunObservationService.d.ts.map +1 -0
- package/dist/observation/RunObservationService.js +248 -0
- package/dist/observation/RunObservationService.js.map +1 -0
- package/dist/observation/XenoUseObservationSource.d.ts +42 -0
- package/dist/observation/XenoUseObservationSource.d.ts.map +1 -0
- package/dist/observation/XenoUseObservationSource.js +104 -0
- package/dist/observation/XenoUseObservationSource.js.map +1 -0
- package/dist/observation/XenoUseRunObserver.d.ts +140 -0
- package/dist/observation/XenoUseRunObserver.d.ts.map +1 -0
- package/dist/observation/XenoUseRunObserver.js +256 -0
- package/dist/observation/XenoUseRunObserver.js.map +1 -0
- package/dist/pluginMcp/PluginMcpManagerService.d.ts +141 -0
- package/dist/pluginMcp/PluginMcpManagerService.d.ts.map +1 -0
- package/dist/pluginMcp/PluginMcpManagerService.js +1821 -0
- package/dist/pluginMcp/PluginMcpManagerService.js.map +1 -0
- package/dist/pluginMcp/pluginMcpTypes.d.ts +349 -0
- package/dist/pluginMcp/pluginMcpTypes.d.ts.map +1 -0
- package/dist/pluginMcp/pluginMcpTypes.js +2 -0
- package/dist/pluginMcp/pluginMcpTypes.js.map +1 -0
- package/dist/policy/WorkspacePolicyService.d.ts +83 -0
- package/dist/policy/WorkspacePolicyService.d.ts.map +1 -0
- package/dist/policy/WorkspacePolicyService.js +809 -0
- package/dist/policy/WorkspacePolicyService.js.map +1 -0
- package/dist/policy/policyGuard.d.ts +27 -0
- package/dist/policy/policyGuard.d.ts.map +1 -0
- package/dist/policy/policyGuard.js +143 -0
- package/dist/policy/policyGuard.js.map +1 -0
- package/dist/policy/policyTypes.d.ts +190 -0
- package/dist/policy/policyTypes.d.ts.map +1 -0
- package/dist/policy/policyTypes.js +2 -0
- package/dist/policy/policyTypes.js.map +1 -0
- package/dist/runtime/RuntimeEventStore.d.ts +42 -0
- package/dist/runtime/RuntimeEventStore.d.ts.map +1 -0
- package/dist/runtime/RuntimeEventStore.js +412 -0
- package/dist/runtime/RuntimeEventStore.js.map +1 -0
- package/dist/runtime/RuntimeEventStoreRepositoryAdapter.d.ts +21 -0
- package/dist/runtime/RuntimeEventStoreRepositoryAdapter.d.ts.map +1 -0
- package/dist/runtime/RuntimeEventStoreRepositoryAdapter.js +41 -0
- package/dist/runtime/RuntimeEventStoreRepositoryAdapter.js.map +1 -0
- package/dist/runtime/RuntimeTimelineProjection.d.ts +5 -0
- package/dist/runtime/RuntimeTimelineProjection.d.ts.map +1 -0
- package/dist/runtime/RuntimeTimelineProjection.js +705 -0
- package/dist/runtime/RuntimeTimelineProjection.js.map +1 -0
- package/dist/runtime/runtimeEventTypes.d.ts +73 -0
- package/dist/runtime/runtimeEventTypes.d.ts.map +1 -0
- package/dist/runtime/runtimeEventTypes.js +2 -0
- package/dist/runtime/runtimeEventTypes.js.map +1 -0
- package/dist/sdk/SdkNativeAgentTurnExecutionAdapter.d.ts +117 -0
- package/dist/sdk/SdkNativeAgentTurnExecutionAdapter.d.ts.map +1 -0
- package/dist/sdk/SdkNativeAgentTurnExecutionAdapter.js +214 -0
- package/dist/sdk/SdkNativeAgentTurnExecutionAdapter.js.map +1 -0
- package/dist/session/AgentSessionService.d.ts +285 -0
- package/dist/session/AgentSessionService.d.ts.map +1 -0
- package/dist/session/AgentSessionService.js +444 -0
- package/dist/session/AgentSessionService.js.map +1 -0
- package/dist/session/bufferedSessionPty.d.ts +27 -0
- package/dist/session/bufferedSessionPty.d.ts.map +1 -0
- package/dist/session/bufferedSessionPty.js +49 -0
- package/dist/session/bufferedSessionPty.js.map +1 -0
- package/dist/session/renderSupport.d.ts +53 -0
- package/dist/session/renderSupport.d.ts.map +1 -0
- package/dist/session/renderSupport.js +41 -0
- package/dist/session/renderSupport.js.map +1 -0
- package/dist/session/runtimeEventChannel.d.ts +56 -0
- package/dist/session/runtimeEventChannel.d.ts.map +1 -0
- package/dist/session/runtimeEventChannel.js +53 -0
- package/dist/session/runtimeEventChannel.js.map +1 -0
- package/dist/state/JsonAgentStateRepository.d.ts +29 -0
- package/dist/state/JsonAgentStateRepository.d.ts.map +1 -0
- package/dist/state/JsonAgentStateRepository.js +165 -0
- package/dist/state/JsonAgentStateRepository.js.map +1 -0
- package/dist/state/SqliteAgentStateRepository.d.ts +58 -0
- package/dist/state/SqliteAgentStateRepository.d.ts.map +1 -0
- package/dist/state/SqliteAgentStateRepository.js +777 -0
- package/dist/state/SqliteAgentStateRepository.js.map +1 -0
- package/dist/state/createAgentStateRepository.d.ts +4 -0
- package/dist/state/createAgentStateRepository.d.ts.map +1 -0
- package/dist/state/createAgentStateRepository.js +12 -0
- package/dist/state/createAgentStateRepository.js.map +1 -0
- package/dist/state/stateSanitizers.d.ts +7 -0
- package/dist/state/stateSanitizers.d.ts.map +1 -0
- package/dist/state/stateSanitizers.js +87 -0
- package/dist/state/stateSanitizers.js.map +1 -0
- package/dist/subagents/AcpSubagentExecutionAdapter.d.ts +12 -0
- package/dist/subagents/AcpSubagentExecutionAdapter.d.ts.map +1 -0
- package/dist/subagents/AcpSubagentExecutionAdapter.js +119 -0
- package/dist/subagents/AcpSubagentExecutionAdapter.js.map +1 -0
- package/dist/subagents/CliSubagentExecutionAdapter.d.ts +13 -0
- package/dist/subagents/CliSubagentExecutionAdapter.d.ts.map +1 -0
- package/dist/subagents/CliSubagentExecutionAdapter.js +217 -0
- package/dist/subagents/CliSubagentExecutionAdapter.js.map +1 -0
- package/dist/subagents/HostTurnSubagentExecutionAdapter.d.ts +78 -0
- package/dist/subagents/HostTurnSubagentExecutionAdapter.d.ts.map +1 -0
- package/dist/subagents/HostTurnSubagentExecutionAdapter.js +160 -0
- package/dist/subagents/HostTurnSubagentExecutionAdapter.js.map +1 -0
- package/dist/subagents/SubagentRunService.d.ts +103 -0
- package/dist/subagents/SubagentRunService.d.ts.map +1 -0
- package/dist/subagents/SubagentRunService.js +1183 -0
- package/dist/subagents/SubagentRunService.js.map +1 -0
- package/dist/subagents/SubagentScheduler.d.ts +167 -0
- package/dist/subagents/SubagentScheduler.d.ts.map +1 -0
- package/dist/subagents/SubagentScheduler.js +530 -0
- package/dist/subagents/SubagentScheduler.js.map +1 -0
- package/dist/subagents/TeamAgentRouter.d.ts +104 -0
- package/dist/subagents/TeamAgentRouter.d.ts.map +1 -0
- package/dist/subagents/TeamAgentRouter.js +435 -0
- package/dist/subagents/TeamAgentRouter.js.map +1 -0
- package/dist/subagents/capabilityMatcher.d.ts +3 -0
- package/dist/subagents/capabilityMatcher.d.ts.map +1 -0
- package/dist/subagents/capabilityMatcher.js +127 -0
- package/dist/subagents/capabilityMatcher.js.map +1 -0
- package/dist/subagents/subagentRunPort.d.ts +43 -0
- package/dist/subagents/subagentRunPort.d.ts.map +1 -0
- package/dist/subagents/subagentRunPort.js +24 -0
- package/dist/subagents/subagentRunPort.js.map +1 -0
- package/dist/subagents/subagentTypes.d.ts +330 -0
- package/dist/subagents/subagentTypes.d.ts.map +1 -0
- package/dist/subagents/subagentTypes.js +2 -0
- package/dist/subagents/subagentTypes.js.map +1 -0
- package/dist/subagents/subagentWorkspaceAuthority.d.ts +29 -0
- package/dist/subagents/subagentWorkspaceAuthority.d.ts.map +1 -0
- package/dist/subagents/subagentWorkspaceAuthority.js +173 -0
- package/dist/subagents/subagentWorkspaceAuthority.js.map +1 -0
- package/dist/support/SupportDiagnosticsService.d.ts +87 -0
- package/dist/support/SupportDiagnosticsService.d.ts.map +1 -0
- package/dist/support/SupportDiagnosticsService.js +1199 -0
- package/dist/support/SupportDiagnosticsService.js.map +1 -0
- package/dist/turns/DurableInterruptedTurnStore.d.ts +14 -0
- package/dist/turns/DurableInterruptedTurnStore.d.ts.map +1 -0
- package/dist/turns/DurableInterruptedTurnStore.js +63 -0
- package/dist/turns/DurableInterruptedTurnStore.js.map +1 -0
- package/dist/turns/interruptedTurns.d.ts +50 -0
- package/dist/turns/interruptedTurns.d.ts.map +1 -0
- package/dist/turns/interruptedTurns.js +54 -0
- package/dist/turns/interruptedTurns.js.map +1 -0
- package/dist/turns/turnAdmission.d.ts +113 -0
- package/dist/turns/turnAdmission.d.ts.map +1 -0
- package/dist/turns/turnAdmission.js +136 -0
- package/dist/turns/turnAdmission.js.map +1 -0
- package/dist/workspace/WorkspaceHostService.d.ts +126 -0
- package/dist/workspace/WorkspaceHostService.d.ts.map +1 -0
- package/dist/workspace/WorkspaceHostService.js +841 -0
- package/dist/workspace/WorkspaceHostService.js.map +1 -0
- package/dist/workspace/WorkspaceShellService.d.ts +71 -0
- package/dist/workspace/WorkspaceShellService.d.ts.map +1 -0
- package/dist/workspace/WorkspaceShellService.js +273 -0
- package/dist/workspace/WorkspaceShellService.js.map +1 -0
- package/dist/workspace/fileAssociations.d.ts +12 -0
- package/dist/workspace/fileAssociations.d.ts.map +1 -0
- package/dist/workspace/fileAssociations.js +202 -0
- package/dist/workspace/fileAssociations.js.map +1 -0
- package/dist/workspace/scrollbackBuffer.d.ts +48 -0
- package/dist/workspace/scrollbackBuffer.d.ts.map +1 -0
- package/dist/workspace/scrollbackBuffer.js +94 -0
- package/dist/workspace/scrollbackBuffer.js.map +1 -0
- package/package.json +42 -0
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The ACP lane's NAMES for the coordination primitives โ nothing more.
|
|
3
|
+
*
|
|
4
|
+
* ๐ด The bridge itself is LANE-NEUTRAL and lives in
|
|
5
|
+
* `coordination/laneBridge.ts`, because the SDK lane offers the same three
|
|
6
|
+
* calls as registered tools and must not import from the ACP lane to do it.
|
|
7
|
+
* What belongs here is only the mapping from this protocol's method names onto
|
|
8
|
+
* those calls.
|
|
9
|
+
*/
|
|
10
|
+
export const XENO_ACP_COORDINATION_SEND_METHOD = 'xeno.dev/coordination_send';
|
|
11
|
+
export const XENO_ACP_COORDINATION_QUERY_METHOD = 'xeno.dev/coordination_query';
|
|
12
|
+
export const XENO_ACP_COORDINATION_CLAIM_METHOD = 'xeno.dev/coordination_claim';
|
|
13
|
+
//# sourceMappingURL=AcpCoordinationBridge.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AcpCoordinationBridge.js","sourceRoot":"","sources":["../../src/acp/AcpCoordinationBridge.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,iCAAiC,GAAG,4BAA4B,CAAA;AAC7E,MAAM,CAAC,MAAM,kCAAkC,GAAG,6BAA6B,CAAA;AAC/E,MAAM,CAAC,MAAM,kCAAkC,GAAG,6BAA6B,CAAA"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import type { AcpDiagnostics, AcpSessionStatus } from './acpTypes.js';
|
|
2
|
+
export interface AcpSupportSessionDiagnostics {
|
|
3
|
+
conversationId: string;
|
|
4
|
+
requestId: string;
|
|
5
|
+
acpSessionId: string;
|
|
6
|
+
acpProcessId?: undefined | string;
|
|
7
|
+
acpAgentConfigId?: undefined | string;
|
|
8
|
+
status: AcpSessionStatus | 'unknown';
|
|
9
|
+
eventCount: number;
|
|
10
|
+
pendingPermissionCount: number;
|
|
11
|
+
toolCount: number;
|
|
12
|
+
failedToolCount: number;
|
|
13
|
+
lastEventType?: undefined | string;
|
|
14
|
+
lastEventAt?: undefined | string;
|
|
15
|
+
lastStopReason?: undefined | string;
|
|
16
|
+
lastError?: undefined | string;
|
|
17
|
+
}
|
|
18
|
+
export interface AcpSupportAgentDiagnostics {
|
|
19
|
+
acpAgentConfigId: string;
|
|
20
|
+
name?: undefined | string;
|
|
21
|
+
command?: undefined | string;
|
|
22
|
+
args?: undefined | string[];
|
|
23
|
+
cwd?: undefined | string;
|
|
24
|
+
envKeys: string[];
|
|
25
|
+
status?: undefined | string;
|
|
26
|
+
pid?: undefined | number;
|
|
27
|
+
protocolVersion?: undefined | number;
|
|
28
|
+
agentInfo?: undefined | AcpDiagnostics['agentInfo'];
|
|
29
|
+
agentCapabilities?: undefined | Record<string, unknown>;
|
|
30
|
+
activeSessionCount?: undefined | number;
|
|
31
|
+
pendingRequestCount?: undefined | number;
|
|
32
|
+
lifecycleTail: AcpDiagnostics['lifecycle'];
|
|
33
|
+
stderrTail: string[];
|
|
34
|
+
malformedMessageCount: number;
|
|
35
|
+
unsupportedMethodCount: number;
|
|
36
|
+
lastErrorCode?: undefined | string;
|
|
37
|
+
exitCode?: undefined | number | null;
|
|
38
|
+
signal?: undefined | NodeJS.Signals | null;
|
|
39
|
+
}
|
|
40
|
+
export interface AcpSupportDiagnosticsSummary {
|
|
41
|
+
success: boolean;
|
|
42
|
+
protocol: 'acp-v1-stdio';
|
|
43
|
+
eventCount: number;
|
|
44
|
+
sessionCount: number;
|
|
45
|
+
activeSessionCount: number;
|
|
46
|
+
failedSessionCount: number;
|
|
47
|
+
pendingRequestCount: number;
|
|
48
|
+
pendingPermissionCount: number;
|
|
49
|
+
malformedMessageCount: number;
|
|
50
|
+
stderrLineCount: number;
|
|
51
|
+
agents: AcpSupportAgentDiagnostics[];
|
|
52
|
+
sessions: AcpSupportSessionDiagnostics[];
|
|
53
|
+
lastError?: undefined | string;
|
|
54
|
+
}
|
|
55
|
+
export declare class AcpDiagnosticsService {
|
|
56
|
+
private readonly rootDir;
|
|
57
|
+
constructor(rootDir?: string);
|
|
58
|
+
collect(): AcpSupportDiagnosticsSummary;
|
|
59
|
+
}
|
|
60
|
+
export declare function collectAcpDiagnosticsSummary(rootDir?: string): AcpSupportDiagnosticsSummary;
|
|
61
|
+
//# sourceMappingURL=AcpDiagnosticsService.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AcpDiagnosticsService.d.ts","sourceRoot":"","sources":["../../src/acp/AcpDiagnosticsService.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAGrE,MAAM,WAAW,4BAA4B;IAC3C,cAAc,EAAE,MAAM,CAAA;IACtB,SAAS,EAAE,MAAM,CAAA;IACjB,YAAY,EAAE,MAAM,CAAA;IACpB,YAAY,CAAC,EAAE,SAAS,GAAG,MAAM,CAAA;IACjC,gBAAgB,CAAC,EAAE,SAAS,GAAG,MAAM,CAAA;IACrC,MAAM,EAAE,gBAAgB,GAAG,SAAS,CAAA;IACpC,UAAU,EAAE,MAAM,CAAA;IAClB,sBAAsB,EAAE,MAAM,CAAA;IAC9B,SAAS,EAAE,MAAM,CAAA;IACjB,eAAe,EAAE,MAAM,CAAA;IACvB,aAAa,CAAC,EAAE,SAAS,GAAG,MAAM,CAAA;IAClC,WAAW,CAAC,EAAE,SAAS,GAAG,MAAM,CAAA;IAChC,cAAc,CAAC,EAAE,SAAS,GAAG,MAAM,CAAA;IACnC,SAAS,CAAC,EAAE,SAAS,GAAG,MAAM,CAAA;CAC/B;AAED,MAAM,WAAW,0BAA0B;IACzC,gBAAgB,EAAE,MAAM,CAAA;IACxB,IAAI,CAAC,EAAE,SAAS,GAAG,MAAM,CAAA;IACzB,OAAO,CAAC,EAAE,SAAS,GAAG,MAAM,CAAA;IAC5B,IAAI,CAAC,EAAE,SAAS,GAAG,MAAM,EAAE,CAAA;IAC3B,GAAG,CAAC,EAAE,SAAS,GAAG,MAAM,CAAA;IACxB,OAAO,EAAE,MAAM,EAAE,CAAA;IACjB,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAA;IAC3B,GAAG,CAAC,EAAE,SAAS,GAAG,MAAM,CAAA;IACxB,eAAe,CAAC,EAAE,SAAS,GAAG,MAAM,CAAA;IACpC,SAAS,CAAC,EAAE,SAAS,GAAG,cAAc,CAAC,WAAW,CAAC,CAAA;IACnD,iBAAiB,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACvD,kBAAkB,CAAC,EAAE,SAAS,GAAG,MAAM,CAAA;IACvC,mBAAmB,CAAC,EAAE,SAAS,GAAG,MAAM,CAAA;IACxC,aAAa,EAAE,cAAc,CAAC,WAAW,CAAC,CAAA;IAC1C,UAAU,EAAE,MAAM,EAAE,CAAA;IACpB,qBAAqB,EAAE,MAAM,CAAA;IAC7B,sBAAsB,EAAE,MAAM,CAAA;IAC9B,aAAa,CAAC,EAAE,SAAS,GAAG,MAAM,CAAA;IAClC,QAAQ,CAAC,EAAE,SAAS,GAAG,MAAM,GAAG,IAAI,CAAA;IACpC,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC,OAAO,GAAG,IAAI,CAAA;CAC3C;AAED,MAAM,WAAW,4BAA4B;IAC3C,OAAO,EAAE,OAAO,CAAA;IAChB,QAAQ,EAAE,cAAc,CAAA;IACxB,UAAU,EAAE,MAAM,CAAA;IAClB,YAAY,EAAE,MAAM,CAAA;IACpB,kBAAkB,EAAE,MAAM,CAAA;IAC1B,kBAAkB,EAAE,MAAM,CAAA;IAC1B,mBAAmB,EAAE,MAAM,CAAA;IAC3B,sBAAsB,EAAE,MAAM,CAAA;IAC9B,qBAAqB,EAAE,MAAM,CAAA;IAC7B,eAAe,EAAE,MAAM,CAAA;IACvB,MAAM,EAAE,0BAA0B,EAAE,CAAA;IACpC,QAAQ,EAAE,4BAA4B,EAAE,CAAA;IACxC,SAAS,CAAC,EAAE,SAAS,GAAG,MAAM,CAAA;CAC/B;AAID,qBAAa,qBAAqB;IACpB,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,SAAmB;IAEvD,OAAO,IAAI,4BAA4B;CAGxC;AAED,wBAAgB,4BAA4B,CAAC,OAAO,SAAmB,GAAG,4BAA4B,CAmFrG"}
|
|
@@ -0,0 +1,203 @@
|
|
|
1
|
+
import { homedir } from 'os';
|
|
2
|
+
import { join } from 'path';
|
|
3
|
+
import { RuntimeEventStore } from '../runtime/RuntimeEventStore.js';
|
|
4
|
+
import { redactAcpArgs, redactAcpEnvKeys, redactAcpPath, redactAcpText } from './acpRedaction.js';
|
|
5
|
+
const DEFAULT_XENO_DIR = join(homedir(), '.xeno');
|
|
6
|
+
export class AcpDiagnosticsService {
|
|
7
|
+
rootDir;
|
|
8
|
+
constructor(rootDir = DEFAULT_XENO_DIR) {
|
|
9
|
+
this.rootDir = rootDir;
|
|
10
|
+
}
|
|
11
|
+
collect() {
|
|
12
|
+
return collectAcpDiagnosticsSummary(this.rootDir);
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
export function collectAcpDiagnosticsSummary(rootDir = DEFAULT_XENO_DIR) {
|
|
16
|
+
try {
|
|
17
|
+
const store = new RuntimeEventStore(join(rootDir, 'runtime-events'));
|
|
18
|
+
const sessions = new Map();
|
|
19
|
+
const agents = new Map();
|
|
20
|
+
let eventCount = 0;
|
|
21
|
+
let pendingRequestCount = 0;
|
|
22
|
+
let pendingPermissionCount = 0;
|
|
23
|
+
let malformedMessageCount = 0;
|
|
24
|
+
let stderrLineCount = 0;
|
|
25
|
+
let lastError;
|
|
26
|
+
for (const conversationId of store.listConversationIds()) {
|
|
27
|
+
const listed = store.list({ conversationId, limit: 5000 });
|
|
28
|
+
for (const event of listed.events) {
|
|
29
|
+
if (!event.type.startsWith('acp.'))
|
|
30
|
+
continue;
|
|
31
|
+
eventCount += 1;
|
|
32
|
+
const payload = event.event;
|
|
33
|
+
const session = isSessionScopedEvent(event) ? sessionFor(sessions, event) : undefined;
|
|
34
|
+
if (session) {
|
|
35
|
+
session.eventCount += 1;
|
|
36
|
+
session.lastEventType = event.type;
|
|
37
|
+
session.lastEventAt = event.timestamp;
|
|
38
|
+
updateSessionFromEvent(session, event);
|
|
39
|
+
}
|
|
40
|
+
updateAgentFromEvent(agents, event);
|
|
41
|
+
if (event.type === 'acp.session.permission.requested') {
|
|
42
|
+
pendingPermissionCount += 1;
|
|
43
|
+
if (session)
|
|
44
|
+
session.pendingPermissionCount += 1;
|
|
45
|
+
}
|
|
46
|
+
if (event.type === 'acp.session.permission.decided') {
|
|
47
|
+
pendingPermissionCount = Math.max(0, pendingPermissionCount - 1);
|
|
48
|
+
if (session)
|
|
49
|
+
session.pendingPermissionCount = Math.max(0, session.pendingPermissionCount - 1);
|
|
50
|
+
}
|
|
51
|
+
if (event.type === 'acp.tool.started' && session)
|
|
52
|
+
session.toolCount += 1;
|
|
53
|
+
if (event.type === 'acp.tool.failed' && session)
|
|
54
|
+
session.failedToolCount += 1;
|
|
55
|
+
if (typeof payload.error === 'string')
|
|
56
|
+
lastError = redactAcpText(payload.error);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
for (const agent of agents.values()) {
|
|
60
|
+
pendingRequestCount += agent.pendingRequestCount || 0;
|
|
61
|
+
malformedMessageCount += agent.malformedMessageCount;
|
|
62
|
+
stderrLineCount += agent.stderrTail.length;
|
|
63
|
+
}
|
|
64
|
+
const sessionList = Array.from(sessions.values()).sort((left, right) => ((Date.parse(right.lastEventAt || '') || 0) - (Date.parse(left.lastEventAt || '') || 0)));
|
|
65
|
+
const agentList = Array.from(agents.values()).sort((left, right) => left.acpAgentConfigId.localeCompare(right.acpAgentConfigId));
|
|
66
|
+
return {
|
|
67
|
+
success: true,
|
|
68
|
+
protocol: 'acp-v1-stdio',
|
|
69
|
+
eventCount,
|
|
70
|
+
sessionCount: sessionList.length,
|
|
71
|
+
activeSessionCount: sessionList.filter((session) => session.status === 'running' || session.status === 'waiting_permission').length,
|
|
72
|
+
failedSessionCount: sessionList.filter((session) => session.status === 'failed' || session.status === 'timed_out' || session.status === 'process_exited').length,
|
|
73
|
+
pendingRequestCount,
|
|
74
|
+
pendingPermissionCount,
|
|
75
|
+
malformedMessageCount,
|
|
76
|
+
stderrLineCount,
|
|
77
|
+
agents: agentList.slice(0, 25),
|
|
78
|
+
sessions: sessionList.slice(0, 50),
|
|
79
|
+
lastError,
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
catch (error) {
|
|
83
|
+
return {
|
|
84
|
+
success: false,
|
|
85
|
+
protocol: 'acp-v1-stdio',
|
|
86
|
+
eventCount: 0,
|
|
87
|
+
sessionCount: 0,
|
|
88
|
+
activeSessionCount: 0,
|
|
89
|
+
failedSessionCount: 0,
|
|
90
|
+
pendingRequestCount: 0,
|
|
91
|
+
pendingPermissionCount: 0,
|
|
92
|
+
malformedMessageCount: 0,
|
|
93
|
+
stderrLineCount: 0,
|
|
94
|
+
agents: [],
|
|
95
|
+
sessions: [],
|
|
96
|
+
lastError: error instanceof Error ? redactAcpText(error.message) : redactAcpText(String(error)),
|
|
97
|
+
};
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
function isSessionScopedEvent(event) {
|
|
101
|
+
return typeof event.event.acpSessionId === 'string'
|
|
102
|
+
|| event.type.startsWith('acp.session.')
|
|
103
|
+
|| event.type.startsWith('acp.tool.');
|
|
104
|
+
}
|
|
105
|
+
function sessionFor(sessions, event) {
|
|
106
|
+
const payload = event.event;
|
|
107
|
+
const acpSessionId = stringValue(payload.acpSessionId) || `${event.conversationId}:${event.requestId}`;
|
|
108
|
+
const key = `${event.conversationId}:${event.requestId}:${acpSessionId}`;
|
|
109
|
+
const existing = sessions.get(key);
|
|
110
|
+
if (existing)
|
|
111
|
+
return existing;
|
|
112
|
+
const session = {
|
|
113
|
+
conversationId: event.conversationId,
|
|
114
|
+
requestId: event.requestId,
|
|
115
|
+
acpSessionId,
|
|
116
|
+
acpProcessId: stringValue(payload.acpProcessId),
|
|
117
|
+
acpAgentConfigId: stringValue(payload.acpAgentConfigId),
|
|
118
|
+
status: 'unknown',
|
|
119
|
+
eventCount: 0,
|
|
120
|
+
pendingPermissionCount: 0,
|
|
121
|
+
toolCount: 0,
|
|
122
|
+
failedToolCount: 0,
|
|
123
|
+
};
|
|
124
|
+
sessions.set(key, session);
|
|
125
|
+
return session;
|
|
126
|
+
}
|
|
127
|
+
function updateSessionFromEvent(session, event) {
|
|
128
|
+
const payload = event.event;
|
|
129
|
+
const status = stringValue(payload.status);
|
|
130
|
+
if (event.type === 'acp.session.started')
|
|
131
|
+
session.status = 'running';
|
|
132
|
+
if (event.type === 'acp.session.permission.requested')
|
|
133
|
+
session.status = 'waiting_permission';
|
|
134
|
+
if (event.type === 'acp.session.permission.decided' && session.status === 'waiting_permission')
|
|
135
|
+
session.status = 'running';
|
|
136
|
+
if (event.type === 'acp.session.completed')
|
|
137
|
+
session.status = 'completed';
|
|
138
|
+
if (event.type === 'acp.session.cancelled')
|
|
139
|
+
session.status = 'cancelled';
|
|
140
|
+
if (event.type === 'acp.session.failed')
|
|
141
|
+
session.status = statusForDiagnostics(status);
|
|
142
|
+
if (typeof payload.stopReason === 'string')
|
|
143
|
+
session.lastStopReason = payload.stopReason;
|
|
144
|
+
if (typeof payload.error === 'string')
|
|
145
|
+
session.lastError = redactAcpText(payload.error);
|
|
146
|
+
}
|
|
147
|
+
function updateAgentFromEvent(agents, event) {
|
|
148
|
+
const payload = event.event;
|
|
149
|
+
const diagnostics = asDiagnostics(payload.agentDiagnostics);
|
|
150
|
+
const acpAgentConfigId = stringValue(payload.acpAgentConfigId) || diagnostics?.agentConfigId || 'acp-agent-unknown';
|
|
151
|
+
const existing = agents.get(acpAgentConfigId);
|
|
152
|
+
const agent = existing || {
|
|
153
|
+
acpAgentConfigId,
|
|
154
|
+
envKeys: [],
|
|
155
|
+
lifecycleTail: [],
|
|
156
|
+
stderrTail: [],
|
|
157
|
+
malformedMessageCount: 0,
|
|
158
|
+
unsupportedMethodCount: 0,
|
|
159
|
+
};
|
|
160
|
+
if (diagnostics) {
|
|
161
|
+
agent.command = diagnostics.command ? redactAcpPath(diagnostics.command) : agent.command;
|
|
162
|
+
agent.args = diagnostics.args ? redactAcpArgs(diagnostics.args) : agent.args;
|
|
163
|
+
agent.cwd = redactAcpPath(diagnostics.cwd);
|
|
164
|
+
agent.envKeys = redactAcpEnvKeys(Object.fromEntries((diagnostics.envKeys || []).map((key) => [key, 'redacted'])));
|
|
165
|
+
agent.status = diagnostics.status;
|
|
166
|
+
agent.pid = diagnostics.pid;
|
|
167
|
+
agent.protocolVersion = diagnostics.protocolVersion;
|
|
168
|
+
agent.agentInfo = diagnostics.agentInfo;
|
|
169
|
+
agent.agentCapabilities = diagnostics.agentCapabilities;
|
|
170
|
+
agent.activeSessionCount = diagnostics.activeSessionCount;
|
|
171
|
+
agent.pendingRequestCount = diagnostics.pendingRequestCount;
|
|
172
|
+
agent.lifecycleTail = (diagnostics.lifecycle || []).slice(-20);
|
|
173
|
+
agent.stderrTail = (diagnostics.stderrTail || []).map((line) => redactAcpText(line)).slice(-20);
|
|
174
|
+
agent.malformedMessageCount = diagnostics.malformedMessageCount || 0;
|
|
175
|
+
agent.unsupportedMethodCount = diagnostics.unsupportedMethodCount || 0;
|
|
176
|
+
agent.lastErrorCode = diagnostics.lastErrorCode;
|
|
177
|
+
agent.exitCode = diagnostics.exitCode;
|
|
178
|
+
agent.signal = diagnostics.signal;
|
|
179
|
+
}
|
|
180
|
+
if (Array.isArray(payload.stderrTail)) {
|
|
181
|
+
agent.stderrTail = payload.stderrTail
|
|
182
|
+
.filter((line) => typeof line === 'string')
|
|
183
|
+
.map((line) => redactAcpText(line))
|
|
184
|
+
.slice(-20);
|
|
185
|
+
}
|
|
186
|
+
agents.set(acpAgentConfigId, agent);
|
|
187
|
+
}
|
|
188
|
+
function asDiagnostics(value) {
|
|
189
|
+
return value && typeof value === 'object' && !Array.isArray(value) ? value : undefined;
|
|
190
|
+
}
|
|
191
|
+
function stringValue(value) {
|
|
192
|
+
return typeof value === 'string' && value.trim() ? value.trim() : undefined;
|
|
193
|
+
}
|
|
194
|
+
function statusForDiagnostics(value) {
|
|
195
|
+
if (value === 'timed_out')
|
|
196
|
+
return 'timed_out';
|
|
197
|
+
if (value === 'process_exited')
|
|
198
|
+
return 'process_exited';
|
|
199
|
+
if (value === 'cancelled')
|
|
200
|
+
return 'cancelled';
|
|
201
|
+
return 'failed';
|
|
202
|
+
}
|
|
203
|
+
//# sourceMappingURL=AcpDiagnosticsService.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AcpDiagnosticsService.js","sourceRoot":"","sources":["../../src/acp/AcpDiagnosticsService.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { type ProviderCertificationStatus } from '@xenosystem/acp-provider-manager';
|
|
2
|
+
import type { AcpAgentCertification, AcpAgentConfig, AcpAgentTestResult } from './acpTypes.js';
|
|
3
|
+
export type AcpExternalCertificationStatus = ProviderCertificationStatus;
|
|
4
|
+
export interface AcpExternalCertificationOptions {
|
|
5
|
+
registryRoot: string;
|
|
6
|
+
evidenceDir?: undefined | string;
|
|
7
|
+
fixtureSimulation?: undefined | boolean;
|
|
8
|
+
requestTimeoutMs?: undefined | number;
|
|
9
|
+
}
|
|
10
|
+
export interface AcpExternalCertificationResult {
|
|
11
|
+
status: AcpExternalCertificationStatus;
|
|
12
|
+
realExternalAttempted: boolean;
|
|
13
|
+
fixtureSimulation: boolean;
|
|
14
|
+
agentId: string;
|
|
15
|
+
agentName: string;
|
|
16
|
+
commandBasename: string;
|
|
17
|
+
argsCount: number;
|
|
18
|
+
envKeys: string[];
|
|
19
|
+
protocolVersion?: undefined | number;
|
|
20
|
+
agentInfo?: undefined | AcpAgentTestResult['agentInfo'];
|
|
21
|
+
stopReason?: undefined | string;
|
|
22
|
+
updateCount: number;
|
|
23
|
+
certification: AcpAgentCertification;
|
|
24
|
+
diagnostics: {
|
|
25
|
+
agentConfigId?: undefined | string;
|
|
26
|
+
status?: undefined | string;
|
|
27
|
+
protocolVersion?: undefined | number;
|
|
28
|
+
activeSessionCount?: undefined | number;
|
|
29
|
+
pendingRequestCount?: undefined | number;
|
|
30
|
+
stderrTail?: undefined | string[];
|
|
31
|
+
lifecycleCount?: undefined | number;
|
|
32
|
+
malformedMessageCount?: undefined | number;
|
|
33
|
+
unsupportedMethodCount?: undefined | number;
|
|
34
|
+
lastErrorCode?: undefined | string;
|
|
35
|
+
exitCode?: undefined | number | null;
|
|
36
|
+
signal?: undefined | NodeJS.Signals | null;
|
|
37
|
+
};
|
|
38
|
+
error?: undefined | string;
|
|
39
|
+
}
|
|
40
|
+
export declare function validateAcpExternalCertificationConfig(input: unknown): {
|
|
41
|
+
valid: boolean;
|
|
42
|
+
errors: string[];
|
|
43
|
+
config?: undefined | AcpAgentConfig;
|
|
44
|
+
};
|
|
45
|
+
export declare function runAcpExternalCertification(input: unknown, options: AcpExternalCertificationOptions): Promise<AcpExternalCertificationResult>;
|
|
46
|
+
export declare function writeAcpExternalCertificationEvidence(evidenceDir: string, result: AcpExternalCertificationResult): void;
|
|
47
|
+
//# sourceMappingURL=AcpExternalCertificationHarness.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AcpExternalCertificationHarness.d.ts","sourceRoot":"","sources":["../../src/acp/AcpExternalCertificationHarness.ts"],"names":[],"mappings":"AAEA,OAAO,EAIL,KAAK,2BAA2B,EACjC,MAAM,kCAAkC,CAAA;AAQzC,OAAO,KAAK,EAAE,qBAAqB,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA;AAE9F,MAAM,MAAM,8BAA8B,GAAG,2BAA2B,CAAA;AAExE,MAAM,WAAW,+BAA+B;IAC9C,YAAY,EAAE,MAAM,CAAA;IACpB,WAAW,CAAC,EAAE,SAAS,GAAG,MAAM,CAAA;IAChC,iBAAiB,CAAC,EAAE,SAAS,GAAG,OAAO,CAAA;IACvC,gBAAgB,CAAC,EAAE,SAAS,GAAG,MAAM,CAAA;CACtC;AAED,MAAM,WAAW,8BAA8B;IAC7C,MAAM,EAAE,8BAA8B,CAAA;IACtC,qBAAqB,EAAE,OAAO,CAAA;IAC9B,iBAAiB,EAAE,OAAO,CAAA;IAC1B,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;IACjB,eAAe,EAAE,MAAM,CAAA;IACvB,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,MAAM,EAAE,CAAA;IACjB,eAAe,CAAC,EAAE,SAAS,GAAG,MAAM,CAAA;IACpC,SAAS,CAAC,EAAE,SAAS,GAAG,kBAAkB,CAAC,WAAW,CAAC,CAAA;IACvD,UAAU,CAAC,EAAE,SAAS,GAAG,MAAM,CAAA;IAC/B,WAAW,EAAE,MAAM,CAAA;IACnB,aAAa,EAAE,qBAAqB,CAAA;IACpC,WAAW,EAAE;QACX,aAAa,CAAC,EAAE,SAAS,GAAG,MAAM,CAAA;QAClC,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAA;QAC3B,eAAe,CAAC,EAAE,SAAS,GAAG,MAAM,CAAA;QACpC,kBAAkB,CAAC,EAAE,SAAS,GAAG,MAAM,CAAA;QACvC,mBAAmB,CAAC,EAAE,SAAS,GAAG,MAAM,CAAA;QACxC,UAAU,CAAC,EAAE,SAAS,GAAG,MAAM,EAAE,CAAA;QACjC,cAAc,CAAC,EAAE,SAAS,GAAG,MAAM,CAAA;QACnC,qBAAqB,CAAC,EAAE,SAAS,GAAG,MAAM,CAAA;QAC1C,sBAAsB,CAAC,EAAE,SAAS,GAAG,MAAM,CAAA;QAC3C,aAAa,CAAC,EAAE,SAAS,GAAG,MAAM,CAAA;QAClC,QAAQ,CAAC,EAAE,SAAS,GAAG,MAAM,GAAG,IAAI,CAAA;QACpC,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC,OAAO,GAAG,IAAI,CAAA;KAC3C,CAAA;IACD,KAAK,CAAC,EAAE,SAAS,GAAG,MAAM,CAAA;CAC3B;AAED,wBAAgB,sCAAsC,CAAC,KAAK,EAAE,OAAO,GAAG;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAC;IAAC,MAAM,CAAC,EAAE,SAAS,GAAG,cAAc,CAAA;CAAE,CAUhJ;AAED,wBAAsB,2BAA2B,CAC/C,KAAK,EAAE,OAAO,EACd,OAAO,EAAE,+BAA+B,GACvC,OAAO,CAAC,8BAA8B,CAAC,CA2CzC;AAED,wBAAgB,qCAAqC,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,8BAA8B,GAAG,IAAI,CAwCvH"}
|
|
@@ -0,0 +1,176 @@
|
|
|
1
|
+
import { existsSync, mkdirSync, writeFileSync } from 'fs';
|
|
2
|
+
import { basename, join } from 'path';
|
|
3
|
+
import { classifyProviderCertification, createProviderCertificationRecord, } from '@xenosystem/acp-provider-manager';
|
|
4
|
+
import { AcpAgentRegistryService, isFixtureAcpAgentConfig, normalizeAcpAgentConfig, validateAcpAgentConfig, } from './AcpAgentRegistryService.js';
|
|
5
|
+
import { redactAcpText } from './acpRedaction.js';
|
|
6
|
+
export function validateAcpExternalCertificationConfig(input) {
|
|
7
|
+
const config = normalizeAcpAgentConfig(input);
|
|
8
|
+
const validation = validateAcpAgentConfig(input);
|
|
9
|
+
if (!config || !validation.valid) {
|
|
10
|
+
return { valid: false, errors: validation.errors.length ? validation.errors : ['Invalid ACP external certification config.'] };
|
|
11
|
+
}
|
|
12
|
+
if (!config.enabled) {
|
|
13
|
+
return { valid: false, errors: ['ACP external certification config must be enabled.'] };
|
|
14
|
+
}
|
|
15
|
+
return { valid: true, errors: [], config };
|
|
16
|
+
}
|
|
17
|
+
export async function runAcpExternalCertification(input, options) {
|
|
18
|
+
const validation = validateAcpExternalCertificationConfig(input);
|
|
19
|
+
if (!validation.valid || !validation.config) {
|
|
20
|
+
throw new Error(validation.errors.join(' '));
|
|
21
|
+
}
|
|
22
|
+
mkdirSync(options.registryRoot, { recursive: true });
|
|
23
|
+
const service = new AcpAgentRegistryService({
|
|
24
|
+
rootDir: options.registryRoot,
|
|
25
|
+
requestTimeoutMs: options.requestTimeoutMs || 5_000,
|
|
26
|
+
});
|
|
27
|
+
const config = validation.config;
|
|
28
|
+
const fixtureSimulation = !!options.fixtureSimulation || isFixtureAcpAgentConfig(config);
|
|
29
|
+
const realExternalAttempted = !fixtureSimulation;
|
|
30
|
+
if (!service.getAgentInternal(config.id)) {
|
|
31
|
+
const saved = service.saveAgent(config);
|
|
32
|
+
if (!saved.success)
|
|
33
|
+
throw new Error(saved.error || 'Failed to save ACP external certification config.');
|
|
34
|
+
}
|
|
35
|
+
let result;
|
|
36
|
+
if (!existsSync(config.command)) {
|
|
37
|
+
result = buildCertificationResult(config, {
|
|
38
|
+
status: 'BLOCKED_BY_ENVIRONMENT',
|
|
39
|
+
realExternalAttempted,
|
|
40
|
+
fixtureSimulation,
|
|
41
|
+
updateCount: 0,
|
|
42
|
+
error: 'ACP external certification command does not exist in this environment.',
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
else {
|
|
46
|
+
const tested = await service.testAgent(config.id, { allowExternal: true });
|
|
47
|
+
result = buildCertificationResult(config, {
|
|
48
|
+
status: classifyProviderCertification(toProviderCertificationProbe(tested), fixtureSimulation),
|
|
49
|
+
realExternalAttempted,
|
|
50
|
+
fixtureSimulation,
|
|
51
|
+
tested,
|
|
52
|
+
updateCount: tested.updateCount,
|
|
53
|
+
error: tested.error,
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
service.setAgentCertification(config.id, result.certification, { includeRuntimeStatus: false });
|
|
57
|
+
if (options.evidenceDir)
|
|
58
|
+
writeAcpExternalCertificationEvidence(options.evidenceDir, result);
|
|
59
|
+
return result;
|
|
60
|
+
}
|
|
61
|
+
export function writeAcpExternalCertificationEvidence(evidenceDir, result) {
|
|
62
|
+
mkdirSync(evidenceDir, { recursive: true });
|
|
63
|
+
if (result.fixtureSimulation) {
|
|
64
|
+
writeFileSync(join(evidenceDir, 'cert-fixture-simulation.json'), `${JSON.stringify(result, null, 2)}\n`, 'utf-8');
|
|
65
|
+
writeFileSync(join(evidenceDir, 'cert-fixture-simulation.txt'), summarizeCertificationResult(result), 'utf-8');
|
|
66
|
+
writeFileSync(join(evidenceDir, 'cert-real-external-status.txt'), [
|
|
67
|
+
'real_external_agent_attempted: no',
|
|
68
|
+
'status: BLOCKED_BY_ENVIRONMENT',
|
|
69
|
+
'reason: no explicit real external ACP config was provided; fixture simulation was used to certify the harness only.',
|
|
70
|
+
'',
|
|
71
|
+
].join('\n'), 'utf-8');
|
|
72
|
+
}
|
|
73
|
+
else {
|
|
74
|
+
writeFileSync(join(evidenceDir, 'cert-real-external-status.txt'), summarizeCertificationResult(result), 'utf-8');
|
|
75
|
+
writeFileSync(join(evidenceDir, 'cert-real-external-output-redacted.txt'), `${JSON.stringify(result, null, 2)}\n`, 'utf-8');
|
|
76
|
+
}
|
|
77
|
+
writeFileSync(join(evidenceDir, 'cert-security-scan.md'), [
|
|
78
|
+
'# AGENT-009E Certification Security Classification',
|
|
79
|
+
'',
|
|
80
|
+
'- auto-install: not used',
|
|
81
|
+
'- marketplace: not used',
|
|
82
|
+
'- downloads: not used',
|
|
83
|
+
'- renderer launch: not used',
|
|
84
|
+
'- raw ACP channel: not used',
|
|
85
|
+
'- registry-backed testAgent: used',
|
|
86
|
+
'- command exposure: basename only',
|
|
87
|
+
'- args exposure: count only',
|
|
88
|
+
'- env exposure: keys only',
|
|
89
|
+
'',
|
|
90
|
+
].join('\n'), 'utf-8');
|
|
91
|
+
writeFileSync(join(evidenceDir, 'cert-environment.md'), [
|
|
92
|
+
'# AGENT-009E Certification Environment',
|
|
93
|
+
'',
|
|
94
|
+
`real_external_agent_attempted: ${result.realExternalAttempted ? 'yes' : 'no'}`,
|
|
95
|
+
`fixture_simulation: ${result.fixtureSimulation ? 'yes' : 'no'}`,
|
|
96
|
+
`status: ${result.status}`,
|
|
97
|
+
`command_basename: ${result.commandBasename}`,
|
|
98
|
+
`args_count: ${result.argsCount}`,
|
|
99
|
+
`env_keys: ${result.envKeys.join(', ') || '(none)'}`,
|
|
100
|
+
'',
|
|
101
|
+
].join('\n'), 'utf-8');
|
|
102
|
+
}
|
|
103
|
+
function buildCertificationResult(config, input) {
|
|
104
|
+
const certification = buildCertification(config, input.status, input.tested, input.error);
|
|
105
|
+
return {
|
|
106
|
+
status: input.status,
|
|
107
|
+
realExternalAttempted: input.realExternalAttempted,
|
|
108
|
+
fixtureSimulation: input.fixtureSimulation,
|
|
109
|
+
agentId: redactAcpText(config.id, 200),
|
|
110
|
+
agentName: redactAcpText(config.name, 500),
|
|
111
|
+
commandBasename: basename(config.command) || '[redacted-command]',
|
|
112
|
+
argsCount: config.args.length,
|
|
113
|
+
envKeys: Object.keys(config.env || {}).sort(),
|
|
114
|
+
protocolVersion: input.tested?.protocolVersion,
|
|
115
|
+
agentInfo: input.tested?.agentInfo,
|
|
116
|
+
stopReason: input.tested?.stopReason,
|
|
117
|
+
updateCount: input.updateCount,
|
|
118
|
+
certification,
|
|
119
|
+
diagnostics: {
|
|
120
|
+
agentConfigId: input.tested?.diagnostics?.agentConfigId,
|
|
121
|
+
status: input.tested?.diagnostics?.status,
|
|
122
|
+
protocolVersion: input.tested?.diagnostics?.protocolVersion,
|
|
123
|
+
activeSessionCount: input.tested?.diagnostics?.activeSessionCount,
|
|
124
|
+
pendingRequestCount: input.tested?.diagnostics?.pendingRequestCount,
|
|
125
|
+
stderrTail: (input.tested?.diagnostics?.stderrTail || []).map((line) => redactAcpText(line, 500)),
|
|
126
|
+
lifecycleCount: input.tested?.diagnostics?.lifecycle?.length,
|
|
127
|
+
malformedMessageCount: input.tested?.diagnostics?.malformedMessageCount,
|
|
128
|
+
unsupportedMethodCount: input.tested?.diagnostics?.unsupportedMethodCount,
|
|
129
|
+
lastErrorCode: input.tested?.diagnostics?.lastErrorCode,
|
|
130
|
+
exitCode: input.tested?.diagnostics?.exitCode,
|
|
131
|
+
signal: input.tested?.diagnostics?.signal,
|
|
132
|
+
},
|
|
133
|
+
error: input.error ? redactAcpText(input.error, 1000) : undefined,
|
|
134
|
+
};
|
|
135
|
+
}
|
|
136
|
+
function buildCertification(config, status, tested, error) {
|
|
137
|
+
return createProviderCertificationRecord({
|
|
138
|
+
status,
|
|
139
|
+
providerName: config.name,
|
|
140
|
+
...(tested ? { tested: toProviderCertificationProbe(tested) } : {}),
|
|
141
|
+
...(error ? { error: redactAcpText(error, 500) } : {}),
|
|
142
|
+
});
|
|
143
|
+
}
|
|
144
|
+
function toProviderCertificationProbe(tested) {
|
|
145
|
+
return {
|
|
146
|
+
success: tested.success,
|
|
147
|
+
...(typeof tested.protocolVersion === 'number' ? { protocolVersion: tested.protocolVersion } : {}),
|
|
148
|
+
...(tested.agentInfo ? {
|
|
149
|
+
agentInfo: {
|
|
150
|
+
name: tested.agentInfo.name,
|
|
151
|
+
version: tested.agentInfo.version,
|
|
152
|
+
},
|
|
153
|
+
} : {}),
|
|
154
|
+
...(tested.error ? { error: tested.error } : {}),
|
|
155
|
+
};
|
|
156
|
+
}
|
|
157
|
+
function summarizeCertificationResult(result) {
|
|
158
|
+
return [
|
|
159
|
+
`status: ${result.status}`,
|
|
160
|
+
`real_external_agent_attempted: ${result.realExternalAttempted ? 'yes' : 'no'}`,
|
|
161
|
+
`fixture_simulation: ${result.fixtureSimulation ? 'yes' : 'no'}`,
|
|
162
|
+
`agent_id: ${result.agentId}`,
|
|
163
|
+
`agent_name: ${result.agentName}`,
|
|
164
|
+
`command_basename: ${result.commandBasename}`,
|
|
165
|
+
`args_count: ${result.argsCount}`,
|
|
166
|
+
`env_keys: ${result.envKeys.join(', ') || '(none)'}`,
|
|
167
|
+
`protocol_version: ${result.protocolVersion || '(none)'}`,
|
|
168
|
+
`agent_info: ${result.agentInfo ? JSON.stringify(result.agentInfo) : '(none)'}`,
|
|
169
|
+
`stop_reason: ${result.stopReason || '(none)'}`,
|
|
170
|
+
`update_count: ${result.updateCount}`,
|
|
171
|
+
`certification_status: ${result.certification.status}`,
|
|
172
|
+
`error: ${result.error || '(none)'}`,
|
|
173
|
+
'',
|
|
174
|
+
].join('\n');
|
|
175
|
+
}
|
|
176
|
+
//# sourceMappingURL=AcpExternalCertificationHarness.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AcpExternalCertificationHarness.js","sourceRoot":"","sources":["../../src/acp/AcpExternalCertificationHarness.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { type CoordinationLaneBridge } from '../coordination/laneBridge.js';
|
|
2
|
+
export declare const XENO_ACP_META_KEY = "xeno.dev";
|
|
3
|
+
export declare const XENO_ACP_CHOOSE_DIRECTORY_METHOD = "xeno.dev/choose_directory";
|
|
4
|
+
export declare const XENO_ACP_CHOOSE_WORKSPACE_PLACEMENT_METHOD = "xeno.dev/choose_workspace_placement";
|
|
5
|
+
/**
|
|
6
|
+
* Every host method an ACP agent may call, by the name it is ADVERTISED under.
|
|
7
|
+
*
|
|
8
|
+
* ๐ด ONE table, because dispatch and advertisement are two halves of the same
|
|
9
|
+
* fact and a method with only one of them is unreachable.
|
|
10
|
+
*
|
|
11
|
+
* Advertisement is not documentation: `initialize` sends this list, and an
|
|
12
|
+
* agent that never receives a method's name never calls it. A dispatcher
|
|
13
|
+
* handling a method nobody was told about is "built, tested, unreachable"
|
|
14
|
+
* wearing a protocol โ the shape this repo has now hit five times. Deriving the
|
|
15
|
+
* advertisement from this array makes the mismatch unrepresentable rather than
|
|
16
|
+
* merely tested for; a mutation setting one entry to `false` no longer compiles
|
|
17
|
+
* into anything, because there is nowhere to write it.
|
|
18
|
+
*/
|
|
19
|
+
export declare const XENO_ACP_HOST_REQUEST_METHODS: {
|
|
20
|
+
readonly chooseDirectory: "xeno.dev/choose_directory";
|
|
21
|
+
readonly chooseWorkspacePlacement: "xeno.dev/choose_workspace_placement";
|
|
22
|
+
readonly coordinationSend: "xeno.dev/coordination_send";
|
|
23
|
+
readonly coordinationQuery: "xeno.dev/coordination_query";
|
|
24
|
+
readonly coordinationClaim: "xeno.dev/coordination_claim";
|
|
25
|
+
};
|
|
26
|
+
/** The `_meta['xeno.dev'].hostRequests` payload, derived, never hand-listed. */
|
|
27
|
+
export declare function xenoAcpHostRequestAdvertisement(): Record<string, true>;
|
|
28
|
+
export interface AcpChooseDirectoryRequest {
|
|
29
|
+
sessionId?: undefined | string;
|
|
30
|
+
requestId?: undefined | string;
|
|
31
|
+
title?: undefined | string;
|
|
32
|
+
toolCallId?: undefined | string;
|
|
33
|
+
emitRuntimeEvent?: undefined | ((event: Record<string, unknown>) => void);
|
|
34
|
+
}
|
|
35
|
+
export interface AcpChooseDirectoryResult {
|
|
36
|
+
path?: undefined | string;
|
|
37
|
+
cancelled?: undefined | boolean;
|
|
38
|
+
timedOut?: undefined | boolean;
|
|
39
|
+
error?: undefined | string;
|
|
40
|
+
}
|
|
41
|
+
export interface AcpChooseWorkspacePlacementRequest {
|
|
42
|
+
sessionId?: undefined | string;
|
|
43
|
+
requestId?: undefined | string;
|
|
44
|
+
directory?: undefined | string;
|
|
45
|
+
title?: undefined | string;
|
|
46
|
+
toolCallId?: undefined | string;
|
|
47
|
+
emitRuntimeEvent?: undefined | ((event: Record<string, unknown>) => void);
|
|
48
|
+
}
|
|
49
|
+
export interface AcpChooseWorkspacePlacementResult {
|
|
50
|
+
choice?: undefined | 'inbox' | 'reuse' | 'create';
|
|
51
|
+
directory?: undefined | string;
|
|
52
|
+
workspaceName?: undefined | string;
|
|
53
|
+
result?: undefined | string;
|
|
54
|
+
cancelled?: undefined | boolean;
|
|
55
|
+
timedOut?: undefined | boolean;
|
|
56
|
+
error?: undefined | string;
|
|
57
|
+
}
|
|
58
|
+
export interface AcpHostBridge {
|
|
59
|
+
chooseDirectory(request: AcpChooseDirectoryRequest): Promise<AcpChooseDirectoryResult>;
|
|
60
|
+
chooseWorkspacePlacement(request: AcpChooseWorkspacePlacementRequest): Promise<AcpChooseWorkspacePlacementResult>;
|
|
61
|
+
cancelOutstanding?(reason?: undefined | string): void;
|
|
62
|
+
}
|
|
63
|
+
export declare class FailClosedAcpHostBridge implements AcpHostBridge {
|
|
64
|
+
chooseDirectory(): Promise<AcpChooseDirectoryResult>;
|
|
65
|
+
chooseWorkspacePlacement(): Promise<AcpChooseWorkspacePlacementResult>;
|
|
66
|
+
}
|
|
67
|
+
export declare function parseChooseDirectoryRequest(value: unknown): AcpChooseDirectoryRequest;
|
|
68
|
+
export declare function parseChooseWorkspacePlacementRequest(value: unknown): AcpChooseWorkspacePlacementRequest;
|
|
69
|
+
export declare function handleAcpHostExtensionRequest(method: string, params: Record<string, unknown>, bridge?: AcpHostBridge,
|
|
70
|
+
/**
|
|
71
|
+
* Coordination โ ยง5.2b's three primitives, on the surface that already exists.
|
|
72
|
+
*
|
|
73
|
+
* ๐ด Defaults to the UNAVAILABLE bridge, not to a working one and not to
|
|
74
|
+
* silence. A host without coordination mounted must say so by name: "no
|
|
75
|
+
* peers" and "this host cannot coordinate" are the same empty list and
|
|
76
|
+
* opposite meanings, and an agent told the first concludes it is working
|
|
77
|
+
* alone โ then edits a file another run has claimed.
|
|
78
|
+
*/
|
|
79
|
+
coordination?: CoordinationLaneBridge): Promise<Record<string, unknown>>;
|
|
80
|
+
export declare function cancelAcpHostBridge(bridge: AcpHostBridge, reason?: string): void;
|
|
81
|
+
//# sourceMappingURL=AcpHostBridge.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AcpHostBridge.d.ts","sourceRoot":"","sources":["../../src/acp/AcpHostBridge.ts"],"names":[],"mappings":"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"}
|