@zooique/memora 2.0.0 → 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 -0
- package/README.md +303 -148
- package/config.example.json +43 -0
- package/dist/agent/agent.d.ts +438 -295
- package/dist/agent/agent.d.ts.map +1 -1
- package/dist/agent/agent.js +1368 -836
- package/dist/agent/agent.js.map +1 -1
- package/dist/agent/assembler.d.ts +117 -39
- package/dist/agent/assembler.d.ts.map +1 -1
- package/dist/agent/assembler.js +574 -71
- 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 +229 -17
- package/dist/agent/builtinToolHandlers.d.ts.map +1 -1
- package/dist/agent/builtinToolHandlers.js +758 -70
- 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 +139 -18
- package/dist/agent/constants.d.ts.map +1 -1
- package/dist/agent/constants.js +154 -18
- package/dist/agent/constants.js.map +1 -1
- package/dist/agent/contextManager.d.ts +126 -76
- package/dist/agent/contextManager.d.ts.map +1 -1
- package/dist/agent/contextManager.js +197 -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 +718 -253
- package/dist/agent/loop.d.ts.map +1 -1
- package/dist/agent/loop.js +2215 -648
- package/dist/agent/loop.js.map +1 -1
- package/dist/agent/managers/archiveCoordinator.d.ts +21 -74
- package/dist/agent/managers/archiveCoordinator.d.ts.map +1 -1
- package/dist/agent/managers/archiveCoordinator.js +32 -105
- 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 +85 -0
- package/dist/agent/managers/dedupManager.d.ts.map +1 -0
- package/dist/agent/managers/dedupManager.js +248 -0
- package/dist/agent/managers/dedupManager.js.map +1 -0
- 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 +21 -0
- package/dist/agent/managers/llmJudgeHelper.d.ts.map +1 -0
- package/dist/agent/managers/llmJudgeHelper.js +32 -0
- package/dist/agent/managers/llmJudgeHelper.js.map +1 -0
- 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 +56 -192
- package/dist/agent/managers/memoryAdvisor.js.map +1 -1
- package/dist/agent/managers/memoryGovernance.d.ts +24 -0
- package/dist/agent/managers/memoryGovernance.d.ts.map +1 -0
- package/dist/agent/managers/memoryGovernance.js +46 -0
- package/dist/agent/managers/memoryGovernance.js.map +1 -0
- package/dist/agent/managers/memoryInspector.d.ts +59 -393
- package/dist/agent/managers/memoryInspector.d.ts.map +1 -1
- package/dist/agent/managers/memoryInspector.js +92 -736
- 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 -63
- package/dist/agent/managers/sessionArchiver.d.ts.map +1 -1
- package/dist/agent/managers/sessionArchiver.js +83 -157
- 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 +20 -0
- package/dist/agent/managers/streamAccumulator.d.ts.map +1 -0
- package/dist/agent/managers/streamAccumulator.js +15 -0
- package/dist/agent/managers/streamAccumulator.js.map +1 -0
- 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 +12 -47
- 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 +57 -87
- package/dist/agent/managers/workProjection.d.ts.map +1 -1
- package/dist/agent/managers/workProjection.js +166 -246
- 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 +255 -9
- package/dist/agent/toolExecutor.d.ts.map +1 -1
- package/dist/agent/toolExecutor.js +956 -20
- 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 +512 -162
- 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 +59 -242
- package/dist/config/loader.d.ts.map +1 -1
- package/dist/config/loader.js +237 -194
- package/dist/config/loader.js.map +1 -1
- package/dist/index.d.ts +69 -74
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +93 -63
- 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 +29 -25
- package/dist/llm/factory.d.ts.map +1 -1
- package/dist/llm/factory.js +34 -69
- 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 +181 -129
- 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 -29
- package/dist/logging/logger.d.ts.map +1 -1
- package/dist/logging/logger.js +43 -233
- 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 +17 -0
- package/dist/memory/governance.d.ts.map +1 -0
- package/dist/memory/governance.js +17 -0
- package/dist/memory/governance.js.map +1 -0
- 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 +26 -141
- package/dist/memory/inMemoryStorage.d.ts.map +1 -1
- package/dist/memory/inMemoryStorage.js +48 -187
- 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 +7 -2
- package/dist/memory/lockManager.d.ts.map +1 -1
- package/dist/memory/lockManager.js +35 -11
- package/dist/memory/lockManager.js.map +1 -1
- package/dist/memory/projectManager.d.ts +30 -128
- package/dist/memory/projectManager.d.ts.map +1 -1
- package/dist/memory/projectManager.js +39 -171
- package/dist/memory/projectManager.js.map +1 -1
- package/dist/memory/projectRegistry.d.ts +22 -37
- package/dist/memory/projectRegistry.d.ts.map +1 -1
- package/dist/memory/projectRegistry.js +78 -85
- 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 +18 -9
- package/dist/memory/sourceValidation.d.ts.map +1 -1
- package/dist/memory/sourceValidation.js +35 -29
- package/dist/memory/sourceValidation.js.map +1 -1
- package/dist/memory/storageInterface.d.ts +45 -126
- package/dist/memory/storageInterface.d.ts.map +1 -1
- package/dist/memory/types.d.ts +82 -168
- package/dist/memory/types.d.ts.map +1 -1
- package/dist/memory/types.js +116 -79
- 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 +127 -56
- package/dist/skill/skillManager.d.ts.map +1 -1
- package/dist/skill/skillManager.js +318 -163
- 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 -17
- 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 +79 -0
- package/dist/utils/configResourceManager.d.ts.map +1 -0
- package/dist/utils/configResourceManager.js +150 -0
- package/dist/utils/configResourceManager.js.map +1 -0
- package/dist/utils/errors.d.ts +48 -56
- package/dist/utils/errors.d.ts.map +1 -1
- package/dist/utils/errors.js +60 -58
- package/dist/utils/errors.js.map +1 -1
- package/dist/utils/eventEmitter.d.ts +141 -63
- package/dist/utils/eventEmitter.d.ts.map +1 -1
- package/dist/utils/eventEmitter.js +50 -35
- 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 +6 -5
- 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 +34 -1
- package/dist/utils/math.d.ts.map +1 -1
- package/dist/utils/math.js +47 -14
- 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 -29
- package/dist/utils/segmenter.d.ts.map +1 -1
- package/dist/utils/segmenter.js +230 -88
- 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 +1175 -0
- package/docs/memora-/346/216/245/345/205/245/346/214/207/345/215/227.md +843 -0
- 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 -83
- 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 -47
- package/dist/agent/guardrail.d.ts.map +0 -1
- package/dist/agent/guardrail.js +0 -51
- 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 -150
- package/dist/agent/managers/autoConfigRefiner.js.map +0 -1
- package/dist/agent/managers/configManager.d.ts +0 -125
- package/dist/agent/managers/configManager.d.ts.map +0 -1
- package/dist/agent/managers/configManager.js +0 -194
- 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 -198
- package/dist/agent/managers/memoryDecayScheduler.d.ts.map +0 -1
- package/dist/agent/managers/memoryDecayScheduler.js +0 -349
- 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 -81
- 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 -67
- 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 -54
- package/dist/memory/hybridMerge.d.ts.map +0 -1
- package/dist/memory/hybridMerge.js +0 -36
- package/dist/memory/hybridMerge.js.map +0 -1
- package/dist/memory/inMemoryRelationStore.d.ts +0 -51
- package/dist/memory/inMemoryRelationStore.d.ts.map +0 -1
- package/dist/memory/inMemoryRelationStore.js +0 -65
- package/dist/memory/inMemoryRelationStore.js.map +0 -1
- package/dist/memory/loader.d.ts +0 -49
- package/dist/memory/loader.d.ts.map +0 -1
- package/dist/memory/loader.js +0 -93
- package/dist/memory/loader.js.map +0 -1
- package/dist/memory/recall.d.ts +0 -66
- package/dist/memory/recall.d.ts.map +0 -1
- package/dist/memory/recall.js +0 -142
- package/dist/memory/recall.js.map +0 -1
- package/dist/memory/relationStore.d.ts +0 -78
- 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 -50
- package/dist/memory/store.d.ts.map +0 -1
- package/dist/memory/store.js +0 -161
- package/dist/memory/store.js.map +0 -1
- package/dist/memory/userProfile.d.ts +0 -156
- package/dist/memory/userProfile.d.ts.map +0 -1
- package/dist/memory/userProfile.js +0 -320
- package/dist/memory/userProfile.js.map +0 -1
- package/dist/memory/vectorStore.d.ts +0 -185
- package/dist/memory/vectorStore.d.ts.map +0 -1
- package/dist/memory/vectorStore.js +0 -257
- package/dist/memory/vectorStore.js.map +0 -1
- package/dist/persona/personaManager.d.ts +0 -160
- package/dist/persona/personaManager.d.ts.map +0 -1
- package/dist/persona/personaManager.js +0 -414
- 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
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pathGuard.js","sourceRoot":"","sources":["../../src/security/pathGuard.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"pathGuard.js","sourceRoot":"","sources":["../../src/security/pathGuard.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import { DEFAULT_RESOURCE_SUBDIR, SCRIPTS_SUBDIR, type DiscoveredLayer3, type ResourceSubdir, type ScriptRuntime } from '../utils/scanner.js';
|
|
2
|
+
/**
|
|
3
|
+
* 目录名常量转发(真源在 `utils/scanner`——扫描侧与本模块的路径解析侧共用同一事实,
|
|
4
|
+
* 调整目录名约定只改 scanner 一处,两侧同时生效)
|
|
5
|
+
*
|
|
6
|
+
* 引用面现状:生产代码零引用,唯一消费方是模块内测试 `skill/__tests__/skillLayer3.test.ts`
|
|
7
|
+
* (按「模块内测试消费 = 活」判据,导出保留)。
|
|
8
|
+
*/
|
|
9
|
+
export { DEFAULT_RESOURCE_SUBDIR, SCRIPTS_SUBDIR };
|
|
10
|
+
/** L3 资源条目的最小结构契约(全局技能与角色包技能均兼容) */
|
|
11
|
+
export interface Layer3ResourceLike {
|
|
12
|
+
readonly path: string;
|
|
13
|
+
/**
|
|
14
|
+
* 来源子目录(resources / references)。
|
|
15
|
+
*
|
|
16
|
+
* 可选是为兼容「未装载 L3 的入参」(`undefined` / `{}`);**真实生产者
|
|
17
|
+
* `scanner.discoverLayer3` 恒标注该项**,故 `resolveLayer3ResourcePath` 的
|
|
18
|
+
* 缺省回退分支只在非扫描来源(测试构造)下触达。
|
|
19
|
+
*/
|
|
20
|
+
readonly subdir?: ResourceSubdir;
|
|
21
|
+
}
|
|
22
|
+
/** L3 脚本条目的最小结构契约 */
|
|
23
|
+
export interface Layer3ScriptLike {
|
|
24
|
+
readonly path: string;
|
|
25
|
+
}
|
|
26
|
+
/** L3 索引的最小结构契约(两种技能载体均兼容,字段可选以适配未装载 L3 的技能) */
|
|
27
|
+
export interface SkillLayer3Like {
|
|
28
|
+
readonly resources?: readonly Layer3ResourceLike[];
|
|
29
|
+
readonly scripts?: readonly Layer3ScriptLike[];
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* 解析技能目录(双形态 SSOT)
|
|
33
|
+
*
|
|
34
|
+
* 取「最全面形态」处理,三种输入均正确:
|
|
35
|
+
* - manifest 的 file 直接指向目录 → 目录本身;
|
|
36
|
+
* - 文件夹形态:skills/my-skill/SKILL.md → skills/my-skill/(dirname);
|
|
37
|
+
* - 单文件形态:skills/write.md → skills/(dirname,此目录即技能池共享根,无 L3 归属)。
|
|
38
|
+
*/
|
|
39
|
+
export declare function resolveSkillDir(skillFilePath: string): string;
|
|
40
|
+
/**
|
|
41
|
+
* 发现技能的 L3 层(资源 + 脚本)
|
|
42
|
+
*
|
|
43
|
+
* 仅文件夹形态(入口为 SKILL.md)拥有 L3 归属权;裸 .md 恒返回空索引——
|
|
44
|
+
* 其所在目录是技能池共享根,同级扫描会误并入其他技能的资源/脚本(污染)。
|
|
45
|
+
*/
|
|
46
|
+
export declare function discoverSkillLayer3(skillFilePath: string): Promise<DiscoveredLayer3>;
|
|
47
|
+
/**
|
|
48
|
+
* 「发现结果」投影为可落地的 layer3 结构(两种技能载体兼容)
|
|
49
|
+
*
|
|
50
|
+
* 字段与 `role-pack/types.ts` 的 `RolePackManifestSkill.layer3` 对齐:真实生产者
|
|
51
|
+
* `scanner.discoverLayer3` 恒产出 size,故此处 size 为必填 number(不可写成可选)。
|
|
52
|
+
*/
|
|
53
|
+
export interface ProjectedLayer3 {
|
|
54
|
+
readonly resources: Array<{
|
|
55
|
+
readonly path: string;
|
|
56
|
+
readonly size: number;
|
|
57
|
+
readonly subdir?: ResourceSubdir;
|
|
58
|
+
}>;
|
|
59
|
+
readonly scripts: Array<{
|
|
60
|
+
readonly path: string;
|
|
61
|
+
readonly runtime: ScriptRuntime;
|
|
62
|
+
readonly size: number;
|
|
63
|
+
}>;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* 把 L3 发现结果投影为 layer3 落地结构(resources 与 scripts 皆空时返回 undefined)
|
|
67
|
+
*
|
|
68
|
+
* 两种技能载体(全局 SkillManager / 角色包 RolePackManager)共用该投影,
|
|
69
|
+
* 两载体各写一遍会改一处即静默漂移。
|
|
70
|
+
* 本函数是 discovered → layer3 投影的唯一收口(SSOT)。
|
|
71
|
+
*/
|
|
72
|
+
export declare function projectDiscoveredLayer3(discovered: DiscoveredLayer3): ProjectedLayer3 | undefined;
|
|
73
|
+
/**
|
|
74
|
+
* 在 layer3 白名单中查找资源条目(未登记返回 null)
|
|
75
|
+
*
|
|
76
|
+
* 白名单前置的意义:未在清单内的路径(含兄弟目录前缀、escape 符)不应进入后续解析。
|
|
77
|
+
*/
|
|
78
|
+
export declare function findLayer3Resource(layer3: SkillLayer3Like | undefined, resourcePath: string): Layer3ResourceLike | null;
|
|
79
|
+
/** 在 layer3 白名单中查找脚本条目(未登记返回 null) */
|
|
80
|
+
export declare function findLayer3Script(layer3: SkillLayer3Like | undefined, scriptPath: string): Layer3ScriptLike | null;
|
|
81
|
+
/**
|
|
82
|
+
* 解析 L3 资源的绝对路径:白名单命中且未逃逸来源子目录时返回路径,否则 null。
|
|
83
|
+
*
|
|
84
|
+
* 基目录按条目来源 subdir 选择(resources/ 或 references/,兼容主流 references/ 目录)。
|
|
85
|
+
*/
|
|
86
|
+
export declare function resolveLayer3ResourcePath(skillDir: string, layer3: SkillLayer3Like | undefined, resourcePath: string): string | null;
|
|
87
|
+
/**
|
|
88
|
+
* 解析 L3 脚本的绝对路径:白名单命中且未逃逸 scripts/ 目录时返回路径,否则 null。
|
|
89
|
+
*/
|
|
90
|
+
export declare function resolveLayer3ScriptPath(skillDir: string, layer3: SkillLayer3Like | undefined, scriptPath: string): string | null;
|
|
91
|
+
//# sourceMappingURL=skillLayer3.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skillLayer3.d.ts","sourceRoot":"","sources":["../../src/skill/skillLayer3.ts"],"names":[],"mappings":"AAqBA,OAAO,EAIL,uBAAuB,EACvB,cAAc,EACd,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,KAAK,aAAa,EACnB,MAAM,oBAAoB,CAAC;AAG5B;;;;;;GAMG;AACH,OAAO,EAAE,uBAAuB,EAAE,cAAc,EAAE,CAAC;AAEnD,oCAAoC;AACpC,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB;;;;;;OAMG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,cAAc,CAAC;CAClC;AAED,qBAAqB;AACrB,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED,gDAAgD;AAChD,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,kBAAkB,EAAE,CAAC;IACnD,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,gBAAgB,EAAE,CAAC;CAChD;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAI7D;AAED;;;;;GAKG;AACH,wBAAsB,mBAAmB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAG1F;AAED;;;;;GAKG;AACH,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,SAAS,EAAE,KAAK,CAAC;QACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,MAAM,CAAC,EAAE,cAAc,CAAC;KAClC,CAAC,CAAC;IACH,QAAQ,CAAC,OAAO,EAAE,KAAK,CAAC;QACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,OAAO,EAAE,aAAa,CAAC;QAChC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;KACvB,CAAC,CAAC;CACJ;AAED;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CAAC,UAAU,EAAE,gBAAgB,GAAG,eAAe,GAAG,SAAS,CAMjG;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,eAAe,GAAG,SAAS,EACnC,YAAY,EAAE,MAAM,GACnB,kBAAkB,GAAG,IAAI,CAE3B;AAED,sCAAsC;AACtC,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,eAAe,GAAG,SAAS,EACnC,UAAU,EAAE,MAAM,GACjB,gBAAgB,GAAG,IAAI,CAEzB;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,eAAe,GAAG,SAAS,EACnC,YAAY,EAAE,MAAM,GACnB,MAAM,GAAG,IAAI,CAKf;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,eAAe,GAAG,SAAS,EACnC,UAAU,EAAE,MAAM,GACjB,MAAM,GAAG,IAAI,CAGf"}
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 技能「目录定位 + L3 层」单一真理源
|
|
3
|
+
*
|
|
4
|
+
* 背景:全局技能(SkillManager)与角色包内嵌技能(RolePackManager)是**两套技能载体**——
|
|
5
|
+
* 前者以扁平 name 定位,后者需 packName 作用域。但两者的**目录形态规则与 L3 处理逻辑
|
|
6
|
+
* 完全一致**,且曾各自实现一遍(连注释都是复制粘贴的副本)。本模块是其唯一收口,两侧
|
|
7
|
+
* 同时受益:新增一项技能能力只需改这里。
|
|
8
|
+
*
|
|
9
|
+
* 收口内容:
|
|
10
|
+
* 1. **目录定位**(双形态兼容):文件夹形态(主流,skills/x/SKILL.md)+ 单文件形态(兼容,
|
|
11
|
+
* skills/x.md),另兼容 manifest 直接把 file 写成目录的形态——取三者中最全面的处理;
|
|
12
|
+
* 2. **L3 发现**:仅文件夹形态拥有 resources/ scripts/ 归属权(裸 .md 所在目录 = 技能池
|
|
13
|
+
* 共享根,同级扫描会把别的技能的资源误归给自己 → 污染),故裸 .md 恒为纯 L1/L2;
|
|
14
|
+
* 3. **L3 路径解析**:layer3 白名单前置 + resolveSafePath 边界防护(双层,缺一即可绕过)。
|
|
15
|
+
*
|
|
16
|
+
* 边界(勿越界扩大本模块职责):
|
|
17
|
+
* - 文件读取与 stat / 存在性原语收口于 `utils/fileSafe`(通用文件概念,非技能域);
|
|
18
|
+
* - 「白名单未命中」与「路径逃逸」必须仍可区分(前者调用方静默返回、后者要告警),
|
|
19
|
+
* 故 `find*` 与 `resolve*` 分开提供,调用方先判存在再取路径。
|
|
20
|
+
*/
|
|
21
|
+
import { dirname, join } from 'node:path';
|
|
22
|
+
import { resolveSafePath, discoverLayer3, isFolderFormSkill, DEFAULT_RESOURCE_SUBDIR, SCRIPTS_SUBDIR, } from '../utils/scanner.js';
|
|
23
|
+
import { statSyncSafe } from '../utils/fileSafe.js';
|
|
24
|
+
/**
|
|
25
|
+
* 目录名常量转发(真源在 `utils/scanner`——扫描侧与本模块的路径解析侧共用同一事实,
|
|
26
|
+
* 调整目录名约定只改 scanner 一处,两侧同时生效)
|
|
27
|
+
*
|
|
28
|
+
* 引用面现状:生产代码零引用,唯一消费方是模块内测试 `skill/__tests__/skillLayer3.test.ts`
|
|
29
|
+
* (按「模块内测试消费 = 活」判据,导出保留)。
|
|
30
|
+
*/
|
|
31
|
+
export { DEFAULT_RESOURCE_SUBDIR, SCRIPTS_SUBDIR };
|
|
32
|
+
/**
|
|
33
|
+
* 解析技能目录(双形态 SSOT)
|
|
34
|
+
*
|
|
35
|
+
* 取「最全面形态」处理,三种输入均正确:
|
|
36
|
+
* - manifest 的 file 直接指向目录 → 目录本身;
|
|
37
|
+
* - 文件夹形态:skills/my-skill/SKILL.md → skills/my-skill/(dirname);
|
|
38
|
+
* - 单文件形态:skills/write.md → skills/(dirname,此目录即技能池共享根,无 L3 归属)。
|
|
39
|
+
*/
|
|
40
|
+
export function resolveSkillDir(skillFilePath) {
|
|
41
|
+
const stat = statSyncSafe(skillFilePath);
|
|
42
|
+
if (stat?.isDirectory())
|
|
43
|
+
return skillFilePath;
|
|
44
|
+
return dirname(skillFilePath);
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* 发现技能的 L3 层(资源 + 脚本)
|
|
48
|
+
*
|
|
49
|
+
* 仅文件夹形态(入口为 SKILL.md)拥有 L3 归属权;裸 .md 恒返回空索引——
|
|
50
|
+
* 其所在目录是技能池共享根,同级扫描会误并入其他技能的资源/脚本(污染)。
|
|
51
|
+
*/
|
|
52
|
+
export async function discoverSkillLayer3(skillFilePath) {
|
|
53
|
+
if (!isFolderFormSkill(skillFilePath))
|
|
54
|
+
return { resources: [], scripts: [] };
|
|
55
|
+
return discoverLayer3(dirname(skillFilePath));
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* 把 L3 发现结果投影为 layer3 落地结构(resources 与 scripts 皆空时返回 undefined)
|
|
59
|
+
*
|
|
60
|
+
* 两种技能载体(全局 SkillManager / 角色包 RolePackManager)共用该投影,
|
|
61
|
+
* 两载体各写一遍会改一处即静默漂移。
|
|
62
|
+
* 本函数是 discovered → layer3 投影的唯一收口(SSOT)。
|
|
63
|
+
*/
|
|
64
|
+
export function projectDiscoveredLayer3(discovered) {
|
|
65
|
+
if (discovered.resources.length === 0 && discovered.scripts.length === 0)
|
|
66
|
+
return undefined;
|
|
67
|
+
return {
|
|
68
|
+
resources: discovered.resources.map((r) => ({ path: r.path, size: r.size, subdir: r.subdir })),
|
|
69
|
+
scripts: discovered.scripts.map((s) => ({ path: s.path, runtime: s.runtime, size: s.size })),
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* 在 layer3 白名单中查找资源条目(未登记返回 null)
|
|
74
|
+
*
|
|
75
|
+
* 白名单前置的意义:未在清单内的路径(含兄弟目录前缀、escape 符)不应进入后续解析。
|
|
76
|
+
*/
|
|
77
|
+
export function findLayer3Resource(layer3, resourcePath) {
|
|
78
|
+
return layer3?.resources?.find((r) => r.path === resourcePath) ?? null;
|
|
79
|
+
}
|
|
80
|
+
/** 在 layer3 白名单中查找脚本条目(未登记返回 null) */
|
|
81
|
+
export function findLayer3Script(layer3, scriptPath) {
|
|
82
|
+
return layer3?.scripts?.find((s) => s.path === scriptPath) ?? null;
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* 解析 L3 资源的绝对路径:白名单命中且未逃逸来源子目录时返回路径,否则 null。
|
|
86
|
+
*
|
|
87
|
+
* 基目录按条目来源 subdir 选择(resources/ 或 references/,兼容主流 references/ 目录)。
|
|
88
|
+
*/
|
|
89
|
+
export function resolveLayer3ResourcePath(skillDir, layer3, resourcePath) {
|
|
90
|
+
const meta = findLayer3Resource(layer3, resourcePath);
|
|
91
|
+
if (!meta)
|
|
92
|
+
return null;
|
|
93
|
+
const baseDir = meta.subdir ?? DEFAULT_RESOURCE_SUBDIR;
|
|
94
|
+
return resolveSafePath(join(skillDir, baseDir), resourcePath);
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* 解析 L3 脚本的绝对路径:白名单命中且未逃逸 scripts/ 目录时返回路径,否则 null。
|
|
98
|
+
*/
|
|
99
|
+
export function resolveLayer3ScriptPath(skillDir, layer3, scriptPath) {
|
|
100
|
+
if (!findLayer3Script(layer3, scriptPath))
|
|
101
|
+
return null;
|
|
102
|
+
return resolveSafePath(join(skillDir, SCRIPTS_SUBDIR), scriptPath);
|
|
103
|
+
}
|
|
104
|
+
//# sourceMappingURL=skillLayer3.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skillLayer3.js","sourceRoot":"","sources":["../../src/skill/skillLayer3.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,18 +1,39 @@
|
|
|
1
|
-
import
|
|
2
|
-
import type { SkillEntry,
|
|
1
|
+
import { ConfigResourceManager } from '../utils/configResourceManager.js';
|
|
2
|
+
import type { SkillEntry, SkillLayer3, SkillValidation } from '../skill/types.js';
|
|
3
|
+
import type { ScannedMarkdownEntry } from '../utils/scanner.js';
|
|
4
|
+
/**
|
|
5
|
+
* L1 阈值保护:技能数超过此值时压缩 L1 描述为 20 字摘要。
|
|
6
|
+
* SSOT:全局技能(SkillManager)与角色包内嵌技能(RolePackManager)共用同一渐进披露阈值。
|
|
7
|
+
*/
|
|
8
|
+
export declare const L1_COMPRESSED_THRESHOLD = 30;
|
|
9
|
+
/** L1 阈值保护:技能数超过此值时切换为 list_skills 工具动态查询(SSOT 同一来源) */
|
|
10
|
+
export declare const L1_LIST_TOOL_THRESHOLD = 50;
|
|
3
11
|
/**
|
|
4
12
|
* 技能管理器
|
|
5
13
|
*/
|
|
6
|
-
export declare class SkillManager {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
14
|
+
export declare class SkillManager extends ConfigResourceManager<SkillEntry> {
|
|
15
|
+
/**
|
|
16
|
+
* 已被用户技能覆盖的内置技能名。
|
|
17
|
+
*
|
|
18
|
+
* 与基类 runtimeNames 记账互补:runtimeNames 说明「该项无内核扫描真理源」,
|
|
19
|
+
* 本集合说明「同名磁盘(内置)项被用户版覆盖」——reload 扫描回同名内置时
|
|
20
|
+
* 以用户版为准(基类 isUserOverride 钩子)。load()(纯内置重载)时一并清空。
|
|
21
|
+
*/
|
|
22
|
+
private readonly userOverrides;
|
|
23
|
+
/**
|
|
24
|
+
* 禁用的技能名集合:宿主配置形态启停。命中者
|
|
25
|
+
* get() 返回 null(read_skill/L3 全链路经 get 短路)+ buildSkillList 不枚举。
|
|
26
|
+
* list 快照保持完整——宿主 UI 依据同名设置标注「已禁用」徽章(对 LLM 静默)。
|
|
27
|
+
*
|
|
28
|
+
* **作用域 = 全局技能池(内置/用户)**:角色包内嵌技能由 RolePackManager 持有、
|
|
29
|
+
* 不经本管理器(其启用判据 = 角色是否激活),对本集**免疫**——角色包技能
|
|
30
|
+
* 「随角色启停、不可按名禁用」(见宿主 skillAggregation 定案声明)。
|
|
31
|
+
*/
|
|
32
|
+
private readonly disabledNames;
|
|
11
33
|
/**
|
|
12
34
|
* @param configDir 配置目录(技能文件在 <configDir>/skills/ 下)
|
|
13
|
-
* @param index SQLite 索引(用于写入 skill 记忆)
|
|
14
35
|
*/
|
|
15
|
-
constructor(configDir?: string
|
|
36
|
+
constructor(configDir?: string);
|
|
16
37
|
/**
|
|
17
38
|
* 启动时加载:扫描技能目录
|
|
18
39
|
*
|
|
@@ -20,78 +41,128 @@ export declare class SkillManager {
|
|
|
20
41
|
*/
|
|
21
42
|
load(): Promise<number>;
|
|
22
43
|
/**
|
|
23
|
-
*
|
|
44
|
+
* 根据技能名获取技能
|
|
45
|
+
*/
|
|
46
|
+
get(name: string): SkillEntry | null;
|
|
47
|
+
/**
|
|
48
|
+
* 设置禁用技能清单(配置形态启停;装配期一次性注入,可由 reloadConfig 重设)
|
|
24
49
|
*
|
|
25
|
-
*
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
*
|
|
50
|
+
* @param names 禁用的技能名(命中者 L1/L2/L3 全不可用;对 LLM 语义 = 不存在)
|
|
51
|
+
*/
|
|
52
|
+
setDisabledSkills(names: Iterable<string>): void;
|
|
53
|
+
/**
|
|
54
|
+
* 当前禁用技能名快照(只读)——宿主 UI 渲染「已禁用」徽章的真源。
|
|
30
55
|
*
|
|
31
|
-
*
|
|
32
|
-
*
|
|
56
|
+
* 为何由内核提供而非宿主自读一份配置:**实际生效的禁用集在内核**(`disabledNames` 是
|
|
57
|
+
* `get()` / `buildSkillList()` 的判据)。宿主若另读 workspace 配置,会出现「UI 标注的」
|
|
58
|
+
* 与「实际生效的」两源分叉(如 reloadConfig 重设后不同步)。
|
|
59
|
+
*
|
|
60
|
+
* ⚠️ 对 **LLM** 仍然静默:本 getter 仅供宿主 UI 对照显示,
|
|
61
|
+
* **不得**出现在工具返回、L1 清单或任何进入上下文的文本里(语义 = 技能不存在)。
|
|
33
62
|
*/
|
|
34
|
-
|
|
63
|
+
get disabledSkillNames(): string[];
|
|
35
64
|
/**
|
|
36
|
-
*
|
|
65
|
+
* 注册运行时注入的技能(如 confirmConfigSuggestion 持久化技能);同名重复注册被拒绝。
|
|
37
66
|
*
|
|
38
|
-
*
|
|
39
|
-
*
|
|
67
|
+
* 必须走基类 registerRuntimeItem 登记——直接 push 进 items 会被 reload() 的磁盘扫描结果覆盖
|
|
68
|
+
* (运行时注入项无磁盘真理源,reload 保留依赖 runtimeNames 记账;设定记忆不写记忆库)。
|
|
40
69
|
*/
|
|
41
|
-
|
|
70
|
+
register(skill: SkillEntry): void;
|
|
42
71
|
/**
|
|
43
|
-
*
|
|
72
|
+
* 构建 system prompt 中的技能段
|
|
44
73
|
*/
|
|
45
|
-
|
|
74
|
+
buildSystemPrompt(name?: string): string;
|
|
46
75
|
/**
|
|
47
|
-
*
|
|
48
|
-
*
|
|
49
|
-
* 供 Agent.addSkill() 调用:宿主程序可在 init() 之后动态注入技能。
|
|
50
|
-
* 重复注册同名技能会被拒绝(与文件加载的技能冲突时也按"先到先得"判断)。
|
|
76
|
+
* 格式化单个技能为 Prompt 字符串
|
|
51
77
|
*
|
|
52
|
-
*
|
|
53
|
-
*
|
|
78
|
+
* SSOT:所有技能展示(System Prompt、Tool 回调)必须走此方法保证格式统一。
|
|
79
|
+
* compress=true 时描述截断至 20 字(技能较多时的 token 节约)。
|
|
54
80
|
*/
|
|
55
|
-
|
|
81
|
+
static formatSkillForPrompt(skill: {
|
|
82
|
+
name?: string;
|
|
83
|
+
description?: string;
|
|
84
|
+
layer3?: {
|
|
85
|
+
readonly resources: readonly unknown[];
|
|
86
|
+
readonly scripts: readonly unknown[];
|
|
87
|
+
};
|
|
88
|
+
} | undefined | null, fallbackName?: string, compress?: boolean): string;
|
|
56
89
|
/**
|
|
57
|
-
*
|
|
90
|
+
* 对 **LLM 可见**的技能条目——渐进披露可用性判据的**唯一真理源**。
|
|
58
91
|
*
|
|
59
|
-
*
|
|
60
|
-
*
|
|
92
|
+
* 判据两条(缺一不可):
|
|
93
|
+
* ① 有 `description`(渐进披露的唯一依据:缺则模型不知何时激活);
|
|
94
|
+
* ② 未命中 `disabledNames`(启停:对模型语义 = 不存在)。
|
|
61
95
|
*
|
|
62
|
-
*
|
|
63
|
-
*
|
|
64
|
-
*
|
|
96
|
+
* ⚠️ **L1 枚举**(`buildSkillList`)与 **`list_skills` 工具侧**(assembler 注入回调)
|
|
97
|
+
* 必须共用本方法:两者同为 **LLM 消费**、是同一份清单的两个交付通道,
|
|
98
|
+
* 判据一旦分叉即「双轨镜像」(同一模型在两条路径看到不同技能集)。
|
|
99
|
+
* 教训:启停/可用性过滤须两侧同步——单侧漏改会让禁用技能在另一通道仍可见。
|
|
65
100
|
*
|
|
66
|
-
*
|
|
101
|
+
* 注:本方法**不**过滤 L3 归属,也不做排序——排序由调用方决定(两通道排序本就不同)。
|
|
67
102
|
*/
|
|
68
|
-
|
|
103
|
+
listAvailable(): SkillEntry[];
|
|
69
104
|
/**
|
|
70
|
-
*
|
|
105
|
+
* 构建全局技能清单块(渐进披露 L1),与角色包技能清单同格式。
|
|
106
|
+
* 两级技能同构:通用技能全局激活,角色包技能随角色激活;LLM 按需调 read_skill 读正文(L2)。
|
|
107
|
+
* 含 resources/scripts 的技能附加 "(含资源/脚本)" 标记。
|
|
71
108
|
*
|
|
72
|
-
*
|
|
73
|
-
*
|
|
74
|
-
*
|
|
75
|
-
*
|
|
76
|
-
* @param name 技能名(可选,不传返回空)
|
|
109
|
+
* L1 阈值保护(与角色包 buildSystemPrompt 同构):
|
|
110
|
+
* ≤ 30 技能:完整 L1(name + full description)
|
|
111
|
+
* 31-50 技能:压缩 L1(name + 20 字摘要)
|
|
112
|
+
* > 50 技能:切换 list_skills 工具动态查询,不在 system prompt 枚举
|
|
77
113
|
*/
|
|
78
|
-
|
|
114
|
+
buildSkillList(): string;
|
|
79
115
|
/**
|
|
80
|
-
*
|
|
81
|
-
*
|
|
82
|
-
*
|
|
116
|
+
* 校验单技能文件(写→验→用闭环,宿主 UI 校验入口)。
|
|
117
|
+
* 复用 parser frontmatter 解析做单一真理源,不重写解析;只做确定性结构检查,不做语义 schema。
|
|
118
|
+
* 判级(三点强化):
|
|
119
|
+
* - error:无 frontmatter / description 缺失/空(渐进披露唯一依据,缺则技能不可用)/ 正文空
|
|
120
|
+
* - warning:layer 非法(回退 project)
|
|
121
|
+
*/
|
|
122
|
+
validateFile(filePath: string): Promise<SkillValidation>;
|
|
123
|
+
/**
|
|
124
|
+
* 读取技能的 L3 资源文件(渐进披露 L3);资源须在 layer3 中且路径不逃逸其来源子目录
|
|
125
|
+
* (resources/ 或 references/,兼容主流 references/ 辅助文档目录)
|
|
126
|
+
*/
|
|
127
|
+
readResource(skillName: string, resourcePath: string): Promise<string | null>;
|
|
128
|
+
/**
|
|
129
|
+
* 列出技能的 L3 资源
|
|
83
130
|
*/
|
|
84
|
-
|
|
131
|
+
listResources(skillName: string): SkillLayer3['resources'];
|
|
85
132
|
/**
|
|
86
|
-
*
|
|
133
|
+
* 列出技能的 L3 脚本
|
|
87
134
|
*/
|
|
88
|
-
|
|
135
|
+
listScripts(skillName: string): SkillLayer3['scripts'];
|
|
89
136
|
/**
|
|
90
|
-
*
|
|
137
|
+
* 获取脚本的完整路径(须在 layer3 中且路径不逃逸 scripts/ 目录)
|
|
138
|
+
*/
|
|
139
|
+
getScriptPath(skillName: string, scriptPath: string): string | null;
|
|
140
|
+
/**
|
|
141
|
+
* 加载用户目录的技能(宿主调用,用于扩展内置技能池)
|
|
142
|
+
*
|
|
143
|
+
* 与 load() 的区别:
|
|
144
|
+
* - load() 从 configDir/skills/ 扫描内置技能(有磁盘真理源)
|
|
145
|
+
* - loadExtraDir() 从额外目录扫描用户技能(运行时注入,reload 时保留)
|
|
146
|
+
*
|
|
147
|
+
* 设计哲学:内核保持单一真理源(configDir/skills/),宿主负责扩展用户目录。
|
|
148
|
+
* 用户技能通过 registerRuntimeItem 注入,reload() 时会保留(同名冲突以磁盘为准)。
|
|
91
149
|
*
|
|
92
|
-
*
|
|
93
|
-
*
|
|
150
|
+
* @param dir 用户技能目录(如 ~/.memora/skills/)
|
|
151
|
+
* @returns 加载的技能数量
|
|
152
|
+
*/
|
|
153
|
+
loadExtraDir(dir: string): Promise<number>;
|
|
154
|
+
/**
|
|
155
|
+
* 用户覆盖声明:userOverrides 中记录的同名技能,reload 扫描回内置版时
|
|
156
|
+
* 用户版胜出、内置版剔除(基类 retainRuntimeItems 消费)。其余同名不声明——
|
|
157
|
+
* 保持基类默认「磁盘(内置)赢」语义(如 register() 运行时技能撞内置仍内置赢)。
|
|
158
|
+
*/
|
|
159
|
+
protected isUserOverride(name: string): boolean;
|
|
160
|
+
/**
|
|
161
|
+
* load()(纯内置重载)后 userOverrides 一并清空——与基类 runtimeNames 同寿命:
|
|
162
|
+
* load() 整体替换 items、运行时注入全丢,账目须同步;否则残留名字会在未来
|
|
163
|
+
* loadExtraDir 同名时被幂等跳过(见其开头判定),用户技能静默丢失。
|
|
94
164
|
*/
|
|
95
|
-
|
|
165
|
+
protected onAfterLoad(): void;
|
|
166
|
+
protected createEntry(entry: ScannedMarkdownEntry): Promise<SkillEntry>;
|
|
96
167
|
}
|
|
97
168
|
//# sourceMappingURL=skillManager.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skillManager.d.ts","sourceRoot":"","sources":["../../src/skill/skillManager.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"skillManager.d.ts","sourceRoot":"","sources":["../../src/skill/skillManager.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AACzE,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAc,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAG7F,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAW/D;;;GAGG;AACH,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAC1C,wDAAwD;AACxD,eAAO,MAAM,sBAAsB,KAAK,CAAC;AAUzC;;GAEG;AACH,qBAAa,YAAa,SAAQ,qBAAqB,CAAC,UAAU,CAAC;IACjE;;;;;;OAMG;IACH,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAqB;IAEnD;;;;;;;;OAQG;IACH,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAqB;IAEnD;;OAEG;gBACS,SAAS,CAAC,EAAE,MAAM;IAM9B;;;;OAIG;IACG,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC;IAM7B;;OAEG;IACH,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI;IAMpC;;;;OAIG;IACH,iBAAiB,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,GAAG,IAAI;IAMhD;;;;;;;;;OASG;IACH,IAAI,kBAAkB,IAAI,MAAM,EAAE,CAEjC;IAED;;;;;OAKG;IACH,QAAQ,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;IAUjC;;OAEG;IACH,iBAAiB,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM;IAOxC;;;;;OAKG;IACH,MAAM,CAAC,oBAAoB,CACzB,KAAK,EACD;QACE,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,MAAM,CAAC,EAAE;YAAE,QAAQ,CAAC,SAAS,EAAE,SAAS,OAAO,EAAE,CAAC;YAAC,QAAQ,CAAC,OAAO,EAAE,SAAS,OAAO,EAAE,CAAA;SAAE,CAAC;KAC3F,GACD,SAAS,GACT,IAAI,EACR,YAAY,CAAC,EAAE,MAAM,EACrB,QAAQ,UAAQ,GACf,MAAM;IAiBT;;;;;;;;;;;;;OAaG;IACH,aAAa,IAAI,UAAU,EAAE;IAI7B;;;;;;;;;OASG;IACH,cAAc,IAAI,MAAM;IAwBxB;;;;;;OAMG;IACG,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;IA4C9D;;;OAGG;IACG,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAsBnF;;OAEG;IACH,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,WAAW,CAAC,WAAW,CAAC;IAK1D;;OAEG;IACH,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,WAAW,CAAC,SAAS,CAAC;IAKtD;;OAEG;IACH,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAYnE;;;;;;;;;;;;OAYG;IACG,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IA2BhD;;;;OAIG;cACgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIxD;;;;OAIG;cACgB,WAAW,IAAI,IAAI;cAItB,WAAW,CAAC,KAAK,EAAE,oBAAoB,GAAG,OAAO,CAAC,UAAU,CAAC;CAuB9E"}
|