memorisdk 1.0.1__py3-none-any.whl → 2.0.0__py3-none-any.whl

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.

Potentially problematic release.


This version of memorisdk might be problematic. Click here for more details.

Files changed (46) hide show
  1. memori/__init__.py +24 -8
  2. memori/agents/conscious_agent.py +252 -414
  3. memori/agents/memory_agent.py +487 -224
  4. memori/agents/retrieval_agent.py +416 -60
  5. memori/config/memory_manager.py +323 -0
  6. memori/core/conversation.py +393 -0
  7. memori/core/database.py +386 -371
  8. memori/core/memory.py +1676 -534
  9. memori/core/providers.py +217 -0
  10. memori/database/adapters/__init__.py +10 -0
  11. memori/database/adapters/mysql_adapter.py +331 -0
  12. memori/database/adapters/postgresql_adapter.py +291 -0
  13. memori/database/adapters/sqlite_adapter.py +229 -0
  14. memori/database/auto_creator.py +320 -0
  15. memori/database/connection_utils.py +207 -0
  16. memori/database/connectors/base_connector.py +283 -0
  17. memori/database/connectors/mysql_connector.py +240 -18
  18. memori/database/connectors/postgres_connector.py +277 -4
  19. memori/database/connectors/sqlite_connector.py +178 -3
  20. memori/database/models.py +400 -0
  21. memori/database/queries/base_queries.py +1 -1
  22. memori/database/queries/memory_queries.py +91 -2
  23. memori/database/query_translator.py +222 -0
  24. memori/database/schema_generators/__init__.py +7 -0
  25. memori/database/schema_generators/mysql_schema_generator.py +215 -0
  26. memori/database/search/__init__.py +8 -0
  27. memori/database/search/mysql_search_adapter.py +255 -0
  28. memori/database/search/sqlite_search_adapter.py +180 -0
  29. memori/database/search_service.py +548 -0
  30. memori/database/sqlalchemy_manager.py +839 -0
  31. memori/integrations/__init__.py +36 -11
  32. memori/integrations/litellm_integration.py +340 -6
  33. memori/integrations/openai_integration.py +506 -240
  34. memori/utils/input_validator.py +395 -0
  35. memori/utils/pydantic_models.py +138 -36
  36. memori/utils/query_builder.py +530 -0
  37. memori/utils/security_audit.py +594 -0
  38. memori/utils/security_integration.py +339 -0
  39. memori/utils/transaction_manager.py +547 -0
  40. {memorisdk-1.0.1.dist-info → memorisdk-2.0.0.dist-info}/METADATA +144 -34
  41. memorisdk-2.0.0.dist-info/RECORD +67 -0
  42. memorisdk-1.0.1.dist-info/RECORD +0 -44
  43. memorisdk-1.0.1.dist-info/entry_points.txt +0 -2
  44. {memorisdk-1.0.1.dist-info → memorisdk-2.0.0.dist-info}/WHEEL +0 -0
  45. {memorisdk-1.0.1.dist-info → memorisdk-2.0.0.dist-info}/licenses/LICENSE +0 -0
  46. {memorisdk-1.0.1.dist-info → memorisdk-2.0.0.dist-info}/top_level.txt +0 -0
@@ -1,11 +1,11 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: memorisdk
3
- Version: 1.0.1
3
+ Version: 2.0.0
4
4
  Summary: The Open-Source Memory Layer for AI Agents & Multi-Agent Systems
5
- Author-email: Memori Team <contact@memori.dev>
5
+ Author-email: GibsonAI Team <noc@gibsonai.com>
6
6
  License: Apache-2.0
7
7
  Project-URL: Homepage, https://github.com/GibsonAI/memori
8
- Project-URL: Documentation, https://gibsonai.github.io/memori
8
+ Project-URL: Documentation, https://memori.gibsonai.com/docs
9
9
  Project-URL: Repository, https://github.com/GibsonAI/memori.git
10
10
  Project-URL: Bug Tracker, https://github.com/GibsonAI/memori/issues
11
11
  Project-URL: Changelog, https://github.com/GibsonAI/memori/blob/main/CHANGELOG.md
@@ -31,8 +31,9 @@ License-File: LICENSE
31
31
  Requires-Dist: loguru>=0.6.0
32
32
  Requires-Dist: pydantic>=2.0.0
33
33
  Requires-Dist: python-dotenv>=1.0.0
