smartmemory-core 0.8.0__tar.gz → 0.9.0__tar.gz
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.
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/PKG-INFO +66 -23
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/README.md +57 -14
- smartmemory_core-0.9.0/VERSION +1 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/config.json +12 -25
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/pyproject.toml +13 -7
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/scripts/migrate_claude_memory.py +1 -1
- smartmemory_core-0.9.0/smartmemory/activation/__init__.py +52 -0
- smartmemory_core-0.9.0/smartmemory/activation/boost.py +303 -0
- smartmemory_core-0.9.0/smartmemory/activation/compaction.py +483 -0
- smartmemory_core-0.9.0/smartmemory/activation/compaction_constants.py +69 -0
- smartmemory_core-0.9.0/smartmemory/activation/constants.py +91 -0
- smartmemory_core-0.9.0/smartmemory/activation/decay_sweep.py +421 -0
- smartmemory_core-0.9.0/smartmemory/activation/migration.py +134 -0
- smartmemory_core-0.9.0/smartmemory/activation/score.py +131 -0
- smartmemory_core-0.9.0/smartmemory/activation/summarize.py +103 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/anchors/manager.py +33 -1
- smartmemory_core-0.9.0/smartmemory/anchors/queries.py +271 -0
- smartmemory_core-0.9.0/smartmemory/backends/__init__.py +8 -0
- smartmemory_core-0.9.0/smartmemory/backends/unsupported.py +72 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/cli.py +80 -2
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/clustering/deduplicator.py +1 -1
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/clustering/llm.py +1 -1
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/configuration/__init__.py +1 -1
- smartmemory_core-0.9.0/smartmemory/configuration/graph_name.py +127 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/configuration/validator.py +1 -1
- smartmemory_core-0.9.0/smartmemory/conversation/bulk_ingest.py +344 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/data/seed_patterns.jsonl +15 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/evolution/registry.py +78 -19
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/extraction/extractor.py +1 -1
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/backends/__init__.py +4 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/backends/async_falkordb.py +38 -16
- smartmemory_core-0.9.0/smartmemory/graph/backends/async_sqlite.py +38 -0
- smartmemory_core-0.9.0/smartmemory/graph/backends/codec.py +177 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/backends/falkordb.py +1073 -90
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/backends/sqlite.py +95 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/core/search.py +78 -18
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/models/node_types.py +17 -2
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/models/schema_validator.py +20 -1
- smartmemory_core-0.9.0/smartmemory/graph/ontology_graph.py +2763 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/smartgraph.py +156 -30
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/grounding/miner.py +9 -1
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/grounding/schemas.py +1 -1
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/grounding/sparql_client.py +13 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/integration/llm/llm_client.py +152 -14
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/interfaces.py +44 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/managers/debug.py +7 -15
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/managers/evolution.py +3 -8
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/base.py +25 -2
- smartmemory_core-0.9.0/smartmemory/memory/ingestion/document_loaders.py +219 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/ingestion/enrichment.py +43 -2
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/ingestion/extraction.py +3 -1
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/ingestion/handlers/anchor.py +12 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/ingestion/handlers/code_entity.py +23 -0
- smartmemory_core-0.9.0/smartmemory/memory/ingestion/handlers/conversation.py +77 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/ingestion/handlers/conversation_turn.py +14 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/ingestion/handlers/decision.py +18 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/ingestion/handlers/document.py +26 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/ingestion/handlers/hook_capture.py +12 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/ingestion/handlers/plan.py +15 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/ingestion/handlers/plan_task.py +15 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/ingestion/handlers/seed_item.py +11 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/ingestion/handlers/tool_call.py +14 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/ingestion/observer.py +9 -8
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/ingestion/registry.py +1 -1
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/ingestion/storage.py +2 -2
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/ingestion/structured.py +16 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/ingestion/utils.py +95 -1
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/memory_factory.py +14 -8
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/migrate.py +15 -15
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/classification.py +1 -1
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/config.py +6 -1
- smartmemory_core-0.9.0/smartmemory/memory/pipeline/enrichment.py +342 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/extractor.py +26 -20
- smartmemory_core-0.9.0/smartmemory/memory/pipeline/grounding.py +429 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/input_adapter.py +7 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/linking.py +9 -9
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/stages/clustering.py +1 -1
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/stages/coreference.py +9 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/stages/crud.py +24 -6
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/stages/enrichment.py +46 -21
- smartmemory_core-0.9.0/smartmemory/memory/pipeline/stages/evolution.py +144 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/stages/linking.py +17 -4
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/stages/monitoring.py +18 -6
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/stages/search.py +3 -3
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/types/episodic_memory.py +2 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/types/factory_memory_creator.py +5 -5
- smartmemory_core-0.9.0/smartmemory/memory/types/pending_memory.py +48 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/types/zettel_extensions.py +16 -5
- smartmemory_core-0.9.0/smartmemory/migrations/__init__.py +8 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/link_types.py +1 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/memory_item.py +7 -1
- smartmemory_core-0.9.0/smartmemory/models/snapshot.py +214 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/observability/events.py +7 -9
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/observability/retrieval_tracking.py +92 -1
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/observability/tracing.py +76 -0
- smartmemory_core-0.9.0/smartmemory/ontology/blocklist.py +62 -0
- smartmemory_core-0.9.0/smartmemory/ontology/evidence_store.py +164 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/ontology/in_memory_store.py +2 -6
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/ontology/inference/inference.py +235 -24
- smartmemory_core-0.9.0/smartmemory/ontology/layers.py +193 -0
- smartmemory_core-0.9.0/smartmemory/ontology/observations.py +36 -0
- smartmemory_core-0.9.0/smartmemory/ontology/observers.py +170 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/ontology/pattern_manager.py +1 -1
- smartmemory_core-0.9.0/smartmemory/ontology/promoter.py +235 -0
- smartmemory_core-0.9.0/smartmemory/ontology/promotion.py +23 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/ontology/reasoning_validator.py +5 -1
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/ontology/registry.py +4 -1
- smartmemory_core-0.9.0/smartmemory/ontology/scoring.py +86 -0
- smartmemory_core-0.9.0/smartmemory/ontology/service.py +1502 -0
- smartmemory_core-0.9.0/smartmemory/ontology/sqlite_store.py +1214 -0
- smartmemory_core-0.9.0/smartmemory/ontology/tiers.py +77 -0
- smartmemory_core-0.9.0/smartmemory/ontology/types.py +160 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/pipeline/config.py +98 -0
- smartmemory_core-0.9.0/smartmemory/pipeline/dag.py +84 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/pipeline/metrics_consumer.py +126 -0
- smartmemory_core-0.9.0/smartmemory/pipeline/router.py +61 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/pipeline/runner.py +55 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/pipeline/stages/__init__.py +3 -0
- smartmemory_core-0.9.0/smartmemory/pipeline/stages/alias_link.py +179 -0
- smartmemory_core-0.9.0/smartmemory/pipeline/stages/consolidation_router.py +150 -0
- smartmemory_core-0.9.0/smartmemory/pipeline/stages/discoverability.py +203 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/pipeline/stages/link.py +1 -1
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/pipeline/stages/llm_extract.py +125 -2
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/pipeline/stages/ontology_constrain.py +252 -18
- smartmemory_core-0.9.0/smartmemory/pipeline/stages/store.py +505 -0
- smartmemory_core-0.9.0/smartmemory/pipeline/stages/supersede.py +258 -0
- smartmemory_core-0.9.0/smartmemory/pipeline/stages/temporal_resolve.py +210 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/pipeline/state.py +12 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plans/failure_journal.py +29 -8
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plans/queries.py +68 -8
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/base.py +29 -4
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/embedding.py +59 -11
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/enrichers/basic.py +28 -5
- smartmemory_core-0.9.0/smartmemory/plugins/evolvers/__init__.py +71 -0
- smartmemory_core-0.9.0/smartmemory/plugins/evolvers/anchor_reconciliation.py +331 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/evolvers/decision_confidence.py +99 -62
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/evolvers/enhanced/exponential_decay.py +23 -11
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/evolvers/enhanced/hebbian_co_retrieval.py +22 -17
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/evolvers/enhanced/interference_based_consolidation.py +25 -7
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/evolvers/enhanced/retrieval_based_strengthening.py +46 -15
- smartmemory_core-0.9.0/smartmemory/plugins/evolvers/enhanced/working_to_episodic.py +268 -0
- smartmemory_core-0.9.0/smartmemory/plugins/evolvers/episodic_decay.py +126 -0
- smartmemory_core-0.9.0/smartmemory/plugins/evolvers/episodic_to_semantic.py +178 -0
- smartmemory_core-0.9.0/smartmemory/plugins/evolvers/episodic_to_zettel.py +133 -0
- smartmemory_core-0.9.0/smartmemory/plugins/evolvers/memory_consolidation.py +404 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/evolvers/observation_synthesis.py +140 -152
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/evolvers/opinion_reinforcement.py +85 -55
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/evolvers/opinion_synthesis.py +67 -47
- smartmemory_core-0.9.0/smartmemory/plugins/evolvers/procedural_reinforcement.py +211 -0
- smartmemory_core-0.9.0/smartmemory/plugins/evolvers/qa_heuristic.py +99 -0
- smartmemory_core-0.9.0/smartmemory/plugins/evolvers/resolution_chain.py +360 -0
- smartmemory_core-0.9.0/smartmemory/plugins/evolvers/result.py +55 -0
- smartmemory_core-0.9.0/smartmemory/plugins/evolvers/semantic_decay.py +111 -0
- smartmemory_core-0.9.0/smartmemory/plugins/evolvers/semantic_to_procedural.py +266 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/evolvers/stale_memory.py +19 -4
- smartmemory_core-0.9.0/smartmemory/plugins/evolvers/zettel_prune.py +229 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/extractors/llm.py +59 -24
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/extractors/llm_single.py +27 -9
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/manager.py +5 -4
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/procedures/pattern_detector.py +1 -1
- smartmemory_core-0.9.0/smartmemory/progress/__init__.py +279 -0
- smartmemory_core-0.9.0/smartmemory/progress/event.py +86 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/reasoning/detection/embedding.py +2 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/reasoning/detection/graph.py +3 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/reasoning/detection/heuristic.py +2 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/reasoning/detection/llm.py +4 -1
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/reasoning/reasoner.py +3 -3
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/relations/schema.py +9 -2
- smartmemory_core-0.9.0/smartmemory/search/attention_fusion.py +155 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/search/channels.py +1 -0
- smartmemory_core-0.9.0/smartmemory/search/entity_resolve.py +378 -0
- smartmemory_core-0.9.0/smartmemory/search/multi_hop.py +626 -0
- smartmemory_core-0.9.0/smartmemory/search/ppr.py +197 -0
- smartmemory_core-0.9.0/smartmemory/search/ppr_cache.py +160 -0
- smartmemory_core-0.9.0/smartmemory/search/rerank.py +324 -0
- smartmemory_core-0.9.0/smartmemory/search/spreading_activation.py +129 -0
- smartmemory_core-0.9.0/smartmemory/search/surfacing_router.py +212 -0
- smartmemory_core-0.9.0/smartmemory/session/__init__.py +25 -0
- smartmemory_core-0.9.0/smartmemory/session/constants.py +13 -0
- smartmemory_core-0.9.0/smartmemory/session/pins.py +174 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/smart_memory.py +1698 -179
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/ontology/falkordb.py +115 -3
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/vector/backends/falkor.py +65 -14
- smartmemory_core-0.9.0/smartmemory/summary/__init__.py +17 -0
- smartmemory_core-0.9.0/smartmemory/summary/composer.py +268 -0
- smartmemory_core-0.9.0/smartmemory/summary/delta.py +102 -0
- smartmemory_core-0.9.0/smartmemory/summary/queries.py +231 -0
- smartmemory_core-0.9.0/smartmemory/summary/renderer.py +125 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/temporal/version_tracker.py +3 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/tools/factory.py +72 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/utils/cache.py +41 -1
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/utils/chunking.py +6 -6
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/utils/llm.py +126 -70
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/utils/llm_client/dspy.py +2 -2
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/utils/llm_client/openai.py +1 -1
- smartmemory_core-0.9.0/smartmemory/utils/llm_client/openai_chat.py +149 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/utils/token_tracking.py +1 -2
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory_core.egg-info/SOURCES.txt +62 -3
- smartmemory_core-0.8.0/VERSION +0 -1
- smartmemory_core-0.8.0/smartmemory/anchors/queries.py +0 -139
- smartmemory_core-0.8.0/smartmemory/graph/ontology_graph.py +0 -782
- smartmemory_core-0.8.0/smartmemory/memory/pipeline/enrichment.py +0 -295
- smartmemory_core-0.8.0/smartmemory/memory/pipeline/grounding.py +0 -194
- smartmemory_core-0.8.0/smartmemory/memory/pipeline/stages/evolution.py +0 -272
- smartmemory_core-0.8.0/smartmemory/memory/types/working_memory.py +0 -179
- smartmemory_core-0.8.0/smartmemory/ontology/promotion.py +0 -324
- smartmemory_core-0.8.0/smartmemory/ontology/sqlite_store.py +0 -430
- smartmemory_core-0.8.0/smartmemory/pipeline/stages/store.py +0 -293
- smartmemory_core-0.8.0/smartmemory/plugins/evolvers/__init__.py +0 -61
- smartmemory_core-0.8.0/smartmemory/plugins/evolvers/enhanced/working_to_episodic.py +0 -195
- smartmemory_core-0.8.0/smartmemory/plugins/evolvers/episodic_decay.py +0 -53
- smartmemory_core-0.8.0/smartmemory/plugins/evolvers/episodic_to_semantic.py +0 -62
- smartmemory_core-0.8.0/smartmemory/plugins/evolvers/episodic_to_zettel.py +0 -58
- smartmemory_core-0.8.0/smartmemory/plugins/evolvers/semantic_decay.py +0 -53
- smartmemory_core-0.8.0/smartmemory/plugins/evolvers/working_to_episodic.py +0 -96
- smartmemory_core-0.8.0/smartmemory/plugins/evolvers/working_to_procedural.py +0 -330
- smartmemory_core-0.8.0/smartmemory/plugins/evolvers/zettel_prune.py +0 -113
- smartmemory_core-0.8.0/smartmemory/utils/llm_client/openai_chat.py +0 -71
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/.env.example +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/CLA.md +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/LICENSE +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/LICENSE.agpl-v3 +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/LICENSE.header +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/MANIFEST.in +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/scripts/add_license_headers.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/scripts/migrate_agent_type.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/setup.cfg +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/__version__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/anchors/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/anchors/drift.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/anchors/models.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/background/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/background/extraction_worker.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/background/id_resolver.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/batch.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/clear_all.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/clustering/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/clustering/embedding.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/clustering/global_cluster.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/clustering/graph_aggregator.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/code/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/code/indexer.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/code/models.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/code/parser.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/code/search.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/code/ts_parser.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/configuration/environment.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/configuration/loader.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/configuration/manager.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/configuration/models.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/conversation/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/conversation/context.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/conversation/manager.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/conversation/session.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/corpus/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/corpus/exporter.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/corpus/format.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/corpus/importer.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/corpus/pack.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/corpus/reader.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/corpus/rebel.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/corpus/registry.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/corpus/triplet_parser.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/corpus/writer.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/data/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/data/public_knowledge/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/decisions/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/decisions/manager.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/decisions/queries.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/drift_detector.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/evaluation/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/evaluation/cli.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/evaluation/dataset.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/evaluation/judge.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/evaluation/metrics.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/evaluation/report.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/evaluation/runner.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/evolution/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/evolution/batcher.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/evolution/cycle.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/evolution/diff_engine.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/evolution/events.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/evolution/flow.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/evolution/models.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/evolution/queue.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/evolution/router.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/evolution/store.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/evolution/tracker.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/evolution/utilities.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/evolution/worker.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/extraction/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/extraction/models.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/feedback/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/feedback/agentic_improvement.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/feedback/agentic_routines.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/feedback/cli.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/feedback/manager.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/feedback/slack.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/algos.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/analytics/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/analytics/edge.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/analytics/episodes.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/analytics/export.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/analytics/prune.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/analytics/temporal.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/backends/async_backend.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/backends/backend.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/backends/queries.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/base.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/compute.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/core/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/core/edges.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/core/memory_path.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/core/nodes.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/cypher_algos.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/indexes.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/models/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/models/canonical_types.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/networkx_algos.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/types/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/types/episodic.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/types/interfaces.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/types/procedural.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/types/semantic.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/graph/types/zettel.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/grounding/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/grounding/benchmark.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/grounding/executors.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/grounding/falkordb_store.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/grounding/models.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/grounding/public_knowledge_grounder.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/grounding/registry.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/grounding/snapshot.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/grounding/sqlite_store.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/grounding/store.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/grounding/type_map.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/inference/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/inference/engine.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/inference/rules.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/integration/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/integration/archive/archive_provider.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/integration/chat/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/integration/chat/hitl.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/integration/chat/integration.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/integration/llm/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/integration/llm/prompts/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/integration/llm/prompts/prompt_manager.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/integration/llm/prompts/prompt_provider.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/integration/llm/prompts/prompts.json +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/integration/llm/prompts/prompts_loader.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/integration/llm/providers.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/integration/llm/response_parser.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/integration/wikipedia_client.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/managers/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/managers/enrichment.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/managers/monitoring.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/canonical_store.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/context_types.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/ingestion/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/ingestion/flow.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/ingestion/grounding.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/ingestion/handlers/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/mixins.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/models/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/models/memory_item.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/components.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/plugin_base.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/stages/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/stages/analytics.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/stages/graph_operations.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/stages/grounding.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/stages/personalization.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/stages/validation.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/state.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/storage.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/transactions/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/transactions/change_set.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/transactions/ops.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/pipeline/transactions/transaction.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/types/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/types/procedural_memory.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/types/semantic_memory.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/types/wikilink_parser.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/types/zettel_memory.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/memory/utils.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/metrics/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/metrics/graph_health.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/base.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/compat/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/compat/boundary_converter.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/compat/dataclass_model.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/compat/simple_boundary.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/concept.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/conditional_step.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/corpus.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/decision.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/drift_event.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/entity.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/entity_types.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/ingestion_strategy.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/library.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/note.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/ontology.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/opinion.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/procedure.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/reasoning.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/schema_snapshot.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/status.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/step.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/tag.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/models/user_model.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/observability/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/observability/instrumentation.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/observability/json_formatter.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/observability/logging_filter.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/ontology/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/ontology/entity_pair_cache.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/ontology/falkordb_pattern_store.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/ontology/governance.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/ontology/governance_manager.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/ontology/hitl/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/ontology/hitl/hitl_interface.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/ontology/inference/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/ontology/inference/ontogpt.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/ontology/ir_models.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/ontology/layered.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/ontology/llm_manager.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/ontology/manager.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/ontology/models.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/ontology/template_service.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/ontology/templates/_manifest.json +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/ontology/templates/business.json +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/ontology/templates/general.json +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/ontology/templates/software.json +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/origin_policy.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/pipeline/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/pipeline/model_router.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/pipeline/protocol.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/pipeline/stages/classify.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/pipeline/stages/compact.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/pipeline/stages/coreference.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/pipeline/stages/enrich.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/pipeline/stages/entity_ruler.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/pipeline/stages/evolve.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/pipeline/stages/ground.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/pipeline/stages/reasoning_detect.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/pipeline/stages/simplify.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/pipeline/token_tracker.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/pipeline/trajectory.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/pipeline/transport/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/pipeline/transport/event_bus.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plans/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plans/manager.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/enrichers/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/enrichers/link_expansion.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/enrichers/sentiment.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/enrichers/skills_tools.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/enrichers/temporal.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/enrichers/topic.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/enrichers/usage_tracking.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/evolvers/base.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/evolvers/enhanced/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/executor.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/extractors/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/extractors/conversation_aware_llm.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/extractors/decision.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/extractors/reasoning.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/extractors/spacy.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/grounders/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/grounders/wikipedia.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/registry.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/resolvers/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/resolvers/external_resolver.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/plugins/security.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/procedure_matcher.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/procedures/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/procedures/candidate_namer.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/procedures/candidate_scorer.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/procedures/models.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/py.typed +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/reasoning/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/reasoning/challenger.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/reasoning/confidence.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/reasoning/detection/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/reasoning/detection/base.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/reasoning/detection/cascade.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/reasoning/fuzzy_confidence.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/reasoning/models.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/reasoning/proof_tree.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/reasoning/query_router.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/reasoning/residuation.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/reasoning/resolution/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/reasoning/resolution/base.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/reasoning/resolution/cascade.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/reasoning/resolution/grounding.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/reasoning/resolution/llm.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/reasoning/resolution/recency.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/reasoning/resolution/wikipedia.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/relations/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/relations/benchmark.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/relations/discovery.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/relations/normalizer.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/relations/overlays.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/relations/scorer.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/relations/validator.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/retrieval/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/retrieval/ssg_traversal.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/schema_diff.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/schema_providers.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/scope_provider.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/search/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/search/query_decomposer.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/search/recall_profile.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/search/rrf_merge.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/similarity/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/similarity/enhanced_metrics.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/similarity/framework.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/base.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/converters/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/converters/episodic_converter.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/converters/procedural_converter.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/converters/semantic_converter.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/converters/zettel_converter.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/corpus/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/corpus/store.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/example_memory_handler.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/external/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/external/file_handler.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/external/mcp_handler.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/external/s3_handler.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/external/web_handler.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/factory.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/json_store.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/mixins.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/ontology/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/ontology/redis_service.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/persistence/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/persistence/base.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/persistence/entity_handler.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/persistence/json.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/persistence/model.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/persistence/ontology_handlers.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/registrations.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/registry.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/vector/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/vector/backends/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/vector/backends/base.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/vector/backends/usearch.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/stores/vector/vector_store.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/streams/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/streams/pipeline_producer.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/sweep/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/sweep/config.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/sweep/metrics_store.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/sweep/result.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/sweep/runner.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/sweep/scorer.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/temporal/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/temporal/context.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/temporal/performance.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/temporal/queries.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/temporal/relationships.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/tools/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/tools/markdown_writer.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/utils/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/utils/context.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/utils/deduplication.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/utils/hybrid_retrieval.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/utils/llm_client/litellm.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/utils/pipeline_utils.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/utils/serialization.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/validation/__init__.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/validation/edge_validator.py +0 -0
- {smartmemory_core-0.8.0 → smartmemory_core-0.9.0}/smartmemory/validation/memory_validator.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: smartmemory-core
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.9.0
|
|
4
4
|
Summary: Multi-layered AI memory system with graph databases, vector stores, and intelligent processing pipelines
|
|
5
5
|
Author: SmartMemory Team
|
|
6
6
|
License-Expression: AGPL-3.0-or-later
|
|
@@ -37,24 +37,24 @@ Requires-Dist: dspy>=3.0.0; extra == "llm"
|
|
|
37
37
|
Provides-Extra: ml
|
|
38
38
|
Requires-Dist: scikit-learn>=1.0.0; extra == "ml"
|
|
39
39
|
Provides-Extra: server
|
|
40
|
-
Requires-Dist: smartmemory-core[llm,ml]; extra == "server"
|
|
40
|
+
Requires-Dist: smartmemory-core[llm,ml,rerank]; extra == "server"
|
|
41
41
|
Requires-Dist: falkordb>=1.0.0; extra == "server"
|
|
42
42
|
Requires-Dist: redis>=4.0.0; extra == "server"
|
|
43
43
|
Requires-Dist: requests>=2.28.0; extra == "server"
|
|
44
|
-
Provides-Extra: rebel
|
|
45
|
-
Requires-Dist: transformers>=4.0.0; extra == "rebel"
|
|
46
|
-
Provides-Extra: relik
|
|
47
|
-
Requires-Dist: relik>=0.1.0; extra == "relik"
|
|
48
44
|
Provides-Extra: coreference
|
|
49
45
|
Requires-Dist: fastcoref>=2.1.0; extra == "coreference"
|
|
46
|
+
Provides-Extra: rerank
|
|
47
|
+
Requires-Dist: sentence-transformers>=2.2.0; extra == "rerank"
|
|
48
|
+
Provides-Extra: docs
|
|
49
|
+
Requires-Dist: trafilatura>=1.12.0; extra == "docs"
|
|
50
|
+
Requires-Dist: pymupdf>=1.24.0; extra == "docs"
|
|
51
|
+
Requires-Dist: python-docx>=1.1.0; extra == "docs"
|
|
50
52
|
Provides-Extra: slack
|
|
51
53
|
Requires-Dist: slack-sdk>=3.0.0; extra == "slack"
|
|
52
54
|
Provides-Extra: aws
|
|
53
55
|
Requires-Dist: boto3>=1.26.0; extra == "aws"
|
|
54
56
|
Provides-Extra: wikipedia
|
|
55
57
|
Requires-Dist: wikipedia-api>=0.6.0; extra == "wikipedia"
|
|
56
|
-
Provides-Extra: smolagents
|
|
57
|
-
Requires-Dist: smolagents>=0.1.0; extra == "smolagents"
|
|
58
58
|
Provides-Extra: cli
|
|
59
59
|
Requires-Dist: click>=8.0.0; extra == "cli"
|
|
60
60
|
Requires-Dist: rich>=13.0.0; extra == "cli"
|
|
@@ -74,19 +74,32 @@ Requires-Dist: mypy>=1.0.0; extra == "dev"
|
|
|
74
74
|
Requires-Dist: build>=0.10.0; extra == "dev"
|
|
75
75
|
Requires-Dist: twine>=4.0.0; extra == "dev"
|
|
76
76
|
Provides-Extra: all
|
|
77
|
-
Requires-Dist: smartmemory-core[aws,cli,coreference,lite,
|
|
77
|
+
Requires-Dist: smartmemory-core[aws,cli,coreference,lite,rerank,server,slack,watch,wikipedia]; extra == "all"
|
|
78
78
|
Dynamic: license-file
|
|
79
79
|
|
|
80
|
-
# SmartMemory
|
|
80
|
+
# SmartMemory — Typed AI Memory for LLM Agents
|
|
81
81
|
|
|
82
82
|
[](https://docs.smartmemory.ai/smartmemory/intro)
|
|
83
83
|
[](https://pypi.org/project/smartmemory-core/)
|
|
84
84
|
[](https://www.gnu.org/licenses/agpl-3.0)
|
|
85
85
|
[](https://www.python.org/downloads/)
|
|
86
86
|
|
|
87
|
-
**[Read the docs](https://docs.smartmemory.ai/smartmemory/intro)**
|
|
87
|
+
**[Read the docs](https://docs.smartmemory.ai/smartmemory/intro)** · **[Compare vs Mem0 / Zep / Letta / claude-mem](https://www.smartmemory.ai/compare)** · **[Maya sample app](https://docs.smartmemory.ai/maya)**
|
|
88
88
|
|
|
89
|
-
SmartMemory is
|
|
89
|
+
SmartMemory is an AI memory system with **five typed memory types** — episodic, semantic, procedural, working, and zettelkasten — instead of a single vector store. It combines a knowledge graph (FalkorDB), vector embeddings, and an observable 11-stage extraction pipeline so LLM agents can remember, reason over relationships, and update structured knowledge across sessions and tools.
|
|
90
|
+
|
|
91
|
+
### Who this is for
|
|
92
|
+
|
|
93
|
+
- **Pick SmartMemory** when you need typed memory that drops into LangChain, LlamaIndex, the Anthropic Agent SDK, or any MCP client; when you want bitemporal accuracy (event time + system time); when multi-tenant isolation must work out of the box; when you want to inspect every stage of extraction.
|
|
94
|
+
- **Pick something else** when you only need a personalization shim for chatbot history (Mem0 is simpler), a complete agent framework (Letta), or zero-config session capture for Claude Code (claude-mem). See the [full comparison](https://www.smartmemory.ai/compare).
|
|
95
|
+
|
|
96
|
+
### What makes it different
|
|
97
|
+
|
|
98
|
+
- **5 typed memory types** (not a single blob/vector): episodic events, semantic facts, procedural skills, working context, zettelkasten links.
|
|
99
|
+
- **Knowledge graph by default**, with multi-hop and semantic-hop retrieval — query relationships, not just similarity.
|
|
100
|
+
- **Bitemporal time model** preserved at the storage layer — every fact has both an event time and a system time.
|
|
101
|
+
- **Observable 11-stage pipeline**: classify → coreference → simplify → entity_ruler → llm_extract → ontology_constrain → store → link → enrich → ground → evolve. Per-stage timing, tokens, cost.
|
|
102
|
+
- **Native MCP server**, multi-tenant workspaces, and origin-provenance tiers built in — not bolted on.
|
|
90
103
|
|
|
91
104
|
## 🚀 Quick Install
|
|
92
105
|
|
|
@@ -143,7 +156,7 @@ SmartMemory implements a multi-layered memory architecture with the following co
|
|
|
143
156
|
|
|
144
157
|
### Memory Types
|
|
145
158
|
|
|
146
|
-
- **
|
|
159
|
+
- **Pending Memory**: Short-term buffer for items awaiting consolidation (formerly "working"; routed at ingest by the `ConsolidationRouter`)
|
|
147
160
|
- **Semantic Memory**: Facts and concepts with vector embeddings
|
|
148
161
|
- **Episodic Memory**: Personal experiences and learning history
|
|
149
162
|
- **Procedural Memory**: Skills, strategies, and learned patterns
|
|
@@ -172,7 +185,7 @@ Each stage implements the `StageCommand` protocol (`execute(state, config) → s
|
|
|
172
185
|
|
|
173
186
|
## Key Features
|
|
174
187
|
|
|
175
|
-
- **9 Memory Types**:
|
|
188
|
+
- **9 Memory Types**: Pending, Semantic, Episodic, Procedural, Zettelkasten, Reasoning, Opinion, Observation, Decision
|
|
176
189
|
- **11-Stage NLP Pipeline**: classify → coreference → simplify → entity_ruler → llm_extract → ontology_constrain → store → link → enrich → ground → evolve
|
|
177
190
|
- **Self-Learning EntityRuler**: Pattern-matching NER that improves with use — LLM discoveries feed back into rules (96.9% entity F1 at 4ms)
|
|
178
191
|
- **Evolver Framework**: Core auto-registered evolvers plus specialist lifecycle evolvers for decay, consolidation, opinion synthesis, retrieval-based strengthening, Hebbian co-retrieval, and stale memory detection
|
|
@@ -180,7 +193,7 @@ Each stage implements the `StageCommand` protocol (`execute(state, config) → s
|
|
|
180
193
|
- **Zero-Infra Lite Mode**: SQLite + usearch backend — `pip install smartmemory-core[lite]` and go
|
|
181
194
|
- **Server Mode**: FalkorDB graph + Redis caching for production-scale deployments
|
|
182
195
|
- **Hybrid Search**: Graph-structured search + BM25/embedding RRF fusion with query decomposition for compound queries
|
|
183
|
-
- **
|
|
196
|
+
- **18 Auto-Registered Plugins**: 4 extractors, 5 enrichers, 8 evolvers, and 1 grounder loaded by default, with additional specialist plugins available for opt-in use
|
|
184
197
|
- **Plugin Security**: Sandboxing, permissions, and resource limits for safe plugin execution
|
|
185
198
|
- **Flexible Scoping**: Optional `ScopeProvider` for multi-tenancy or unrestricted OSS usage
|
|
186
199
|
|
|
@@ -273,12 +286,12 @@ from smartmemory import SmartMemory, MemoryItem
|
|
|
273
286
|
# Initialize SmartMemory
|
|
274
287
|
memory = SmartMemory()
|
|
275
288
|
|
|
276
|
-
# Add
|
|
277
|
-
|
|
289
|
+
# Add pending memory (short-term context awaiting consolidation)
|
|
290
|
+
pending_item = MemoryItem(
|
|
278
291
|
content="Current conversation context",
|
|
279
|
-
memory_type="
|
|
292
|
+
memory_type="pending"
|
|
280
293
|
)
|
|
281
|
-
memory.add(
|
|
294
|
+
memory.add(pending_item)
|
|
282
295
|
|
|
283
296
|
# Add semantic memory (facts and concepts)
|
|
284
297
|
semantic_item = MemoryItem(
|
|
@@ -404,8 +417,6 @@ SmartMemory includes built-in evolvers that automatically transform memories. In
|
|
|
404
417
|
### Available Evolvers
|
|
405
418
|
|
|
406
419
|
**Core evolvers** — memory type transitions and lifecycle:
|
|
407
|
-
- **WorkingToEpisodicEvolver**: Converts working memory to episodic when buffer is full
|
|
408
|
-
- **WorkingToProceduralEvolver**: Extracts repeated patterns as procedures
|
|
409
420
|
- **EpisodicToSemanticEvolver**: Promotes stable facts to semantic memory
|
|
410
421
|
- **EpisodicToZettelEvolver**: Converts episodic events to Zettelkasten notes
|
|
411
422
|
- **EpisodicDecayEvolver**: Archives old episodic memories
|
|
@@ -422,7 +433,10 @@ SmartMemory includes built-in evolvers that automatically transform memories. In
|
|
|
422
433
|
- **RetrievalBasedStrengtheningEvolver**: Memories accessed more frequently become harder to forget
|
|
423
434
|
- **HebbianCoRetrievalEvolver**: Reinforces edges between memories retrieved together ("neurons that fire together wire together")
|
|
424
435
|
- **InterferenceBasedConsolidationEvolver**: Similar competing memories interfere, strengthening the dominant one
|
|
425
|
-
- **EnhancedWorkingToEpisodicEvolver**: Context-aware
|
|
436
|
+
- **EnhancedWorkingToEpisodicEvolver**: Context-aware pending→episodic transition with richer metadata
|
|
437
|
+
|
|
438
|
+
**Replaced by ConsolidationRouter (CORE-MEMORY-DYNAMICS-1 M1):**
|
|
439
|
+
- The former `WorkingToEpisodicEvolver` and `WorkingToProceduralEvolver` were retired. Routing from the `pending` bucket to `episodic` / `procedural` now happens at ingest time via the `ConsolidationRouter` pipeline stage.
|
|
426
440
|
|
|
427
441
|
Evolvers run automatically as part of the memory lifecycle. See the [examples](examples/) directory for evolution demonstrations.
|
|
428
442
|
|
|
@@ -437,7 +451,7 @@ SmartMemory includes **20 auto-registered plugins** with additional specialist p
|
|
|
437
451
|
**Auto-registered by default** (loaded by `PluginManager`):
|
|
438
452
|
- **4 Extractors**: `LLMExtractor`, `LLMSingleExtractor`, `ConversationAwareLLMExtractor`, `SpacyExtractor`
|
|
439
453
|
- **5 Enrichers**: `BasicEnricher`, `SentimentEnricher`, `TemporalEnricher`, `ExtractSkillsToolsEnricher`, `TopicEnricher`
|
|
440
|
-
- **
|
|
454
|
+
- **8 Evolvers**: `EpisodicToSemanticEvolver`, `EpisodicToZettelEvolver`, `EpisodicDecayEvolver`, `SemanticDecayEvolver`, `ZettelPruneEvolver`, `ExponentialDecayEvolver`, `InterferenceBasedConsolidationEvolver`, `RetrievalBasedStrengtheningEvolver`
|
|
441
455
|
- **1 Grounder**: `WikipediaGrounder`
|
|
442
456
|
|
|
443
457
|
**Specialist plugins** (used by specific pipeline stages or opt-in features):
|
|
@@ -550,6 +564,35 @@ PYTHONPATH=. python examples/conversational_assistant_example.py
|
|
|
550
564
|
|
|
551
565
|
## API Reference
|
|
552
566
|
|
|
567
|
+
### Progress Event Bus (PLAT-PROGRESS-1)
|
|
568
|
+
|
|
569
|
+
Unified progress emission via Redis Streams. Producers call `emit()`; consumers subscribe over SSE via `/memory/progress/stream` (see `smart-memory-service`). Stream key: `sm:progress:<workspace_id>`; Redis DB 1; MAXLEN default 10_000 (override via `SMARTMEMORY_PROGRESS_MAXLEN`).
|
|
570
|
+
|
|
571
|
+
```python
|
|
572
|
+
from smartmemory.progress import bind, unbind, bound_progress, emit
|
|
573
|
+
|
|
574
|
+
# One emit anywhere in the process writes a ProgressEvent to the
|
|
575
|
+
# caller's workspace stream. run_id + scope come from contextvars set
|
|
576
|
+
# by bind() / bound_progress(); never passed as kwargs.
|
|
577
|
+
|
|
578
|
+
# Simple request-scoped pattern
|
|
579
|
+
bind(run_id="abc-123", scope="workspace:team-42")
|
|
580
|
+
try:
|
|
581
|
+
emit(kind="pipeline.stage", status="progress", stage="extract",
|
|
582
|
+
payload={"progress": 50, "message": "Extracting entities"})
|
|
583
|
+
finally:
|
|
584
|
+
unbind()
|
|
585
|
+
|
|
586
|
+
# Context-managed pattern — preferred for background tasks that run in
|
|
587
|
+
# a fresh asyncio context (e.g. FastAPI BackgroundTasks). bind()
|
|
588
|
+
# bindings in the scheduling handler don't propagate.
|
|
589
|
+
with bound_progress(run_id="abc-123", scope="workspace:team-42"):
|
|
590
|
+
emit(kind="pipeline.stage", status="ok", stage="extract",
|
|
591
|
+
payload={"progress": 100, "message": "Completed extraction"})
|
|
592
|
+
```
|
|
593
|
+
|
|
594
|
+
Status values: `started | progress | ok | warn | error`. Kinds are dotted producer-owned tags (`pipeline.stage`, `evolver.result`, `studio.job`, …); the transport has no registry.
|
|
595
|
+
|
|
553
596
|
### SmartMemory Class
|
|
554
597
|
|
|
555
598
|
Main interface for memory operations:
|
|
@@ -1,13 +1,26 @@
|
|
|
1
|
-
# SmartMemory
|
|
1
|
+
# SmartMemory — Typed AI Memory for LLM Agents
|
|
2
2
|
|
|
3
3
|
[](https://docs.smartmemory.ai/smartmemory/intro)
|
|
4
4
|
[](https://pypi.org/project/smartmemory-core/)
|
|
5
5
|
[](https://www.gnu.org/licenses/agpl-3.0)
|
|
6
6
|
[](https://www.python.org/downloads/)
|
|
7
7
|
|
|
8
|
-
**[Read the docs](https://docs.smartmemory.ai/smartmemory/intro)**
|
|
8
|
+
**[Read the docs](https://docs.smartmemory.ai/smartmemory/intro)** · **[Compare vs Mem0 / Zep / Letta / claude-mem](https://www.smartmemory.ai/compare)** · **[Maya sample app](https://docs.smartmemory.ai/maya)**
|
|
9
9
|
|
|
10
|
-
SmartMemory is
|
|
10
|
+
SmartMemory is an AI memory system with **five typed memory types** — episodic, semantic, procedural, working, and zettelkasten — instead of a single vector store. It combines a knowledge graph (FalkorDB), vector embeddings, and an observable 11-stage extraction pipeline so LLM agents can remember, reason over relationships, and update structured knowledge across sessions and tools.
|
|
11
|
+
|
|
12
|
+
### Who this is for
|
|
13
|
+
|
|
14
|
+
- **Pick SmartMemory** when you need typed memory that drops into LangChain, LlamaIndex, the Anthropic Agent SDK, or any MCP client; when you want bitemporal accuracy (event time + system time); when multi-tenant isolation must work out of the box; when you want to inspect every stage of extraction.
|
|
15
|
+
- **Pick something else** when you only need a personalization shim for chatbot history (Mem0 is simpler), a complete agent framework (Letta), or zero-config session capture for Claude Code (claude-mem). See the [full comparison](https://www.smartmemory.ai/compare).
|
|
16
|
+
|
|
17
|
+
### What makes it different
|
|
18
|
+
|
|
19
|
+
- **5 typed memory types** (not a single blob/vector): episodic events, semantic facts, procedural skills, working context, zettelkasten links.
|
|
20
|
+
- **Knowledge graph by default**, with multi-hop and semantic-hop retrieval — query relationships, not just similarity.
|
|
21
|
+
- **Bitemporal time model** preserved at the storage layer — every fact has both an event time and a system time.
|
|
22
|
+
- **Observable 11-stage pipeline**: classify → coreference → simplify → entity_ruler → llm_extract → ontology_constrain → store → link → enrich → ground → evolve. Per-stage timing, tokens, cost.
|
|
23
|
+
- **Native MCP server**, multi-tenant workspaces, and origin-provenance tiers built in — not bolted on.
|
|
11
24
|
|
|
12
25
|
## 🚀 Quick Install
|
|
13
26
|
|
|
@@ -64,7 +77,7 @@ SmartMemory implements a multi-layered memory architecture with the following co
|
|
|
64
77
|
|
|
65
78
|
### Memory Types
|
|
66
79
|
|
|
67
|
-
- **
|
|
80
|
+
- **Pending Memory**: Short-term buffer for items awaiting consolidation (formerly "working"; routed at ingest by the `ConsolidationRouter`)
|
|
68
81
|
- **Semantic Memory**: Facts and concepts with vector embeddings
|
|
69
82
|
- **Episodic Memory**: Personal experiences and learning history
|
|
70
83
|
- **Procedural Memory**: Skills, strategies, and learned patterns
|
|
@@ -93,7 +106,7 @@ Each stage implements the `StageCommand` protocol (`execute(state, config) → s
|
|
|
93
106
|
|
|
94
107
|
## Key Features
|
|
95
108
|
|
|
96
|
-
- **9 Memory Types**:
|
|
109
|
+
- **9 Memory Types**: Pending, Semantic, Episodic, Procedural, Zettelkasten, Reasoning, Opinion, Observation, Decision
|
|
97
110
|
- **11-Stage NLP Pipeline**: classify → coreference → simplify → entity_ruler → llm_extract → ontology_constrain → store → link → enrich → ground → evolve
|
|
98
111
|
- **Self-Learning EntityRuler**: Pattern-matching NER that improves with use — LLM discoveries feed back into rules (96.9% entity F1 at 4ms)
|
|
99
112
|
- **Evolver Framework**: Core auto-registered evolvers plus specialist lifecycle evolvers for decay, consolidation, opinion synthesis, retrieval-based strengthening, Hebbian co-retrieval, and stale memory detection
|
|
@@ -101,7 +114,7 @@ Each stage implements the `StageCommand` protocol (`execute(state, config) → s
|
|
|
101
114
|
- **Zero-Infra Lite Mode**: SQLite + usearch backend — `pip install smartmemory-core[lite]` and go
|
|
102
115
|
- **Server Mode**: FalkorDB graph + Redis caching for production-scale deployments
|
|
103
116
|
- **Hybrid Search**: Graph-structured search + BM25/embedding RRF fusion with query decomposition for compound queries
|
|
104
|
-
- **
|
|
117
|
+
- **18 Auto-Registered Plugins**: 4 extractors, 5 enrichers, 8 evolvers, and 1 grounder loaded by default, with additional specialist plugins available for opt-in use
|
|
105
118
|
- **Plugin Security**: Sandboxing, permissions, and resource limits for safe plugin execution
|
|
106
119
|
- **Flexible Scoping**: Optional `ScopeProvider` for multi-tenancy or unrestricted OSS usage
|
|
107
120
|
|
|
@@ -194,12 +207,12 @@ from smartmemory import SmartMemory, MemoryItem
|
|
|
194
207
|
# Initialize SmartMemory
|
|
195
208
|
memory = SmartMemory()
|
|
196
209
|
|
|
197
|
-
# Add
|
|
198
|
-
|
|
210
|
+
# Add pending memory (short-term context awaiting consolidation)
|
|
211
|
+
pending_item = MemoryItem(
|
|
199
212
|
content="Current conversation context",
|
|
200
|
-
memory_type="
|
|
213
|
+
memory_type="pending"
|
|
201
214
|
)
|
|
202
|
-
memory.add(
|
|
215
|
+
memory.add(pending_item)
|
|
203
216
|
|
|
204
217
|
# Add semantic memory (facts and concepts)
|
|
205
218
|
semantic_item = MemoryItem(
|
|
@@ -325,8 +338,6 @@ SmartMemory includes built-in evolvers that automatically transform memories. In
|
|
|
325
338
|
### Available Evolvers
|
|
326
339
|
|
|
327
340
|
**Core evolvers** — memory type transitions and lifecycle:
|
|
328
|
-
- **WorkingToEpisodicEvolver**: Converts working memory to episodic when buffer is full
|
|
329
|
-
- **WorkingToProceduralEvolver**: Extracts repeated patterns as procedures
|
|
330
341
|
- **EpisodicToSemanticEvolver**: Promotes stable facts to semantic memory
|
|
331
342
|
- **EpisodicToZettelEvolver**: Converts episodic events to Zettelkasten notes
|
|
332
343
|
- **EpisodicDecayEvolver**: Archives old episodic memories
|
|
@@ -343,7 +354,10 @@ SmartMemory includes built-in evolvers that automatically transform memories. In
|
|
|
343
354
|
- **RetrievalBasedStrengtheningEvolver**: Memories accessed more frequently become harder to forget
|
|
344
355
|
- **HebbianCoRetrievalEvolver**: Reinforces edges between memories retrieved together ("neurons that fire together wire together")
|
|
345
356
|
- **InterferenceBasedConsolidationEvolver**: Similar competing memories interfere, strengthening the dominant one
|
|
346
|
-
- **EnhancedWorkingToEpisodicEvolver**: Context-aware
|
|
357
|
+
- **EnhancedWorkingToEpisodicEvolver**: Context-aware pending→episodic transition with richer metadata
|
|
358
|
+
|
|
359
|
+
**Replaced by ConsolidationRouter (CORE-MEMORY-DYNAMICS-1 M1):**
|
|
360
|
+
- The former `WorkingToEpisodicEvolver` and `WorkingToProceduralEvolver` were retired. Routing from the `pending` bucket to `episodic` / `procedural` now happens at ingest time via the `ConsolidationRouter` pipeline stage.
|
|
347
361
|
|
|
348
362
|
Evolvers run automatically as part of the memory lifecycle. See the [examples](examples/) directory for evolution demonstrations.
|
|
349
363
|
|
|
@@ -358,7 +372,7 @@ SmartMemory includes **20 auto-registered plugins** with additional specialist p
|
|
|
358
372
|
**Auto-registered by default** (loaded by `PluginManager`):
|
|
359
373
|
- **4 Extractors**: `LLMExtractor`, `LLMSingleExtractor`, `ConversationAwareLLMExtractor`, `SpacyExtractor`
|
|
360
374
|
- **5 Enrichers**: `BasicEnricher`, `SentimentEnricher`, `TemporalEnricher`, `ExtractSkillsToolsEnricher`, `TopicEnricher`
|
|
361
|
-
- **
|
|
375
|
+
- **8 Evolvers**: `EpisodicToSemanticEvolver`, `EpisodicToZettelEvolver`, `EpisodicDecayEvolver`, `SemanticDecayEvolver`, `ZettelPruneEvolver`, `ExponentialDecayEvolver`, `InterferenceBasedConsolidationEvolver`, `RetrievalBasedStrengtheningEvolver`
|
|
362
376
|
- **1 Grounder**: `WikipediaGrounder`
|
|
363
377
|
|
|
364
378
|
**Specialist plugins** (used by specific pipeline stages or opt-in features):
|
|
@@ -471,6 +485,35 @@ PYTHONPATH=. python examples/conversational_assistant_example.py
|
|
|
471
485
|
|
|
472
486
|
## API Reference
|
|
473
487
|
|
|
488
|
+
### Progress Event Bus (PLAT-PROGRESS-1)
|
|
489
|
+
|
|
490
|
+
Unified progress emission via Redis Streams. Producers call `emit()`; consumers subscribe over SSE via `/memory/progress/stream` (see `smart-memory-service`). Stream key: `sm:progress:<workspace_id>`; Redis DB 1; MAXLEN default 10_000 (override via `SMARTMEMORY_PROGRESS_MAXLEN`).
|
|
491
|
+
|
|
492
|
+
```python
|
|
493
|
+
from smartmemory.progress import bind, unbind, bound_progress, emit
|
|
494
|
+
|
|
495
|
+
# One emit anywhere in the process writes a ProgressEvent to the
|
|
496
|
+
# caller's workspace stream. run_id + scope come from contextvars set
|
|
497
|
+
# by bind() / bound_progress(); never passed as kwargs.
|
|
498
|
+
|
|
499
|
+
# Simple request-scoped pattern
|
|
500
|
+
bind(run_id="abc-123", scope="workspace:team-42")
|
|
501
|
+
try:
|
|
502
|
+
emit(kind="pipeline.stage", status="progress", stage="extract",
|
|
503
|
+
payload={"progress": 50, "message": "Extracting entities"})
|
|
504
|
+
finally:
|
|
505
|
+
unbind()
|
|
506
|
+
|
|
507
|
+
# Context-managed pattern — preferred for background tasks that run in
|
|
508
|
+
# a fresh asyncio context (e.g. FastAPI BackgroundTasks). bind()
|
|
509
|
+
# bindings in the scheduling handler don't propagate.
|
|
510
|
+
with bound_progress(run_id="abc-123", scope="workspace:team-42"):
|
|
511
|
+
emit(kind="pipeline.stage", status="ok", stage="extract",
|
|
512
|
+
payload={"progress": 100, "message": "Completed extraction"})
|
|
513
|
+
```
|
|
514
|
+
|
|
515
|
+
Status values: `started | progress | ok | warn | error`. Kinds are dotted producer-owned tags (`pipeline.stage`, `evolver.result`, `studio.job`, …); the transport has no registry.
|
|
516
|
+
|
|
474
517
|
### SmartMemory Class
|
|
475
518
|
|
|
476
519
|
Main interface for memory operations:
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
0.9.0
|
|
@@ -3,14 +3,16 @@
|
|
|
3
3
|
"backend_class": "FalkorDBBackend",
|
|
4
4
|
"host": "localhost",
|
|
5
5
|
"port": 9010,
|
|
6
|
+
"main_graph_name": "smartmemory",
|
|
7
|
+
"ontology_graph_name": "ontology",
|
|
6
8
|
"graph_name": "ontology"
|
|
7
9
|
},
|
|
8
10
|
"semantic": {},
|
|
9
11
|
"episodic": {},
|
|
10
12
|
"procedural": {},
|
|
11
|
-
"
|
|
13
|
+
"pending": {},
|
|
12
14
|
"zettelkasten": {},
|
|
13
|
-
"
|
|
15
|
+
"pending_memory": {
|
|
14
16
|
"persist": true,
|
|
15
17
|
"vectorize": false,
|
|
16
18
|
"retention_days": 14,
|
|
@@ -20,7 +22,7 @@
|
|
|
20
22
|
"default": "falkordb",
|
|
21
23
|
"type": "falkordb",
|
|
22
24
|
"backend": "falkordb",
|
|
23
|
-
"dimension":
|
|
25
|
+
"dimension": 768,
|
|
24
26
|
"metric": "cosine",
|
|
25
27
|
"hnsw_m": 16,
|
|
26
28
|
"hnsw_ef_construction": 200,
|
|
@@ -28,8 +30,8 @@
|
|
|
28
30
|
"host": "localhost",
|
|
29
31
|
"port": 9010,
|
|
30
32
|
"embedding": {
|
|
31
|
-
"provider": "
|
|
32
|
-
"model": "
|
|
33
|
+
"provider": "local",
|
|
34
|
+
"model": "nomic-ai/nomic-embed-text-v1.5",
|
|
33
35
|
"openai_api_key": "",
|
|
34
36
|
"huggingface_api_key": "",
|
|
35
37
|
"huggingface_model": "sentence-transformers/all-MiniLM-L6-v2"
|
|
@@ -41,8 +43,8 @@
|
|
|
41
43
|
"engine": "basic",
|
|
42
44
|
"ontogpt": {
|
|
43
45
|
"enabled": false,
|
|
44
|
-
"provider": "
|
|
45
|
-
"model": "
|
|
46
|
+
"provider": "groq",
|
|
47
|
+
"model": "llama-3.3-70b-versatile",
|
|
46
48
|
"api_base": "",
|
|
47
49
|
"api_version": "",
|
|
48
50
|
"template": "",
|
|
@@ -52,36 +54,21 @@
|
|
|
52
54
|
}
|
|
53
55
|
},
|
|
54
56
|
"extractor": {
|
|
55
|
-
"default": "
|
|
56
|
-
"gliner2": {
|
|
57
|
-
"model_name": "fastino/gliner2-base-v1",
|
|
58
|
-
"confidence_threshold": 0.5
|
|
59
|
-
},
|
|
60
|
-
"relik": {
|
|
61
|
-
"model_name": "relik-ie/relik-relation-extraction-small-wikipedia-ner"
|
|
62
|
-
},
|
|
63
|
-
"gliner": {
|
|
64
|
-
"model_name": "urchade/gliner_base"
|
|
65
|
-
},
|
|
57
|
+
"default": "llm_single",
|
|
66
58
|
"llm": {
|
|
67
|
-
"model_name": "gpt-5-mini",
|
|
68
|
-
"openai_api_key": ""
|
|
69
59
|
},
|
|
70
60
|
"spacy": {
|
|
71
61
|
"model_name": "en_core_web_sm"
|
|
72
62
|
},
|
|
73
|
-
"rebel": {
|
|
74
|
-
"model_name": "Babelscape/rebel-large"
|
|
75
|
-
},
|
|
76
63
|
"gpt4o_triple": {
|
|
77
|
-
"model_name": "gpt-
|
|
64
|
+
"model_name": "gpt-4o-mini",
|
|
78
65
|
"openai_api_key": ""
|
|
79
66
|
}
|
|
80
67
|
},
|
|
81
68
|
"enricher": {
|
|
82
69
|
"default": "default",
|
|
83
70
|
"temporal": {
|
|
84
|
-
"model_name": "gpt-
|
|
71
|
+
"model_name": "gpt-4o-mini",
|
|
85
72
|
"openai_api_key": ""
|
|
86
73
|
}
|
|
87
74
|
},
|
|
@@ -61,26 +61,32 @@ ml = [
|
|
|
61
61
|
|
|
62
62
|
# Full server mode: FalkorDB graph database + Redis cache/observability + LLM + ML
|
|
63
63
|
server = [
|
|
64
|
-
"smartmemory-core[llm,ml]",
|
|
64
|
+
"smartmemory-core[llm,ml,rerank]",
|
|
65
65
|
"falkordb>=1.0.0",
|
|
66
66
|
"redis>=4.0.0",
|
|
67
67
|
"requests>=2.28.0",
|
|
68
68
|
]
|
|
69
69
|
|
|
70
|
-
# Optional dependencies for specific extractors
|
|
71
|
-
rebel = ["transformers>=4.0.0"]
|
|
72
|
-
relik = ["relik>=0.1.0"]
|
|
73
|
-
|
|
74
70
|
# Optional dependencies for pipeline stages
|
|
75
71
|
coreference = ["fastcoref>=2.1.0"]
|
|
76
72
|
|
|
73
|
+
# Local embedding backend used by EmbeddingPlugin when no API embedder is configured.
|
|
74
|
+
# Also satisfies the CORE-RERANK-1 cross-encoder path when wired.
|
|
75
|
+
rerank = ["sentence-transformers>=2.2.0"]
|
|
76
|
+
|
|
77
|
+
# Document loaders (lazy — not installed by default; auto-degrade with ImportError if missing)
|
|
78
|
+
docs = [
|
|
79
|
+
"trafilatura>=1.12.0",
|
|
80
|
+
"pymupdf>=1.24.0",
|
|
81
|
+
"python-docx>=1.1.0",
|
|
82
|
+
]
|
|
83
|
+
|
|
77
84
|
# Optional dependencies for integrations
|
|
78
85
|
# NOTE: claude-cli is a private git dep — install locally with:
|
|
79
86
|
# pip install "claude-cli @ git+ssh://git@github.com/regression-io/claude-cli.git"
|
|
80
87
|
slack = ["slack-sdk>=3.0.0"]
|
|
81
88
|
aws = ["boto3>=1.26.0"]
|
|
82
89
|
wikipedia = ["wikipedia-api>=0.6.0"]
|
|
83
|
-
smolagents = ["smolagents>=0.1.0"]
|
|
84
90
|
|
|
85
91
|
# CLI tools
|
|
86
92
|
cli = [
|
|
@@ -112,7 +118,7 @@ dev = [
|
|
|
112
118
|
|
|
113
119
|
# All optional dependencies
|
|
114
120
|
all = [
|
|
115
|
-
"smartmemory-core[server,lite,cli,
|
|
121
|
+
"smartmemory-core[server,lite,cli,coreference,rerank,slack,aws,wikipedia,watch]",
|
|
116
122
|
]
|
|
117
123
|
|
|
118
124
|
[project.urls]
|
|
@@ -105,7 +105,7 @@ MEMORIES = [
|
|
|
105
105
|
"- decompose_query=True on SmartMemory.search() splits compound queries\n"
|
|
106
106
|
"- Splits on and/or/,/; into 1-4 sub-queries\n"
|
|
107
107
|
"- Each sub-query runs independently, results merged via cross-query RRF (rrf_k=60)\n"
|
|
108
|
-
"-
|
|
108
|
+
"- Pending memory exemption: memory_type='pending' ignores decomposition\n"
|
|
109
109
|
"- API surface: decompose: bool = False on service MCP, REST, standalone MCP\n"
|
|
110
110
|
"- Key files: smartmemory/search/query_decomposer.py, rrf_merge.py, smart_memory.py\n"
|
|
111
111
|
"- Contract: docs/features/CORE-SEARCH-1/search-contract.json"
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
"""Activation primitives for CORE-MEMORY-DYNAMICS-1 Milestone 2a.
|
|
2
|
+
|
|
3
|
+
This package provides the activation-scoring foundation used by
|
|
4
|
+
``get_working_context`` ranking and by the three M2a evolvers. The nested
|
|
5
|
+
``metadata["activation"]`` dict shape is defined in the activation contract
|
|
6
|
+
(``smart-memory-docs/docs/features/CORE-MEMORY-DYNAMICS-1/activation-contract.json``).
|
|
7
|
+
|
|
8
|
+
Public surface:
|
|
9
|
+
|
|
10
|
+
- ``compute_activation_score(item, now=None)`` — decays score from last boost.
|
|
11
|
+
- ``boost_activation(memory, item_id, delta, reason)`` — Redis-first producer
|
|
12
|
+
with non-raising direct-write fallback.
|
|
13
|
+
- ``run_decay_sweep(memory)`` — batched per-workspace decay pass.
|
|
14
|
+
- ``migrate_workspace(memory)`` — idempotent Phase A seed (Slice B).
|
|
15
|
+
- Constants: ``ACTIVATION_FLOOR``, ``DEFAULT_SCORE``, ``DEFAULT_HALF_LIFE_HOURS``,
|
|
16
|
+
Redis key templates, boost sizes.
|
|
17
|
+
|
|
18
|
+
**Full-dict invariant:** when ``metadata["activation"]`` is present, all five
|
|
19
|
+
sub-keys (score, last_boost_at, half_life_hours, boost_count, rot_score) must
|
|
20
|
+
be present. Partial dicts are a contract violation — see
|
|
21
|
+
``_merged_activation_dict`` in ``boost.py``.
|
|
22
|
+
"""
|
|
23
|
+
|
|
24
|
+
from smartmemory.activation.constants import (
|
|
25
|
+
ACTIVATION_FLOOR,
|
|
26
|
+
BOOST_SIZE_CORETRIEVE,
|
|
27
|
+
BOOST_SIZE_RETRIEVE,
|
|
28
|
+
BOOST_SIZE_SURFACE,
|
|
29
|
+
DECAY_INTERVAL_SECONDS,
|
|
30
|
+
DEFAULT_HALF_LIFE_HOURS,
|
|
31
|
+
DEFAULT_SCORE,
|
|
32
|
+
FLUSH_INTERVAL_SECONDS,
|
|
33
|
+
NAMESPACE,
|
|
34
|
+
REDIS_DECAY_LOCK_TEMPLATE,
|
|
35
|
+
REDIS_PENDING_KEY_TEMPLATE,
|
|
36
|
+
)
|
|
37
|
+
from smartmemory.activation.score import compute_activation_score
|
|
38
|
+
|
|
39
|
+
__all__ = [
|
|
40
|
+
"NAMESPACE",
|
|
41
|
+
"ACTIVATION_FLOOR",
|
|
42
|
+
"DEFAULT_SCORE",
|
|
43
|
+
"DEFAULT_HALF_LIFE_HOURS",
|
|
44
|
+
"BOOST_SIZE_RETRIEVE",
|
|
45
|
+
"BOOST_SIZE_SURFACE",
|
|
46
|
+
"BOOST_SIZE_CORETRIEVE",
|
|
47
|
+
"FLUSH_INTERVAL_SECONDS",
|
|
48
|
+
"DECAY_INTERVAL_SECONDS",
|
|
49
|
+
"REDIS_PENDING_KEY_TEMPLATE",
|
|
50
|
+
"REDIS_DECAY_LOCK_TEMPLATE",
|
|
51
|
+
"compute_activation_score",
|
|
52
|
+
]
|