@dcyfr/ai 2.1.3 → 3.0.1
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/CHANGELOG.md +91 -0
- package/README.md +75 -10
- package/config/default.json +11 -5
- package/config/default.yaml +13 -5
- package/dist/.tsbuildinfo +1 -0
- package/dist/ai/agents/agent-loader.d.ts.map +1 -1
- package/dist/ai/agents/agent-loader.js +1 -0
- package/dist/ai/agents/agent-loader.js.map +1 -1
- package/dist/ai/agents/agent-registry.d.ts.map +1 -1
- package/dist/ai/agents/agent-registry.js.map +1 -1
- package/dist/ai/agents/agent-router.d.ts +3 -3
- package/dist/ai/agents/agent-router.d.ts.map +1 -1
- package/dist/ai/agents/agent-router.js +6 -7
- package/dist/ai/agents/agent-router.js.map +1 -1
- package/dist/ai/config/schema.js +3 -3
- package/dist/ai/config/schema.js.map +1 -1
- package/dist/ai/core/provider-registry.d.ts.map +1 -1
- package/dist/ai/core/provider-registry.js +47 -16
- package/dist/ai/core/provider-registry.js.map +1 -1
- package/dist/ai/core/telemetry-engine.d.ts.map +1 -1
- package/dist/ai/core/telemetry-engine.js +5 -3
- package/dist/ai/core/telemetry-engine.js.map +1 -1
- package/dist/ai/delegation/capability-bootstrap.js +1 -1
- package/dist/ai/delegation/capability-bootstrap.js.map +1 -1
- package/dist/ai/delegation/contract-manager.d.ts +54 -5
- package/dist/ai/delegation/contract-manager.d.ts.map +1 -1
- package/dist/ai/delegation/contract-manager.js +122 -7
- package/dist/ai/delegation/contract-manager.js.map +1 -1
- package/dist/ai/delegation/feature-flags.d.ts +1 -1
- package/dist/ai/delegation/feature-flags.d.ts.map +1 -1
- package/dist/ai/delegation/feature-flags.js +3 -1
- package/dist/ai/delegation/feature-flags.js.map +1 -1
- package/dist/ai/delegation/index.d.ts +1 -0
- package/dist/ai/delegation/index.d.ts.map +1 -1
- package/dist/ai/delegation/index.js +2 -0
- package/dist/ai/delegation/index.js.map +1 -1
- package/dist/ai/delegation/monitoring.d.ts.map +1 -1
- package/dist/ai/delegation/monitoring.js +1 -0
- package/dist/ai/delegation/monitoring.js.map +1 -1
- package/dist/ai/delegation/session-manager.d.ts +16 -1
- package/dist/ai/delegation/session-manager.d.ts.map +1 -1
- package/dist/ai/delegation/session-manager.js +10 -1
- package/dist/ai/delegation/session-manager.js.map +1 -1
- package/dist/ai/delegation/session-queue.d.ts.map +1 -1
- package/dist/ai/delegation/session-queue.js.map +1 -1
- package/dist/ai/examples/integration-demo.d.ts.map +1 -1
- package/dist/ai/examples/integration-demo.js +1 -0
- package/dist/ai/examples/integration-demo.js.map +1 -1
- package/dist/ai/index.d.ts +7 -0
- package/dist/ai/index.d.ts.map +1 -1
- package/dist/ai/index.js +8 -0
- package/dist/ai/index.js.map +1 -1
- package/dist/ai/mcp/mcp-registry.d.ts.map +1 -1
- package/dist/ai/mcp/mcp-registry.js +1 -1
- package/dist/ai/mcp/mcp-registry.js.map +1 -1
- package/dist/ai/mcp/servers/analytics/index.d.ts.map +1 -1
- package/dist/ai/mcp/servers/analytics/index.js +1 -0
- package/dist/ai/mcp/servers/analytics/index.js.map +1 -1
- package/dist/ai/mcp/servers/content-manager/index.d.ts.map +1 -1
- package/dist/ai/mcp/servers/delegation-monitor/index.js +27 -27
- package/dist/ai/mcp/servers/delegation-monitor/index.js.map +1 -1
- package/dist/ai/mcp/servers/design-tokens/index.js +1 -1
- package/dist/ai/mcp/servers/design-tokens/index.js.map +1 -1
- package/dist/ai/mcp/servers/promptintel/index.d.ts.map +1 -1
- package/dist/ai/mcp/servers/promptintel/index.js +2 -1
- package/dist/ai/mcp/servers/promptintel/index.js.map +1 -1
- package/dist/ai/mcp/servers/shared/rate-limiter.d.ts.map +1 -1
- package/dist/ai/mcp/servers/shared/rate-limiter.js +1 -0
- package/dist/ai/mcp/servers/shared/rate-limiter.js.map +1 -1
- package/dist/ai/mcp/servers/shared/redis-client.d.ts.map +1 -1
- package/dist/ai/mcp/servers/shared/redis-client.js +2 -0
- package/dist/ai/mcp/servers/shared/redis-client.js.map +1 -1
- package/dist/ai/mcp/servers/shared/utils.js +12 -18
- package/dist/ai/mcp/servers/shared/utils.js.map +1 -1
- package/dist/ai/memory/dcyfr-memory.d.ts.map +1 -1
- package/dist/ai/memory/dcyfr-memory.js +11 -1
- package/dist/ai/memory/dcyfr-memory.js.map +1 -1
- package/dist/ai/memory/file-memory-adapter.d.ts +103 -0
- package/dist/ai/memory/file-memory-adapter.d.ts.map +1 -0
- package/dist/ai/memory/file-memory-adapter.js +532 -0
- package/dist/ai/memory/file-memory-adapter.js.map +1 -0
- package/dist/ai/memory/index.d.ts +6 -0
- package/dist/ai/memory/index.d.ts.map +1 -1
- package/dist/ai/memory/index.js +6 -0
- package/dist/ai/memory/index.js.map +1 -1
- package/dist/ai/memory/mem0-client.d.ts.map +1 -1
- package/dist/ai/memory/mem0-client.js +5 -2
- package/dist/ai/memory/mem0-client.js.map +1 -1
- package/dist/ai/memory/sqlite-index.d.ts +89 -0
- package/dist/ai/memory/sqlite-index.d.ts.map +1 -0
- package/dist/ai/memory/sqlite-index.js +295 -0
- package/dist/ai/memory/sqlite-index.js.map +1 -0
- package/dist/ai/memory/types.d.ts.map +1 -1
- package/dist/ai/memory/types.js +1 -0
- package/dist/ai/memory/types.js.map +1 -1
- package/dist/ai/memory/working-memory-persistence.d.ts +79 -0
- package/dist/ai/memory/working-memory-persistence.d.ts.map +1 -0
- package/dist/ai/memory/working-memory-persistence.js +220 -0
- package/dist/ai/memory/working-memory-persistence.js.map +1 -0
- package/dist/ai/permissions/attenuation-engine.d.ts.map +1 -1
- package/dist/ai/permissions/attenuation-engine.js.map +1 -1
- package/dist/ai/reputation/reputation-engine.d.ts +4 -0
- package/dist/ai/reputation/reputation-engine.d.ts.map +1 -1
- package/dist/ai/reputation/reputation-engine.js +1 -0
- package/dist/ai/reputation/reputation-engine.js.map +1 -1
- package/dist/ai/runtime/agent-runtime.d.ts.map +1 -1
- package/dist/ai/runtime/agent-runtime.js +9 -5
- package/dist/ai/runtime/agent-runtime.js.map +1 -1
- package/dist/ai/src/batch-processor.d.ts +6 -6
- package/dist/ai/src/batch-processor.d.ts.map +1 -1
- package/dist/ai/src/batch-processor.js +11 -4
- package/dist/ai/src/batch-processor.js.map +1 -1
- package/dist/ai/src/capability-bootstrap.d.ts.map +1 -1
- package/dist/ai/src/capability-bootstrap.js +1 -0
- package/dist/ai/src/capability-bootstrap.js.map +1 -1
- package/dist/ai/src/capability-registry.js +1 -1
- package/dist/ai/src/capability-registry.js.map +1 -1
- package/dist/ai/src/cli/telemetry-dashboard.d.ts +0 -11
- package/dist/ai/src/cli/telemetry-dashboard.d.ts.map +1 -1
- package/dist/ai/src/cli/telemetry-dashboard.js +12 -6
- package/dist/ai/src/cli/telemetry-dashboard.js.map +1 -1
- package/dist/ai/src/compaction/context-compactor.d.ts +149 -0
- package/dist/ai/src/compaction/context-compactor.d.ts.map +1 -0
- package/dist/ai/src/compaction/context-compactor.js +302 -0
- package/dist/ai/src/compaction/context-compactor.js.map +1 -0
- package/dist/ai/src/compaction/index.d.ts +11 -0
- package/dist/ai/src/compaction/index.d.ts.map +1 -0
- package/dist/ai/src/compaction/index.js +11 -0
- package/dist/ai/src/compaction/index.js.map +1 -0
- package/dist/ai/src/compaction/memory-compaction.d.ts +138 -0
- package/dist/ai/src/compaction/memory-compaction.d.ts.map +1 -0
- package/dist/ai/src/compaction/memory-compaction.js +630 -0
- package/dist/ai/src/compaction/memory-compaction.js.map +1 -0
- package/dist/ai/src/container/agent-container-dispatcher.d.ts +154 -0
- package/dist/ai/src/container/agent-container-dispatcher.d.ts.map +1 -0
- package/dist/ai/src/container/agent-container-dispatcher.js +329 -0
- package/dist/ai/src/container/agent-container-dispatcher.js.map +1 -0
- package/dist/ai/src/container/backend-factory.d.ts +89 -0
- package/dist/ai/src/container/backend-factory.d.ts.map +1 -0
- package/dist/ai/src/container/backend-factory.js +169 -0
- package/dist/ai/src/container/backend-factory.js.map +1 -0
- package/dist/ai/src/container/index.d.ts +13 -0
- package/dist/ai/src/container/index.d.ts.map +1 -0
- package/dist/ai/src/container/index.js +13 -0
- package/dist/ai/src/container/index.js.map +1 -0
- package/dist/ai/src/container/kubernetes-backend.d.ts +23 -0
- package/dist/ai/src/container/kubernetes-backend.d.ts.map +1 -0
- package/dist/ai/src/container/kubernetes-backend.js +39 -0
- package/dist/ai/src/container/kubernetes-backend.js.map +1 -0
- package/dist/ai/src/container/local-docker-backend.d.ts +77 -0
- package/dist/ai/src/container/local-docker-backend.d.ts.map +1 -0
- package/dist/ai/src/container/local-docker-backend.js +362 -0
- package/dist/ai/src/container/local-docker-backend.js.map +1 -0
- package/dist/ai/src/container/remote-docker-backend.d.ts +35 -0
- package/dist/ai/src/container/remote-docker-backend.d.ts.map +1 -0
- package/dist/ai/src/container/remote-docker-backend.js +189 -0
- package/dist/ai/src/container/remote-docker-backend.js.map +1 -0
- package/dist/ai/src/container/types.d.ts +270 -0
- package/dist/ai/src/container/types.d.ts.map +1 -0
- package/dist/ai/src/container/types.js +86 -0
- package/dist/ai/src/container/types.js.map +1 -0
- package/dist/ai/src/delegation/feature-flags.d.ts.map +1 -1
- package/dist/ai/src/delegation/feature-flags.js +1 -0
- package/dist/ai/src/delegation/feature-flags.js.map +1 -1
- package/dist/ai/src/delegation/liability-firebreak.d.ts.map +1 -1
- package/dist/ai/src/delegation/liability-firebreak.js +1 -0
- package/dist/ai/src/delegation/liability-firebreak.js.map +1 -1
- package/dist/ai/src/delegation/security-threat-model.d.ts.map +1 -1
- package/dist/ai/src/delegation/security-threat-model.js +1 -1
- package/dist/ai/src/delegation/security-threat-model.js.map +1 -1
- package/dist/ai/src/delegation-capability-integration.d.ts +1 -1
- package/dist/ai/src/delegation-capability-integration.d.ts.map +1 -1
- package/dist/ai/src/delegation-capability-integration.js +2 -7
- package/dist/ai/src/delegation-capability-integration.js.map +1 -1
- package/dist/ai/src/end-to-end-workflow-orchestrator.d.ts.map +1 -1
- package/dist/ai/src/end-to-end-workflow-orchestrator.js +2 -1
- package/dist/ai/src/end-to-end-workflow-orchestrator.js.map +1 -1
- package/dist/ai/src/enhanced-capability-detection.d.ts +1 -1
- package/dist/ai/src/enhanced-capability-detection.d.ts.map +1 -1
- package/dist/ai/src/enhanced-capability-detection.js +1 -1
- package/dist/ai/src/enhanced-capability-detection.js.map +1 -1
- package/dist/ai/src/gateway/index.d.ts +6 -0
- package/dist/ai/src/gateway/index.d.ts.map +1 -0
- package/dist/ai/src/gateway/index.js +6 -0
- package/dist/ai/src/gateway/index.js.map +1 -0
- package/dist/ai/src/gateway/message-gateway.d.ts +296 -0
- package/dist/ai/src/gateway/message-gateway.d.ts.map +1 -0
- package/dist/ai/src/gateway/message-gateway.js +415 -0
- package/dist/ai/src/gateway/message-gateway.js.map +1 -0
- package/dist/ai/src/intelligent-cache-manager.d.ts.map +1 -1
- package/dist/ai/src/intelligent-cache-manager.js +2 -1
- package/dist/ai/src/intelligent-cache-manager.js.map +1 -1
- package/dist/ai/src/mcp/index.d.ts +10 -0
- package/dist/ai/src/mcp/index.d.ts.map +1 -0
- package/dist/ai/src/mcp/index.js +10 -0
- package/dist/ai/src/mcp/index.js.map +1 -0
- package/dist/ai/src/mcp/mcp-tool-bridge.d.ts +186 -0
- package/dist/ai/src/mcp/mcp-tool-bridge.d.ts.map +1 -0
- package/dist/ai/src/mcp/mcp-tool-bridge.js +292 -0
- package/dist/ai/src/mcp/mcp-tool-bridge.js.map +1 -0
- package/dist/ai/src/mcp-auto-configuration.d.ts.map +1 -1
- package/dist/ai/src/mcp-auto-configuration.js +2 -1
- package/dist/ai/src/mcp-auto-configuration.js.map +1 -1
- package/dist/ai/src/performance-profiler.d.ts.map +1 -1
- package/dist/ai/src/performance-profiler.js +1 -0
- package/dist/ai/src/performance-profiler.js.map +1 -1
- package/dist/ai/src/plugins/anomaly/anomaly-detector.d.ts +58 -0
- package/dist/ai/src/plugins/anomaly/anomaly-detector.d.ts.map +1 -0
- package/dist/ai/src/plugins/anomaly/anomaly-detector.js +101 -0
- package/dist/ai/src/plugins/anomaly/anomaly-detector.js.map +1 -0
- package/dist/ai/src/plugins/anomaly/anomaly-monitor.d.ts +145 -0
- package/dist/ai/src/plugins/anomaly/anomaly-monitor.d.ts.map +1 -0
- package/dist/ai/src/plugins/anomaly/anomaly-monitor.js +245 -0
- package/dist/ai/src/plugins/anomaly/anomaly-monitor.js.map +1 -0
- package/dist/ai/src/plugins/anomaly/behavior-baseline.d.ts +79 -0
- package/dist/ai/src/plugins/anomaly/behavior-baseline.d.ts.map +1 -0
- package/dist/ai/src/plugins/anomaly/behavior-baseline.js +161 -0
- package/dist/ai/src/plugins/anomaly/behavior-baseline.js.map +1 -0
- package/dist/ai/src/plugins/anomaly/index.d.ts +15 -0
- package/dist/ai/src/plugins/anomaly/index.d.ts.map +1 -0
- package/dist/ai/src/plugins/anomaly/index.js +12 -0
- package/dist/ai/src/plugins/anomaly/index.js.map +1 -0
- package/dist/ai/src/plugins/anomaly/types.d.ts +150 -0
- package/dist/ai/src/plugins/anomaly/types.d.ts.map +1 -0
- package/dist/ai/src/plugins/anomaly/types.js +68 -0
- package/dist/ai/src/plugins/anomaly/types.js.map +1 -0
- package/dist/ai/src/plugins/certification/certification-manager.d.ts +102 -0
- package/dist/ai/src/plugins/certification/certification-manager.d.ts.map +1 -0
- package/dist/ai/src/plugins/certification/certification-manager.js +321 -0
- package/dist/ai/src/plugins/certification/certification-manager.js.map +1 -0
- package/dist/ai/src/plugins/certification/index.d.ts +12 -0
- package/dist/ai/src/plugins/certification/index.d.ts.map +1 -0
- package/dist/ai/src/plugins/certification/index.js +10 -0
- package/dist/ai/src/plugins/certification/index.js.map +1 -0
- package/dist/ai/src/plugins/certification/types.d.ts +128 -0
- package/dist/ai/src/plugins/certification/types.d.ts.map +1 -0
- package/dist/ai/src/plugins/certification/types.js +201 -0
- package/dist/ai/src/plugins/certification/types.js.map +1 -0
- package/dist/ai/src/plugins/escalation/escalation-trigger.d.ts +155 -0
- package/dist/ai/src/plugins/escalation/escalation-trigger.d.ts.map +1 -0
- package/dist/ai/src/plugins/escalation/escalation-trigger.js +183 -0
- package/dist/ai/src/plugins/escalation/escalation-trigger.js.map +1 -0
- package/dist/ai/src/plugins/escalation/index.d.ts +11 -0
- package/dist/ai/src/plugins/escalation/index.d.ts.map +1 -0
- package/dist/ai/src/plugins/escalation/index.js +10 -0
- package/dist/ai/src/plugins/escalation/index.js.map +1 -0
- package/dist/ai/src/plugins/incidents/incident-response-manager.d.ts +165 -0
- package/dist/ai/src/plugins/incidents/incident-response-manager.d.ts.map +1 -0
- package/dist/ai/src/plugins/incidents/incident-response-manager.js +462 -0
- package/dist/ai/src/plugins/incidents/incident-response-manager.js.map +1 -0
- package/dist/ai/src/plugins/incidents/index.d.ts +8 -0
- package/dist/ai/src/plugins/incidents/index.d.ts.map +1 -0
- package/dist/ai/src/plugins/incidents/index.js +7 -0
- package/dist/ai/src/plugins/incidents/index.js.map +1 -0
- package/dist/ai/src/plugins/incidents/types.d.ts +183 -0
- package/dist/ai/src/plugins/incidents/types.d.ts.map +1 -0
- package/dist/ai/src/plugins/incidents/types.js +55 -0
- package/dist/ai/src/plugins/incidents/types.js.map +1 -0
- package/dist/ai/src/plugins/permissions/index.d.ts +17 -0
- package/dist/ai/src/plugins/permissions/index.d.ts.map +1 -0
- package/dist/ai/src/plugins/permissions/index.js +14 -0
- package/dist/ai/src/plugins/permissions/index.js.map +1 -0
- package/dist/ai/src/plugins/permissions/permission-attenuator.d.ts +29 -0
- package/dist/ai/src/plugins/permissions/permission-attenuator.d.ts.map +1 -0
- package/dist/ai/src/plugins/permissions/permission-attenuator.js +190 -0
- package/dist/ai/src/plugins/permissions/permission-attenuator.js.map +1 -0
- package/dist/ai/src/plugins/permissions/permission-audit-logger.d.ts +72 -0
- package/dist/ai/src/plugins/permissions/permission-audit-logger.d.ts.map +1 -0
- package/dist/ai/src/plugins/permissions/permission-audit-logger.js +176 -0
- package/dist/ai/src/plugins/permissions/permission-audit-logger.js.map +1 -0
- package/dist/ai/src/plugins/permissions/permission-enforcer.d.ts +99 -0
- package/dist/ai/src/plugins/permissions/permission-enforcer.d.ts.map +1 -0
- package/dist/ai/src/plugins/permissions/permission-enforcer.js +151 -0
- package/dist/ai/src/plugins/permissions/permission-enforcer.js.map +1 -0
- package/dist/ai/src/plugins/permissions/plugin-permission-validator.d.ts +39 -0
- package/dist/ai/src/plugins/permissions/plugin-permission-validator.d.ts.map +1 -0
- package/dist/ai/src/plugins/permissions/plugin-permission-validator.js +296 -0
- package/dist/ai/src/plugins/permissions/plugin-permission-validator.js.map +1 -0
- package/dist/ai/src/plugins/permissions/types.d.ts +116 -0
- package/dist/ai/src/plugins/permissions/types.d.ts.map +1 -0
- package/dist/ai/src/plugins/permissions/types.js +36 -0
- package/dist/ai/src/plugins/permissions/types.js.map +1 -0
- package/dist/ai/src/plugins/reputation/index.d.ts +9 -0
- package/dist/ai/src/plugins/reputation/index.d.ts.map +1 -0
- package/dist/ai/src/plugins/reputation/index.js +8 -0
- package/dist/ai/src/plugins/reputation/index.js.map +1 -0
- package/dist/ai/src/plugins/reputation/plugin-reputation-db.d.ts +29 -0
- package/dist/ai/src/plugins/reputation/plugin-reputation-db.d.ts.map +1 -0
- package/dist/ai/src/plugins/reputation/plugin-reputation-db.js +120 -0
- package/dist/ai/src/plugins/reputation/plugin-reputation-db.js.map +1 -0
- package/dist/ai/src/plugins/reputation/plugin-reputation-engine.d.ts +115 -0
- package/dist/ai/src/plugins/reputation/plugin-reputation-engine.d.ts.map +1 -0
- package/dist/ai/src/plugins/reputation/plugin-reputation-engine.js +528 -0
- package/dist/ai/src/plugins/reputation/plugin-reputation-engine.js.map +1 -0
- package/dist/ai/src/plugins/reputation/types.d.ts +149 -0
- package/dist/ai/src/plugins/reputation/types.d.ts.map +1 -0
- package/dist/ai/src/plugins/reputation/types.js +14 -0
- package/dist/ai/src/plugins/reputation/types.js.map +1 -0
- package/dist/ai/src/plugins/reviews/index.d.ts +11 -0
- package/dist/ai/src/plugins/reviews/index.d.ts.map +1 -0
- package/dist/ai/src/plugins/reviews/index.js +10 -0
- package/dist/ai/src/plugins/reviews/index.js.map +1 -0
- package/dist/ai/src/plugins/reviews/plugin-rating-aggregator.d.ts +116 -0
- package/dist/ai/src/plugins/reviews/plugin-rating-aggregator.d.ts.map +1 -0
- package/dist/ai/src/plugins/reviews/plugin-rating-aggregator.js +282 -0
- package/dist/ai/src/plugins/reviews/plugin-rating-aggregator.js.map +1 -0
- package/dist/ai/src/plugins/reviews/types.d.ts +113 -0
- package/dist/ai/src/plugins/reviews/types.d.ts.map +1 -0
- package/dist/ai/src/plugins/reviews/types.js +55 -0
- package/dist/ai/src/plugins/reviews/types.js.map +1 -0
- package/dist/ai/src/plugins/runtime/docker-plugin-runner.d.ts +77 -0
- package/dist/ai/src/plugins/runtime/docker-plugin-runner.d.ts.map +1 -0
- package/dist/ai/src/plugins/runtime/docker-plugin-runner.js +248 -0
- package/dist/ai/src/plugins/runtime/docker-plugin-runner.js.map +1 -0
- package/dist/ai/src/plugins/runtime/gvisor-plugin-runner.d.ts +99 -0
- package/dist/ai/src/plugins/runtime/gvisor-plugin-runner.d.ts.map +1 -0
- package/dist/ai/src/plugins/runtime/gvisor-plugin-runner.js +158 -0
- package/dist/ai/src/plugins/runtime/gvisor-plugin-runner.js.map +1 -0
- package/dist/ai/src/plugins/runtime/index.d.ts +13 -0
- package/dist/ai/src/plugins/runtime/index.d.ts.map +1 -0
- package/dist/ai/src/plugins/runtime/index.js +11 -0
- package/dist/ai/src/plugins/runtime/index.js.map +1 -0
- package/dist/ai/src/plugins/runtime/types.d.ts +143 -0
- package/dist/ai/src/plugins/runtime/types.d.ts.map +1 -0
- package/dist/ai/src/plugins/runtime/types.js +19 -0
- package/dist/ai/src/plugins/runtime/types.js.map +1 -0
- package/dist/ai/src/plugins/runtime/wasm-plugin-runner.d.ts +104 -0
- package/dist/ai/src/plugins/runtime/wasm-plugin-runner.d.ts.map +1 -0
- package/dist/ai/src/plugins/runtime/wasm-plugin-runner.js +307 -0
- package/dist/ai/src/plugins/runtime/wasm-plugin-runner.js.map +1 -0
- package/dist/ai/src/plugins/security/index.d.ts +24 -0
- package/dist/ai/src/plugins/security/index.d.ts.map +1 -0
- package/dist/ai/src/plugins/security/index.js +23 -0
- package/dist/ai/src/plugins/security/index.js.map +1 -0
- package/dist/ai/src/plugins/security/license-checker.d.ts +26 -0
- package/dist/ai/src/plugins/security/license-checker.d.ts.map +1 -0
- package/dist/ai/src/plugins/security/license-checker.js +137 -0
- package/dist/ai/src/plugins/security/license-checker.js.map +1 -0
- package/dist/ai/src/plugins/security/malware-scanner.d.ts +19 -0
- package/dist/ai/src/plugins/security/malware-scanner.d.ts.map +1 -0
- package/dist/ai/src/plugins/security/malware-scanner.js +121 -0
- package/dist/ai/src/plugins/security/malware-scanner.js.map +1 -0
- package/dist/ai/src/plugins/security/plugin-security-scanner.d.ts +36 -0
- package/dist/ai/src/plugins/security/plugin-security-scanner.d.ts.map +1 -0
- package/dist/ai/src/plugins/security/plugin-security-scanner.js +160 -0
- package/dist/ai/src/plugins/security/plugin-security-scanner.js.map +1 -0
- package/dist/ai/src/plugins/security/sbom-generator.d.ts +23 -0
- package/dist/ai/src/plugins/security/sbom-generator.d.ts.map +1 -0
- package/dist/ai/src/plugins/security/sbom-generator.js +115 -0
- package/dist/ai/src/plugins/security/sbom-generator.js.map +1 -0
- package/dist/ai/src/plugins/security/secret-detector.d.ts +19 -0
- package/dist/ai/src/plugins/security/secret-detector.d.ts.map +1 -0
- package/dist/ai/src/plugins/security/secret-detector.js +204 -0
- package/dist/ai/src/plugins/security/secret-detector.js.map +1 -0
- package/dist/ai/src/plugins/security/signature-verifier.d.ts +21 -0
- package/dist/ai/src/plugins/security/signature-verifier.d.ts.map +1 -0
- package/dist/ai/src/plugins/security/signature-verifier.js +75 -0
- package/dist/ai/src/plugins/security/signature-verifier.js.map +1 -0
- package/dist/ai/src/plugins/security/sonarcloud-client.d.ts +20 -0
- package/dist/ai/src/plugins/security/sonarcloud-client.d.ts.map +1 -0
- package/dist/ai/src/plugins/security/sonarcloud-client.js +106 -0
- package/dist/ai/src/plugins/security/sonarcloud-client.js.map +1 -0
- package/dist/ai/src/plugins/security/trust-score.d.ts +58 -0
- package/dist/ai/src/plugins/security/trust-score.d.ts.map +1 -0
- package/dist/ai/src/plugins/security/trust-score.js +173 -0
- package/dist/ai/src/plugins/security/trust-score.js.map +1 -0
- package/dist/ai/src/plugins/security/types.d.ts +220 -0
- package/dist/ai/src/plugins/security/types.d.ts.map +1 -0
- package/dist/ai/src/plugins/security/types.js +12 -0
- package/dist/ai/src/plugins/security/types.js.map +1 -0
- package/dist/ai/src/plugins/security/vulnerability-scanner.d.ts +22 -0
- package/dist/ai/src/plugins/security/vulnerability-scanner.d.ts.map +1 -0
- package/dist/ai/src/plugins/security/vulnerability-scanner.js +109 -0
- package/dist/ai/src/plugins/security/vulnerability-scanner.js.map +1 -0
- package/dist/ai/src/plugins/tlp/index.d.ts +17 -0
- package/dist/ai/src/plugins/tlp/index.d.ts.map +1 -0
- package/dist/ai/src/plugins/tlp/index.js +17 -0
- package/dist/ai/src/plugins/tlp/index.js.map +1 -0
- package/dist/ai/src/plugins/tlp/tlp-classifier.d.ts +55 -0
- package/dist/ai/src/plugins/tlp/tlp-classifier.d.ts.map +1 -0
- package/dist/ai/src/plugins/tlp/tlp-classifier.js +232 -0
- package/dist/ai/src/plugins/tlp/tlp-classifier.js.map +1 -0
- package/dist/ai/src/plugins/tlp/tlp-validator.d.ts +97 -0
- package/dist/ai/src/plugins/tlp/tlp-validator.d.ts.map +1 -0
- package/dist/ai/src/plugins/tlp/tlp-validator.js +120 -0
- package/dist/ai/src/plugins/tlp/tlp-validator.js.map +1 -0
- package/dist/ai/src/plugins/tlp/types.d.ts +84 -0
- package/dist/ai/src/plugins/tlp/types.d.ts.map +1 -0
- package/dist/ai/src/plugins/tlp/types.js +20 -0
- package/dist/ai/src/plugins/tlp/types.js.map +1 -0
- package/dist/ai/src/resource-monitor.d.ts +1 -1
- package/dist/ai/src/resource-monitor.d.ts.map +1 -1
- package/dist/ai/src/resource-monitor.js +4 -3
- package/dist/ai/src/resource-monitor.js.map +1 -1
- package/dist/ai/src/runtime/agent-runtime.d.ts +77 -0
- package/dist/ai/src/runtime/agent-runtime.d.ts.map +1 -1
- package/dist/ai/src/runtime/agent-runtime.js +138 -2
- package/dist/ai/src/runtime/agent-runtime.js.map +1 -1
- package/dist/ai/src/scheduler/agent-scheduler.d.ts +365 -0
- package/dist/ai/src/scheduler/agent-scheduler.d.ts.map +1 -0
- package/dist/ai/src/scheduler/agent-scheduler.js +610 -0
- package/dist/ai/src/scheduler/agent-scheduler.js.map +1 -0
- package/dist/ai/src/scheduler/index.d.ts +6 -0
- package/dist/ai/src/scheduler/index.d.ts.map +1 -0
- package/dist/ai/src/scheduler/index.js +6 -0
- package/dist/ai/src/scheduler/index.js.map +1 -0
- package/dist/ai/src/session/index.d.ts +6 -0
- package/dist/ai/src/session/index.d.ts.map +1 -0
- package/dist/ai/src/session/index.js +6 -0
- package/dist/ai/src/session/index.js.map +1 -0
- package/dist/ai/src/session/session-manager.d.ts +380 -0
- package/dist/ai/src/session/session-manager.d.ts.map +1 -0
- package/dist/ai/src/session/session-manager.js +625 -0
- package/dist/ai/src/session/session-manager.js.map +1 -0
- package/dist/ai/src/skills/index.d.ts +10 -0
- package/dist/ai/src/skills/index.d.ts.map +1 -0
- package/dist/ai/src/skills/index.js +10 -0
- package/dist/ai/src/skills/index.js.map +1 -0
- package/dist/ai/src/skills/skill-registry.d.ts +181 -0
- package/dist/ai/src/skills/skill-registry.d.ts.map +1 -0
- package/dist/ai/src/skills/skill-registry.js +465 -0
- package/dist/ai/src/skills/skill-registry.js.map +1 -0
- package/dist/ai/src/telemetry/delegation-telemetry.d.ts.map +1 -1
- package/dist/ai/src/telemetry/delegation-telemetry.js +1 -0
- package/dist/ai/src/telemetry/delegation-telemetry.js.map +1 -1
- package/dist/ai/src/telemetry/runtime-telemetry-integration.d.ts +1 -1
- package/dist/ai/src/telemetry/runtime-telemetry-integration.d.ts.map +1 -1
- package/dist/ai/src/telemetry/runtime-telemetry-integration.js +3 -2
- package/dist/ai/src/telemetry/runtime-telemetry-integration.js.map +1 -1
- package/dist/ai/src/telemetry/telemetry-utils.d.ts.map +1 -1
- package/dist/ai/src/telemetry/telemetry-utils.js +1 -0
- package/dist/ai/src/telemetry/telemetry-utils.js.map +1 -1
- package/dist/ai/src/types/agent-capabilities.d.ts.map +1 -1
- package/dist/ai/src/types/agent-capabilities.js +1 -0
- package/dist/ai/src/types/agent-capabilities.js.map +1 -1
- package/dist/ai/src/types/delegation-contracts.d.ts +92 -0
- package/dist/ai/src/types/delegation-contracts.d.ts.map +1 -1
- package/dist/ai/src/types/delegation-contracts.js.map +1 -1
- package/dist/ai/src/validation-pipeline-integration.d.ts.map +1 -1
- package/dist/ai/src/validation-pipeline-integration.js +1 -2
- package/dist/ai/src/validation-pipeline-integration.js.map +1 -1
- package/dist/ai/src/verification/multi-modal-formatters.d.ts +1 -1
- package/dist/ai/src/verification/multi-modal-formatters.d.ts.map +1 -1
- package/dist/ai/src/verification/multi-modal-formatters.js +3 -2
- package/dist/ai/src/verification/multi-modal-formatters.js.map +1 -1
- package/dist/ai/src/verification/output-formatter.d.ts +1 -1
- package/dist/ai/src/verification/output-formatter.d.ts.map +1 -1
- package/dist/ai/src/verification/output-formatter.js +2 -1
- package/dist/ai/src/verification/output-formatter.js.map +1 -1
- package/dist/ai/src/verification/parser-integration.d.ts.map +1 -1
- package/dist/ai/src/verification/parser-integration.js.map +1 -1
- package/dist/ai/types/agent-capabilities.d.ts +7 -0
- package/dist/ai/types/agent-capabilities.d.ts.map +1 -1
- package/dist/ai/types/delegation-contracts.d.ts +75 -0
- package/dist/ai/types/delegation-contracts.d.ts.map +1 -1
- package/dist/ai/types/index.d.ts +3 -3
- package/dist/ai/types/index.d.ts.map +1 -1
- package/dist/ai/types/index.js.map +1 -1
- package/dist/ai/types/permission-tokens.d.ts +23 -0
- package/dist/ai/types/permission-tokens.d.ts.map +1 -1
- package/dist/ai/types/permission-tokens.js +65 -1
- package/dist/ai/types/permission-tokens.js.map +1 -1
- package/dist/ai/validation/validation-framework.d.ts.map +1 -1
- package/dist/ai/verification/policy-framework.d.ts +1 -1
- package/dist/ai/verification/policy-framework.d.ts.map +1 -1
- package/dist/ai/verification/policy-framework.js +4 -4
- package/dist/ai/verification/policy-framework.js.map +1 -1
- package/package.json +38 -9
|
@@ -0,0 +1,380 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* DCYFR Autonomous Agent Session Manager
|
|
3
|
+
* TLP:AMBER - Internal Use Only
|
|
4
|
+
*
|
|
5
|
+
* Manages autonomous agent sessions with:
|
|
6
|
+
* - Isolated DCYFRMemory instances per session (namespaced storage)
|
|
7
|
+
* - Trust-level tool policies (full/sandboxed/readonly)
|
|
8
|
+
* - Session lifecycle metadata (createdAt, lastActiveAt, messageCount, etc.)
|
|
9
|
+
* - Delegation security middleware integration (TLP + rate limiting)
|
|
10
|
+
* - Shared knowledge base overlay (read-only memory merged at query time)
|
|
11
|
+
*
|
|
12
|
+
* This is distinct from the delegation SessionManager (packages/ai/delegation/session-manager.ts)
|
|
13
|
+
* which tracks delegation contract lifecycle. This module manages autonomous agent
|
|
14
|
+
* runtime sessions — where agents run independently with memory, tools, and context.
|
|
15
|
+
*
|
|
16
|
+
* @module session/session-manager
|
|
17
|
+
* @version 1.0.0
|
|
18
|
+
* @date 2026-03-01
|
|
19
|
+
*/
|
|
20
|
+
import { EventEmitter } from 'events';
|
|
21
|
+
import type { DCYFRMemory, MemorySearchResult, MemoryContext, Memory } from '../../memory/types.js';
|
|
22
|
+
/** Trust level determines what tools a session can access */
|
|
23
|
+
export type TrustLevel = 'full' | 'sandboxed' | 'readonly';
|
|
24
|
+
/** Tool policy mode — maps to trust level enforcement */
|
|
25
|
+
export type ToolPolicyMode = 'allow_all' | 'allowlist' | 'readonly';
|
|
26
|
+
/**
|
|
27
|
+
* Tool definition for policy enforcement
|
|
28
|
+
*/
|
|
29
|
+
export interface SessionTool {
|
|
30
|
+
/** Tool name */
|
|
31
|
+
name: string;
|
|
32
|
+
/** Whether this tool performs write operations */
|
|
33
|
+
isWrite?: boolean;
|
|
34
|
+
/** Custom metadata */
|
|
35
|
+
metadata?: Record<string, unknown>;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Tool policy for a session — determines which tools can be executed
|
|
39
|
+
*/
|
|
40
|
+
export interface ToolPolicy {
|
|
41
|
+
/** Policy mode */
|
|
42
|
+
mode: ToolPolicyMode;
|
|
43
|
+
/** Allowlisted tool names (used when mode is 'allowlist') */
|
|
44
|
+
allowlist?: string[];
|
|
45
|
+
/** Denylisted tool names (always blocked regardless of mode) */
|
|
46
|
+
denylist?: string[];
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Session configuration provided at creation time
|
|
50
|
+
*/
|
|
51
|
+
export interface SessionConfig {
|
|
52
|
+
/** Agent ID that owns this session */
|
|
53
|
+
agentId: string;
|
|
54
|
+
/** Trust level for tool access control */
|
|
55
|
+
trustLevel?: TrustLevel;
|
|
56
|
+
/** Optional user ID associated with this session */
|
|
57
|
+
userId?: string;
|
|
58
|
+
/** Platform the session originates from */
|
|
59
|
+
platform?: string;
|
|
60
|
+
/** Custom allowlisted write tools for sandboxed mode */
|
|
61
|
+
sandboxedWriteAllowlist?: string[];
|
|
62
|
+
/** Memory factory — creates isolated DCYFRMemory for this session */
|
|
63
|
+
memoryFactory?: (sessionId: string, agentId: string) => DCYFRMemory;
|
|
64
|
+
/** Custom metadata */
|
|
65
|
+
metadata?: Record<string, unknown>;
|
|
66
|
+
/** Session TTL in milliseconds (0 = no expiry) */
|
|
67
|
+
ttlMs?: number;
|
|
68
|
+
/** TLP classification for security middleware integration */
|
|
69
|
+
tlpClassification?: string;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Session lifecycle state
|
|
73
|
+
*/
|
|
74
|
+
export type SessionLifecycle = 'active' | 'suspended' | 'destroyed';
|
|
75
|
+
/**
|
|
76
|
+
* Full session object managed by SessionManager
|
|
77
|
+
*/
|
|
78
|
+
export interface ManagedAgentSession {
|
|
79
|
+
/** Unique session ID */
|
|
80
|
+
id: string;
|
|
81
|
+
/** Agent ID that owns this session */
|
|
82
|
+
agentId: string;
|
|
83
|
+
/** Current lifecycle state */
|
|
84
|
+
lifecycle: SessionLifecycle;
|
|
85
|
+
/** Trust level for tool access */
|
|
86
|
+
trustLevel: TrustLevel;
|
|
87
|
+
/** Tool policy derived from trust level */
|
|
88
|
+
toolPolicy: ToolPolicy;
|
|
89
|
+
/** Isolated DCYFRMemory for this session */
|
|
90
|
+
memory?: DCYFRMemory;
|
|
91
|
+
/** Session metadata */
|
|
92
|
+
metadata: SessionMetadata;
|
|
93
|
+
/** Creation timestamp */
|
|
94
|
+
createdAt: Date;
|
|
95
|
+
/** Last activity timestamp */
|
|
96
|
+
lastActiveAt: Date;
|
|
97
|
+
/** Message count in this session */
|
|
98
|
+
messageCount: number;
|
|
99
|
+
/** Optional user ID */
|
|
100
|
+
userId?: string;
|
|
101
|
+
/** Platform identifier */
|
|
102
|
+
platform?: string;
|
|
103
|
+
/** TLP classification */
|
|
104
|
+
tlpClassification?: string;
|
|
105
|
+
/** Session expiry time (null = no expiry) */
|
|
106
|
+
expiresAt: Date | null;
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Session metadata — custom key/value pairs
|
|
110
|
+
*/
|
|
111
|
+
export interface SessionMetadata {
|
|
112
|
+
/** Custom metadata entries */
|
|
113
|
+
[key: string]: unknown;
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* Query filter for finding sessions
|
|
117
|
+
*/
|
|
118
|
+
export interface SessionQuery {
|
|
119
|
+
/** Filter by agent ID */
|
|
120
|
+
agentId?: string;
|
|
121
|
+
/** Filter by user ID */
|
|
122
|
+
userId?: string;
|
|
123
|
+
/** Filter by platform */
|
|
124
|
+
platform?: string;
|
|
125
|
+
/** Filter by lifecycle state */
|
|
126
|
+
lifecycle?: SessionLifecycle;
|
|
127
|
+
/** Filter by trust level */
|
|
128
|
+
trustLevel?: TrustLevel;
|
|
129
|
+
/** Filter by custom metadata key/value */
|
|
130
|
+
metadata?: Record<string, unknown>;
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* Options for finding idle sessions
|
|
134
|
+
*/
|
|
135
|
+
export interface IdleQueryOptions {
|
|
136
|
+
/** Minutes of inactivity to consider idle */
|
|
137
|
+
idleMinutes: number;
|
|
138
|
+
/** Only check sessions with this lifecycle */
|
|
139
|
+
lifecycle?: SessionLifecycle;
|
|
140
|
+
}
|
|
141
|
+
/**
|
|
142
|
+
* Security middleware evaluation result
|
|
143
|
+
*/
|
|
144
|
+
export interface SecurityEvaluation {
|
|
145
|
+
/** Whether the session creation is allowed */
|
|
146
|
+
allowed: boolean;
|
|
147
|
+
/** Reason for denial (if not allowed) */
|
|
148
|
+
reason?: string;
|
|
149
|
+
/** Downgraded trust level (if clearance is insufficient) */
|
|
150
|
+
downgradedTrustLevel?: TrustLevel;
|
|
151
|
+
}
|
|
152
|
+
/**
|
|
153
|
+
* Pluggable security middleware for session creation
|
|
154
|
+
*/
|
|
155
|
+
export interface SessionSecurityMiddleware {
|
|
156
|
+
/** Evaluate whether a session creation is allowed */
|
|
157
|
+
evaluate(config: SessionConfig, sessionId: string): Promise<SecurityEvaluation>;
|
|
158
|
+
}
|
|
159
|
+
/**
|
|
160
|
+
* Shared knowledge base overlay configuration
|
|
161
|
+
*/
|
|
162
|
+
export interface SharedKnowledgeBase {
|
|
163
|
+
/** The read-only memory backing the shared knowledge */
|
|
164
|
+
memory: DCYFRMemory;
|
|
165
|
+
/** Namespace for the shared knowledge */
|
|
166
|
+
namespace?: string;
|
|
167
|
+
}
|
|
168
|
+
/**
|
|
169
|
+
* Memory overlay that merges session-specific and shared knowledge results
|
|
170
|
+
*/
|
|
171
|
+
export declare class OverlayMemory implements Partial<DCYFRMemory> {
|
|
172
|
+
private readonly sessionMemory;
|
|
173
|
+
private readonly sharedMemory;
|
|
174
|
+
private readonly sharedNamespace;
|
|
175
|
+
constructor(sessionMemory: DCYFRMemory, sharedMemory: DCYFRMemory, sharedNamespace?: string);
|
|
176
|
+
/**
|
|
177
|
+
* Search both session and shared memory, deduplicate by content, merge results
|
|
178
|
+
*/
|
|
179
|
+
searchUserMemories(userId: string, query: string, limit?: number): Promise<MemorySearchResult[]>;
|
|
180
|
+
/**
|
|
181
|
+
* Search agent memories across session and shared
|
|
182
|
+
*/
|
|
183
|
+
searchAgentMemories(agentId: string, query: string, limit?: number): Promise<MemorySearchResult[]>;
|
|
184
|
+
/**
|
|
185
|
+
* Session context merges session + shared
|
|
186
|
+
*/
|
|
187
|
+
getSessionContext(sessionId: string): Promise<string>;
|
|
188
|
+
/** Writes go to session memory only */
|
|
189
|
+
addUserMemory(userId: string, message: string, context?: MemoryContext): Promise<string>;
|
|
190
|
+
addAgentMemory(agentId: string, sessionId: string, state: Record<string, unknown>): Promise<string>;
|
|
191
|
+
addSessionMemory(sessionId: string, message: string, ttl?: number): Promise<string>;
|
|
192
|
+
getUserMemories(userId: string, topic?: string): Promise<Memory[]>;
|
|
193
|
+
getAgentState(agentId: string, sessionId: string): Promise<Record<string, unknown> | null>;
|
|
194
|
+
deleteUserMemories(userId: string): Promise<void>;
|
|
195
|
+
deleteSessionMemories(sessionId: string): Promise<void>;
|
|
196
|
+
/** Get the underlying session memory */
|
|
197
|
+
getSessionMemory(): DCYFRMemory;
|
|
198
|
+
/** Get the underlying shared memory */
|
|
199
|
+
getSharedMemory(): DCYFRMemory;
|
|
200
|
+
}
|
|
201
|
+
/**
|
|
202
|
+
* Map trust level to tool policy
|
|
203
|
+
*/
|
|
204
|
+
export declare function trustLevelToPolicy(trustLevel: TrustLevel, sandboxedWriteAllowlist?: string[]): ToolPolicy;
|
|
205
|
+
/**
|
|
206
|
+
* Check if a tool is allowed by the given policy
|
|
207
|
+
*/
|
|
208
|
+
export declare function isToolAllowed(tool: SessionTool, policy: ToolPolicy): boolean;
|
|
209
|
+
/**
|
|
210
|
+
* Error thrown when a tool execution violates trust level policy
|
|
211
|
+
*/
|
|
212
|
+
export declare class TrustLevelViolation extends Error {
|
|
213
|
+
readonly toolName: string;
|
|
214
|
+
readonly trustLevel: TrustLevel;
|
|
215
|
+
readonly policyMode: ToolPolicyMode;
|
|
216
|
+
constructor(toolName: string, trustLevel: TrustLevel, policyMode: ToolPolicyMode);
|
|
217
|
+
}
|
|
218
|
+
/**
|
|
219
|
+
* Configuration for SessionManager
|
|
220
|
+
*/
|
|
221
|
+
export interface SessionManagerConfig {
|
|
222
|
+
/** Default trust level for new sessions */
|
|
223
|
+
defaultTrustLevel?: TrustLevel;
|
|
224
|
+
/** Default session TTL in milliseconds (0 = no expiry) */
|
|
225
|
+
defaultTtlMs?: number;
|
|
226
|
+
/** Security middleware chain evaluated on session creation */
|
|
227
|
+
securityMiddleware?: SessionSecurityMiddleware[];
|
|
228
|
+
/** Shared knowledge base accessible to all sessions */
|
|
229
|
+
sharedKnowledgeBase?: SharedKnowledgeBase;
|
|
230
|
+
/** Maximum concurrent sessions (0 = unlimited) */
|
|
231
|
+
maxSessions?: number;
|
|
232
|
+
}
|
|
233
|
+
/**
|
|
234
|
+
* Autonomous Agent Session Manager
|
|
235
|
+
*
|
|
236
|
+
* Manages sessions for autonomous agents with isolated memory, trust-level
|
|
237
|
+
* tool policies, and security middleware integration.
|
|
238
|
+
*
|
|
239
|
+
* Emits:
|
|
240
|
+
* - `session:created` — New session created
|
|
241
|
+
* - `session:suspended` — Session suspended
|
|
242
|
+
* - `session:resumed` — Session resumed from suspension
|
|
243
|
+
* - `session:destroyed` — Session destroyed and cleaned up
|
|
244
|
+
* - `session:active` — Session had activity (touch)
|
|
245
|
+
* - `session:expired` — Session expired by TTL
|
|
246
|
+
* - `tool:blocked` — Tool execution blocked by policy
|
|
247
|
+
*/
|
|
248
|
+
export declare class SessionManager extends EventEmitter {
|
|
249
|
+
private readonly sessions;
|
|
250
|
+
private readonly config;
|
|
251
|
+
private readonly securityMiddleware;
|
|
252
|
+
private readonly sharedKnowledgeBase?;
|
|
253
|
+
private expiryTimer;
|
|
254
|
+
constructor(config?: SessionManagerConfig);
|
|
255
|
+
/**
|
|
256
|
+
* Create a new autonomous agent session.
|
|
257
|
+
*
|
|
258
|
+
* Runs security middleware chain before creation.
|
|
259
|
+
* Creates isolated DCYFRMemory if memoryFactory provided.
|
|
260
|
+
* Applies shared knowledge base overlay if configured.
|
|
261
|
+
*
|
|
262
|
+
* @throws Error if security middleware blocks creation
|
|
263
|
+
* @throws Error if max sessions limit reached
|
|
264
|
+
*/
|
|
265
|
+
create(sessionConfig: SessionConfig): Promise<ManagedAgentSession>;
|
|
266
|
+
/**
|
|
267
|
+
* Get a session by ID. Returns undefined if not found or destroyed.
|
|
268
|
+
*/
|
|
269
|
+
get(sessionId: string): ManagedAgentSession | undefined;
|
|
270
|
+
/**
|
|
271
|
+
* Find sessions matching query criteria
|
|
272
|
+
*/
|
|
273
|
+
find(query: SessionQuery): ManagedAgentSession[];
|
|
274
|
+
/**
|
|
275
|
+
* Find idle sessions — sessions that haven't had activity for N minutes
|
|
276
|
+
*/
|
|
277
|
+
findIdle(options: IdleQueryOptions): ManagedAgentSession[];
|
|
278
|
+
/**
|
|
279
|
+
* Suspend a session — pauses activity but preserves memory and state.
|
|
280
|
+
* Suspended sessions can be resumed.
|
|
281
|
+
*/
|
|
282
|
+
suspend(sessionId: string): ManagedAgentSession;
|
|
283
|
+
/**
|
|
284
|
+
* Resume a suspended session — returns it to active state.
|
|
285
|
+
*/
|
|
286
|
+
resume(sessionId: string): ManagedAgentSession;
|
|
287
|
+
/**
|
|
288
|
+
* Destroy a session — cleans up memory and removes from store.
|
|
289
|
+
* Destroyed sessions cannot be resumed.
|
|
290
|
+
*/
|
|
291
|
+
destroy(sessionId: string): Promise<void>;
|
|
292
|
+
/**
|
|
293
|
+
* Touch a session — updates lastActiveAt and increments messageCount
|
|
294
|
+
*/
|
|
295
|
+
touch(sessionId: string): ManagedAgentSession;
|
|
296
|
+
/**
|
|
297
|
+
* Check if a tool is allowed in a session.
|
|
298
|
+
* Does NOT throw — use executeTool for enforcement.
|
|
299
|
+
*/
|
|
300
|
+
isToolAllowed(sessionId: string, tool: SessionTool): boolean;
|
|
301
|
+
/**
|
|
302
|
+
* Enforce tool policy — throws TrustLevelViolation if tool is blocked.
|
|
303
|
+
* Call this before executing any tool in a session context.
|
|
304
|
+
*/
|
|
305
|
+
enforceToolPolicy(sessionId: string, tool: SessionTool): void;
|
|
306
|
+
/**
|
|
307
|
+
* Update the trust level for a session (and regenerate tool policy)
|
|
308
|
+
*/
|
|
309
|
+
setTrustLevel(sessionId: string, trustLevel: TrustLevel, sandboxedWriteAllowlist?: string[]): ManagedAgentSession;
|
|
310
|
+
/**
|
|
311
|
+
* Update session metadata (merge with existing)
|
|
312
|
+
*/
|
|
313
|
+
updateMetadata(sessionId: string, metadata: Record<string, unknown>): ManagedAgentSession;
|
|
314
|
+
/**
|
|
315
|
+
* Get session metadata
|
|
316
|
+
*/
|
|
317
|
+
getMetadata(sessionId: string): SessionMetadata;
|
|
318
|
+
/**
|
|
319
|
+
* Get the memory instance for a session.
|
|
320
|
+
* If shared knowledge base is configured, returns overlay memory.
|
|
321
|
+
*/
|
|
322
|
+
getMemory(sessionId: string): DCYFRMemory | undefined;
|
|
323
|
+
/**
|
|
324
|
+
* Get all active sessions
|
|
325
|
+
*/
|
|
326
|
+
getActiveSessions(): ManagedAgentSession[];
|
|
327
|
+
/**
|
|
328
|
+
* Get total session count (all lifecycles)
|
|
329
|
+
*/
|
|
330
|
+
get size(): number;
|
|
331
|
+
/**
|
|
332
|
+
* Get sessions grouped by agent
|
|
333
|
+
*/
|
|
334
|
+
getSessionsByAgent(): Map<string, ManagedAgentSession[]>;
|
|
335
|
+
/**
|
|
336
|
+
* Destroy all expired sessions
|
|
337
|
+
*/
|
|
338
|
+
destroyExpired(): Promise<number>;
|
|
339
|
+
/**
|
|
340
|
+
* Destroy all sessions and stop timers
|
|
341
|
+
*/
|
|
342
|
+
destroyAll(): Promise<void>;
|
|
343
|
+
/**
|
|
344
|
+
* Stop the expiry checker and release resources
|
|
345
|
+
*/
|
|
346
|
+
dispose(): void;
|
|
347
|
+
private _requireSession;
|
|
348
|
+
private _startExpiryChecker;
|
|
349
|
+
private _stopExpiryChecker;
|
|
350
|
+
}
|
|
351
|
+
/**
|
|
352
|
+
* TLP-based security middleware for session creation.
|
|
353
|
+
* Wraps the delegation TLPMiddleware pattern for autonomous sessions.
|
|
354
|
+
*
|
|
355
|
+
* When agent TLP clearance is insufficient for the requested session's
|
|
356
|
+
* TLP classification, auto-downgrades the trust level instead of blocking.
|
|
357
|
+
*/
|
|
358
|
+
export declare class TLPSessionMiddleware implements SessionSecurityMiddleware {
|
|
359
|
+
/** Map of agent IDs to their TLP clearance levels */
|
|
360
|
+
private readonly agentClearances;
|
|
361
|
+
private readonly clearanceMap;
|
|
362
|
+
constructor(
|
|
363
|
+
/** Map of agent IDs to their TLP clearance levels */
|
|
364
|
+
agentClearances?: Record<string, string>);
|
|
365
|
+
evaluate(config: SessionConfig, _sessionId: string): Promise<SecurityEvaluation>;
|
|
366
|
+
}
|
|
367
|
+
/**
|
|
368
|
+
* Rate limiter middleware for session creation.
|
|
369
|
+
* Limits how many sessions an agent/user can create per window.
|
|
370
|
+
*/
|
|
371
|
+
export declare class RateLimiterSessionMiddleware implements SessionSecurityMiddleware {
|
|
372
|
+
private readonly maxSessions;
|
|
373
|
+
private readonly windowMs;
|
|
374
|
+
private readonly windows;
|
|
375
|
+
constructor(maxSessions?: number, windowMs?: number);
|
|
376
|
+
evaluate(config: SessionConfig, _sessionId: string): Promise<SecurityEvaluation>;
|
|
377
|
+
/** Exposed for testing */
|
|
378
|
+
getWindowCount(key: string, nowMs?: number): number;
|
|
379
|
+
}
|
|
380
|
+
//# sourceMappingURL=session-manager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-manager.d.ts","sourceRoot":"","sources":["../../../../packages/ai/src/session/session-manager.ts"],"names":[],"mappings":"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"}
|