34
- Requires-Dist: click>=8.0.0
34
+ Requires-Dist: sqlalchemy>=2.0.0
35
35
  Requires-Dist: openai>=1.0.0
36
+ Requires-Dist: litellm>=1.0.0
36
37
  Provides-Extra: dev
37
38
  Requires-Dist: black>=23.0; extra == "dev"
38
39
  Requires-Dist: ruff>=0.1.0; extra == "dev"
@@ -40,6 +41,9 @@ Requires-Dist: isort>=5.9.0; extra == "dev"
40
41
  Requires-Dist: mypy>=1.0; extra == "dev"
41
42
  Requires-Dist: pre-commit>=2.15; extra == "dev"
42
43
  Requires-Dist: types-PyYAML>=6.0.0; extra == "dev"
44
+ Requires-Dist: pytest>=6.0; extra == "dev"
45
+ Requires-Dist: pytest-cov>=2.0; extra == "dev"
46
+ Requires-Dist: pytest-asyncio>=0.18.0; extra == "dev"
43
47
  Provides-Extra: docs
44
48
  Requires-Dist: mkdocs>=1.5.0; extra == "docs"
45
49
  Requires-Dist: mkdocs-material>=9.0.0; extra == "docs"
@@ -50,15 +54,31 @@ Provides-Extra: postgres
50
54
  Requires-Dist: psycopg2-binary>=2.9.0; extra == "postgres"
51
55
  Provides-Extra: mysql
52
56
  Requires-Dist: PyMySQL>=1.0.0; extra == "mysql"
57
+ Provides-Extra: databases
58
+ Requires-Dist: psycopg2-binary>=2.9.0; extra == "databases"
59
+ Requires-Dist: PyMySQL>=1.0.0; extra == "databases"
60
+ Provides-Extra: anthropic
61
+ Requires-Dist: anthropic>=0.3.0; extra == "anthropic"
62
+ Provides-Extra: litellm
63
+ Requires-Dist: litellm>=1.0.0; extra == "litellm"
53
64
  Provides-Extra: integrations
54
65
  Requires-Dist: litellm>=1.0.0; extra == "integrations"
55
66
  Requires-Dist: anthropic>=0.3.0; extra == "integrations"
67
+ Provides-Extra: demos
68
+ Requires-Dist: streamlit>=1.28.0; extra == "demos"
69
+ Requires-Dist: pandas>=2.0.0; extra == "demos"
70
+ Requires-Dist: plotly>=5.17.0; extra == "demos"
71
+ Requires-Dist: crewai>=0.152.0; extra == "demos"
72
+ Requires-Dist: crewai-tools>=0.59.0; extra == "demos"
56
73
  Provides-Extra: all
57
74
  Requires-Dist: black>=23.0; extra == "all"
58
75
  Requires-Dist: ruff>=0.1.0; extra == "all"
59
76
  Requires-Dist: isort>=5.9.0; extra == "all"
60
77
  Requires-Dist: mypy>=1.0; extra == "all"
61
78
  Requires-Dist: pre-commit>=2.15; extra == "all"
79
+ Requires-Dist: pytest>=6.0; extra == "all"
80
+ Requires-Dist: pytest-cov>=2.0; extra == "all"
81
+ Requires-Dist: pytest-asyncio>=0.18.0; extra == "all"
62
82
  Requires-Dist: mkdocs>=1.5.0; extra == "all"
63
83
  Requires-Dist: mkdocs-material>=9.0.0; extra == "all"
64
84
  Requires-Dist: mkdocs-git-revision-date-localized-plugin>=1.2.0; extra == "all"
@@ -68,17 +88,43 @@ Requires-Dist: psycopg2-binary>=2.9.0; extra == "all"
68
88
  Requires-Dist: PyMySQL>=1.0.0; extra == "all"
69
89
  Requires-Dist: litellm>=1.0.0; extra == "all"
70
90
  Requires-Dist: anthropic>=0.3.0; extra == "all"
91
+ Requires-Dist: streamlit>=1.28.0; extra == "all"
92
+ Requires-Dist: pandas>=2.0.0; extra == "all"
93
+ Requires-Dist: plotly>=5.17.0; extra == "all"
71
94
  Dynamic: license-file
72
95
 
