@zooique/memora 2.0.3 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +1028 -0
- package/README.en.md +305 -272
- package/README.md +303 -260
- package/config.example.json +43 -0
- package/dist/agent/agent.d.ts +376 -408
- package/dist/agent/agent.d.ts.map +1 -1
- package/dist/agent/agent.js +1166 -926
- package/dist/agent/agent.js.map +1 -1
- package/dist/agent/assembler.d.ts +105 -43
- package/dist/agent/assembler.d.ts.map +1 -1
- package/dist/agent/assembler.js +543 -75
- package/dist/agent/assembler.js.map +1 -1
- package/dist/agent/budget.d.ts +131 -0
- package/dist/agent/budget.d.ts.map +1 -0
- package/dist/agent/budget.js +128 -0
- package/dist/agent/budget.js.map +1 -0
- package/dist/agent/builtinToolHandlers.d.ts +225 -38
- package/dist/agent/builtinToolHandlers.d.ts.map +1 -1
- package/dist/agent/builtinToolHandlers.js +748 -132
- package/dist/agent/builtinToolHandlers.js.map +1 -1
- package/dist/agent/builtinTools.d.ts +198 -7
- package/dist/agent/builtinTools.d.ts.map +1 -1
- package/dist/agent/builtinTools.js +646 -14
- package/dist/agent/builtinTools.js.map +1 -1
- package/dist/agent/compaction.d.ts +93 -0
- package/dist/agent/compaction.d.ts.map +1 -0
- package/dist/agent/compaction.js +192 -0
- package/dist/agent/compaction.js.map +1 -0
- package/dist/agent/constants.d.ts +137 -20
- package/dist/agent/constants.d.ts.map +1 -1
- package/dist/agent/constants.js +152 -20
- package/dist/agent/constants.js.map +1 -1
- package/dist/agent/contextManager.d.ts +119 -77
- package/dist/agent/contextManager.d.ts.map +1 -1
- package/dist/agent/contextManager.js +192 -135
- package/dist/agent/contextManager.js.map +1 -1
- package/dist/agent/contextPreparer.d.ts +78 -0
- package/dist/agent/contextPreparer.d.ts.map +1 -0
- package/dist/agent/contextPreparer.js +128 -0
- package/dist/agent/contextPreparer.js.map +1 -0
- package/dist/agent/duplicateInterceptor.d.ts +67 -0
- package/dist/agent/duplicateInterceptor.d.ts.map +1 -0
- package/dist/agent/duplicateInterceptor.js +82 -0
- package/dist/agent/duplicateInterceptor.js.map +1 -0
- package/dist/agent/guardRail.d.ts +166 -0
- package/dist/agent/guardRail.d.ts.map +1 -0
- package/dist/agent/guardRail.js +333 -0
- package/dist/agent/guardRail.js.map +1 -0
- package/dist/agent/loop.d.ts +716 -295
- package/dist/agent/loop.d.ts.map +1 -1
- package/dist/agent/loop.js +2178 -664
- package/dist/agent/loop.js.map +1 -1
- package/dist/agent/managers/archiveCoordinator.d.ts +14 -171
- package/dist/agent/managers/archiveCoordinator.d.ts.map +1 -1
- package/dist/agent/managers/archiveCoordinator.js +19 -287
- package/dist/agent/managers/archiveCoordinator.js.map +1 -1
- package/dist/agent/managers/chatLockManager.d.ts +20 -88
- package/dist/agent/managers/chatLockManager.d.ts.map +1 -1
- package/dist/agent/managers/chatLockManager.js +31 -103
- package/dist/agent/managers/chatLockManager.js.map +1 -1
- package/dist/agent/managers/dedupManager.d.ts +31 -115
- package/dist/agent/managers/dedupManager.d.ts.map +1 -1
- package/dist/agent/managers/dedupManager.js +48 -136
- package/dist/agent/managers/dedupManager.js.map +1 -1
- package/dist/agent/managers/goalConsistencyChecker.d.ts +42 -0
- package/dist/agent/managers/goalConsistencyChecker.d.ts.map +1 -0
- package/dist/agent/managers/goalConsistencyChecker.js +178 -0
- package/dist/agent/managers/goalConsistencyChecker.js.map +1 -0
- package/dist/agent/managers/llmCaller.d.ts +124 -0
- package/dist/agent/managers/llmCaller.d.ts.map +1 -0
- package/dist/agent/managers/llmCaller.js +417 -0
- package/dist/agent/managers/llmCaller.js.map +1 -0
- package/dist/agent/managers/llmJudgeHelper.d.ts +8 -25
- package/dist/agent/managers/llmJudgeHelper.d.ts.map +1 -1
- package/dist/agent/managers/llmJudgeHelper.js +7 -24
- package/dist/agent/managers/llmJudgeHelper.js.map +1 -1
- package/dist/agent/managers/loopMetrics.d.ts +58 -0
- package/dist/agent/managers/loopMetrics.d.ts.map +1 -0
- package/dist/agent/managers/loopMetrics.js +68 -0
- package/dist/agent/managers/loopMetrics.js.map +1 -0
- package/dist/agent/managers/memoryAdvisor.d.ts +27 -120
- package/dist/agent/managers/memoryAdvisor.d.ts.map +1 -1
- package/dist/agent/managers/memoryAdvisor.js +85 -207
- package/dist/agent/managers/memoryAdvisor.js.map +1 -1
- package/dist/agent/managers/memoryGovernance.d.ts +10 -42
- package/dist/agent/managers/memoryGovernance.d.ts.map +1 -1
- package/dist/agent/managers/memoryGovernance.js +19 -36
- package/dist/agent/managers/memoryGovernance.js.map +1 -1
- package/dist/agent/managers/memoryInspector.d.ts +59 -268
- package/dist/agent/managers/memoryInspector.d.ts.map +1 -1
- package/dist/agent/managers/memoryInspector.js +91 -442
- package/dist/agent/managers/memoryInspector.js.map +1 -1
- package/dist/agent/managers/roundSummaryGenerator.d.ts +56 -0
- package/dist/agent/managers/roundSummaryGenerator.d.ts.map +1 -0
- package/dist/agent/managers/roundSummaryGenerator.js +201 -0
- package/dist/agent/managers/roundSummaryGenerator.js.map +1 -0
- package/dist/agent/managers/sessionArchiver.d.ts +19 -68
- package/dist/agent/managers/sessionArchiver.d.ts.map +1 -1
- package/dist/agent/managers/sessionArchiver.js +76 -147
- package/dist/agent/managers/sessionArchiver.js.map +1 -1
- package/dist/agent/managers/sessionManager.d.ts +286 -57
- package/dist/agent/managers/sessionManager.d.ts.map +1 -1
- package/dist/agent/managers/sessionManager.js +846 -85
- package/dist/agent/managers/sessionManager.js.map +1 -1
- package/dist/agent/managers/sessionNamer.d.ts +35 -0
- package/dist/agent/managers/sessionNamer.d.ts.map +1 -0
- package/dist/agent/managers/sessionNamer.js +104 -0
- package/dist/agent/managers/sessionNamer.js.map +1 -0
- package/dist/agent/managers/streamAccumulator.d.ts +8 -33
- package/dist/agent/managers/streamAccumulator.d.ts.map +1 -1
- package/dist/agent/managers/streamAccumulator.js +4 -29
- package/dist/agent/managers/streamAccumulator.js.map +1 -1
- package/dist/agent/managers/textPolishManager.d.ts +8 -44
- package/dist/agent/managers/textPolishManager.d.ts.map +1 -1
- package/dist/agent/managers/textPolishManager.js +9 -41
- package/dist/agent/managers/textPolishManager.js.map +1 -1
- package/dist/agent/managers/toolCallHelpers.d.ts +105 -0
- package/dist/agent/managers/toolCallHelpers.d.ts.map +1 -0
- package/dist/agent/managers/toolCallHelpers.js +161 -0
- package/dist/agent/managers/toolCallHelpers.js.map +1 -0
- package/dist/agent/managers/workProjection.d.ts +55 -100
- package/dist/agent/managers/workProjection.d.ts.map +1 -1
- package/dist/agent/managers/workProjection.js +164 -268
- package/dist/agent/managers/workProjection.js.map +1 -1
- package/dist/agent/messageHistory.d.ts +134 -84
- package/dist/agent/messageHistory.d.ts.map +1 -1
- package/dist/agent/messageHistory.js +419 -133
- package/dist/agent/messageHistory.js.map +1 -1
- package/dist/agent/needsPlanning.d.ts +28 -0
- package/dist/agent/needsPlanning.d.ts.map +1 -0
- package/dist/agent/needsPlanning.js +68 -0
- package/dist/agent/needsPlanning.js.map +1 -0
- package/dist/agent/seed/index.d.ts +11 -0
- package/dist/agent/seed/index.d.ts.map +1 -0
- package/dist/agent/seed/index.js +10 -0
- package/dist/agent/seed/index.js.map +1 -0
- package/dist/agent/seed/orchestrator.d.ts +83 -0
- package/dist/agent/seed/orchestrator.d.ts.map +1 -0
- package/dist/agent/seed/orchestrator.js +260 -0
- package/dist/agent/seed/orchestrator.js.map +1 -0
- package/dist/agent/seed/prepare.d.ts +49 -0
- package/dist/agent/seed/prepare.d.ts.map +1 -0
- package/dist/agent/seed/prepare.js +107 -0
- package/dist/agent/seed/prepare.js.map +1 -0
- package/dist/agent/seed/types.d.ts +115 -0
- package/dist/agent/seed/types.d.ts.map +1 -0
- package/dist/agent/seed/types.js +15 -0
- package/dist/agent/seed/types.js.map +1 -0
- package/dist/agent/sessionStateMachine.d.ts +78 -0
- package/dist/agent/sessionStateMachine.d.ts.map +1 -0
- package/dist/agent/sessionStateMachine.js +182 -0
- package/dist/agent/sessionStateMachine.js.map +1 -0
- package/dist/agent/taskTableRenderer.d.ts +51 -0
- package/dist/agent/taskTableRenderer.d.ts.map +1 -0
- package/dist/agent/taskTableRenderer.js +115 -0
- package/dist/agent/taskTableRenderer.js.map +1 -0
- package/dist/agent/toolExecutor.d.ts +236 -10
- package/dist/agent/toolExecutor.d.ts.map +1 -1
- package/dist/agent/toolExecutor.js +932 -21
- package/dist/agent/toolExecutor.js.map +1 -1
- package/dist/agent/toolLedger.d.ts +120 -0
- package/dist/agent/toolLedger.d.ts.map +1 -0
- package/dist/agent/toolLedger.js +149 -0
- package/dist/agent/toolLedger.js.map +1 -0
- package/dist/agent/toolResultCache.d.ts +134 -0
- package/dist/agent/toolResultCache.d.ts.map +1 -0
- package/dist/agent/toolResultCache.js +243 -0
- package/dist/agent/toolResultCache.js.map +1 -0
- package/dist/agent/toolResultOffload.d.ts +59 -0
- package/dist/agent/toolResultOffload.d.ts.map +1 -0
- package/dist/agent/toolResultOffload.js +70 -0
- package/dist/agent/toolResultOffload.js.map +1 -0
- package/dist/agent/toolRunner.d.ts +59 -0
- package/dist/agent/toolRunner.d.ts.map +1 -0
- package/dist/agent/toolRunner.js +147 -0
- package/dist/agent/toolRunner.js.map +1 -0
- package/dist/agent/tracer.d.ts +99 -107
- package/dist/agent/tracer.d.ts.map +1 -1
- package/dist/agent/tracer.js +24 -69
- package/dist/agent/tracer.js.map +1 -1
- package/dist/agent/types.d.ts +510 -169
- package/dist/agent/types.d.ts.map +1 -1
- package/dist/agent/types.js +2 -51
- package/dist/agent/types.js.map +1 -1
- package/dist/code-exec/codeExecutionProvider.d.ts +16 -0
- package/dist/code-exec/codeExecutionProvider.d.ts.map +1 -0
- package/dist/code-exec/codeExecutionProvider.js +57 -0
- package/dist/code-exec/codeExecutionProvider.js.map +1 -0
- package/dist/code-exec/types.d.ts +37 -0
- package/dist/code-exec/types.d.ts.map +1 -0
- package/dist/code-exec/types.js +12 -0
- package/dist/code-exec/types.js.map +1 -0
- package/dist/config/expandEnvVars.d.ts +22 -0
- package/dist/config/expandEnvVars.d.ts.map +1 -0
- package/dist/config/expandEnvVars.js +38 -0
- package/dist/config/expandEnvVars.js.map +1 -0
- package/dist/config/loader.d.ts +27 -98
- package/dist/config/loader.d.ts.map +1 -1
- package/dist/config/loader.js +110 -223
- package/dist/config/loader.js.map +1 -1
- package/dist/index.d.ts +67 -77
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +90 -69
- package/dist/index.js.map +1 -1
- package/dist/llm/abortSignal.d.ts +2 -3
- package/dist/llm/abortSignal.d.ts.map +1 -1
- package/dist/llm/abortSignal.js +2 -3
- package/dist/llm/abortSignal.js.map +1 -1
- package/dist/llm/factory.d.ts +22 -32
- package/dist/llm/factory.d.ts.map +1 -1
- package/dist/llm/factory.js +29 -46
- package/dist/llm/factory.js.map +1 -1
- package/dist/llm/openaiCompatible.d.ts +25 -40
- package/dist/llm/openaiCompatible.d.ts.map +1 -1
- package/dist/llm/openaiCompatible.js +179 -120
- package/dist/llm/openaiCompatible.js.map +1 -1
- package/dist/llm/provider.d.ts +29 -42
- package/dist/llm/provider.d.ts.map +1 -1
- package/dist/llm/provider.js +11 -10
- package/dist/llm/provider.js.map +1 -1
- package/dist/llm/types.d.ts +54 -11
- package/dist/llm/types.d.ts.map +1 -1
- package/dist/llm/types.js +0 -5
- package/dist/llm/types.js.map +1 -1
- package/dist/logging/logger.d.ts +8 -31
- package/dist/logging/logger.d.ts.map +1 -1
- package/dist/logging/logger.js +28 -215
- package/dist/logging/logger.js.map +1 -1
- package/dist/logging/loggerInterface.d.ts +9 -8
- package/dist/logging/loggerInterface.d.ts.map +1 -1
- package/dist/memory/gcService.d.ts +164 -0
- package/dist/memory/gcService.d.ts.map +1 -0
- package/dist/memory/gcService.js +215 -0
- package/dist/memory/gcService.js.map +1 -0
- package/dist/memory/governance.d.ts +11 -44
- package/dist/memory/governance.d.ts.map +1 -1
- package/dist/memory/governance.js +11 -64
- package/dist/memory/governance.js.map +1 -1
- package/dist/memory/inMemoryRoundStore.d.ts +124 -0
- package/dist/memory/inMemoryRoundStore.d.ts.map +1 -0
- package/dist/memory/inMemoryRoundStore.js +216 -0
- package/dist/memory/inMemoryRoundStore.js.map +1 -0
- package/dist/memory/inMemorySessionStore.d.ts +92 -0
- package/dist/memory/inMemorySessionStore.d.ts.map +1 -0
- package/dist/memory/inMemorySessionStore.js +219 -0
- package/dist/memory/inMemorySessionStore.js.map +1 -0
- package/dist/memory/inMemorySessionViewLoader.d.ts +89 -0
- package/dist/memory/inMemorySessionViewLoader.d.ts.map +1 -0
- package/dist/memory/inMemorySessionViewLoader.js +183 -0
- package/dist/memory/inMemorySessionViewLoader.js.map +1 -0
- package/dist/memory/inMemoryStorage.d.ts +25 -175
- package/dist/memory/inMemoryStorage.d.ts.map +1 -1
- package/dist/memory/inMemoryStorage.js +32 -221
- package/dist/memory/inMemoryStorage.js.map +1 -1
- package/dist/memory/keywordsTouch.d.ts +20 -0
- package/dist/memory/keywordsTouch.d.ts.map +1 -0
- package/dist/memory/keywordsTouch.js +25 -0
- package/dist/memory/keywordsTouch.js.map +1 -0
- package/dist/memory/lockManager.d.ts +2 -2
- package/dist/memory/lockManager.d.ts.map +1 -1
- package/dist/memory/lockManager.js +6 -8
- package/dist/memory/lockManager.js.map +1 -1
- package/dist/memory/projectManager.d.ts +30 -129
- package/dist/memory/projectManager.d.ts.map +1 -1
- package/dist/memory/projectManager.js +39 -189
- package/dist/memory/projectManager.js.map +1 -1
- package/dist/memory/projectRegistry.d.ts +14 -62
- package/dist/memory/projectRegistry.d.ts.map +1 -1
- package/dist/memory/projectRegistry.js +27 -111
- package/dist/memory/projectRegistry.js.map +1 -1
- package/dist/memory/roundStore.d.ts +629 -0
- package/dist/memory/roundStore.d.ts.map +1 -0
- package/dist/memory/roundStore.js +116 -0
- package/dist/memory/roundStore.js.map +1 -0
- package/dist/memory/sessionStore.d.ts +70 -61
- package/dist/memory/sessionStore.d.ts.map +1 -1
- package/dist/memory/sessionStore.js +23 -1
- package/dist/memory/sessionStore.js.map +1 -1
- package/dist/memory/sessionViewLoader.d.ts +141 -0
- package/dist/memory/sessionViewLoader.d.ts.map +1 -0
- package/dist/memory/sessionViewLoader.js +65 -0
- package/dist/memory/sessionViewLoader.js.map +1 -0
- package/dist/memory/sourceValidation.d.ts +10 -12
- package/dist/memory/sourceValidation.d.ts.map +1 -1
- package/dist/memory/sourceValidation.js +16 -32
- package/dist/memory/sourceValidation.js.map +1 -1
- package/dist/memory/storageInterface.d.ts +44 -150
- package/dist/memory/storageInterface.d.ts.map +1 -1
- package/dist/memory/types.d.ts +65 -164
- package/dist/memory/types.d.ts.map +1 -1
- package/dist/memory/types.js +81 -83
- package/dist/memory/types.js.map +1 -1
- package/dist/project-search/projectSearchProvider.d.ts +29 -0
- package/dist/project-search/projectSearchProvider.d.ts.map +1 -0
- package/dist/project-search/projectSearchProvider.js +57 -0
- package/dist/project-search/projectSearchProvider.js.map +1 -0
- package/dist/project-search/terms.d.ts +14 -0
- package/dist/project-search/terms.d.ts.map +1 -0
- package/dist/project-search/terms.js +68 -0
- package/dist/project-search/terms.js.map +1 -0
- package/dist/project-search/types.d.ts +139 -0
- package/dist/project-search/types.d.ts.map +1 -0
- package/dist/project-search/types.js +8 -0
- package/dist/project-search/types.js.map +1 -0
- package/dist/role-pack/capabilityMap.d.ts +28 -0
- package/dist/role-pack/capabilityMap.d.ts.map +1 -0
- package/dist/role-pack/capabilityMap.js +56 -0
- package/dist/role-pack/capabilityMap.js.map +1 -0
- package/dist/role-pack/constants.d.ts +21 -0
- package/dist/role-pack/constants.d.ts.map +1 -0
- package/dist/role-pack/constants.js +21 -0
- package/dist/role-pack/constants.js.map +1 -0
- package/dist/role-pack/rolePackManager.d.ts +269 -0
- package/dist/role-pack/rolePackManager.d.ts.map +1 -0
- package/dist/role-pack/rolePackManager.js +1082 -0
- package/dist/role-pack/rolePackManager.js.map +1 -0
- package/dist/role-pack/strategyKeys.d.ts +100 -0
- package/dist/role-pack/strategyKeys.d.ts.map +1 -0
- package/dist/role-pack/strategyKeys.js +184 -0
- package/dist/role-pack/strategyKeys.js.map +1 -0
- package/dist/role-pack/strategyResolver.d.ts +109 -0
- package/dist/role-pack/strategyResolver.d.ts.map +1 -0
- package/dist/role-pack/strategyResolver.js +304 -0
- package/dist/role-pack/strategyResolver.js.map +1 -0
- package/dist/role-pack/types.d.ts +237 -0
- package/dist/role-pack/types.d.ts.map +1 -0
- package/dist/role-pack/types.js +8 -0
- package/dist/role-pack/types.js.map +1 -0
- package/dist/role-pack/validator.d.ts +38 -0
- package/dist/role-pack/validator.d.ts.map +1 -0
- package/dist/role-pack/validator.js +436 -0
- package/dist/role-pack/validator.js.map +1 -0
- package/dist/security/pathGuard.d.ts +69 -72
- package/dist/security/pathGuard.d.ts.map +1 -1
- package/dist/security/pathGuard.js +151 -131
- package/dist/security/pathGuard.js.map +1 -1
- package/dist/skill/skillLayer3.d.ts +91 -0
- package/dist/skill/skillLayer3.d.ts.map +1 -0
- package/dist/skill/skillLayer3.js +104 -0
- package/dist/skill/skillLayer3.js.map +1 -0
- package/dist/skill/skillManager.d.ts +136 -19
- package/dist/skill/skillManager.d.ts.map +1 -1
- package/dist/skill/skillManager.js +312 -61
- package/dist/skill/skillManager.js.map +1 -1
- package/dist/skill/skillScriptRunner.d.ts +97 -0
- package/dist/skill/skillScriptRunner.d.ts.map +1 -0
- package/dist/skill/skillScriptRunner.js +271 -0
- package/dist/skill/skillScriptRunner.js.map +1 -0
- package/dist/skill/types.d.ts +73 -16
- package/dist/skill/types.d.ts.map +1 -1
- package/dist/skill/types.js +5 -1
- package/dist/skill/types.js.map +1 -1
- package/dist/utils/array.d.ts +5 -6
- package/dist/utils/array.d.ts.map +1 -1
- package/dist/utils/array.js +6 -6
- package/dist/utils/array.js.map +1 -1
- package/dist/utils/atomicWrite.d.ts +8 -0
- package/dist/utils/atomicWrite.d.ts.map +1 -0
- package/dist/utils/atomicWrite.js +31 -0
- package/dist/utils/atomicWrite.js.map +1 -0
- package/dist/utils/backgroundTask.d.ts +38 -0
- package/dist/utils/backgroundTask.d.ts.map +1 -0
- package/dist/utils/backgroundTask.js +117 -0
- package/dist/utils/backgroundTask.js.map +1 -0
- package/dist/utils/configResourceManager.d.ts +40 -72
- package/dist/utils/configResourceManager.d.ts.map +1 -1
- package/dist/utils/configResourceManager.js +78 -76
- package/dist/utils/configResourceManager.js.map +1 -1
- package/dist/utils/errors.d.ts +44 -69
- package/dist/utils/errors.d.ts.map +1 -1
- package/dist/utils/errors.js +54 -71
- package/dist/utils/errors.js.map +1 -1
- package/dist/utils/eventEmitter.d.ts +104 -103
- package/dist/utils/eventEmitter.d.ts.map +1 -1
- package/dist/utils/eventEmitter.js +37 -45
- package/dist/utils/eventEmitter.js.map +1 -1
- package/dist/utils/fileSafe.d.ts +20 -0
- package/dist/utils/fileSafe.d.ts.map +1 -0
- package/dist/utils/fileSafe.js +56 -0
- package/dist/utils/fileSafe.js.map +1 -0
- package/dist/utils/frontmatter.d.ts +2 -3
- package/dist/utils/frontmatter.d.ts.map +1 -1
- package/dist/utils/frontmatter.js +2 -3
- package/dist/utils/frontmatter.js.map +1 -1
- package/dist/utils/hash.d.ts +12 -0
- package/dist/utils/hash.d.ts.map +1 -0
- package/dist/utils/hash.js +27 -0
- package/dist/utils/hash.js.map +1 -0
- package/dist/utils/http.d.ts +17 -0
- package/dist/utils/http.d.ts.map +1 -0
- package/dist/utils/http.js +29 -0
- package/dist/utils/http.js.map +1 -0
- package/dist/utils/json.d.ts +1 -1
- package/dist/utils/json.js +1 -1
- package/dist/utils/math.d.ts +25 -3
- package/dist/utils/math.d.ts.map +1 -1
- package/dist/utils/math.js +32 -16
- package/dist/utils/math.js.map +1 -1
- package/dist/utils/objects.d.ts +2 -3
- package/dist/utils/objects.d.ts.map +1 -1
- package/dist/utils/objects.js +2 -3
- package/dist/utils/objects.js.map +1 -1
- package/dist/utils/recallDefaults.d.ts +16 -0
- package/dist/utils/recallDefaults.d.ts.map +1 -0
- package/dist/utils/recallDefaults.js +16 -0
- package/dist/utils/recallDefaults.js.map +1 -0
- package/dist/utils/safeTimer.d.ts +8 -36
- package/dist/utils/safeTimer.d.ts.map +1 -1
- package/dist/utils/safeTimer.js +9 -37
- package/dist/utils/safeTimer.js.map +1 -1
- package/dist/utils/scanner.d.ts +97 -17
- package/dist/utils/scanner.d.ts.map +1 -1
- package/dist/utils/scanner.js +269 -47
- package/dist/utils/scanner.js.map +1 -1
- package/dist/utils/segmenter.d.ts +20 -19
- package/dist/utils/segmenter.d.ts.map +1 -1
- package/dist/utils/segmenter.js +230 -97
- package/dist/utils/segmenter.js.map +1 -1
- package/dist/utils/strings.d.ts +15 -32
- package/dist/utils/strings.d.ts.map +1 -1
- package/dist/utils/strings.js +25 -44
- package/dist/utils/strings.js.map +1 -1
- package/dist/utils/time.d.ts +37 -0
- package/dist/utils/time.d.ts.map +1 -1
- package/dist/utils/time.js +56 -0
- package/dist/utils/time.js.map +1 -1
- package/dist/utils/toError.d.ts +13 -1
- package/dist/utils/toError.d.ts.map +1 -1
- package/dist/utils/toError.js +18 -1
- package/dist/utils/toError.js.map +1 -1
- package/dist/web-fetch/fetchWebFetchProvider.d.ts +14 -0
- package/dist/web-fetch/fetchWebFetchProvider.d.ts.map +1 -0
- package/dist/web-fetch/fetchWebFetchProvider.js +69 -0
- package/dist/web-fetch/fetchWebFetchProvider.js.map +1 -0
- package/dist/web-fetch/types.d.ts +30 -0
- package/dist/web-fetch/types.d.ts.map +1 -0
- package/dist/web-fetch/types.js +7 -0
- package/dist/web-fetch/types.js.map +1 -0
- package/dist/web-fetch/webFetchProvider.d.ts +10 -0
- package/dist/web-fetch/webFetchProvider.d.ts.map +1 -0
- package/dist/web-fetch/webFetchProvider.js +28 -0
- package/dist/web-fetch/webFetchProvider.js.map +1 -0
- package/dist/web-search/fetchWebSearchProvider.d.ts +27 -0
- package/dist/web-search/fetchWebSearchProvider.d.ts.map +1 -0
- package/dist/web-search/fetchWebSearchProvider.js +199 -0
- package/dist/web-search/fetchWebSearchProvider.js.map +1 -0
- package/dist/web-search/types.d.ts +46 -0
- package/dist/web-search/types.d.ts.map +1 -0
- package/dist/web-search/types.js +2 -0
- package/dist/{persona → web-search}/types.js.map +1 -1
- package/dist/web-search/webSearchProvider.d.ts +10 -0
- package/dist/web-search/webSearchProvider.d.ts.map +1 -0
- package/dist/web-search/webSearchProvider.js +30 -0
- package/dist/web-search/webSearchProvider.js.map +1 -0
- package/docs/architecture/role-pack-authoring-guide.md +243 -0
- package/docs/architecture/role-pack-spec.md +767 -0
- package/docs/memora-api-reference.md +416 -476
- package/docs/memora-/346/216/245/345/205/245/346/214/207/345/215/227.md +841 -806
- package/docs/role-pack-/345/274/200/346/224/276/351/224/256/346/214/207/345/215/227.md +148 -0
- package/package.json +105 -100
- package/role-packs/README.md +41 -0
- package/role-packs/memora/345/212/251/346/211/213/manifest.json +12 -0
- package/role-packs/memora/345/212/251/346/211/213/persona.md +12 -0
- package/role-packs/memora/345/212/251/346/211/213/rules.md +4 -0
- package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/manifest.json +44 -0
- package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/persona.md +46 -0
- package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/rules.md +15 -0
- package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/skills/character-sheet.md +34 -0
- package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/skills/core-extractor.md +37 -0
- package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/skills/craft-review.md +69 -0
- package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/skills/dialogue-craft.md +45 -0
- package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/skills/emotion-wave.md +46 -0
- package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/skills/empathy-craft.md +79 -0
- package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/skills/foreshadow.md +29 -0
- package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/skills/hotspot-mapping.md +121 -0
- package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/skills/idea-lever.md +42 -0
- package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/skills/logline-craft.md +47 -0
- package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/skills/longform-guard.md +64 -0
- package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/skills/need-finder.md +40 -0
- package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/skills/outline-expand.md +46 -0
- package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/skills/pacing-hook.md +34 -0
- package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/skills/polish-method.md +113 -0
- package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/skills/pov-discipline.md +79 -0
- package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/skills/project-init/SKILL.md +112 -0
- package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/skills/project-init/scripts/init-novel-project.mjs +441 -0
- package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/skills/relationship-web.md +47 -0
- package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/skills/scene-craft.md +46 -0
- package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/skills/story-bible.md +60 -0
- package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/skills/story-structure.md +36 -0
- package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/skills/style-weaver.md +109 -0
- package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/skills/three-layer-check.md +27 -0
- package/role-packs//345/205/261/351/270/243/345/260/217/350/257/264/345/256/266/skills/world-builder.md +41 -0
- package/role-packs//347/231/275/350/257/235/346/226/271/346/241/210/350/256/276/350/256/241/345/270/210/manifest.json +48 -0
- package/role-packs//347/231/275/350/257/235/346/226/271/346/241/210/350/256/276/350/256/241/345/270/210/persona.md +73 -0
- package/role-packs//347/231/275/350/257/235/346/226/271/346/241/210/350/256/276/350/256/241/345/270/210/rules.md +19 -0
- package/role-packs//347/231/275/350/257/235/346/226/271/346/241/210/350/256/276/350/256/241/345/270/210/skills/api-doc-writer.md +40 -0
- package/role-packs//347/231/275/350/257/235/346/226/271/346/241/210/350/256/276/350/256/241/345/270/210/skills/doc-planner.md +42 -0
- package/role-packs//347/231/275/350/257/235/346/226/271/346/241/210/350/256/276/350/256/241/345/270/210/skills/nutrient-search.md +28 -0
- package/role-packs//347/231/275/350/257/235/346/226/271/346/241/210/350/256/276/350/256/241/345/270/210/skills/seed-finder.md +28 -0
- package/role-packs//347/231/275/350/257/235/346/226/271/346/241/210/350/256/276/350/256/241/345/270/210/skills/ssot-audit.md +34 -0
- package/role-packs//347/231/275/350/257/235/346/226/271/346/241/210/350/256/276/350/256/241/345/270/210/skills/style-guide.md +40 -0
- package/dist/agent/guardrail.d.ts +0 -49
- package/dist/agent/guardrail.d.ts.map +0 -1
- package/dist/agent/guardrail.js +0 -59
- package/dist/agent/guardrail.js.map +0 -1
- package/dist/agent/managers/autoConfigRefiner.d.ts +0 -39
- package/dist/agent/managers/autoConfigRefiner.d.ts.map +0 -1
- package/dist/agent/managers/autoConfigRefiner.js +0 -146
- package/dist/agent/managers/autoConfigRefiner.js.map +0 -1
- package/dist/agent/managers/configManager.d.ts +0 -209
- package/dist/agent/managers/configManager.d.ts.map +0 -1
- package/dist/agent/managers/configManager.js +0 -331
- package/dist/agent/managers/configManager.js.map +0 -1
- package/dist/agent/managers/insightExtractor.d.ts +0 -139
- package/dist/agent/managers/insightExtractor.d.ts.map +0 -1
- package/dist/agent/managers/insightExtractor.js +0 -401
- package/dist/agent/managers/insightExtractor.js.map +0 -1
- package/dist/agent/managers/memoryDecayScheduler.d.ts +0 -239
- package/dist/agent/managers/memoryDecayScheduler.d.ts.map +0 -1
- package/dist/agent/managers/memoryDecayScheduler.js +0 -413
- package/dist/agent/managers/memoryDecayScheduler.js.map +0 -1
- package/dist/agent/managers/relationBuilder.d.ts +0 -131
- package/dist/agent/managers/relationBuilder.d.ts.map +0 -1
- package/dist/agent/managers/relationBuilder.js +0 -192
- package/dist/agent/managers/relationBuilder.js.map +0 -1
- package/dist/agent/personaMatcher.d.ts +0 -29
- package/dist/agent/personaMatcher.d.ts.map +0 -1
- package/dist/agent/personaMatcher.js +0 -60
- package/dist/agent/personaMatcher.js.map +0 -1
- package/dist/agent/userFactExtractor.d.ts +0 -25
- package/dist/agent/userFactExtractor.d.ts.map +0 -1
- package/dist/agent/userFactExtractor.js +0 -88
- package/dist/agent/userFactExtractor.js.map +0 -1
- package/dist/eval/evalRunner.d.ts +0 -94
- package/dist/eval/evalRunner.d.ts.map +0 -1
- package/dist/eval/evalRunner.js +0 -141
- package/dist/eval/evalRunner.js.map +0 -1
- package/dist/eval/evalTypes.d.ts +0 -148
- package/dist/eval/evalTypes.d.ts.map +0 -1
- package/dist/eval/evalTypes.js +0 -118
- package/dist/eval/evalTypes.js.map +0 -1
- package/dist/eval/scenarios.d.ts +0 -33
- package/dist/eval/scenarios.d.ts.map +0 -1
- package/dist/eval/scenarios.js +0 -109
- package/dist/eval/scenarios.js.map +0 -1
- package/dist/llm/embedding.d.ts +0 -79
- package/dist/llm/embedding.d.ts.map +0 -1
- package/dist/llm/embedding.js +0 -184
- package/dist/llm/embedding.js.map +0 -1
- package/dist/memory/hybridMerge.d.ts +0 -50
- package/dist/memory/hybridMerge.d.ts.map +0 -1
- package/dist/memory/hybridMerge.js +0 -51
- package/dist/memory/hybridMerge.js.map +0 -1
- package/dist/memory/inMemoryRelationStore.d.ts +0 -58
- package/dist/memory/inMemoryRelationStore.d.ts.map +0 -1
- package/dist/memory/inMemoryRelationStore.js +0 -80
- package/dist/memory/inMemoryRelationStore.js.map +0 -1
- package/dist/memory/loader.d.ts +0 -51
- package/dist/memory/loader.d.ts.map +0 -1
- package/dist/memory/loader.js +0 -100
- package/dist/memory/loader.js.map +0 -1
- package/dist/memory/recall.d.ts +0 -82
- package/dist/memory/recall.d.ts.map +0 -1
- package/dist/memory/recall.js +0 -157
- package/dist/memory/recall.js.map +0 -1
- package/dist/memory/relationStore.d.ts +0 -95
- package/dist/memory/relationStore.d.ts.map +0 -1
- package/dist/memory/relationStore.js +0 -2
- package/dist/memory/relationStore.js.map +0 -1
- package/dist/memory/store.d.ts +0 -71
- package/dist/memory/store.d.ts.map +0 -1
- package/dist/memory/store.js +0 -199
- package/dist/memory/store.js.map +0 -1
- package/dist/memory/userProfile.d.ts +0 -180
- package/dist/memory/userProfile.d.ts.map +0 -1
- package/dist/memory/userProfile.js +0 -381
- package/dist/memory/userProfile.js.map +0 -1
- package/dist/memory/vectorStore.d.ts +0 -179
- package/dist/memory/vectorStore.d.ts.map +0 -1
- package/dist/memory/vectorStore.js +0 -284
- package/dist/memory/vectorStore.js.map +0 -1
- package/dist/persona/personaManager.d.ts +0 -109
- package/dist/persona/personaManager.d.ts.map +0 -1
- package/dist/persona/personaManager.js +0 -315
- package/dist/persona/personaManager.js.map +0 -1
- package/dist/persona/types.d.ts +0 -32
- package/dist/persona/types.d.ts.map +0 -1
- package/dist/persona/types.js +0 -5
package/dist/agent/tracer.d.ts
CHANGED
|
@@ -1,27 +1,12 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Agent 可观测性接口 —
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
-
* 默认 NoopTracer 静默丢弃所有 span,不引入任何运行时开销。
|
|
6
|
-
*
|
|
7
|
-
* 设计约束(详见 ADR-001 · 运行时栈,零依赖原则):
|
|
8
|
-
* - 禁止直接 import OpenTelemetry SDK(违反零依赖原则)
|
|
9
|
-
* - Span 收集为 fire-and-forget,不阻塞 AgentLoop 主流程
|
|
10
|
-
* - Tracer 未注入时自动降级,不抛异常
|
|
11
|
-
*
|
|
12
|
-
* 使用方式:
|
|
13
|
-
* // 宿主侧(泊文等)
|
|
14
|
-
* const otelTracer = new OpenTelemetryTracer(tracerProvider); // 宿主实现 ITracer
|
|
15
|
-
* const agent = new Agent({ ..., tracer: otelTracer });
|
|
16
|
-
*
|
|
17
|
-
* // memora 内部
|
|
18
|
-
* const span = this.opts.tracer.startSpan('llm.call', { model: 'gpt-4o' });
|
|
19
|
-
* // ... LLM 调用 ...
|
|
20
|
-
* span.end();
|
|
2
|
+
* Agent 可观测性接口 — 零依赖轻量 Span/Trace 抽象。
|
|
3
|
+
* 宿主注入 ITracer 实现(如 OpenTelemetry);默认 NoopTracer 静默丢弃所有 span,零运行时开销。
|
|
4
|
+
* 约束:只留 span 名契约(宿主按名过滤建监控面板);Span 收集 fire-and-forget 不阻塞主流程;未注入时自动降级不抛异常。
|
|
21
5
|
*/
|
|
6
|
+
import type { ContextBudget, ContextOccupancy } from '../agent/budget.js';
|
|
22
7
|
/** Span 属性值类型 */
|
|
23
8
|
type SpanAttributeValue = string | number | boolean;
|
|
24
|
-
/**
|
|
9
|
+
/** 一次可观测操作的基本单元 */
|
|
25
10
|
export interface ISpan {
|
|
26
11
|
/** 设置 Span 属性(键值对元数据) */
|
|
27
12
|
setAttribute(key: string, value: SpanAttributeValue): void;
|
|
@@ -32,129 +17,136 @@ export interface ISpan {
|
|
|
32
17
|
}
|
|
33
18
|
/** Tracer 接口 — 宿主注入的可观测性实现 */
|
|
34
19
|
export interface ITracer {
|
|
35
|
-
/**
|
|
36
|
-
* 开始一个新的 Span
|
|
37
|
-
*
|
|
38
|
-
* @param name - Span 名称(如 'llm.call'、'tool.execute')
|
|
39
|
-
* @param attributes - 初始属性(可选)
|
|
40
|
-
* @returns ISpan 实例
|
|
41
|
-
*/
|
|
20
|
+
/** 开始新 Span(name 如 'llm.call'、'tool.execute';attributes 可选) */
|
|
42
21
|
startSpan(name: string, attributes?: Record<string, SpanAttributeValue>): ISpan;
|
|
43
22
|
}
|
|
44
|
-
/** NoopTracer
|
|
23
|
+
/** NoopTracer 单例(未注入 tracer 时使用) */
|
|
45
24
|
export declare const NOOP_TRACER: ITracer;
|
|
46
25
|
/**
|
|
47
|
-
* AgentLoop
|
|
26
|
+
* AgentLoop 关键节点 Span 名称常量——供宿主按名过滤建监控面板。
|
|
27
|
+
* 各 span 名称/用途契约(span 名是宿主监控依赖,勿改):
|
|
48
28
|
*
|
|
49
|
-
*
|
|
29
|
+
* 记忆检索耗时看 TOOL_EXEC span(search_memories 工具);内核无召回类 span 发射点,
|
|
30
|
+
* 勿凭旧契约重新加名。
|
|
31
|
+
*
|
|
32
|
+
* DIFFICULTY / REPORT 是**预留名**(规划能力尚未落地),内核同样零 emit 点——
|
|
33
|
+
* 不得把注释写成正在进行的行为,否则宿主按名建监控面板会永远收不到数据。
|
|
50
34
|
*/
|
|
51
35
|
export declare const TRACE_SPANS: {
|
|
52
|
-
/** 记忆召回阶段 */
|
|
53
|
-
readonly RECALL: "recall.recall";
|
|
54
36
|
/** LLM API 调用 */
|
|
55
37
|
readonly LLM_CALL: "llm.call";
|
|
56
38
|
/** 工具执行 */
|
|
57
39
|
readonly TOOL_EXEC: "tool.execute";
|
|
58
40
|
/** 最终响应生成 */
|
|
59
41
|
readonly RESPONSE: "response.generate";
|
|
60
|
-
/**
|
|
61
|
-
readonly DECAY: "memory.decay";
|
|
62
|
-
/**
|
|
63
|
-
* 上下文摘要生成(补全 generateContextSummary 可观测性缺口)
|
|
64
|
-
*
|
|
65
|
-
* 触发条件:消息超 maxContextTokens 触发截断时,调用 LLM 生成"遗忘补偿"摘要。
|
|
66
|
-
* 监控此 span 可观察截断频率、摘要生成耗时与失败率。
|
|
67
|
-
*/
|
|
42
|
+
/** 上下文摘要生成——消息超 maxContextTokens 触发截断时调 LLM 生成"遗忘补偿"摘要;观察截断频率/耗时/失败率 */
|
|
68
43
|
readonly CONTEXT_SUMMARY: "context.summary";
|
|
69
|
-
/**
|
|
70
|
-
* 对话后归档处理
|
|
71
|
-
*
|
|
72
|
-
* 触发条件:每轮 chat() 完成后调用 postProcess,含角色匹配、技能匹配、
|
|
73
|
-
* profile 归档、insight 提取、AutoConfigRefiner 五个子步骤。
|
|
74
|
-
* 监控此 span 可观察归档耗时、失败率、各子步骤执行情况。
|
|
75
|
-
*/
|
|
44
|
+
/** 对话后归档处理——每轮 chat() 后 postProcess(round-summary 生成、角色/技能匹配);观察归档耗时/失败率 */
|
|
76
45
|
readonly POST_PROCESS: "archive.postProcess";
|
|
77
|
-
/**
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
* (语义搜索 + 关键词搜索 + hybridMerge 融合排序)。
|
|
82
|
-
* 现有 RECALL span 仅 wrapping 注入动作并立即 end,不覆盖实际召回耗时。
|
|
83
|
-
* 此 span 在 recall() 函数内部埋点,可观察真实召回耗时与双通道命中分布。
|
|
84
|
-
*/
|
|
85
|
-
readonly RECALL_ACTUAL: "recall.actual";
|
|
86
|
-
/**
|
|
87
|
-
* 输入护栏检查
|
|
88
|
-
*
|
|
89
|
-
* 触发条件:用户输入注入上下文前调用 runGuardrails 检查。
|
|
90
|
-
* 监控此 span 可观察护栏触发频率、阻断率、耗时。
|
|
91
|
-
*/
|
|
92
|
-
readonly GUARDRAIL_INPUT: "guardrail.input";
|
|
93
|
-
/**
|
|
94
|
-
* 输出护栏检查
|
|
95
|
-
*
|
|
96
|
-
* 触发条件:LLM 响应返回给用户前调用 runGuardrails 检查。
|
|
97
|
-
* 监控此 span 可观察输出护栏触发频率、阻断率、耗时。
|
|
98
|
-
*/
|
|
99
|
-
readonly GUARDRAIL_OUTPUT: "guardrail.output";
|
|
46
|
+
/** 难度分级——**预留名**:规划能力(回答前判定简单/复杂),内核当前**零 emit 点** */
|
|
47
|
+
readonly DIFFICULTY: "round.difficulty";
|
|
48
|
+
/** 汇报闭环——**预留名**:规划能力(复杂任务收敛后独立汇报),内核当前**零 emit 点** */
|
|
49
|
+
readonly REPORT: "round.report";
|
|
100
50
|
};
|
|
101
51
|
/**
|
|
102
|
-
* Agent
|
|
103
|
-
*
|
|
104
|
-
*
|
|
105
|
-
* 供宿主项目构建监控面板或健康度诊断面板。
|
|
106
|
-
*
|
|
107
|
-
* 设计原则:
|
|
108
|
-
* - 纯只读快照——调用时不修改任何状态
|
|
109
|
-
* - 同步返回——不触发 LLM 或 IO
|
|
110
|
-
* - 累计值——指标从 Agent 初始化起累加,close() 后清零
|
|
111
|
-
*
|
|
112
|
-
* 分 5 个维度:LLM 调用、记忆召回、工具调用、上下文管理、记忆衰减。
|
|
52
|
+
* Agent 运行时指标快照——Agent.getMetrics() 聚合 AgentLoop+Agent 两层指标产出,供宿主做监控/健康度面板。
|
|
53
|
+
* 只读快照(不修改状态)、同步返回(不触发 LLM/IO)、累计值(init 起累加,close() 后清零)。
|
|
54
|
+
* 分 4 维度:LLM 调用、工具调用、上下文管理、任务级 SLO(无衰减/记忆召回维度:对应指标零写点)。
|
|
113
55
|
*/
|
|
114
56
|
export interface AgentMetrics {
|
|
115
|
-
/** LLM
|
|
57
|
+
/** LLM 调用指标 */
|
|
116
58
|
llm: {
|
|
117
|
-
/**
|
|
59
|
+
/** 调用总次数(含重试,每次 provider.chat 算一次) */
|
|
118
60
|
callCount: number;
|
|
119
|
-
/** 累计输入 token
|
|
61
|
+
/** 累计输入 token(estimateTokens 估算) */
|
|
120
62
|
totalInputTokens: number;
|
|
121
|
-
/** 累计输出 token
|
|
63
|
+
/** 累计输出 token(estimateTokens 估算) */
|
|
122
64
|
totalOutputTokens: number;
|
|
65
|
+
/** 实际 API 返回的输入 token 累计值(仅在 Provider 支持 usage 时填充,否则为 0) */
|
|
66
|
+
actualInputTokens: number;
|
|
67
|
+
/** 实际 API 返回的输出 token 累计值(仅在 Provider 支持 usage 时填充,否则为 0) */
|
|
68
|
+
actualOutputTokens: number;
|
|
69
|
+
/**
|
|
70
|
+
* LLM 空响应兜底次数:200 但 0 token 时用户看到兜底文案、
|
|
71
|
+
* 任务零产出却被 success 盖章。宿主据此识别「瞬态抽风」(可期望重试救回)vs「模型拒绝」(重试也空)。
|
|
72
|
+
*/
|
|
73
|
+
emptyResponseCount: number;
|
|
74
|
+
/**
|
|
75
|
+
* 截断救回次数:截断型空响应(finishReason='length')换策略重试后成功产出的次数。
|
|
76
|
+
* 与 `emptyResponseCount` 互补(最终仍空 = 救回失败归彼计):救回成功的轮正文是真实
|
|
77
|
+
* 模型产出(不影响成功收尾),但「曾发生截断」只在本计数留痕——真机验证换策略重试
|
|
78
|
+
* 效力的唯一观测面。
|
|
79
|
+
*/
|
|
80
|
+
truncationRecoveryCount: number;
|
|
81
|
+
/**
|
|
82
|
+
* tool_call 批次成形守卫(`auditToolCallPairing` 发送边界)实际拒发次数。
|
|
83
|
+
* N>0 代表内核真拦下了坏批次(孤立 tool 消息 / 空函数名 / 重复 id / 名称超长)。
|
|
84
|
+
* 与 `unparsedToolIntentCount` 互补:后者是「模型想干却没干成」(模型侧),
|
|
85
|
+
* 本值是「内核拦下了会发出去的坏批次」(内核侧守门)。
|
|
86
|
+
*/
|
|
87
|
+
pairingGuardFires: number;
|
|
123
88
|
};
|
|
124
|
-
/**
|
|
125
|
-
recall: {
|
|
126
|
-
/** 召回总次数(每轮对话 processUserInput 算一次) */
|
|
127
|
-
totalCount: number;
|
|
128
|
-
/** 命中次数(召回结果非空算命中) */
|
|
129
|
-
hitCount: number;
|
|
130
|
-
/** 命中率(0-1,hitCount / totalCount,totalCount 为 0 时返回 0) */
|
|
131
|
-
hitRate: number;
|
|
132
|
-
};
|
|
133
|
-
/** 工具调用相关指标 */
|
|
89
|
+
/** 工具调用指标 */
|
|
134
90
|
tools: {
|
|
135
91
|
/** 工具调用总次数 */
|
|
136
92
|
callCount: number;
|
|
137
|
-
/**
|
|
93
|
+
/** 失败次数(结果以 [ERR 开头) */
|
|
138
94
|
failureCount: number;
|
|
95
|
+
/**
|
|
96
|
+
* 未解析工具意图数(文本骨架 <tool_call>/<function=> 但无常原生 toolCalls)。
|
|
97
|
+
* 让「想干活却一步没干成」不被静默盖「完成」;宿主可据 N>0 不显示该轮成功收尾。
|
|
98
|
+
*/
|
|
99
|
+
unparsedToolIntentCount: number;
|
|
100
|
+
/**
|
|
101
|
+
* read_file 覆盖度台账回显(分支② `formatLedgerStub` 拦截)命中次数。
|
|
102
|
+
* 用于观测防重补缝是否过度拦截:0 代表防重没在替身层拦截
|
|
103
|
+
* (可能是护住也可能是拦不住),N 增大代表替身频繁顶替「拿回整份视角」的合法重读(规避行为红旗)。
|
|
104
|
+
* 健康判定需连同真机规避信号交叉看,本计数仅提供可观测的量化基线。
|
|
105
|
+
*/
|
|
106
|
+
ledgerStubEchoCount: number;
|
|
107
|
+
/** read_dedup 护栏硬拦命中(同主体重复获取且结果仍在上下文)次数。
|
|
108
|
+
* 与 ledgerStubEchoCount 互补:本计数 = L2 精确判重(模型乒乓信号,撞墙升级文案的量化基线)。 */
|
|
109
|
+
readDedupBlockCount: number;
|
|
139
110
|
};
|
|
140
111
|
/** 上下文管理指标 */
|
|
141
112
|
context: {
|
|
142
|
-
/** 上下文截断次数(messages
|
|
113
|
+
/** 上下文截断次数(messages 超 maxContextTokens 触发截断) */
|
|
143
114
|
truncationCount: number;
|
|
144
115
|
/** 当前工作记忆消息数 */
|
|
145
116
|
messageCount: number;
|
|
146
|
-
/** 当前估算 token
|
|
117
|
+
/** 当前估算 token 数(estimateTokens) */
|
|
147
118
|
estimatedTokens: number;
|
|
119
|
+
/** 最近一次输入装配的上下文预算构成(可选:prepare 计算并透出,供宿主展示预算分配) */
|
|
120
|
+
budget?: ContextBudget;
|
|
121
|
+
/** 上下文占用快照(可选:prepare 期真实用量,供输入区指示器展示) */
|
|
122
|
+
occupancy?: ContextOccupancy;
|
|
123
|
+
/**
|
|
124
|
+
* 当前激活角色包底盘占用(system prompt 总体 token,persona+rules+技能 L1+工具 schema+全局技能+时间戳)。
|
|
125
|
+
* 与 occupancy.rolePackBaseTokens 同源但产生时机更早:装配 / 切换角色包时即确定(不依赖跑过 prepare),
|
|
126
|
+
* 冷启动 / 重启后首屏即可显示真实占比。prepare 期仍会以其实际注入值覆盖刷新(口径一致,同一估算器)。
|
|
127
|
+
*/
|
|
128
|
+
rolePackBaseTokens?: number;
|
|
129
|
+
};
|
|
130
|
+
/** 任务级 SLO 度量(AgentLoop 层填充) */
|
|
131
|
+
tasks: {
|
|
132
|
+
/** 任务总执行次数(每次 processUserInput 算一次) */
|
|
133
|
+
totalCount: number;
|
|
134
|
+
/** 任务成功次数(正常完成,未被 abort/暂停) */
|
|
135
|
+
successCount: number;
|
|
136
|
+
/** 任务失败次数(被中止、超时、或迭代耗尽) */
|
|
137
|
+
failureCount: number;
|
|
138
|
+
/** 任务成功率(0-1,totalCount 为 0 时为 0) */
|
|
139
|
+
successRate: number;
|
|
140
|
+
/** 平均任务耗时(毫秒,0 表示尚无数据) */
|
|
141
|
+
avgDurationMs: number;
|
|
142
|
+
};
|
|
143
|
+
/** 任务表触发观测量(实证任务表是否被 LLM 触发,驱动 plan_item_boundary/折叠) */
|
|
144
|
+
plan: {
|
|
145
|
+
/** 累计调用 task_table_write 次数(= 建表/重建次数,0 = 从未触发) */
|
|
146
|
+
taskTableWriteCount: number;
|
|
147
|
+
/** 累计产出 plan_item_boundary 次数(= 思考折叠分块边界数,同 0 即布局骨血空转) */
|
|
148
|
+
planItemBoundaryCount: number;
|
|
148
149
|
};
|
|
149
|
-
/** 记忆衰减指标(由 Agent 层填充,AgentLoop 层此字段为 null) */
|
|
150
|
-
decay: {
|
|
151
|
-
/** 衰减执行次数 */
|
|
152
|
-
runCount: number;
|
|
153
|
-
/** 累计衰减记忆数(score 被调低的记忆条数) */
|
|
154
|
-
totalDecayedCount: number;
|
|
155
|
-
/** 上次衰减时间(ISO 8601,null 表示从未执行过) */
|
|
156
|
-
lastRunAt: string | null;
|
|
157
|
-
} | null;
|
|
158
150
|
}
|
|
159
151
|
export {};
|
|
160
152
|
//# sourceMappingURL=tracer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tracer.d.ts","sourceRoot":"","sources":["../../src/agent/tracer.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"tracer.d.ts","sourceRoot":"","sources":["../../src/agent/tracer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAIzE,iBAAiB;AACjB,KAAK,kBAAkB,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AAIpD,mBAAmB;AACnB,MAAM,WAAW,KAAK;IACpB,yBAAyB;IACzB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,kBAAkB,GAAG,IAAI,CAAC;IAC3D,iBAAiB;IACjB,GAAG,IAAI,IAAI,CAAC;IACZ,4BAA4B;IAC5B,eAAe,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;CACrC;AAID,8BAA8B;AAC9B,MAAM,WAAW,OAAO;IACtB,+DAA+D;IAC/D,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,GAAG,KAAK,CAAC;CACjF;AA4BD,oCAAoC;AACpC,eAAO,MAAM,WAAW,EAAE,OAA0B,CAAC;AAIrD;;;;;;;;;GASG;AACH,eAAO,MAAM,WAAW;IACtB,iBAAiB;;IAEjB,WAAW;;IAEX,aAAa;;IAEb,wEAAwE;;IAExE,4EAA4E;;IAE5E,sDAAsD;;IAEtD,uDAAuD;;CAE/C,CAAC;AAIX;;;;GAIG;AACH,MAAM,WAAW,YAAY;IAC3B,eAAe;IACf,GAAG,EAAE;QACH,sCAAsC;QACtC,SAAS,EAAE,MAAM,CAAC;QAClB,oCAAoC;QACpC,gBAAgB,EAAE,MAAM,CAAC;QACzB,oCAAoC;QACpC,iBAAiB,EAAE,MAAM,CAAC;QAC1B,6DAA6D;QAC7D,iBAAiB,EAAE,MAAM,CAAC;QAC1B,6DAA6D;QAC7D,kBAAkB,EAAE,MAAM,CAAC;QAC3B;;;WAGG;QACH,kBAAkB,EAAE,MAAM,CAAC;QAC3B;;;;;WAKG;QACH,uBAAuB,EAAE,MAAM,CAAC;QAChC;;;;;WAKG;QACH,iBAAiB,EAAE,MAAM,CAAC;KAC3B,CAAC;IACF,aAAa;IACb,KAAK,EAAE;QACL,cAAc;QACd,SAAS,EAAE,MAAM,CAAC;QAClB,wBAAwB;QACxB,YAAY,EAAE,MAAM,CAAC;QACrB;;;WAGG;QACH,uBAAuB,EAAE,MAAM,CAAC;QAChC;;;;;WAKG;QACH,mBAAmB,EAAE,MAAM,CAAC;QAC5B;0EACkE;QAClE,mBAAmB,EAAE,MAAM,CAAC;KAC7B,CAAC;IACF,cAAc;IACd,OAAO,EAAE;QACP,gDAAgD;QAChD,eAAe,EAAE,MAAM,CAAC;QACxB,gBAAgB;QAChB,YAAY,EAAE,MAAM,CAAC;QACrB,mCAAmC;QACnC,eAAe,EAAE,MAAM,CAAC;QACxB,mDAAmD;QACnD,MAAM,CAAC,EAAE,aAAa,CAAC;QACvB,0CAA0C;QAC1C,SAAS,CAAC,EAAE,gBAAgB,CAAC;QAC7B;;;;WAIG;QACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;KAC7B,CAAC;IACF,gCAAgC;IAChC,KAAK,EAAE;QACL,uCAAuC;QACvC,UAAU,EAAE,MAAM,CAAC;QACnB,+BAA+B;QAC/B,YAAY,EAAE,MAAM,CAAC;QACrB,2BAA2B;QAC3B,YAAY,EAAE,MAAM,CAAC;QACrB,qCAAqC;QACrC,WAAW,EAAE,MAAM,CAAC;QACpB,0BAA0B;QAC1B,aAAa,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,yDAAyD;IACzD,IAAI,EAAE;QACJ,mDAAmD;QACnD,mBAAmB,EAAE,MAAM,CAAC;QAC5B,0DAA0D;QAC1D,qBAAqB,EAAE,MAAM,CAAC;KAC/B,CAAC;CACH"}
|
package/dist/agent/tracer.js
CHANGED
|
@@ -1,102 +1,57 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Agent 可观测性接口 —
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
-
* 默认 NoopTracer 静默丢弃所有 span,不引入任何运行时开销。
|
|
6
|
-
*
|
|
7
|
-
* 设计约束(详见 ADR-001 · 运行时栈,零依赖原则):
|
|
8
|
-
* - 禁止直接 import OpenTelemetry SDK(违反零依赖原则)
|
|
9
|
-
* - Span 收集为 fire-and-forget,不阻塞 AgentLoop 主流程
|
|
10
|
-
* - Tracer 未注入时自动降级,不抛异常
|
|
11
|
-
*
|
|
12
|
-
* 使用方式:
|
|
13
|
-
* // 宿主侧(泊文等)
|
|
14
|
-
* const otelTracer = new OpenTelemetryTracer(tracerProvider); // 宿主实现 ITracer
|
|
15
|
-
* const agent = new Agent({ ..., tracer: otelTracer });
|
|
16
|
-
*
|
|
17
|
-
* // memora 内部
|
|
18
|
-
* const span = this.opts.tracer.startSpan('llm.call', { model: 'gpt-4o' });
|
|
19
|
-
* // ... LLM 调用 ...
|
|
20
|
-
* span.end();
|
|
2
|
+
* Agent 可观测性接口 — 零依赖轻量 Span/Trace 抽象。
|
|
3
|
+
* 宿主注入 ITracer 实现(如 OpenTelemetry);默认 NoopTracer 静默丢弃所有 span,零运行时开销。
|
|
4
|
+
* 约束:只留 span 名契约(宿主按名过滤建监控面板);Span 收集 fire-and-forget 不阻塞主流程;未注入时自动降级不抛异常。
|
|
21
5
|
*/
|
|
22
6
|
// ─── Noop 实现(默认,零开销)───────────────────────
|
|
23
|
-
/** 空 Span
|
|
7
|
+
/** 空 Span 实现(静默丢弃所有操作,无实际作用) */
|
|
24
8
|
class NoopSpan {
|
|
25
9
|
setAttribute(_key, _value) {
|
|
26
|
-
|
|
10
|
+
/* noop */
|
|
27
11
|
}
|
|
28
12
|
end() {
|
|
29
|
-
|
|
13
|
+
/* noop */
|
|
30
14
|
}
|
|
31
15
|
recordException(_error) {
|
|
32
|
-
|
|
16
|
+
/* noop */
|
|
33
17
|
}
|
|
34
18
|
}
|
|
35
|
-
/** 空 Tracer
|
|
19
|
+
/** 空 Tracer 实现(始终返回共享的 NoopSpan) */
|
|
36
20
|
class NoopTracer {
|
|
37
21
|
startSpan(_name, _attributes) {
|
|
38
|
-
//
|
|
22
|
+
// 共享同一 NoopSpan 实例,避免分配开销
|
|
39
23
|
return NOOP_SPAN;
|
|
40
24
|
}
|
|
41
25
|
}
|
|
42
|
-
/**
|
|
26
|
+
/** 共享 NoopSpan 单例(避免每次 startSpan 分配新对象) */
|
|
43
27
|
const NOOP_SPAN = new NoopSpan();
|
|
44
|
-
/** NoopTracer
|
|
28
|
+
/** NoopTracer 单例(未注入 tracer 时使用) */
|
|
45
29
|
export const NOOP_TRACER = new NoopTracer();
|
|
46
30
|
// ─── AgentLoop 预定义 Span 名称 ─────────────────────
|
|
47
31
|
/**
|
|
48
|
-
* AgentLoop
|
|
32
|
+
* AgentLoop 关键节点 Span 名称常量——供宿主按名过滤建监控面板。
|
|
33
|
+
* 各 span 名称/用途契约(span 名是宿主监控依赖,勿改):
|
|
34
|
+
*
|
|
35
|
+
* 记忆检索耗时看 TOOL_EXEC span(search_memories 工具);内核无召回类 span 发射点,
|
|
36
|
+
* 勿凭旧契约重新加名。
|
|
49
37
|
*
|
|
50
|
-
*
|
|
38
|
+
* DIFFICULTY / REPORT 是**预留名**(规划能力尚未落地),内核同样零 emit 点——
|
|
39
|
+
* 不得把注释写成正在进行的行为,否则宿主按名建监控面板会永远收不到数据。
|
|
51
40
|
*/
|
|
52
41
|
export const TRACE_SPANS = {
|
|
53
|
-
/** 记忆召回阶段 */
|
|
54
|
-
RECALL: 'recall.recall',
|
|
55
42
|
/** LLM API 调用 */
|
|
56
43
|
LLM_CALL: 'llm.call',
|
|
57
44
|
/** 工具执行 */
|
|
58
45
|
TOOL_EXEC: 'tool.execute',
|
|
59
46
|
/** 最终响应生成 */
|
|
60
47
|
RESPONSE: 'response.generate',
|
|
61
|
-
/**
|
|
62
|
-
DECAY: 'memory.decay',
|
|
63
|
-
/**
|
|
64
|
-
* 上下文摘要生成(补全 generateContextSummary 可观测性缺口)
|
|
65
|
-
*
|
|
66
|
-
* 触发条件:消息超 maxContextTokens 触发截断时,调用 LLM 生成"遗忘补偿"摘要。
|
|
67
|
-
* 监控此 span 可观察截断频率、摘要生成耗时与失败率。
|
|
68
|
-
*/
|
|
48
|
+
/** 上下文摘要生成——消息超 maxContextTokens 触发截断时调 LLM 生成"遗忘补偿"摘要;观察截断频率/耗时/失败率 */
|
|
69
49
|
CONTEXT_SUMMARY: 'context.summary',
|
|
70
|
-
/**
|
|
71
|
-
* 对话后归档处理
|
|
72
|
-
*
|
|
73
|
-
* 触发条件:每轮 chat() 完成后调用 postProcess,含角色匹配、技能匹配、
|
|
74
|
-
* profile 归档、insight 提取、AutoConfigRefiner 五个子步骤。
|
|
75
|
-
* 监控此 span 可观察归档耗时、失败率、各子步骤执行情况。
|
|
76
|
-
*/
|
|
50
|
+
/** 对话后归档处理——每轮 chat() 后 postProcess(round-summary 生成、角色/技能匹配);观察归档耗时/失败率 */
|
|
77
51
|
POST_PROCESS: 'archive.postProcess',
|
|
78
|
-
/**
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
* (语义搜索 + 关键词搜索 + hybridMerge 融合排序)。
|
|
83
|
-
* 现有 RECALL span 仅 wrapping 注入动作并立即 end,不覆盖实际召回耗时。
|
|
84
|
-
* 此 span 在 recall() 函数内部埋点,可观察真实召回耗时与双通道命中分布。
|
|
85
|
-
*/
|
|
86
|
-
RECALL_ACTUAL: 'recall.actual',
|
|
87
|
-
/**
|
|
88
|
-
* 输入护栏检查
|
|
89
|
-
*
|
|
90
|
-
* 触发条件:用户输入注入上下文前调用 runGuardrails 检查。
|
|
91
|
-
* 监控此 span 可观察护栏触发频率、阻断率、耗时。
|
|
92
|
-
*/
|
|
93
|
-
GUARDRAIL_INPUT: 'guardrail.input',
|
|
94
|
-
/**
|
|
95
|
-
* 输出护栏检查
|
|
96
|
-
*
|
|
97
|
-
* 触发条件:LLM 响应返回给用户前调用 runGuardrails 检查。
|
|
98
|
-
* 监控此 span 可观察输出护栏触发频率、阻断率、耗时。
|
|
99
|
-
*/
|
|
100
|
-
GUARDRAIL_OUTPUT: 'guardrail.output',
|
|
52
|
+
/** 难度分级——**预留名**:规划能力(回答前判定简单/复杂),内核当前**零 emit 点** */
|
|
53
|
+
DIFFICULTY: 'round.difficulty',
|
|
54
|
+
/** 汇报闭环——**预留名**:规划能力(复杂任务收敛后独立汇报),内核当前**零 emit 点** */
|
|
55
|
+
REPORT: 'round.report',
|
|
101
56
|
};
|
|
102
57
|
//# sourceMappingURL=tracer.js.map
|
package/dist/agent/tracer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tracer.js","sourceRoot":"","sources":["../../src/agent/tracer.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"tracer.js","sourceRoot":"","sources":["../../src/agent/tracer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AA6BH,6CAA6C;AAE7C,gCAAgC;AAChC,MAAM,QAAQ;IACZ,YAAY,CAAC,IAAY,EAAE,MAA0B;QACnD,UAAU;IACZ,CAAC;IACD,GAAG;QACD,UAAU;IACZ,CAAC;IACD,eAAe,CAAC,MAAa;QAC3B,UAAU;IACZ,CAAC;CACF;AAED,oCAAoC;AACpC,MAAM,UAAU;IACd,SAAS,CAAC,KAAa,EAAE,WAAgD;QACvE,0BAA0B;QAC1B,OAAO,SAAS,CAAC;IACnB,CAAC;CACF;AAED,2CAA2C;AAC3C,MAAM,SAAS,GAAG,IAAI,QAAQ,EAAE,CAAC;AAEjC,oCAAoC;AACpC,MAAM,CAAC,MAAM,WAAW,GAAY,IAAI,UAAU,EAAE,CAAC;AAErD,kDAAkD;AAElD;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,iBAAiB;IACjB,QAAQ,EAAE,UAAU;IACpB,WAAW;IACX,SAAS,EAAE,cAAc;IACzB,aAAa;IACb,QAAQ,EAAE,mBAAmB;IAC7B,wEAAwE;IACxE,eAAe,EAAE,iBAAiB;IAClC,4EAA4E;IAC5E,YAAY,EAAE,qBAAqB;IACnC,sDAAsD;IACtD,UAAU,EAAE,kBAAkB;IAC9B,uDAAuD;IACvD,MAAM,EAAE,cAAc;CACd,CAAC"}
|