@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
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,96 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 3.0.1
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [`b3c3d56`](https://github.com/dcyfr/dcyfr-ai/commit/b3c3d5699812327ddaa42ecb71c2a99324f10fc3) Thanks [@dcyfr](https://github.com/dcyfr)! - Bump runtime SDK dependencies to latest major versions:
|
|
8
|
+
- groq-sdk 0.3.0 → 1.1.1 (used via OpenAI-compatible API, no callsite changes)
|
|
9
|
+
- cloudflare 4.5.0 → 5.2.0 (Cloudflare v5 binding types)
|
|
10
|
+
- better-sqlite3 11.10.0 → 12.6.2 (reputation engine; no BigInt columns, no .safeIntegers() needed)
|
|
11
|
+
- Fix z.record() key type in container/types.ts for Zod 4 compatibility
|
|
12
|
+
|
|
13
|
+
## 3.0.0
|
|
14
|
+
|
|
15
|
+
### Major Changes
|
|
16
|
+
|
|
17
|
+
- [`4dd858f`](https://github.com/dcyfr/dcyfr-ai/commit/4dd858f9da64be2b1700332606046908b8f9748b) Thanks [@dcyfr](https://github.com/dcyfr)! - feat!: Session handoff chain protocol, requires-confirmation workflow, user context files API (v3.0)
|
|
18
|
+
|
|
19
|
+
### Breaking Changes
|
|
20
|
+
|
|
21
|
+
**DelegationContract** now requires `handoff_context?: HandoffContext` in the type definition.
|
|
22
|
+
Existing contracts without this field remain valid (optional), but downstream TypeScript consumers
|
|
23
|
+
using strict type checking may see new optional property warnings.
|
|
24
|
+
|
|
25
|
+
**SessionHandoffChain** replaces single-session handoff with a chain protocol supporting
|
|
26
|
+
multi-hop handoffs with full context preservation across agent sessions.
|
|
27
|
+
|
|
28
|
+
### New Features
|
|
29
|
+
|
|
30
|
+
#### Session Handoff Chain (`@dcyfr/ai/session`)
|
|
31
|
+
|
|
32
|
+
- `SessionHandoffChain` class: chain multiple session handoffs without losing conversation history
|
|
33
|
+
- `HandoffContext` type: structured context snapshot passed between sessions
|
|
34
|
+
- `createHandoffChain(sessions)`: factory for creating handoff chains from session arrays
|
|
35
|
+
- Full integration test coverage (14 tests, `session-handoff-chain.integration.test.ts`)
|
|
36
|
+
|
|
37
|
+
#### Requires-Confirmation Workflow (`@dcyfr/ai/delegation`)
|
|
38
|
+
|
|
39
|
+
- `requiresConfirmation: boolean` flag on `DelegationContract`
|
|
40
|
+
- `ConfirmationWorkflow` class: structured pause-and-log confirmation protocol
|
|
41
|
+
- `pendingConfirmation` contract status for tasks awaiting human approval
|
|
42
|
+
- Confirmation timestamp logging for audit trails
|
|
43
|
+
|
|
44
|
+
#### User Context Files API (`@dcyfr/ai/context`)
|
|
45
|
+
|
|
46
|
+
- `UserContextFiles` class: progressive disclosure loader for workspace user context files
|
|
47
|
+
- `loadContextFile(name)`: lazy-load individual context files (about-me, brand-voice, etc.)
|
|
48
|
+
- `getAvailableContextFiles()`: list available context files without loading content
|
|
49
|
+
- Template validation against `nexus/context/user/templates/`
|
|
50
|
+
|
|
51
|
+
### Summary
|
|
52
|
+
|
|
53
|
+
These additions implement the cowork-inspired improvements inspired by validated practices
|
|
54
|
+
from human-AI collaboration research (January–February 2026 cowork sessions). The session
|
|
55
|
+
handoff chain prevents context loss during long-running multi-agent workflows. The confirmation
|
|
56
|
+
workflow enforces human oversight for destructive or high-stakes operations. User context files
|
|
57
|
+
enable personalized agent behavior without hardcoding user preferences.
|
|
58
|
+
|
|
59
|
+
All new APIs are fully tested. No existing APIs removed.
|
|
60
|
+
|
|
61
|
+
### Minor Changes
|
|
62
|
+
|
|
63
|
+
- [`096f9d4`](https://github.com/dcyfr/dcyfr-ai/commit/096f9d4e6a2f519d1389f0579b90c758b7dfbd1d) Thanks [@dcyfr](https://github.com/dcyfr)! - feat: Autonomous Agent Runtime — persistent memory, messaging, sessions, skills, scheduling
|
|
64
|
+
|
|
65
|
+
New subpath exports bring autonomous agent capabilities to @dcyfr/ai:
|
|
66
|
+
|
|
67
|
+
**@dcyfr/ai/memory** — File-first persistent memory with Markdown files, SHA-256 dedup,
|
|
68
|
+
optional SQLite FTS5 hybrid search (BM25 + vector RRF), and working memory persistence.
|
|
69
|
+
|
|
70
|
+
**@dcyfr/ai/compaction** — LLM-powered context compaction (pre-flush summarization),
|
|
71
|
+
plus memory compaction (cross-backend dedup, monthly conversation summarization,
|
|
72
|
+
stale fact archival).
|
|
73
|
+
|
|
74
|
+
**@dcyfr/ai/skills** — Dynamic skill injection with BM25 search over .md skill files,
|
|
75
|
+
YAML frontmatter parsing, and trust-level filtering.
|
|
76
|
+
|
|
77
|
+
**@dcyfr/ai/mcp** — MCP Tool Bridge that discovers tools from MCP servers and converts
|
|
78
|
+
them to AgentRuntime-compatible tool definitions with retry and timeout support.
|
|
79
|
+
|
|
80
|
+
**@dcyfr/ai/session** — Session manager with trust-level tool policies (full/sandboxed/
|
|
81
|
+
readonly), overlay memory, idle session tracking, and configurable middleware.
|
|
82
|
+
|
|
83
|
+
**@dcyfr/ai/scheduler** — Agent scheduler with built-in cron parser, webhook endpoints,
|
|
84
|
+
event subscriptions, quiet hours, and concurrent execution limits.
|
|
85
|
+
|
|
86
|
+
**@dcyfr/ai/gateway** — Platform-agnostic messaging gateway with Telegram, CLI, and HTTP
|
|
87
|
+
adapters, input sanitization, rate limiting, and trust-based access control.
|
|
88
|
+
|
|
89
|
+
All modules are tree-shakeable, fully tested (420+ new tests), and backward compatible
|
|
90
|
+
with existing AgentRuntime usage.
|
|
91
|
+
|
|
92
|
+
- [`af15831`](https://github.com/dcyfr/dcyfr-ai/commit/af158311943bf658b791de40fb6de7161d4fb2e5) Thanks [@dcyfr](https://github.com/dcyfr)! - Repositioned @dcyfr/ai as 'AI agent harness' (infrastructure layer) rather than 'framework' (application structure) for accurate market positioning. Updated package.json, README, AGENTS.md, CONTRIBUTING.md with consistent terminology.
|
|
93
|
+
|
|
3
94
|
## 2.1.3
|
|
4
95
|
|
|
5
96
|
### Patch Changes
|
package/README.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
[](https://deepwiki.com/dcyfr/dcyfr-ai)
|
|
4
4
|
|
|
5
|
-
> Portable AI agent
|
|
5
|
+
> Portable AI agent harness with plugin architecture for multi-provider integration, telemetry tracking, and quality validation.
|
|
6
6
|
|
|
7
7
|
[](https://www.npmjs.com/package/@dcyfr/ai)
|
|
8
8
|
[](https://www.npmjs.com/package/@dcyfr/ai)
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
[](https://www.typescriptlang.org/)
|
|
11
11
|
[](https://bundlephobia.com/package/@dcyfr/ai)
|
|
12
12
|
|
|
13
|
-
Portable AI agent
|
|
13
|
+
Portable AI agent harness with plugin architecture for managing multiple AI providers, tracking telemetry, and ensuring quality compliance.
|
|
14
14
|
|
|
15
15
|
## 🔍 @dcyfr/ai vs. Alternatives
|
|
16
16
|
|
|
@@ -82,7 +82,7 @@ Portable AI agent framework with plugin architecture for managing multiple AI pr
|
|
|
82
82
|
- 🎯 **Msty Vibe Integration** - Unified multi-model routing with local OpenAI-compatible endpoint
|
|
83
83
|
- ⚙️ **Configuration System** - YAML/JSON config with three-layer merge
|
|
84
84
|
- 📊 **Comprehensive Telemetry** - Track usage, costs, quality metrics, performance
|
|
85
|
-
- ✅ **Validation
|
|
85
|
+
- ✅ **Validation Harness** - Quality gates with parallel/serial execution
|
|
86
86
|
- 💾 **Pluggable Storage** - Memory, file-based, or custom adapters
|
|
87
87
|
- ⚡ **Type-Safe** - Full TypeScript support with Zod validation
|
|
88
88
|
- 📦 **Lightweight** - ~200KB gzipped bundle size
|
|
@@ -192,7 +192,7 @@ const response = await runtime.chat({ messages: [{ role: 'user', content: 'Hello
|
|
|
192
192
|
|
|
193
193
|
### Migrating from Vercel AI SDK
|
|
194
194
|
|
|
195
|
-
**Why migrate:** Quality gates, telemetry, multi-provider validation
|
|
195
|
+
**Why migrate:** Quality gates, telemetry, multi-provider validation harness
|
|
196
196
|
|
|
197
197
|
```typescript
|
|
198
198
|
// Vercel AI SDK (before)
|
|
@@ -223,7 +223,7 @@ const report = await validator.validate({ /* config */ });
|
|
|
223
223
|
|
|
224
224
|
**Key Differences:**
|
|
225
225
|
- Configuration system (YAML/JSON files)
|
|
226
|
-
- Validation
|
|
226
|
+
- Validation harness with quality gates
|
|
227
227
|
- Comprehensive telemetry tracking
|
|
228
228
|
- Plugin system for custom validators
|
|
229
229
|
- Zero-config startup option
|
|
@@ -492,9 +492,67 @@ This example demonstrates:
|
|
|
492
492
|
|
|
493
493
|
---
|
|
494
494
|
|
|
495
|
+
## Autonomous Agent Runtime
|
|
496
|
+
|
|
497
|
+
Build agents that operate independently with persistent memory, scheduled execution, platform messaging, and dynamic skill injection.
|
|
498
|
+
|
|
499
|
+
### Subpath Imports
|
|
500
|
+
|
|
501
|
+
```typescript
|
|
502
|
+
import { FileMemoryAdapter, SQLiteIndex, flushWorkingMemory } from '@dcyfr/ai/memory';
|
|
503
|
+
import { ContextCompactor, MemoryCompaction } from '@dcyfr/ai/compaction';
|
|
504
|
+
import { SkillRegistry } from '@dcyfr/ai/skills';
|
|
505
|
+
import { MCPToolBridge } from '@dcyfr/ai/mcp';
|
|
506
|
+
import { SessionManager } from '@dcyfr/ai/session';
|
|
507
|
+
import { AgentScheduler } from '@dcyfr/ai/scheduler';
|
|
508
|
+
import { MessageGateway, TelegramAdapter, CLIAdapter } from '@dcyfr/ai/gateway';
|
|
509
|
+
```
|
|
510
|
+
|
|
511
|
+
### Key Capabilities
|
|
512
|
+
|
|
513
|
+
| Module | Description |
|
|
514
|
+
|--------|-------------|
|
|
515
|
+
| **File Memory** | Markdown-based persistent memory with SHA-256 dedup and optional SQLite FTS5 hybrid search |
|
|
516
|
+
| **Context Compaction** | LLM-powered pre-flush summarization to prevent context overflow |
|
|
517
|
+
| **Skill Injection** | BM25-powered matching of `.md` skill files to inject relevant knowledge |
|
|
518
|
+
| **MCP Tool Bridge** | Bridges MCP server tool discovery → AgentRuntime tools |
|
|
519
|
+
| **Session Management** | Trust-level tool policies (full/sandboxed/readonly), session lifecycle |
|
|
520
|
+
| **Agent Scheduler** | Built-in cron parser, webhooks, event subscriptions, quiet hours |
|
|
521
|
+
| **Messaging Gateway** | Telegram/CLI/HTTP adapters, input sanitization, rate limiting |
|
|
522
|
+
| **Memory Compaction** | Cross-backend dedup, monthly conversation summarization, stale fact archival |
|
|
523
|
+
| **Working Memory** | Persist `Map<string, unknown>` as human-readable Markdown |
|
|
524
|
+
|
|
525
|
+
### Quick Example
|
|
526
|
+
|
|
527
|
+
```typescript
|
|
528
|
+
import { MessageGateway, TelegramAdapter } from '@dcyfr/ai/gateway';
|
|
529
|
+
import { SessionManager } from '@dcyfr/ai/session';
|
|
530
|
+
import { AgentScheduler } from '@dcyfr/ai/scheduler';
|
|
531
|
+
|
|
532
|
+
// Create a messaging gateway with platform adapters
|
|
533
|
+
const gateway = new MessageGateway({
|
|
534
|
+
adapters: [new TelegramAdapter({ sendFn: telegramBot.sendMessage })],
|
|
535
|
+
trustRules: [
|
|
536
|
+
{ name: 'admin', userIds: ['admin-id'], trustLevel: 'full', priority: 10 },
|
|
537
|
+
],
|
|
538
|
+
});
|
|
539
|
+
|
|
540
|
+
// Schedule daily tasks
|
|
541
|
+
const scheduler = new AgentScheduler({
|
|
542
|
+
executor: async (task) => runAgent(task),
|
|
543
|
+
});
|
|
544
|
+
scheduler.schedule('0 9 * * *', { name: 'morning-report' });
|
|
545
|
+
scheduler.start();
|
|
546
|
+
```
|
|
547
|
+
|
|
548
|
+
> **Full guide:** See [docs/guides/autonomous-agent-guide.md](docs/guides/autonomous-agent-guide.md)
|
|
549
|
+
> **Complete example:** See [examples/autonomous-agent.ts](examples/autonomous-agent.ts)
|
|
550
|
+
|
|
551
|
+
---
|
|
552
|
+
|
|
495
553
|
## Architecture
|
|
496
554
|
|
|
497
|
-
The DCYFR AI
|
|
555
|
+
The DCYFR AI harness follows a layered architecture with clear separation of concerns:
|
|
498
556
|
|
|
499
557
|
```mermaid
|
|
500
558
|
graph TB
|
|
@@ -640,6 +698,13 @@ See [examples/](./examples/) directory:
|
|
|
640
698
|
- [Release Management](./docs/RELEASE_MANAGEMENT.md) - Publishing and versioning
|
|
641
699
|
- [Quick Release Guide](./docs/RELEASE_QUICK_START.md) - TL;DR for releases
|
|
642
700
|
|
|
701
|
+
### Plugin Marketplace Security
|
|
702
|
+
- [GVISOR_SETUP.md](./docs/guides/GVISOR_SETUP.md) - gVisor runtime sandboxing for untrusted plugins
|
|
703
|
+
- [BEHAVIORAL_ANOMALY_DETECTION.md](./docs/guides/BEHAVIORAL_ANOMALY_DETECTION.md) - Behavioral anomaly detection system
|
|
704
|
+
- [CERTIFICATION_PROGRAM.md](./docs/guides/CERTIFICATION_PROGRAM.md) - Plugin Certification Program (Bronze/Silver/Gold tiers)
|
|
705
|
+
- [WASM_PLUGIN_STARTER.md](./docs/guides/WASM_PLUGIN_STARTER.md) - WebAssembly plugin starter template
|
|
706
|
+
- [WASM_MIGRATION_GUIDE.md](./docs/guides/WASM_MIGRATION_GUIDE.md) - Migrate Docker plugins to WASM
|
|
707
|
+
|
|
643
708
|
## Contributing
|
|
644
709
|
|
|
645
710
|
See [CONTRIBUTING.md](./CONTRIBUTING.md) for contribution guidelines.
|
|
@@ -757,7 +822,7 @@ A: Yes, it's published as a public package on npm. Install with `npm install @dc
|
|
|
757
822
|
|
|
758
823
|
**Q: Can I use @dcyfr/ai with JavaScript (no TypeScript)?**
|
|
759
824
|
|
|
760
|
-
A: Yes, but TypeScript is strongly recommended for better type safety and IDE support. The
|
|
825
|
+
A: Yes, but TypeScript is strongly recommended for better type safety and IDE support. The harness provides full TypeScript support with Zod validation for runtime type checking. If using JavaScript, you'll miss compile-time type checking but runtime validation still works.
|
|
761
826
|
|
|
762
827
|
**Q: How do I create a custom validation plugin?**
|
|
763
828
|
|
|
@@ -779,11 +844,11 @@ See [docs/plugins.md](./docs/plugins.md) and [examples/plugin-system.ts](./examp
|
|
|
779
844
|
|
|
780
845
|
**Q: What's the difference between @dcyfr/ai and @dcyfr/agents?**
|
|
781
846
|
|
|
782
|
-
A: `@dcyfr/ai` is the **public
|
|
847
|
+
A: `@dcyfr/ai` is the **public harness** (plugin architecture, config management, telemetry engine, validation harness). `@dcyfr/agents` is a **private package** with DCYFR-specific validation agents (design tokens, barrel exports, PageLayout enforcement). Think of @dcyfr/ai as the engine, @dcyfr/agents as pre-built plugins.
|
|
783
848
|
|
|
784
849
|
**Q: Can I use this with other AI providers (non-Claude)?**
|
|
785
850
|
|
|
786
|
-
A: Yes! The
|
|
851
|
+
A: Yes! The harness supports multi-provider integration including Claude, GitHub Copilot, Groq, Ollama, OpenAI, Anthropic. Configure providers in `.dcyfr.yaml`:
|
|
787
852
|
```yaml
|
|
788
853
|
providers:
|
|
789
854
|
- name: openai
|
|
@@ -803,7 +868,7 @@ const telemetry = new TelemetryEngine({
|
|
|
803
868
|
```
|
|
804
869
|
Telemetry tracks: API calls, token usage, costs, latency, quality scores.
|
|
805
870
|
|
|
806
|
-
**Q: Is this
|
|
871
|
+
**Q: Is this harness production-ready?**
|
|
807
872
|
|
|
808
873
|
A: Yes! @dcyfr/ai is used in production at dcyfr-labs and other projects. It has comprehensive test coverage, semantic versioning, automated releases via Changesets, and follows best practices for package publishing.
|
|
809
874
|
|
package/config/default.json
CHANGED
|
@@ -12,15 +12,24 @@
|
|
|
12
12
|
"providers": {
|
|
13
13
|
"enabled": true,
|
|
14
14
|
"primary": "claude",
|
|
15
|
-
"fallback": ["
|
|
15
|
+
"fallback": ["copilot", "github-models", "groq", "ollama"],
|
|
16
16
|
"timeout": 30000,
|
|
17
17
|
"retries": 3,
|
|
18
18
|
"providers": {
|
|
19
19
|
"claude": {
|
|
20
20
|
"enabled": true,
|
|
21
|
-
"model": "claude-
|
|
21
|
+
"model": "claude-sonnet-4.5",
|
|
22
22
|
"maxTokens": 8192
|
|
23
23
|
},
|
|
24
|
+
"copilot": {
|
|
25
|
+
"enabled": true,
|
|
26
|
+
"baseUrl": "http://localhost:8317/v1",
|
|
27
|
+
"model": "claude-sonnet-4.5"
|
|
28
|
+
},
|
|
29
|
+
"github-models": {
|
|
30
|
+
"enabled": true,
|
|
31
|
+
"model": "gpt-4o"
|
|
32
|
+
},
|
|
24
33
|
"groq": {
|
|
25
34
|
"enabled": true,
|
|
26
35
|
"model": "llama-3.3-70b-versatile"
|
|
@@ -29,9 +38,6 @@
|
|
|
29
38
|
"enabled": true,
|
|
30
39
|
"baseUrl": "http://localhost:11434",
|
|
31
40
|
"model": "llama3.2"
|
|
32
|
-
},
|
|
33
|
-
"copilot": {
|
|
34
|
-
"enabled": true
|
|
35
41
|
}
|
|
36
42
|
}
|
|
37
43
|
},
|
package/config/default.yaml
CHANGED
|
@@ -21,17 +21,28 @@ providers:
|
|
|
21
21
|
enabled: true
|
|
22
22
|
primary: claude
|
|
23
23
|
fallback:
|
|
24
|
+
- copilot
|
|
25
|
+
- github-models
|
|
24
26
|
- groq
|
|
25
27
|
- ollama
|
|
26
|
-
- copilot
|
|
27
28
|
timeout: 30000
|
|
28
29
|
retries: 3
|
|
29
30
|
providers:
|
|
30
31
|
claude:
|
|
31
32
|
enabled: true
|
|
32
33
|
# apiKey: ${ANTHROPIC_API_KEY}
|
|
33
|
-
model: claude-
|
|
34
|
+
model: claude-sonnet-4.5
|
|
34
35
|
maxTokens: 8192
|
|
36
|
+
copilot:
|
|
37
|
+
enabled: true
|
|
38
|
+
baseUrl: http://localhost:8317/v1
|
|
39
|
+
model: claude-sonnet-4.5
|
|
40
|
+
# Uses GitHub Copilot via Msty Vibe CLI Proxy
|
|
41
|
+
github-models:
|
|
42
|
+
enabled: true
|
|
43
|
+
# apiKey: ${GITHUB_TOKEN}
|
|
44
|
+
model: gpt-4o
|
|
45
|
+
# Endpoint: https://models.github.ai/inference (no Claude)
|
|
35
46
|
groq:
|
|
36
47
|
enabled: true
|
|
37
48
|
# apiKey: ${GROQ_API_KEY}
|
|
@@ -40,9 +51,6 @@ providers:
|
|
|
40
51
|
enabled: true
|
|
41
52
|
baseUrl: http://localhost:11434
|
|
42
53
|
model: llama3.2
|
|
43
|
-
copilot:
|
|
44
|
-
enabled: true
|
|
45
|
-
# Uses GitHub Copilot authentication
|
|
46
54
|
|
|
47
55
|
# Validation configuration
|
|
48
56
|
validation:
|