73
- # Memori
74
-
75
- **The Open-Source Memory Layer for AI Agents & Multi-Agent Systems v1.2**
76
-
77
- *Give your AI agents structured, persistent memory with intelligent context injection - no more repeating yourself!*
78
-
79
- [![PyPI version](https://badge.fury.io/py/memori.svg)](https://badge.fury.io/py/memori)
80
- [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
81
- [![Python 3.8+](https://img.shields.io/badge/python-3.8+-blue.svg)](https://www.python.org/downloads/)
96
+ [![GibsonAI](https://github.com/user-attachments/assets/878e341b-5a93-4489-a398-abeca91b6b11)](https://gibsonai.com/)
97
+
98
+ # memori
99
+
100
+ <p align="center">
101
+ <strong>Open-Source Memory Engine for LLMs, AI Agents & Multi-Agent Systems</strong>
102
+ </p>
103
+
104
+ <p align="center">
105
+ <i>Make LLMs context-aware with human-like memory, dual-mode retrieval, and automatic context injection.</i>
106
+ </p>
107
+
108
+ <p align="center">
109
+ <a href="https://memori.gibsonai.com/docs">Learn more</a>
110
+ ·
111
+ <a href="https://www.gibsonai.com/discord">Join Discord</a>
112
+ </p>
113
+
114
+ <p align="center">
115
+ <a href="https://badge.fury.io/py/memorisdk">
116
+ <img src="https://badge.fury.io/py/memori.svg" alt="PyPI version">
117
+ </a>
118
+ <a href="https://pepy.tech/projects/memorisdk">
119
+ <img src="https://static.pepy.tech/badge/memorisdk" alt="Downloads">
120
+ </a>
121
+ <a href="https://opensource.org/licenses/MIT">
122
+ <img src="https://img.shields.io/badge/License-MIT-yellow.svg" alt="License: MIT">
123
+ </a>
124
+ <a href="https://www.python.org/downloads/">
125
+ <img src="https://img.shields.io/badge/python-3.8+-blue.svg" alt="Python 3.8+">
126
+ </a>
127
+ </p>
82
128
 
83
129
  ---
84
130
 
@@ -92,32 +138,72 @@ Dynamic: license-file
92
138
 
93
139
  ## ⚡ Quick Start
94
140
 
141
+ Install Memori:
142
+
95
143
  ```bash
96
144
  pip install memorisdk
97
145
  ```
98
146
 
147
+ ### Example with OpenAI
148
+
149
+ 1. Install OpenAI:
150
+
151
+ ```bash
152
+ pip install openai
153
+ ```
154
+
155
+ 2. Set OpenAI API Key:
156
+
157
+ ```bash
158
+ export OPENAI_API_KEY="sk-your-openai-key-here"
159
+ ```
160
+
161
+ 3. Run this Python script:
162
+
99
163
  ```python
100
164
  from memori import Memori
165
+ from openai import OpenAI
101
166
 
102
- # Create your workspace memory with conscious mode
103
- office_work = Memori(
104
- database_connect="sqlite:///office_memory.db",
105
- conscious_ingest=True, # Short-term working memory (one-shot context)
106
- openai_api_key="your-key"
107
- )
167
+ # Initialize OpenAI client
168
+ openai_client = OpenAI()
108
169
 
109
- office_work.enable() # Start recording conversations
170
+ # Initialize memory
171
+ memori = Memori(conscious_ingest=True)
172
+ memori.enable()
110
173
 
111
- # Use ANY LLM library - context automatically injected!
112
- from litellm import completion
174
+ print("=== First Conversation - Establishing Context ===")
175
+ response1 = openai_client.chat.completions.create(
176
+ model="gpt-4o-mini",
177
+ messages=[{
178
+ "role": "user",
179
+ "content": "I'm working on a Python FastAPI project"
180
+ }]
181
+ )
113
182
 
114
- response = completion(
115
- model="gpt-4o",
116
- messages=[{"role": "user", "content": "Help me with Python testing"}]
183
+ print("Assistant:", response1.choices[0].message.content)
184
+ print("\n" + "="*50)
185
+ print("=== Second Conversation - Memory Provides Context ===")
186
+
187
+ response2 = openai_client.chat.completions.create(
188
+ model="gpt-4o-mini",
189
+ messages=[{
190
+ "role": "user",
191
+ "content": "Help me add user authentication"
192
+ }]
117
193
  )
118
- # ✨ Short-term working memory automatically included once per session
194
+ print("Assistant:", response2.choices[0].message.content)
195
+ print("\n💡 Notice: Memori automatically knows about your FastAPI Python project!")
119
196
  ```
120
197
 
198
+ ---
199
+
200
+ **🚀 Ready to explore more?**
201
+ - [📖 Examples](#examples) - Basic usage patterns and code samples
202
+ - [🔌 Framework Integrations](#framework-integrations) - LangChain, Agno & CrewAI examples
203
+ - [🎮 Interactive Demos](#interactive-demos) - Live applications & tutorials
204
+
205
+ ---
206
+
121
207
  ## 🧠 How It Works
122
208
 
123
209
  ### 1. **Universal Recording**
@@ -284,15 +370,15 @@ Works with **ANY** LLM library:
284
370
  ```python
285
371
  memori.enable() # Enable universal recording
286
372
 
287
- # LiteLLM (recommended)
288
- from litellm import completion
289
- completion(model="gpt-4", messages=[...])
290
-
291
373
  # OpenAI
292
- import openai
293
- client = openai.OpenAI()
374
+ from openai import OpenAI
375
+ client = OpenAI()
294
376
  client.chat.completions.create(...)
295
377
 
378
+ # LiteLLM
379
+ from litellm import completion
380
+ completion(model="gpt-4", messages=[...])
381
+
296
382
  # Anthropic
297
383
  import anthropic
298
384
  client = anthropic.Anthropic()
@@ -365,7 +451,7 @@ memori/
365
451
  └── tools/ # Memory search tools
366
452
  ```
367
453
 
368
- ## 🚀 Examples
454
+ ## Examples
369
455
 
370
456
  - **[Basic Usage](./examples/basic_usage.py)** - Simple memory setup with conscious ingestion
371
457
  - **[Personal Assistant](./examples/personal_assistant.py)** - AI assistant with intelligent memory
@@ -373,9 +459,33 @@ memori/
373
459
  - **[Advanced Config](./examples/advanced_config.py)** - Production configuration
374
460
  - **[Interactive Demo](./memori_example.py)** - Live conscious ingestion showcase
375
461
 
462
+ ## Framework Integrations
463
+
464
+ Memori works seamlessly with popular AI frameworks:
465
+
466
+ | Framework | Description | Example | Features |
467
+ |-----------|-------------|---------|----------|
468
+ | 🤖 [Agno](./examples/integrations/agno_example.py) | Memory-enhanced agent framework integration with persistent conversations | Simple chat agent with memory search | Memory tools, conversation persistence, contextual responses |
469
+ | 👥 [CrewAI](./examples/integrations/crewai_example.py) | Multi-agent system with shared memory across agent interactions | Collaborative agents with memory | Agent coordination, shared memory, task-based workflows |
470
+ | 🌊 [Digital Ocean AI](./examples/integrations/digital_ocean_example.py) | Memory-enhanced customer support using Digital Ocean's AI platform | Customer support assistant with conversation history | Context injection, session continuity, support analytics |
471
+ | 🔗 [LangChain](./examples/integrations/langchain_example.py) | Enterprise-grade agent framework with advanced memory integration | AI assistant with LangChain tools and memory | Custom tools, agent executors, memory persistence, error handling |
472
+ | � [OpenAI Agent](./examples/integrations/openai_agent_example.py) | Memory-enhanced OpenAI Agent with function calling and user preference tracking | Interactive assistant with memory search and user info storage | Function calling tools, memory search, preference tracking, async conversations |
473
+ | �🚀 [Swarms](./examples/integrations/swarms_example.py) | Multi-agent system framework with persistent memory capabilities | Memory-enhanced Swarms agents with auto/conscious ingestion | Agent memory persistence, multi-agent coordination, contextual awareness |
474
+
475
+ ## Interactive Demos
476
+
477
+ Explore Memori's capabilities through these interactive demonstrations:
478
+
479
+ | Title | Description | Tools Used | Live Demo |
480
+ |------------|-------------|------------|-----------|
481
+ | 🌟 [Personal Diary Assistant](./demos/personal_diary_assistant/) | A comprehensive diary assistant with mood tracking, pattern analysis, and personalized recommendations. | Streamlit, LiteLLM, OpenAI, SQLite | [Run Demo](https://personal-diary-assistant.streamlit.app/) |
482
+ | 🌍 [Travel Planner Agent](./demos/travel_planner/) | Intelligent travel planning with CrewAI agents, real-time web search, and memory-based personalization. Plans complete itineraries with budget analysis. | CrewAI, Streamlit, OpenAI, SQLite | |
483
+ | 🧑‍🔬 [Researcher Agent](./demos/researcher_agent/) | Advanced AI research assistant with persistent memory, real-time web search, and comprehensive report generation. Builds upon previous research sessions. | Agno, Streamlit, OpenAI, ExaAI, SQLite | [Run Demo](https://researcher-agent-memori.streamlit.app/) |
484
+
376
485
  ## 🤝 Contributing
377
486
 
378
- See [CONTRIBUTING.md](./CONTRIBUTING.md) for development setup and guidelines.
487
+ - See [CONTRIBUTING.md](./CONTRIBUTING.md) for development setup and guidelines.
488
+ - Community: [Discord](https://www.gibsonai.com/discord)
379
489
 
380
490
  ## 📄 License
381
491
 
@@ -0,0 +1,67 @@
1
+ memori/__init__.py,sha256=emYkTqCGsQfc-qY2vSTm4-w9DVJdziC9RTfSrktUmG0,3676
2
+ memori/agents/__init__.py,sha256=9M3IG5R10FfVgT8tUzBZ2pZ0SypSpYkFfhtyvMyeTpE,261
3
+ memori/agents/conscious_agent.py,sha256=NQ-dEHRXutrkwo2ssPZ0ct7uHXU2gDa-PQ0d74mUFvk,13459
4
+ memori/agents/memory_agent.py,sha256=tBwkNMtlVDlQ88jATjuL96vQHPfU_HOz_XXOB3vd710,23552
5
+ memori/agents/retrieval_agent.py,sha256=w1_6j_OJytzAF4IQi5nRWUxNIyIyHK8nHdklYYwsCxU,37145
6
+ memori/config/__init__.py,sha256=tQAxopgOsea02u9iId-ocOY86nWWNGC3rvt3AOFcLn8,295
7
+ memori/config/manager.py,sha256=xi8d8xW3obyV6v9UHDG6idSAymge8yWxGW11e2mI0nQ,10388
8
+ memori/config/memory_manager.py,sha256=hxwkMpUaOkOcnnvgpHxR4PT6iHNj8yNda-o9OpM0Y-g,11020
9
+ memori/config/settings.py,sha256=nrrWD4hwdbtYlIPtJFHgGyMudGP-hz9sA-KBW_7ZZbE,9724
10
+ memori/core/__init__.py,sha256=jvhHn-KL3bzRHs11-4B0BCKH6gkAf6Gf_G59If8fD0M,157
11
+ memori/core/conversation.py,sha256=l1SRLyIrKrcSzqEdqnqLwSqYW6rXtGeH1Fhs7YBI0XU,15825
12
+ memori/core/database.py,sha256=RkBelmgDm_6WoTKISPTz_WYVsPvnVB7NKJuRFWOLbZM,40044
13
+ memori/core/memory.py,sha256=sORgSkIdQ00iTuJYG_zjmNN6sUnf8DQ-2vk_A03-X6Y,103388
14
+ memori/core/providers.py,sha256=Ix8CEb_kw0Qur1E3_mxydh3RvUpyNy5qGAKK4wuGK6Y,7032
15
+ memori/database/__init__.py,sha256=kMLxwfRfTVvw0oV1kl9v-Dkyqm6ggcsMV6hltqdrN3k,189
16
+ memori/database/auto_creator.py,sha256=pQUKV9hO-wM-vocr-_2I-1kwCofd3z8-KpkHAxLREaM,12686
17
+ memori/database/connection_utils.py,sha256=iAxVvwP-_0UZwmc_y_GOs3-26YlPTmot6_bY8crIPxQ,6741
18
+ memori/database/models.py,sha256=jeC5JiVXjxzk3ABt7BeXfkAYOpyjcQ3OqnuLkfIIRyc,14832
19
+ memori/database/query_translator.py,sha256=oe_BCPamtT-LBBUKChbM0jK4rjI4ZDZtVp7ZUGnpDqs,7026
20
+ memori/database/search_service.py,sha256=xh1MtXbov48HAcJpeMYHh9JUTEWrqRBqn0kahriGJqU,20584
21
+ memori/database/sqlalchemy_manager.py,sha256=hC0bC-XJm81bCWKYtuMowFTkVdQayTWb8893O6MbhN8,33049
22
+ memori/database/adapters/__init__.py,sha256=lSvRPZXJoKTlj4iI8kW5I45OXjKZh8oFb6vqDpJ69sQ,366
23
+ memori/database/adapters/mysql_adapter.py,sha256=WOe-huYmrt-aeDn0YACnH3F5bhSTjG0SePjl4hThd-s,12944
24
+ memori/database/adapters/postgresql_adapter.py,sha256=tGBGoBo340bLluhb9DytflDdVnhkjbgaCY2SvvoUpfA,11358
25
+ memori/database/adapters/sqlite_adapter.py,sha256=FBeBgXlbB0I5vcjtT7rURNnHAkxXdlZ6e4OVEFVe78I,9170
26
+ memori/database/connectors/__init__.py,sha256=tG283nMRMWWM3B4WBfi7PMYnSUcH2Go5C88O91dOjcE,275
27
+ memori/database/connectors/base_connector.py,sha256=9fL4tSEQSPdnHnYbS6BbARrHztyIUy4DUZgZlgauFwo,9646
28
+ memori/database/connectors/mysql_connector.py,sha256=JE4nplaftn5SQI7DMXCe0qiVQyOE3OCIXHjnAUNa5C8,13380
29
+ memori/database/connectors/postgres_connector.py,sha256=sjD0ZjBNk0NZa-SkHRE5EnOqtTZ4z4ksL_-R2qKS7UY,16672
30
+ memori/database/connectors/sqlite_connector.py,sha256=FHPa33rPePkSWlhhYaHeKsjL64IbVyqFukx1le2HQo0,11717
31
+ memori/database/queries/__init__.py,sha256=BIxenJzxOosD2-myGfGrortbq18rQycxBfqdMJhm-Cc,319
32
+ memori/database/queries/base_queries.py,sha256=jUOGHETuPVGNfDPmWja3DSHgGSibP3YyrPRmP55ry4I,10598
33
+ memori/database/queries/chat_queries.py,sha256=gFsLLjAov502Pns9HAMr_MqLDETplZBQSPs9nqWFCnk,4431
34
+ memori/database/queries/entity_queries.py,sha256=no6bzXHNzRs4mmbi4MggW2F19XxfJ-0RQKv3iv84a64,7518
35
+ memori/database/queries/memory_queries.py,sha256=ehBikwSfP-3ClASUEJCmBlxVBI6BZpZHaheYBSSJ79c,9230
36
+ memori/database/schema_generators/__init__.py,sha256=0qN5FEmRgXaqT63HJXEnxaA8y1PebtyM-dZpSKkQfCI,152
37
+ memori/database/schema_generators/mysql_schema_generator.py,sha256=fWT4SR923eb9W2ri5ECLOcuGpBG-ehg1FTazDUjIcbY,8904
38
+ memori/database/search/__init__.py,sha256=3w82tn7AbHC7LewegaQCyU95zl28dZQUbJKBCqZ3eTE,222
39
+ memori/database/search/mysql_search_adapter.py,sha256=vZPA0BWIOsgu4dWsve8sbk0CPR8hULhPNz5vN4PyYW0,9301
40
+ memori/database/search/sqlite_search_adapter.py,sha256=zMkboGrJKkFyA6fx0kHBjUqKMCxaiVdD4F7jGEA8ssU,6840
41
+ memori/database/templates/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
42
+ memori/database/templates/basic_template.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
43
+ memori/database/templates/schemas/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
44
+ memori/integrations/__init__.py,sha256=jlTI3TRBpclXXiqbigSUVqpfN9t64Q9B17EhlN543h8,2903
45
+ memori/integrations/anthropic_integration.py,sha256=IJtqPYTcMaYsXKWUabR4XDMpCabg9qMK7d-8T9A1CcY,8169
46
+ memori/integrations/litellm_integration.py,sha256=UWC5huyUMasfZDBzH7MxAVbTXoo70qvyGcrYZI7Gx_Y,12407
47
+ memori/integrations/openai_integration.py,sha256=iQKitY1JY_i-YldcAeePnVdYc6Ns0Gmk_zIoMV302RA,19977
48
+ memori/scripts/llm_text.py,sha256=HDkuGMb527yupSbA3syBFA9WHBPnP2lVqEKW6trIZtU,1603
49
+ memori/tools/__init__.py,sha256=0KPbWAFYmvEleacrby4RzhJGW5GPdFiXN6RWwFrbqf4,200
50
+ memori/tools/memory_tool.py,sha256=j57j2-MbhC9oTQJxBOnEBssB536OAb7igFA-XnxtHy4,20917
51
+ memori/utils/__init__.py,sha256=e3AN4KfomQBQDsr53HwfvOeTtI3QZMzGQMYpRp8l6ow,1757
52
+ memori/utils/exceptions.py,sha256=JGLo2S8ElG3gBjD4aJeVPWNsNB9OLPYAYzCdKfiEW74,12136
53
+ memori/utils/helpers.py,sha256=_lpGSsI2UkMyYUY6X9k_VEpACvyxwY51TzgYVPZTeBk,13059
54
+ memori/utils/input_validator.py,sha256=Jfk07lm7PkFwArzt7vYQBJfx1DMFA_LqU2D9Y2-ufDQ,13612
55
+ memori/utils/logging.py,sha256=HXf3UrE0cm72KvFwyCjE7237opIxdNqzqxQQauhrX34,7131
56
+ memori/utils/pydantic_models.py,sha256=oKQqvcFhmFdm_ldDqe5bM1xWJkSrv08o6gcz5Lgfs8o,12142
57
+ memori/utils/query_builder.py,sha256=3Srw9Ini6zBTOmIbIfYNwj5pZ3cyHr3hNiV9jLHHan4,21430
58
+ memori/utils/schemas.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
59
+ memori/utils/security_audit.py,sha256=BB9IwDdAiUgmuwjm8rEyHbthfTHr1sipcNlPdFpBs_g,22059
60
+ memori/utils/security_integration.py,sha256=TORuhOPEAQ1PRkt7xcBHhI1UbCd4LVLowdiv2UItwCY,13078
61
+ memori/utils/transaction_manager.py,sha256=ITSF1Gba4cEBJXW1woDyomhOsdfL8vwfGckqbYqAGok,18755
62
+ memori/utils/validators.py,sha256=2btILpEh2yBS_6rytp2B2epFxMT4876SibS0yNj6bKI,11287
63
+ memorisdk-2.0.0.dist-info/licenses/LICENSE,sha256=gyrDaYsSODngoYE1l68l_UfjppS-oYDrf1MvY1JGhgE,10430
64
+ memorisdk-2.0.0.dist-info/METADATA,sha256=GtHOV0QPtwUELPHMuj8GD6lMo8AGbrYy031xY4nKPWI,18201
65
+ memorisdk-2.0.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
66
+ memorisdk-2.0.0.dist-info/top_level.txt,sha256=Nm3ad0isbJYBzTEce-O_gmkAEiTbAbyilgAhRt8IoGA,7
67
+ memorisdk-2.0.0.dist-info/RECORD,,
@@ -1,44 +0,0 @@
1
- memori/__init__.py,sha256=EpqarE_UsvWNALb2YWk4XAc5SML5uRjZOr1DHIrXNgo,3202
2
- memori/agents/__init__.py,sha256=9M3IG5R10FfVgT8tUzBZ2pZ0SypSpYkFfhtyvMyeTpE,261
3
- memori/agents/conscious_agent.py,sha256=6sgoTOkSrRGTAdEKGZPa5V6DFdzVxm_InZS85OnsVLE,20478
4
- memori/agents/memory_agent.py,sha256=Sz3MsQ4aRUccN5YO86he3tAwyP43KXFAH7KXPOC7QFY,12891
5
- memori/agents/retrieval_agent.py,sha256=PofpjLvx7Y4M9ns6kkypwT2D9eFaO2xffSuPovi8zuw,21490
6
- memori/config/__init__.py,sha256=tQAxopgOsea02u9iId-ocOY86nWWNGC3rvt3AOFcLn8,295
7
- memori/config/manager.py,sha256=xi8d8xW3obyV6v9UHDG6idSAymge8yWxGW11e2mI0nQ,10388
8
- memori/config/settings.py,sha256=nrrWD4hwdbtYlIPtJFHgGyMudGP-hz9sA-KBW_7ZZbE,9724
9
- memori/core/__init__.py,sha256=jvhHn-KL3bzRHs11-4B0BCKH6gkAf6Gf_G59If8fD0M,157
10
- memori/core/database.py,sha256=eok8lvXvFbHk_H2TEiYnRAX5nVE0xQgE0TUigRfGovs,36248
11
- memori/core/memory.py,sha256=nYPqO4dCzKEzVxYKJn4OvrSz7zq3vQ3gUpGkpZ1B88A,53313
12
- memori/database/__init__.py,sha256=kMLxwfRfTVvw0oV1kl9v-Dkyqm6ggcsMV6hltqdrN3k,189
13
- memori/database/connectors/__init__.py,sha256=tG283nMRMWWM3B4WBfi7PMYnSUcH2Go5C88O91dOjcE,275
14
- memori/database/connectors/mysql_connector.py,sha256=P9tahYczjgfm_0iZpD1OxekeXLXnbpKt9M9EEe9NAjU,4861
15
- memori/database/connectors/postgres_connector.py,sha256=30wMEeVbvAc30_OrA0MqjePEgCGd9ejtG2ycXZLlotM,5495
16
- memori/database/connectors/sqlite_connector.py,sha256=5KbOh0OrIt8e7NEw7aYSk7pl5PMLnMCvf_GbA0Wzsvk,4782
17
- memori/database/queries/__init__.py,sha256=BIxenJzxOosD2-myGfGrortbq18rQycxBfqdMJhm-Cc,319
18
- memori/database/queries/base_queries.py,sha256=ZBMxqt48j3ooF5OZIkKtBSh24Ex-Mnhg-3wnyL3cl-M,10595
19
- memori/database/queries/chat_queries.py,sha256=gFsLLjAov502Pns9HAMr_MqLDETplZBQSPs9nqWFCnk,4431
20
- memori/database/queries/entity_queries.py,sha256=no6bzXHNzRs4mmbi4MggW2F19XxfJ-0RQKv3iv84a64,7518
21
- memori/database/queries/memory_queries.py,sha256=hodLllgfLbQvdeOSCcZadPyAF3ro3O6Mbz0jAtDIXvc,5609
22
- memori/database/templates/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
23
- memori/database/templates/basic_template.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
24
- memori/database/templates/schemas/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
25
- memori/integrations/__init__.py,sha256=9VVDvedcu4ZxK2Tt_fT5ZSRPV9xakfEloNhPibpvHA8,1978
26
- memori/integrations/anthropic_integration.py,sha256=IJtqPYTcMaYsXKWUabR4XDMpCabg9qMK7d-8T9A1CcY,8169
27
- memori/integrations/litellm_integration.py,sha256=fNQqov9TThFD9YRWLAFsZ1R4-Bsm4E70qYQ17Z4ZVik,351
28
- memori/integrations/openai_integration.py,sha256=e_CV-CGPhwhTvH5fiA1NDcKYGZiDtN74luRJP5r2OdQ,12033
29
- memori/scripts/llm_text.py,sha256=HDkuGMb527yupSbA3syBFA9WHBPnP2lVqEKW6trIZtU,1603
30
- memori/tools/__init__.py,sha256=0KPbWAFYmvEleacrby4RzhJGW5GPdFiXN6RWwFrbqf4,200
31
- memori/tools/memory_tool.py,sha256=j57j2-MbhC9oTQJxBOnEBssB536OAb7igFA-XnxtHy4,20917
32
- memori/utils/__init__.py,sha256=e3AN4KfomQBQDsr53HwfvOeTtI3QZMzGQMYpRp8l6ow,1757
33
- memori/utils/exceptions.py,sha256=JGLo2S8ElG3gBjD4aJeVPWNsNB9OLPYAYzCdKfiEW74,12136
34
- memori/utils/helpers.py,sha256=_lpGSsI2UkMyYUY6X9k_VEpACvyxwY51TzgYVPZTeBk,13059
35
- memori/utils/logging.py,sha256=HXf3UrE0cm72KvFwyCjE7237opIxdNqzqxQQauhrX34,7131
36
- memori/utils/pydantic_models.py,sha256=U9nVy3Dko1X_dS4PpA7z2aacqegSSwOmZvQzPuVRcA0,8047
37
- memori/utils/schemas.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
38
- memori/utils/validators.py,sha256=2btILpEh2yBS_6rytp2B2epFxMT4876SibS0yNj6bKI,11287
39
- memorisdk-1.0.1.dist-info/licenses/LICENSE,sha256=gyrDaYsSODngoYE1l68l_UfjppS-oYDrf1MvY1JGhgE,10430
40
- memorisdk-1.0.1.dist-info/METADATA,sha256=NlWPctmdLlWel35LPLNMIgKjzbpSsHCebqZ5mU_nsUk,12989
41
- memorisdk-1.0.1.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
42
- memorisdk-1.0.1.dist-info/entry_points.txt,sha256=ir3aWDbFfKGKQlnJCW440GQ2saYNznptoXWheOUtu5c,43
43
- memorisdk-1.0.1.dist-info/top_level.txt,sha256=Nm3ad0isbJYBzTEce-O_gmkAEiTbAbyilgAhRt8IoGA,7
44
- memorisdk-1.0.1.dist-info/RECORD,,
@@ -1,2 +0,0 @@
1
- [console_scripts]
2
- memori = memori.cli:main