abmind 0.0.1 → 0.1.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 +34 -0
- package/LICENSE +190 -0
- package/README.md +191 -0
- package/dist/cli/abmind-backfill.d.ts +3 -0
- package/dist/cli/abmind-backfill.d.ts.map +1 -0
- package/dist/cli/abmind-backfill.js +64 -0
- package/dist/cli/abmind-backfill.js.map +1 -0
- package/dist/cli/abmind-backup.d.ts +5 -0
- package/dist/cli/abmind-backup.d.ts.map +1 -0
- package/dist/cli/abmind-backup.js +44 -0
- package/dist/cli/abmind-backup.js.map +1 -0
- package/dist/cli/abmind-bundle.d.ts +7 -0
- package/dist/cli/abmind-bundle.d.ts.map +1 -0
- package/dist/cli/abmind-bundle.js +17 -0
- package/dist/cli/abmind-bundle.js.map +1 -0
- package/dist/cli/abmind-edit.d.ts +10 -0
- package/dist/cli/abmind-edit.d.ts.map +1 -0
- package/dist/cli/abmind-edit.js +160 -0
- package/dist/cli/abmind-edit.js.map +1 -0
- package/dist/cli/abmind-embed.d.ts +3 -0
- package/dist/cli/abmind-embed.d.ts.map +1 -0
- package/dist/cli/abmind-embed.js +83 -0
- package/dist/cli/abmind-embed.js.map +1 -0
- package/dist/cli/abmind-expand.d.ts +6 -0
- package/dist/cli/abmind-expand.d.ts.map +1 -0
- package/dist/cli/abmind-expand.js +100 -0
- package/dist/cli/abmind-expand.js.map +1 -0
- package/dist/cli/abmind-hook-doctor.d.ts +8 -0
- package/dist/cli/abmind-hook-doctor.d.ts.map +1 -0
- package/dist/cli/abmind-hook-doctor.js +73 -0
- package/dist/cli/abmind-hook-doctor.js.map +1 -0
- package/dist/cli/abmind-hook-recall.d.ts +16 -0
- package/dist/cli/abmind-hook-recall.d.ts.map +1 -0
- package/dist/cli/abmind-hook-recall.js +123 -0
- package/dist/cli/abmind-hook-recall.js.map +1 -0
- package/dist/cli/abmind-hook-store.d.ts +17 -0
- package/dist/cli/abmind-hook-store.d.ts.map +1 -0
- package/dist/cli/abmind-hook-store.js +115 -0
- package/dist/cli/abmind-hook-store.js.map +1 -0
- package/dist/cli/abmind-hook-wakeup.d.ts +12 -0
- package/dist/cli/abmind-hook-wakeup.d.ts.map +1 -0
- package/dist/cli/abmind-hook-wakeup.js +143 -0
- package/dist/cli/abmind-hook-wakeup.js.map +1 -0
- package/dist/cli/abmind-ingest.d.ts +7 -0
- package/dist/cli/abmind-ingest.d.ts.map +1 -0
- package/dist/cli/abmind-ingest.js +96 -0
- package/dist/cli/abmind-ingest.js.map +1 -0
- package/dist/cli/abmind-install.d.ts +10 -0
- package/dist/cli/abmind-install.d.ts.map +1 -0
- package/dist/cli/abmind-install.js +240 -0
- package/dist/cli/abmind-install.js.map +1 -0
- package/dist/cli/abmind-mcp.d.ts +3 -0
- package/dist/cli/abmind-mcp.d.ts.map +1 -0
- package/dist/cli/abmind-mcp.js +26 -0
- package/dist/cli/abmind-mcp.js.map +1 -0
- package/dist/cli/abmind-memory-stats.d.ts +3 -0
- package/dist/cli/abmind-memory-stats.d.ts.map +1 -0
- package/dist/cli/abmind-memory-stats.js +45 -0
- package/dist/cli/abmind-memory-stats.js.map +1 -0
- package/dist/cli/abmind-migrate-openclaw.d.ts +12 -0
- package/dist/cli/abmind-migrate-openclaw.d.ts.map +1 -0
- package/dist/cli/abmind-migrate-openclaw.js +247 -0
- package/dist/cli/abmind-migrate-openclaw.js.map +1 -0
- package/dist/cli/abmind-recall.d.ts +8 -0
- package/dist/cli/abmind-recall.d.ts.map +1 -0
- package/dist/cli/abmind-recall.js +94 -0
- package/dist/cli/abmind-recall.js.map +1 -0
- package/dist/cli/abmind-reset.d.ts +11 -0
- package/dist/cli/abmind-reset.d.ts.map +1 -0
- package/dist/cli/abmind-reset.js +143 -0
- package/dist/cli/abmind-reset.js.map +1 -0
- package/dist/cli/abmind-restore.d.ts +5 -0
- package/dist/cli/abmind-restore.d.ts.map +1 -0
- package/dist/cli/abmind-restore.js +64 -0
- package/dist/cli/abmind-restore.js.map +1 -0
- package/dist/cli/abmind-retro-extract.d.ts +15 -0
- package/dist/cli/abmind-retro-extract.d.ts.map +1 -0
- package/dist/cli/abmind-retro-extract.js +113 -0
- package/dist/cli/abmind-retro-extract.js.map +1 -0
- package/dist/cli/abmind-rollback.d.ts +8 -0
- package/dist/cli/abmind-rollback.d.ts.map +1 -0
- package/dist/cli/abmind-rollback.js +76 -0
- package/dist/cli/abmind-rollback.js.map +1 -0
- package/dist/cli/abmind-secrets.d.ts +12 -0
- package/dist/cli/abmind-secrets.d.ts.map +1 -0
- package/dist/cli/abmind-secrets.js +83 -0
- package/dist/cli/abmind-secrets.js.map +1 -0
- package/dist/cli/abmind-sleep-apply.d.ts +3 -0
- package/dist/cli/abmind-sleep-apply.d.ts.map +1 -0
- package/dist/cli/abmind-sleep-apply.js +50 -0
- package/dist/cli/abmind-sleep-apply.js.map +1 -0
- package/dist/cli/abmind-sleep-report.d.ts +3 -0
- package/dist/cli/abmind-sleep-report.d.ts.map +1 -0
- package/dist/cli/abmind-sleep-report.js +40 -0
- package/dist/cli/abmind-sleep-report.js.map +1 -0
- package/dist/cli/abmind-sleep-state.d.ts +3 -0
- package/dist/cli/abmind-sleep-state.d.ts.map +1 -0
- package/dist/cli/abmind-sleep-state.js +33 -0
- package/dist/cli/abmind-sleep-state.js.map +1 -0
- package/dist/cli/abmind-sleep.d.ts +14 -0
- package/dist/cli/abmind-sleep.d.ts.map +1 -0
- package/dist/cli/abmind-sleep.js +186 -0
- package/dist/cli/abmind-sleep.js.map +1 -0
- package/dist/cli/abmind-status-runtime.d.ts +9 -0
- package/dist/cli/abmind-status-runtime.d.ts.map +1 -0
- package/dist/cli/abmind-status-runtime.js +132 -0
- package/dist/cli/abmind-status-runtime.js.map +1 -0
- package/dist/cli/abmind-status.d.ts +3 -0
- package/dist/cli/abmind-status.d.ts.map +1 -0
- package/dist/cli/abmind-status.js +45 -0
- package/dist/cli/abmind-status.js.map +1 -0
- package/dist/cli/abmind-store.d.ts +54 -0
- package/dist/cli/abmind-store.d.ts.map +1 -0
- package/dist/cli/abmind-store.js +251 -0
- package/dist/cli/abmind-store.js.map +1 -0
- package/dist/cli/abmind-update.d.ts +11 -0
- package/dist/cli/abmind-update.d.ts.map +1 -0
- package/dist/cli/abmind-update.js +160 -0
- package/dist/cli/abmind-update.js.map +1 -0
- package/dist/cli/abmind-wakeup.d.ts +3 -0
- package/dist/cli/abmind-wakeup.d.ts.map +1 -0
- package/dist/cli/abmind-wakeup.js +36 -0
- package/dist/cli/abmind-wakeup.js.map +1 -0
- package/dist/cli/abmind.d.ts +10 -0
- package/dist/cli/abmind.d.ts.map +1 -0
- package/dist/cli/abmind.js +100 -0
- package/dist/cli/abmind.js.map +1 -0
- package/dist/src/abm-v2-vocab.d.ts +10 -0
- package/dist/src/abm-v2-vocab.d.ts.map +1 -0
- package/dist/src/abm-v2-vocab.js +66 -0
- package/dist/src/abm-v2-vocab.js.map +1 -0
- package/dist/src/adapters/openclaw.d.ts +66 -0
- package/dist/src/adapters/openclaw.d.ts.map +1 -0
- package/dist/src/adapters/openclaw.js +97 -0
- package/dist/src/adapters/openclaw.js.map +1 -0
- package/dist/src/backend-factory.d.ts +9 -0
- package/dist/src/backend-factory.d.ts.map +1 -0
- package/dist/src/backend-factory.js +23 -0
- package/dist/src/backend-factory.js.map +1 -0
- package/dist/src/backup.d.ts +19 -0
- package/dist/src/backup.d.ts.map +1 -0
- package/dist/src/backup.js +191 -0
- package/dist/src/backup.js.map +1 -0
- package/dist/src/brain-patterns.d.ts +20 -0
- package/dist/src/brain-patterns.d.ts.map +1 -0
- package/dist/src/brain-patterns.js +72 -0
- package/dist/src/brain-patterns.js.map +1 -0
- package/dist/src/cli-entry.d.ts +10 -0
- package/dist/src/cli-entry.d.ts.map +1 -0
- package/dist/src/cli-entry.js +29 -0
- package/dist/src/cli-entry.js.map +1 -0
- package/dist/src/cli-flags.d.ts +29 -0
- package/dist/src/cli-flags.d.ts.map +1 -0
- package/dist/src/cli-flags.js +72 -0
- package/dist/src/cli-flags.js.map +1 -0
- package/dist/src/cli-runner-raw.d.ts +21 -0
- package/dist/src/cli-runner-raw.d.ts.map +1 -0
- package/dist/src/cli-runner-raw.js +41 -0
- package/dist/src/cli-runner-raw.js.map +1 -0
- package/dist/src/cli-runner.d.ts +26 -0
- package/dist/src/cli-runner.d.ts.map +1 -0
- package/dist/src/cli-runner.js +51 -0
- package/dist/src/cli-runner.js.map +1 -0
- package/dist/src/consolidation-search.d.ts +17 -0
- package/dist/src/consolidation-search.d.ts.map +1 -0
- package/dist/src/consolidation-search.js +83 -0
- package/dist/src/consolidation-search.js.map +1 -0
- package/dist/src/context-engine.d.ts +89 -0
- package/dist/src/context-engine.d.ts.map +1 -0
- package/dist/src/context-engine.js +216 -0
- package/dist/src/context-engine.js.map +1 -0
- package/dist/src/context-tier-renderer.d.ts +79 -0
- package/dist/src/context-tier-renderer.d.ts.map +1 -0
- package/dist/src/context-tier-renderer.js +223 -0
- package/dist/src/context-tier-renderer.js.map +1 -0
- package/dist/src/contradiction-checker.d.ts +16 -0
- package/dist/src/contradiction-checker.d.ts.map +1 -0
- package/dist/src/contradiction-checker.js +40 -0
- package/dist/src/contradiction-checker.js.map +1 -0
- package/dist/src/crypto.d.ts +15 -0
- package/dist/src/crypto.d.ts.map +1 -0
- package/dist/src/crypto.js +86 -0
- package/dist/src/crypto.js.map +1 -0
- package/dist/src/deploy-lib/cleanup.d.ts +38 -0
- package/dist/src/deploy-lib/cleanup.d.ts.map +1 -0
- package/dist/src/deploy-lib/cleanup.js +71 -0
- package/dist/src/deploy-lib/cleanup.js.map +1 -0
- package/dist/src/deploy-lib/index.d.ts +20 -0
- package/dist/src/deploy-lib/index.d.ts.map +1 -0
- package/dist/src/deploy-lib/index.js +20 -0
- package/dist/src/deploy-lib/index.js.map +1 -0
- package/dist/src/deploy-lib/lock.d.ts +37 -0
- package/dist/src/deploy-lib/lock.d.ts.map +1 -0
- package/dist/src/deploy-lib/lock.js +107 -0
- package/dist/src/deploy-lib/lock.js.map +1 -0
- package/dist/src/deploy-lib/manifest.d.ts +42 -0
- package/dist/src/deploy-lib/manifest.d.ts.map +1 -0
- package/dist/src/deploy-lib/manifest.js +38 -0
- package/dist/src/deploy-lib/manifest.js.map +1 -0
- package/dist/src/deploy-lib/paths.d.ts +29 -0
- package/dist/src/deploy-lib/paths.d.ts.map +1 -0
- package/dist/src/deploy-lib/paths.js +40 -0
- package/dist/src/deploy-lib/paths.js.map +1 -0
- package/dist/src/deploy-lib/releases.d.ts +52 -0
- package/dist/src/deploy-lib/releases.d.ts.map +1 -0
- package/dist/src/deploy-lib/releases.js +119 -0
- package/dist/src/deploy-lib/releases.js.map +1 -0
- package/dist/src/deploy-lib/safe-copy.d.ts +16 -0
- package/dist/src/deploy-lib/safe-copy.d.ts.map +1 -0
- package/dist/src/deploy-lib/safe-copy.js +32 -0
- package/dist/src/deploy-lib/safe-copy.js.map +1 -0
- package/dist/src/embedding-health.d.ts +12 -0
- package/dist/src/embedding-health.d.ts.map +1 -0
- package/dist/src/embedding-health.js +18 -0
- package/dist/src/embedding-health.js.map +1 -0
- package/dist/src/embedding-provider.d.ts +48 -0
- package/dist/src/embedding-provider.d.ts.map +1 -0
- package/dist/src/embedding-provider.js +145 -0
- package/dist/src/embedding-provider.js.map +1 -0
- package/dist/src/embedding-quantize.d.ts +11 -0
- package/dist/src/embedding-quantize.d.ts.map +1 -0
- package/dist/src/embedding-quantize.js +38 -0
- package/dist/src/embedding-quantize.js.map +1 -0
- package/dist/src/emotion-arc.d.ts +17 -0
- package/dist/src/emotion-arc.d.ts.map +1 -0
- package/dist/src/emotion-arc.js +62 -0
- package/dist/src/emotion-arc.js.map +1 -0
- package/dist/src/emotion-tagger.d.ts +8 -0
- package/dist/src/emotion-tagger.d.ts.map +1 -0
- package/dist/src/emotion-tagger.js +45 -0
- package/dist/src/emotion-tagger.js.map +1 -0
- package/dist/src/emotion-utils.d.ts +13 -0
- package/dist/src/emotion-utils.d.ts.map +1 -0
- package/dist/src/emotion-utils.js +76 -0
- package/dist/src/emotion-utils.js.map +1 -0
- package/dist/src/entity-graph.d.ts +33 -0
- package/dist/src/entity-graph.d.ts.map +1 -0
- package/dist/src/entity-graph.js +42 -0
- package/dist/src/entity-graph.js.map +1 -0
- package/dist/src/env-schema.d.ts +46 -0
- package/dist/src/env-schema.d.ts.map +1 -0
- package/dist/src/env-schema.js +93 -0
- package/dist/src/env-schema.js.map +1 -0
- package/dist/src/hook-helpers.d.ts +16 -0
- package/dist/src/hook-helpers.d.ts.map +1 -0
- package/dist/src/hook-helpers.js +64 -0
- package/dist/src/hook-helpers.js.map +1 -0
- package/dist/src/imemory-system.d.ts +138 -0
- package/dist/src/imemory-system.d.ts.map +1 -0
- package/dist/src/imemory-system.js +40 -0
- package/dist/src/imemory-system.js.map +1 -0
- package/dist/src/importance-flagger.d.ts +8 -0
- package/dist/src/importance-flagger.d.ts.map +1 -0
- package/dist/src/importance-flagger.js +24 -0
- package/dist/src/importance-flagger.js.map +1 -0
- package/dist/src/index.d.ts +79 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/index.js +79 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/ingest-pipeline.d.ts +32 -0
- package/dist/src/ingest-pipeline.d.ts.map +1 -0
- package/dist/src/ingest-pipeline.js +58 -0
- package/dist/src/ingest-pipeline.js.map +1 -0
- package/dist/src/injection-scanner.d.ts +16 -0
- package/dist/src/injection-scanner.d.ts.map +1 -0
- package/dist/src/injection-scanner.js +182 -0
- package/dist/src/injection-scanner.js.map +1 -0
- package/dist/src/local-time.d.ts +12 -0
- package/dist/src/local-time.d.ts.map +1 -0
- package/dist/src/local-time.js +23 -0
- package/dist/src/local-time.js.map +1 -0
- package/dist/src/maintenance-service.d.ts +46 -0
- package/dist/src/maintenance-service.d.ts.map +1 -0
- package/dist/src/maintenance-service.js +280 -0
- package/dist/src/maintenance-service.js.map +1 -0
- package/dist/src/mcp-server.d.ts +6 -0
- package/dist/src/mcp-server.d.ts.map +1 -0
- package/dist/src/mcp-server.js +50 -0
- package/dist/src/mcp-server.js.map +1 -0
- package/dist/src/media-sanitizer.d.ts +11 -0
- package/dist/src/media-sanitizer.d.ts.map +1 -0
- package/dist/src/media-sanitizer.js +56 -0
- package/dist/src/media-sanitizer.js.map +1 -0
- package/dist/src/mem-config-env.d.ts +18 -0
- package/dist/src/mem-config-env.d.ts.map +1 -0
- package/dist/src/mem-config-env.js +43 -0
- package/dist/src/mem-config-env.js.map +1 -0
- package/dist/src/mem-env.d.ts +5 -0
- package/dist/src/mem-env.d.ts.map +1 -0
- package/dist/src/mem-env.js +19 -0
- package/dist/src/mem-env.js.map +1 -0
- package/dist/src/mem-logger.d.ts +20 -0
- package/dist/src/mem-logger.d.ts.map +1 -0
- package/dist/src/mem-logger.js +24 -0
- package/dist/src/mem-logger.js.map +1 -0
- package/dist/src/mem-paths.d.ts +20 -0
- package/dist/src/mem-paths.d.ts.map +1 -0
- package/dist/src/mem-paths.js +43 -0
- package/dist/src/mem-paths.js.map +1 -0
- package/dist/src/mem-types.d.ts +157 -0
- package/dist/src/mem-types.d.ts.map +1 -0
- package/dist/src/mem-types.js +2 -0
- package/dist/src/mem-types.js.map +1 -0
- package/dist/src/memory-backend.d.ts +65 -0
- package/dist/src/memory-backend.d.ts.map +1 -0
- package/dist/src/memory-backend.js +43 -0
- package/dist/src/memory-backend.js.map +1 -0
- package/dist/src/memory-compressor.d.ts +17 -0
- package/dist/src/memory-compressor.d.ts.map +1 -0
- package/dist/src/memory-compressor.js +147 -0
- package/dist/src/memory-compressor.js.map +1 -0
- package/dist/src/memory-config.d.ts +30 -0
- package/dist/src/memory-config.d.ts.map +1 -0
- package/dist/src/memory-config.js +62 -0
- package/dist/src/memory-config.js.map +1 -0
- package/dist/src/memory-db.d.ts +7 -0
- package/dist/src/memory-db.d.ts.map +1 -0
- package/dist/src/memory-db.js +173 -0
- package/dist/src/memory-db.js.map +1 -0
- package/dist/src/memory-editor.d.ts +32 -0
- package/dist/src/memory-editor.d.ts.map +1 -0
- package/dist/src/memory-editor.js +339 -0
- package/dist/src/memory-editor.js.map +1 -0
- package/dist/src/memory-index.d.ts +91 -0
- package/dist/src/memory-index.d.ts.map +1 -0
- package/dist/src/memory-index.js +310 -0
- package/dist/src/memory-index.js.map +1 -0
- package/dist/src/memory-ipc-client.d.ts +22 -0
- package/dist/src/memory-ipc-client.d.ts.map +1 -0
- package/dist/src/memory-ipc-client.js +75 -0
- package/dist/src/memory-ipc-client.js.map +1 -0
- package/dist/src/memory-ipc-server.d.ts +17 -0
- package/dist/src/memory-ipc-server.d.ts.map +1 -0
- package/dist/src/memory-ipc-server.js +86 -0
- package/dist/src/memory-ipc-server.js.map +1 -0
- package/dist/src/memory-manager.d.ts +155 -0
- package/dist/src/memory-manager.d.ts.map +1 -0
- package/dist/src/memory-manager.js +463 -0
- package/dist/src/memory-manager.js.map +1 -0
- package/dist/src/memory-renderer.d.ts +15 -0
- package/dist/src/memory-renderer.d.ts.map +1 -0
- package/dist/src/memory-renderer.js +126 -0
- package/dist/src/memory-renderer.js.map +1 -0
- package/dist/src/message-store.d.ts +42 -0
- package/dist/src/message-store.d.ts.map +1 -0
- package/dist/src/message-store.js +145 -0
- package/dist/src/message-store.js.map +1 -0
- package/dist/src/mmr.d.ts +17 -0
- package/dist/src/mmr.d.ts.map +1 -0
- package/dist/src/mmr.js +48 -0
- package/dist/src/mmr.js.map +1 -0
- package/dist/src/ollama-embed.d.ts +46 -0
- package/dist/src/ollama-embed.d.ts.map +1 -0
- package/dist/src/ollama-embed.js +139 -0
- package/dist/src/ollama-embed.js.map +1 -0
- package/dist/src/openclaw-plugin/engine.d.ts +87 -0
- package/dist/src/openclaw-plugin/engine.d.ts.map +1 -0
- package/dist/src/openclaw-plugin/engine.js +121 -0
- package/dist/src/openclaw-plugin/engine.js.map +1 -0
- package/dist/src/openclaw-plugin/hooks.d.ts +41 -0
- package/dist/src/openclaw-plugin/hooks.d.ts.map +1 -0
- package/dist/src/openclaw-plugin/hooks.js +155 -0
- package/dist/src/openclaw-plugin/hooks.js.map +1 -0
- package/dist/src/openclaw-plugin/index.d.ts +20 -0
- package/dist/src/openclaw-plugin/index.d.ts.map +1 -0
- package/dist/src/openclaw-plugin/index.js +145 -0
- package/dist/src/openclaw-plugin/index.js.map +1 -0
- package/dist/src/openclaw-plugin/message-adapter.d.ts +13 -0
- package/dist/src/openclaw-plugin/message-adapter.d.ts.map +1 -0
- package/dist/src/openclaw-plugin/message-adapter.js +49 -0
- package/dist/src/openclaw-plugin/message-adapter.js.map +1 -0
- package/dist/src/openclaw-plugin/prompt-builder.d.ts +17 -0
- package/dist/src/openclaw-plugin/prompt-builder.d.ts.map +1 -0
- package/dist/src/openclaw-plugin/prompt-builder.js +22 -0
- package/dist/src/openclaw-plugin/prompt-builder.js.map +1 -0
- package/dist/src/openclaw-plugin/public-artifacts.d.ts +20 -0
- package/dist/src/openclaw-plugin/public-artifacts.d.ts.map +1 -0
- package/dist/src/openclaw-plugin/public-artifacts.js +59 -0
- package/dist/src/openclaw-plugin/public-artifacts.js.map +1 -0
- package/dist/src/openclaw-plugin/runtime-adapter.d.ts +26 -0
- package/dist/src/openclaw-plugin/runtime-adapter.d.ts.map +1 -0
- package/dist/src/openclaw-plugin/runtime-adapter.js +161 -0
- package/dist/src/openclaw-plugin/runtime-adapter.js.map +1 -0
- package/dist/src/openclaw-plugin/session-mapper.d.ts +11 -0
- package/dist/src/openclaw-plugin/session-mapper.d.ts.map +1 -0
- package/dist/src/openclaw-plugin/session-mapper.js +17 -0
- package/dist/src/openclaw-plugin/session-mapper.js.map +1 -0
- package/dist/src/openclaw-plugin/tools.d.ts +31 -0
- package/dist/src/openclaw-plugin/tools.d.ts.map +1 -0
- package/dist/src/openclaw-plugin/tools.js +127 -0
- package/dist/src/openclaw-plugin/tools.js.map +1 -0
- package/dist/src/openclaw-plugin/types.d.ts +34 -0
- package/dist/src/openclaw-plugin/types.d.ts.map +1 -0
- package/dist/src/openclaw-plugin/types.js +2 -0
- package/dist/src/openclaw-plugin/types.js.map +1 -0
- package/dist/src/query-tokenizer.d.ts +33 -0
- package/dist/src/query-tokenizer.d.ts.map +1 -0
- package/dist/src/query-tokenizer.js +84 -0
- package/dist/src/query-tokenizer.js.map +1 -0
- package/dist/src/recall-benchmark.d.ts +13 -0
- package/dist/src/recall-benchmark.d.ts.map +1 -0
- package/dist/src/recall-benchmark.js +256 -0
- package/dist/src/recall-benchmark.js.map +1 -0
- package/dist/src/recall-engine.d.ts +81 -0
- package/dist/src/recall-engine.d.ts.map +1 -0
- package/dist/src/recall-engine.js +387 -0
- package/dist/src/recall-engine.js.map +1 -0
- package/dist/src/redact-secrets.d.ts +20 -0
- package/dist/src/redact-secrets.d.ts.map +1 -0
- package/dist/src/redact-secrets.js +42 -0
- package/dist/src/redact-secrets.js.map +1 -0
- package/dist/src/runtime-store.d.ts +47 -0
- package/dist/src/runtime-store.d.ts.map +1 -0
- package/dist/src/runtime-store.js +78 -0
- package/dist/src/runtime-store.js.map +1 -0
- package/dist/src/session-context.d.ts +10 -0
- package/dist/src/session-context.d.ts.map +1 -0
- package/dist/src/session-context.js +83 -0
- package/dist/src/session-context.js.map +1 -0
- package/dist/src/session-memory.d.ts +8 -0
- package/dist/src/session-memory.d.ts.map +1 -0
- package/dist/src/session-memory.js +45 -0
- package/dist/src/session-memory.js.map +1 -0
- package/dist/src/signature-generator.d.ts +15 -0
- package/dist/src/signature-generator.d.ts.map +1 -0
- package/dist/src/signature-generator.js +78 -0
- package/dist/src/signature-generator.js.map +1 -0
- package/dist/src/sleep/basic.d.ts +48 -0
- package/dist/src/sleep/basic.d.ts.map +1 -0
- package/dist/src/sleep/basic.js +147 -0
- package/dist/src/sleep/basic.js.map +1 -0
- package/dist/src/sleep/levels.d.ts +20 -0
- package/dist/src/sleep/levels.d.ts.map +1 -0
- package/dist/src/sleep/levels.js +11 -0
- package/dist/src/sleep/levels.js.map +1 -0
- package/dist/src/sleep/native.d.ts +41 -0
- package/dist/src/sleep/native.d.ts.map +1 -0
- package/dist/src/sleep/native.js +112 -0
- package/dist/src/sleep/native.js.map +1 -0
- package/dist/src/sleep/orchestrator.d.ts +64 -0
- package/dist/src/sleep/orchestrator.d.ts.map +1 -0
- package/dist/src/sleep/orchestrator.js +960 -0
- package/dist/src/sleep/orchestrator.js.map +1 -0
- package/dist/src/sleep/runtime.d.ts +15 -0
- package/dist/src/sleep/runtime.d.ts.map +1 -0
- package/dist/src/sleep/runtime.js +2 -0
- package/dist/src/sleep/runtime.js.map +1 -0
- package/dist/src/sleep/sleep-daily-summary.d.ts +64 -0
- package/dist/src/sleep/sleep-daily-summary.d.ts.map +1 -0
- package/dist/src/sleep/sleep-daily-summary.js +273 -0
- package/dist/src/sleep/sleep-daily-summary.js.map +1 -0
- package/dist/src/sleep/sleep-extract-daily.d.ts +12 -0
- package/dist/src/sleep/sleep-extract-daily.d.ts.map +1 -0
- package/dist/src/sleep/sleep-extract-daily.js +55 -0
- package/dist/src/sleep/sleep-extract-daily.js.map +1 -0
- package/dist/src/sleep/sleep-prompt-loader.d.ts +27 -0
- package/dist/src/sleep/sleep-prompt-loader.d.ts.map +1 -0
- package/dist/src/sleep/sleep-prompt-loader.js +116 -0
- package/dist/src/sleep/sleep-prompt-loader.js.map +1 -0
- package/dist/src/sleep/test-harness.d.ts +67 -0
- package/dist/src/sleep/test-harness.d.ts.map +1 -0
- package/dist/src/sleep/test-harness.js +121 -0
- package/dist/src/sleep/test-harness.js.map +1 -0
- package/dist/src/sleep/trigger.d.ts +3 -0
- package/dist/src/sleep/trigger.d.ts.map +1 -0
- package/dist/src/sleep/trigger.js +66 -0
- package/dist/src/sleep/trigger.js.map +1 -0
- package/dist/src/sleep-data-access.d.ts +54 -0
- package/dist/src/sleep-data-access.d.ts.map +1 -0
- package/dist/src/sleep-data-access.js +176 -0
- package/dist/src/sleep-data-access.js.map +1 -0
- package/dist/src/sleep-pipeline.d.ts +9 -0
- package/dist/src/sleep-pipeline.d.ts.map +1 -0
- package/dist/src/sleep-pipeline.js +8 -0
- package/dist/src/sleep-pipeline.js.map +1 -0
- package/dist/src/sleep-state-gatherer.d.ts +74 -0
- package/dist/src/sleep-state-gatherer.d.ts.map +1 -0
- package/dist/src/sleep-state-gatherer.js +275 -0
- package/dist/src/sleep-state-gatherer.js.map +1 -0
- package/dist/src/sqlite-backend.d.ts +23 -0
- package/dist/src/sqlite-backend.d.ts.map +1 -0
- package/dist/src/sqlite-backend.js +48 -0
- package/dist/src/sqlite-backend.js.map +1 -0
- package/dist/src/test-helpers.d.ts +3 -0
- package/dist/src/test-helpers.d.ts.map +1 -0
- package/dist/src/test-helpers.js +5 -0
- package/dist/src/test-helpers.js.map +1 -0
- package/dist/src/tier-llm-refinement.d.ts +35 -0
- package/dist/src/tier-llm-refinement.d.ts.map +1 -0
- package/dist/src/tier-llm-refinement.js +131 -0
- package/dist/src/tier-llm-refinement.js.map +1 -0
- package/dist/src/timeline-builder.d.ts +45 -0
- package/dist/src/timeline-builder.d.ts.map +1 -0
- package/dist/src/timeline-builder.js +147 -0
- package/dist/src/timeline-builder.js.map +1 -0
- package/dist/src/trigram-search.d.ts +28 -0
- package/dist/src/trigram-search.d.ts.map +1 -0
- package/dist/src/trigram-search.js +192 -0
- package/dist/src/trigram-search.js.map +1 -0
- package/dist/src/turn-classifier.d.ts +29 -0
- package/dist/src/turn-classifier.d.ts.map +1 -0
- package/dist/src/turn-classifier.js +186 -0
- package/dist/src/turn-classifier.js.map +1 -0
- package/dist/src/user-utils.d.ts +6 -0
- package/dist/src/user-utils.d.ts.map +1 -0
- package/dist/src/user-utils.js +27 -0
- package/dist/src/user-utils.js.map +1 -0
- package/dist/src/wake-up-builder.d.ts +12 -0
- package/dist/src/wake-up-builder.d.ts.map +1 -0
- package/dist/src/wake-up-builder.js +45 -0
- package/dist/src/wake-up-builder.js.map +1 -0
- package/dist/src/wake-up-renderer.d.ts +29 -0
- package/dist/src/wake-up-renderer.d.ts.map +1 -0
- package/dist/src/wake-up-renderer.js +182 -0
- package/dist/src/wake-up-renderer.js.map +1 -0
- package/package.json +87 -5
- package/prompts/sleep/01-gc-noise.md +28 -0
- package/prompts/sleep/02-daily-summary.md +3 -0
- package/prompts/sleep/03-extract-from-daily.md +3 -0
- package/prompts/sleep/04-retrospective.md +30 -0
- package/prompts/sleep/06-feedback.md +17 -0
- package/prompts/sleep/07-topic-assignment.md +23 -0
- package/prompts/sleep/08-core-promotion.md +26 -0
- package/prompts/sleep/09-merge.md +19 -0
- package/prompts/sleep/10-translation.md +17 -0
- package/prompts/sleep/11-skill-review.md +12 -0
- package/prompts/sleep/12-core-knowledge.md +14 -0
- package/prompts/sleep/13-consolidation.md +11 -0
- package/prompts/sleep/14-emotion-context.md +17 -0
- package/prompts/sleep/15-contradiction-and-graph.md +48 -0
- package/prompts/sleep/16-rem-synthesis.md +31 -0
- package/prompts/sleep/basic.md +12 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sleep-data-access.js","sourceRoot":"","sources":["../../src/sleep-data-access.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Sleep pipeline — public API for sleep maintenance.
|
|
3
|
+
* Pure logic, no transport. Host drives the LLM.
|
|
4
|
+
*/
|
|
5
|
+
export { loadSleepSteps, buildSleepVars, substituteVars } from "./sleep/sleep-prompt-loader.js";
|
|
6
|
+
export type { SleepStep } from "./sleep/sleep-prompt-loader.js";
|
|
7
|
+
export { buildDailySummary, writeDailyFile, LLMUnavailableError } from "./sleep/sleep-daily-summary.js";
|
|
8
|
+
export { extractFromDaily } from "./sleep/sleep-extract-daily.js";
|
|
9
|
+
//# sourceMappingURL=sleep-pipeline.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sleep-pipeline.d.ts","sourceRoot":"","sources":["../../src/sleep-pipeline.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChG,YAAY,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AACxG,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Sleep pipeline — public API for sleep maintenance.
|
|
3
|
+
* Pure logic, no transport. Host drives the LLM.
|
|
4
|
+
*/
|
|
5
|
+
export { loadSleepSteps, buildSleepVars, substituteVars } from "./sleep/sleep-prompt-loader.js";
|
|
6
|
+
export { buildDailySummary, writeDailyFile, LLMUnavailableError } from "./sleep/sleep-daily-summary.js";
|
|
7
|
+
export { extractFromDaily } from "./sleep/sleep-extract-daily.js";
|
|
8
|
+
//# sourceMappingURL=sleep-pipeline.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sleep-pipeline.js","sourceRoot":"","sources":["../../src/sleep-pipeline.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAEhG,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AACxG,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import type { MemoryConfig } from "./memory-config.js";
|
|
2
|
+
import type { IMemorySystem } from "./imemory-system.js";
|
|
3
|
+
export interface WorkingDirEntry {
|
|
4
|
+
date: string;
|
|
5
|
+
path: string;
|
|
6
|
+
files: Array<{
|
|
7
|
+
name: string;
|
|
8
|
+
sizeBytes: number;
|
|
9
|
+
}>;
|
|
10
|
+
}
|
|
11
|
+
export interface DbStats {
|
|
12
|
+
messageCount: number;
|
|
13
|
+
messagesSinceLastSleep: number;
|
|
14
|
+
embeddingCount: number;
|
|
15
|
+
nullEmbeddingCount: number;
|
|
16
|
+
extractedMemoryCount: number;
|
|
17
|
+
compressionRatio: number;
|
|
18
|
+
darwinism: {
|
|
19
|
+
avgRecallCount: number;
|
|
20
|
+
avgRelevanceScore: number;
|
|
21
|
+
neverRecalled: number;
|
|
22
|
+
recalledLast30d: number;
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
export interface Fts5Health {
|
|
26
|
+
messages_fts: "ok" | "corrupt" | "dropped";
|
|
27
|
+
extracted_memories_fts: "ok" | "corrupt";
|
|
28
|
+
extracted_memories_original_fts: "ok" | "corrupt" | "dropped";
|
|
29
|
+
}
|
|
30
|
+
export interface TopicFileEntry {
|
|
31
|
+
name: string;
|
|
32
|
+
sizeBytes: number;
|
|
33
|
+
lastModified: string;
|
|
34
|
+
}
|
|
35
|
+
export interface StateSnapshot {
|
|
36
|
+
timestamp: string;
|
|
37
|
+
workingDirs: WorkingDirEntry[];
|
|
38
|
+
dbStats: DbStats;
|
|
39
|
+
fts5Health: Fts5Health;
|
|
40
|
+
diskUsageBytes: number;
|
|
41
|
+
diskBudgetBytes: number;
|
|
42
|
+
topicFiles: TopicFileEntry[];
|
|
43
|
+
lastSleepAudit: string | null;
|
|
44
|
+
lastSleepTimestamp: number | null;
|
|
45
|
+
wakeupDate: string | null;
|
|
46
|
+
todoContents: string | null;
|
|
47
|
+
cronContents: string | null;
|
|
48
|
+
}
|
|
49
|
+
export declare class SleepStateGatherer {
|
|
50
|
+
private config;
|
|
51
|
+
private db;
|
|
52
|
+
private cronContentsFn;
|
|
53
|
+
constructor(memory: IMemorySystem, config: MemoryConfig, cronContentsFn?: () => string | null);
|
|
54
|
+
gather(): Promise<StateSnapshot>;
|
|
55
|
+
/** Scan working directories under {memoryDir}/working/ */
|
|
56
|
+
private scanWorkingDirs;
|
|
57
|
+
/** Query DB for aggregate statistics. */
|
|
58
|
+
private queryDbStats;
|
|
59
|
+
/** Execute FTS5 integrity-check on each virtual table. */
|
|
60
|
+
private checkFts5Health;
|
|
61
|
+
/** Calculate total disk usage across the memory directory tree. */
|
|
62
|
+
private calculateDiskUsage;
|
|
63
|
+
/** List topic files in {abmindHome}/topics/ with metadata. */
|
|
64
|
+
private listTopicFiles;
|
|
65
|
+
/** Read a file's contents or return null if missing. */
|
|
66
|
+
private readFileOrNull;
|
|
67
|
+
/** Get ISO timestamp of the most recent sleep audit file. */
|
|
68
|
+
private getLastSleepAudit;
|
|
69
|
+
/** Derive wake-up date from last sleep audit (the date portion). */
|
|
70
|
+
private getWakeupDate;
|
|
71
|
+
/** Get last sleep audit as epoch ms (for DB timestamp queries). */
|
|
72
|
+
private getLastSleepTimestamp;
|
|
73
|
+
}
|
|
74
|
+
//# sourceMappingURL=sleep-state-gatherer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sleep-state-gatherer.d.ts","sourceRoot":"","sources":["../../src/sleep-state-gatherer.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAQzD,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,KAAK,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC,CAAC;CACJ;AAED,MAAM,WAAW,OAAO;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,sBAAsB,EAAE,MAAM,CAAC;IAC/B,cAAc,EAAE,MAAM,CAAC;IACvB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,gBAAgB,EAAE,MAAM,CAAC;IACzB,SAAS,EAAE;QACT,cAAc,EAAE,MAAM,CAAC;QACvB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,aAAa,EAAE,MAAM,CAAC;QACtB,eAAe,EAAE,MAAM,CAAC;KACzB,CAAC;CACH;AAED,MAAM,WAAW,UAAU;IACzB,YAAY,EAAE,IAAI,GAAG,SAAS,GAAG,SAAS,CAAC;IAC3C,sBAAsB,EAAE,IAAI,GAAG,SAAS,CAAC;IACzC,+BAA+B,EAAE,IAAI,GAAG,SAAS,GAAG,SAAS,CAAC;CAC/D;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,eAAe,EAAE,CAAC;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,UAAU,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,cAAc,EAAE,CAAC;IAC7B,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B;AAED,qBAAa,kBAAkB;IAK3B,OAAO,CAAC,MAAM;IAJhB,OAAO,CAAC,EAAE,CAAoB;IAC9B,OAAO,CAAC,cAAc,CAA+B;gBAEnD,MAAM,EAAE,aAAa,EACb,MAAM,EAAE,YAAY,EAC5B,cAAc,CAAC,EAAE,MAAM,MAAM,GAAG,IAAI;IAMhC,MAAM,IAAI,OAAO,CAAC,aAAa,CAAC;IAoCtC,0DAA0D;IAC1D,OAAO,CAAC,eAAe;IAyCvB,yCAAyC;IACzC,OAAO,CAAC,YAAY;IAqDpB,0DAA0D;IAC1D,OAAO,CAAC,eAAe;IAwBvB,mEAAmE;IACnE,OAAO,CAAC,kBAAkB;IA4B1B,8DAA8D;IAC9D,OAAO,CAAC,cAAc;IAgCtB,wDAAwD;IACxD,OAAO,CAAC,cAAc;IAQtB,6DAA6D;IAC7D,OAAO,CAAC,iBAAiB;IAkBzB,oEAAoE;IACpE,OAAO,CAAC,aAAa;IAKrB,mEAAmE;IACnE,OAAO,CAAC,qBAAqB;CAQ9B"}
|
|
@@ -0,0 +1,275 @@
|
|
|
1
|
+
import { readdirSync, statSync, existsSync, readFileSync } from "node:fs";
|
|
2
|
+
import { join, dirname } from "node:path";
|
|
3
|
+
import { localISO } from "./local-time.js";
|
|
4
|
+
import { logInfo, logWarn, logError } from "./mem-logger.js";
|
|
5
|
+
const TAG = "sleep-state-gatherer";
|
|
6
|
+
export class SleepStateGatherer {
|
|
7
|
+
config;
|
|
8
|
+
db;
|
|
9
|
+
cronContentsFn;
|
|
10
|
+
constructor(memory, config, cronContentsFn) {
|
|
11
|
+
this.config = config;
|
|
12
|
+
this.db = memory.getSleepData().getDb();
|
|
13
|
+
this.cronContentsFn = cronContentsFn ?? null;
|
|
14
|
+
}
|
|
15
|
+
async gather() {
|
|
16
|
+
const timestamp = localISO();
|
|
17
|
+
logInfo(TAG, "Gathering system state snapshot");
|
|
18
|
+
const workingDirs = this.scanWorkingDirs();
|
|
19
|
+
const lastSleepTimestamp = this.getLastSleepTimestamp();
|
|
20
|
+
const dbStats = this.queryDbStats(lastSleepTimestamp);
|
|
21
|
+
const fts5Health = this.checkFts5Health();
|
|
22
|
+
const diskUsageBytes = this.calculateDiskUsage();
|
|
23
|
+
const topicFiles = this.listTopicFiles();
|
|
24
|
+
const snapshot = {
|
|
25
|
+
timestamp,
|
|
26
|
+
workingDirs,
|
|
27
|
+
dbStats,
|
|
28
|
+
fts5Health,
|
|
29
|
+
diskUsageBytes,
|
|
30
|
+
diskBudgetBytes: this.config.diskBudgetBytes,
|
|
31
|
+
topicFiles,
|
|
32
|
+
lastSleepAudit: this.getLastSleepAudit(),
|
|
33
|
+
lastSleepTimestamp,
|
|
34
|
+
wakeupDate: this.getWakeupDate(),
|
|
35
|
+
todoContents: this.readFileOrNull(join(dirname(this.config.memoryDir), "memory", "todo.md")),
|
|
36
|
+
cronContents: this.cronContentsFn ? this.cronContentsFn() : null,
|
|
37
|
+
};
|
|
38
|
+
logInfo(TAG, `State snapshot gathered: ${workingDirs.length} working dirs, ` +
|
|
39
|
+
`${dbStats.messageCount} messages, ${topicFiles.length} topic files, ` +
|
|
40
|
+
`${(diskUsageBytes / 1024 / 1024).toFixed(1)} MB disk usage`);
|
|
41
|
+
return snapshot;
|
|
42
|
+
}
|
|
43
|
+
/** Scan working directories under {memoryDir}/working/ */
|
|
44
|
+
scanWorkingDirs() {
|
|
45
|
+
const workingRoot = join(this.config.memoryDir, "working");
|
|
46
|
+
if (!existsSync(workingRoot)) {
|
|
47
|
+
logWarn(TAG, `Working directory not found: ${workingRoot}`);
|
|
48
|
+
return [];
|
|
49
|
+
}
|
|
50
|
+
const entries = [];
|
|
51
|
+
try {
|
|
52
|
+
const dirs = readdirSync(workingRoot, { withFileTypes: true });
|
|
53
|
+
for (const dir of dirs) {
|
|
54
|
+
if (!dir.isDirectory())
|
|
55
|
+
continue;
|
|
56
|
+
// Expect YYYY-MM-DD format
|
|
57
|
+
if (!/^\d{4}-\d{2}-\d{2}$/.test(dir.name))
|
|
58
|
+
continue;
|
|
59
|
+
const dirPath = join(workingRoot, dir.name);
|
|
60
|
+
const files = [];
|
|
61
|
+
try {
|
|
62
|
+
const fileEntries = readdirSync(dirPath, { withFileTypes: true });
|
|
63
|
+
for (const file of fileEntries) {
|
|
64
|
+
if (!file.isFile())
|
|
65
|
+
continue;
|
|
66
|
+
try {
|
|
67
|
+
const fileStat = statSync(join(dirPath, file.name));
|
|
68
|
+
files.push({ name: file.name, sizeBytes: fileStat.size });
|
|
69
|
+
}
|
|
70
|
+
catch (err) {
|
|
71
|
+
logWarn(TAG, `Failed to stat file ${join(dirPath, file.name)}: ${err}`);
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
catch (err) {
|
|
76
|
+
logWarn(TAG, `Failed to read working directory ${dirPath}: ${err}`);
|
|
77
|
+
}
|
|
78
|
+
entries.push({ date: dir.name, path: dirPath, files });
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
catch (err) {
|
|
82
|
+
logWarn(TAG, `Failed to scan working root ${workingRoot}: ${err}`);
|
|
83
|
+
}
|
|
84
|
+
return entries.sort((a, b) => a.date.localeCompare(b.date));
|
|
85
|
+
}
|
|
86
|
+
/** Query DB for aggregate statistics. */
|
|
87
|
+
queryDbStats(lastSleepTimestamp) {
|
|
88
|
+
const count = (table) => {
|
|
89
|
+
try {
|
|
90
|
+
const row = this.db.prepare(`SELECT COUNT(*) as cnt FROM ${table}`).get();
|
|
91
|
+
return row.cnt;
|
|
92
|
+
}
|
|
93
|
+
catch (err) {
|
|
94
|
+
logError(TAG, `Failed to count rows in ${table}`, err);
|
|
95
|
+
throw err;
|
|
96
|
+
}
|
|
97
|
+
};
|
|
98
|
+
const countWhere = (table, where) => {
|
|
99
|
+
try {
|
|
100
|
+
const row = this.db.prepare(`SELECT COUNT(*) as cnt FROM ${table} WHERE ${where}`).get();
|
|
101
|
+
return row.cnt;
|
|
102
|
+
}
|
|
103
|
+
catch {
|
|
104
|
+
return 0;
|
|
105
|
+
}
|
|
106
|
+
};
|
|
107
|
+
const messageCount = count("messages");
|
|
108
|
+
const messagesSinceLastSleep = lastSleepTimestamp !== null
|
|
109
|
+
? countWhere("messages", `timestamp >= ${lastSleepTimestamp}`)
|
|
110
|
+
: messageCount;
|
|
111
|
+
const extractedMemoryCount = count("extracted_memories");
|
|
112
|
+
// Darwinism stats
|
|
113
|
+
let darwinism = { avgRecallCount: 0, avgRelevanceScore: 0, neverRecalled: 0, recalledLast30d: 0 };
|
|
114
|
+
try {
|
|
115
|
+
const stats = this.db.prepare(`
|
|
116
|
+
SELECT COALESCE(AVG(recall_count), 0) as avgRecall,
|
|
117
|
+
COALESCE(AVG(relevance_score), 0) as avgRelevance,
|
|
118
|
+
SUM(CASE WHEN COALESCE(recall_count, 0) = 0 THEN 1 ELSE 0 END) as neverRecalled,
|
|
119
|
+
SUM(CASE WHEN last_recalled_at > ? THEN 1 ELSE 0 END) as recalledLast30d
|
|
120
|
+
FROM extracted_memories
|
|
121
|
+
`).get(Date.now() - 30 * 86400000);
|
|
122
|
+
darwinism = {
|
|
123
|
+
avgRecallCount: Math.round(stats.avgRecall * 10) / 10,
|
|
124
|
+
avgRelevanceScore: Math.round(stats.avgRelevance * 10) / 10,
|
|
125
|
+
neverRecalled: stats.neverRecalled ?? 0,
|
|
126
|
+
recalledLast30d: stats.recalledLast30d ?? 0,
|
|
127
|
+
};
|
|
128
|
+
}
|
|
129
|
+
catch { /* columns may not exist yet */ }
|
|
130
|
+
return {
|
|
131
|
+
messageCount,
|
|
132
|
+
messagesSinceLastSleep,
|
|
133
|
+
embeddingCount: countWhere("extracted_memories", "embedding IS NOT NULL"),
|
|
134
|
+
nullEmbeddingCount: countWhere("extracted_memories", "embedding IS NULL"),
|
|
135
|
+
extractedMemoryCount,
|
|
136
|
+
compressionRatio: messageCount > 0 ? Math.round((extractedMemoryCount / messageCount) * 100) / 100 : 0,
|
|
137
|
+
darwinism,
|
|
138
|
+
};
|
|
139
|
+
}
|
|
140
|
+
/** Execute FTS5 integrity-check on each virtual table. */
|
|
141
|
+
checkFts5Health() {
|
|
142
|
+
const check = (table) => {
|
|
143
|
+
try {
|
|
144
|
+
// FTS5 integrity-check: throws if the index is corrupt
|
|
145
|
+
this.db.exec(`INSERT INTO ${table}(${table}) VALUES('integrity-check')`);
|
|
146
|
+
return "ok";
|
|
147
|
+
}
|
|
148
|
+
catch {
|
|
149
|
+
return "corrupt";
|
|
150
|
+
}
|
|
151
|
+
};
|
|
152
|
+
const checkDropped = (table) => {
|
|
153
|
+
try {
|
|
154
|
+
this.db.exec(`SELECT count(*) FROM ${table} LIMIT 1`);
|
|
155
|
+
return check(table);
|
|
156
|
+
}
|
|
157
|
+
catch {
|
|
158
|
+
return "dropped";
|
|
159
|
+
}
|
|
160
|
+
};
|
|
161
|
+
return {
|
|
162
|
+
messages_fts: checkDropped("messages_fts"),
|
|
163
|
+
extracted_memories_fts: check("extracted_memories_fts"),
|
|
164
|
+
extracted_memories_original_fts: checkDropped("extracted_memories_original_fts"),
|
|
165
|
+
};
|
|
166
|
+
}
|
|
167
|
+
/** Calculate total disk usage across the memory directory tree. */
|
|
168
|
+
calculateDiskUsage() {
|
|
169
|
+
let totalBytes = 0;
|
|
170
|
+
const walk = (dir) => {
|
|
171
|
+
if (!existsSync(dir))
|
|
172
|
+
return;
|
|
173
|
+
try {
|
|
174
|
+
const entries = readdirSync(dir, { withFileTypes: true });
|
|
175
|
+
for (const entry of entries) {
|
|
176
|
+
const fullPath = join(dir, entry.name);
|
|
177
|
+
if (entry.isDirectory()) {
|
|
178
|
+
walk(fullPath);
|
|
179
|
+
}
|
|
180
|
+
else if (entry.isFile()) {
|
|
181
|
+
try {
|
|
182
|
+
totalBytes += statSync(fullPath).size;
|
|
183
|
+
}
|
|
184
|
+
catch {
|
|
185
|
+
// skip unreadable files
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
catch {
|
|
191
|
+
// skip unreadable directories
|
|
192
|
+
}
|
|
193
|
+
};
|
|
194
|
+
walk(this.config.memoryDir);
|
|
195
|
+
return totalBytes;
|
|
196
|
+
}
|
|
197
|
+
/** List topic files in {abmindHome}/topics/ with metadata. */
|
|
198
|
+
listTopicFiles() {
|
|
199
|
+
// Topics dir is at the abmind root level, one level up from memoryDir
|
|
200
|
+
// memoryDir = ~/.abmind/memory → topics = ~/.abmind/topics
|
|
201
|
+
const topicsDir = join(dirname(this.config.memoryDir), "topics");
|
|
202
|
+
if (!existsSync(topicsDir)) {
|
|
203
|
+
logWarn(TAG, `Topics directory not found: ${topicsDir}`);
|
|
204
|
+
return [];
|
|
205
|
+
}
|
|
206
|
+
const entries = [];
|
|
207
|
+
try {
|
|
208
|
+
const files = readdirSync(topicsDir, { withFileTypes: true });
|
|
209
|
+
for (const file of files) {
|
|
210
|
+
if (!file.isFile() || !file.name.endsWith(".md"))
|
|
211
|
+
continue;
|
|
212
|
+
try {
|
|
213
|
+
const fileStat = statSync(join(topicsDir, file.name));
|
|
214
|
+
entries.push({
|
|
215
|
+
name: file.name,
|
|
216
|
+
sizeBytes: fileStat.size,
|
|
217
|
+
lastModified: localISO(fileStat.mtime),
|
|
218
|
+
});
|
|
219
|
+
}
|
|
220
|
+
catch (err) {
|
|
221
|
+
logWarn(TAG, `Failed to stat topic file ${file.name}: ${err}`);
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
}
|
|
225
|
+
catch (err) {
|
|
226
|
+
logWarn(TAG, `Failed to read topics directory ${topicsDir}: ${err}`);
|
|
227
|
+
}
|
|
228
|
+
return entries;
|
|
229
|
+
}
|
|
230
|
+
/** Read a file's contents or return null if missing. */
|
|
231
|
+
readFileOrNull(path) {
|
|
232
|
+
try {
|
|
233
|
+
return existsSync(path) ? readFileSync(path, "utf-8") : null;
|
|
234
|
+
}
|
|
235
|
+
catch {
|
|
236
|
+
return null;
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
/** Get ISO timestamp of the most recent sleep audit file. */
|
|
240
|
+
getLastSleepAudit() {
|
|
241
|
+
const auditDir = join(this.config.memoryDir, "sleep");
|
|
242
|
+
if (!existsSync(auditDir))
|
|
243
|
+
return null;
|
|
244
|
+
try {
|
|
245
|
+
const files = readdirSync(auditDir)
|
|
246
|
+
.filter((f) => /^sleep_\d{8}_\d{6}\.md$/.test(f))
|
|
247
|
+
.sort()
|
|
248
|
+
.reverse();
|
|
249
|
+
if (files.length === 0)
|
|
250
|
+
return null;
|
|
251
|
+
const match = files[0].match(/^sleep_(\d{4})(\d{2})(\d{2})_(\d{2})(\d{2})(\d{2})\.md$/);
|
|
252
|
+
if (!match)
|
|
253
|
+
return null;
|
|
254
|
+
const [, y, mo, d, h, mi, s] = match;
|
|
255
|
+
return localISO(new Date(+y, +mo - 1, +d, +h, +mi, +s));
|
|
256
|
+
}
|
|
257
|
+
catch {
|
|
258
|
+
return null;
|
|
259
|
+
}
|
|
260
|
+
}
|
|
261
|
+
/** Derive wake-up date from last sleep audit (the date portion). */
|
|
262
|
+
getWakeupDate() {
|
|
263
|
+
const audit = this.getLastSleepAudit();
|
|
264
|
+
return audit ? audit.slice(0, 10) : null;
|
|
265
|
+
}
|
|
266
|
+
/** Get last sleep audit as epoch ms (for DB timestamp queries). */
|
|
267
|
+
getLastSleepTimestamp() {
|
|
268
|
+
const audit = this.getLastSleepAudit();
|
|
269
|
+
if (!audit)
|
|
270
|
+
return null;
|
|
271
|
+
const ts = new Date(audit).getTime();
|
|
272
|
+
return Number.isFinite(ts) ? ts : null;
|
|
273
|
+
}
|
|
274
|
+
}
|
|
275
|
+
//# sourceMappingURL=sleep-state-gatherer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sleep-state-gatherer.js","sourceRoot":"","sources":["../../src/sleep-state-gatherer.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SqliteBackend — default MemoryBackend backed by SQLite + FTS5.
|
|
3
|
+
* Wraps MemoryManager and its sub-services.
|
|
4
|
+
*/
|
|
5
|
+
import type { InstantStoreParams, InstantStoreResult, EditMemoryParams, EditMemoryResult, ForgetResult } from "./mem-types.js";
|
|
6
|
+
import type { RecallParams, RecallResult } from "./recall-engine.js";
|
|
7
|
+
import type { MergeResult, MemoryBackend } from "./memory-backend.js";
|
|
8
|
+
import type { MemoryConfig } from "./memory-config.js";
|
|
9
|
+
export declare class SqliteBackend implements MemoryBackend {
|
|
10
|
+
private memory;
|
|
11
|
+
private readonly config;
|
|
12
|
+
constructor(config: MemoryConfig);
|
|
13
|
+
initialize(): Promise<void>;
|
|
14
|
+
close(): void;
|
|
15
|
+
instantStore(params: InstantStoreParams): Promise<InstantStoreResult>;
|
|
16
|
+
editMemory(params: EditMemoryParams): Promise<EditMemoryResult>;
|
|
17
|
+
reclassifyMemory(id: number, level: number, userOverride: boolean): Promise<void>;
|
|
18
|
+
adjustRelevance(id: number, delta: number): Promise<void>;
|
|
19
|
+
mergeMemories(idA: number, idB: number): Promise<MergeResult>;
|
|
20
|
+
cascadeDelete(messageIds: number[], userId: string): Promise<ForgetResult>;
|
|
21
|
+
recall(params: RecallParams): Promise<RecallResult>;
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=sqlite-backend.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sqlite-backend.d.ts","sourceRoot":"","sources":["../../src/sqlite-backend.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC/H,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACrE,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAGtE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvD,qBAAa,aAAc,YAAW,aAAa;IACjD,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAe;gBAE1B,MAAM,EAAE,YAAY;IAK1B,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAIjC,KAAK,IAAI,IAAI;IAIP,YAAY,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAIrE,UAAU,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAI/D,gBAAgB,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAIjF,eAAe,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIzD,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAI7D,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAI1E,MAAM,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;CAU1D"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SqliteBackend — default MemoryBackend backed by SQLite + FTS5.
|
|
3
|
+
* Wraps MemoryManager and its sub-services.
|
|
4
|
+
*/
|
|
5
|
+
import { MemoryManager } from "./memory-manager.js";
|
|
6
|
+
import { recallSearch } from "./recall-engine.js";
|
|
7
|
+
export class SqliteBackend {
|
|
8
|
+
memory;
|
|
9
|
+
config;
|
|
10
|
+
constructor(config) {
|
|
11
|
+
this.config = config;
|
|
12
|
+
this.memory = new MemoryManager(config);
|
|
13
|
+
}
|
|
14
|
+
async initialize() {
|
|
15
|
+
await this.memory.initialize({ skipEmbeddingCheck: true });
|
|
16
|
+
}
|
|
17
|
+
close() {
|
|
18
|
+
this.memory.close();
|
|
19
|
+
}
|
|
20
|
+
async instantStore(params) {
|
|
21
|
+
return this.memory.editor.instantStore(params);
|
|
22
|
+
}
|
|
23
|
+
async editMemory(params) {
|
|
24
|
+
return this.memory.editor.editMemory(params);
|
|
25
|
+
}
|
|
26
|
+
async reclassifyMemory(id, level, userOverride) {
|
|
27
|
+
this.memory.editor.reclassifyMemory(id, level, userOverride);
|
|
28
|
+
}
|
|
29
|
+
async adjustRelevance(id, delta) {
|
|
30
|
+
this.memory.editor.adjustRelevance(id, delta);
|
|
31
|
+
}
|
|
32
|
+
async mergeMemories(idA, idB) {
|
|
33
|
+
return this.memory.editor.mergeMemories(idA, idB);
|
|
34
|
+
}
|
|
35
|
+
async cascadeDelete(messageIds, userId) {
|
|
36
|
+
return this.memory.editor.cascadeDelete(messageIds, userId);
|
|
37
|
+
}
|
|
38
|
+
async recall(params) {
|
|
39
|
+
const db = this.memory.getDatabase();
|
|
40
|
+
if (!db)
|
|
41
|
+
throw new Error("Database not initialized");
|
|
42
|
+
const index = this.memory.getMemoryIndex();
|
|
43
|
+
if (!index)
|
|
44
|
+
throw new Error("Memory index not initialized");
|
|
45
|
+
return recallSearch({ db, index, memoryDir: this.config.memoryDir }, params);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=sqlite-backend.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sqlite-backend.js","sourceRoot":"","sources":["../../src/sqlite-backend.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAGlD,MAAM,OAAO,aAAa;IAChB,MAAM,CAAgB;IACb,MAAM,CAAe;IAEtC,YAAY,MAAoB;QAC9B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,MAAM,GAAG,IAAI,aAAa,CAAC,MAAM,CAAC,CAAC;IAC1C,CAAC;IAED,KAAK,CAAC,UAAU;QACd,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,kBAAkB,EAAE,IAAI,EAAE,CAAC,CAAC;IAC7D,CAAC;IAED,KAAK;QACH,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,MAA0B;QAC3C,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;IACjD,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,MAAwB;QACvC,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;IAC/C,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,EAAU,EAAE,KAAa,EAAE,YAAqB;QACrE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,EAAE,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC;IAC/D,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,EAAU,EAAE,KAAa;QAC7C,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;IAChD,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,GAAW,EAAE,GAAW;QAC1C,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,CAAgB,CAAC;IACnE,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,UAAoB,EAAE,MAAc;QACtD,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;IAC9D,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,MAAoB;QAC/B,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;QACrC,IAAI,CAAC,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;QACrD,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;QAC3C,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;QAC5D,OAAO,YAAY,CACjB,EAAE,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,EAC/C,MAAM,CACP,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"test-helpers.d.ts","sourceRoot":"","sources":["../../src/test-helpers.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvD,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,GAAE,OAAO,CAAC,YAAY,CAAM,GAAG,YAAY,CAExG"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"test-helpers.js","sourceRoot":"","sources":["../../src/test-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAG5D,MAAM,UAAU,oBAAoB,CAAC,MAAc,EAAE,YAAmC,EAAE;IACxF,OAAO,EAAE,GAAG,sBAAsB,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,SAAS,EAAE,CAAC;AACxE,CAAC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* tier-llm-refinement.ts — Optional LLM-based refinement for #348 Phase 2.
|
|
3
|
+
*
|
|
4
|
+
* Runs when COMPACTION_LLM_ENABLED=true. Takes heuristic-classified messages
|
|
5
|
+
* and refines their ABM-L rendering via an LLM. Cached per (chatId, messageId).
|
|
6
|
+
* Falls back to heuristic on any failure — never blocks, never replaces.
|
|
7
|
+
*
|
|
8
|
+
* Fires async in afterTurn() / afterResponse() — user never waits.
|
|
9
|
+
*/
|
|
10
|
+
import type { MessageWithHints } from "./context-tier-renderer.js";
|
|
11
|
+
/**
|
|
12
|
+
* LLM function signature for refinement.
|
|
13
|
+
* Takes a system prompt + user prompt, returns refined output.
|
|
14
|
+
*/
|
|
15
|
+
export type RefineLlmFn = (systemPrompt: string, userPrompt: string, maxTokens?: number) => Promise<string>;
|
|
16
|
+
/**
|
|
17
|
+
* Simple LRU cache. In-memory only. Lost on restart — acceptable because
|
|
18
|
+
* next batch refills. Size cap prevents unbounded growth.
|
|
19
|
+
*/
|
|
20
|
+
export declare class LlmRefinementCache {
|
|
21
|
+
private entries;
|
|
22
|
+
private readonly maxSize;
|
|
23
|
+
constructor(maxSize?: number);
|
|
24
|
+
get(chatId: string, messageId: number): string | null;
|
|
25
|
+
set(chatId: string, messageId: number, refined: string): void;
|
|
26
|
+
evictChatRange(chatId: string, startMessageId: number, endMessageId: number): number;
|
|
27
|
+
size(): number;
|
|
28
|
+
clear(): void;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Refine a batch of messages via LLM. Returns map of messageId → refined string.
|
|
32
|
+
* On any failure, returns empty map (caller falls back to heuristic).
|
|
33
|
+
*/
|
|
34
|
+
export declare function refineBatch(messages: MessageWithHints[], llmCall: RefineLlmFn): Promise<Map<number, string>>;
|
|
35
|
+
//# sourceMappingURL=tier-llm-refinement.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tier-llm-refinement.d.ts","sourceRoot":"","sources":["../../src/tier-llm-refinement.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAKnE;;;GAGG;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;AAS5G;;;GAGG;AACH,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,OAAO,CAAiC;IAChD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;gBAErB,OAAO,SAAS;IAI5B,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAUrD,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAU7D,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,MAAM;IAcpF,IAAI,IAAI,MAAM;IAId,KAAK,IAAI,IAAI;CAGd;AAcD;;;GAGG;AACH,wBAAsB,WAAW,CAC/B,QAAQ,EAAE,gBAAgB,EAAE,EAC5B,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CA2B9B"}
|