memorius 0.1.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.
@@ -0,0 +1,259 @@
1
+ Metadata-Version: 2.4
2
+ Name: memorius
3
+ Version: 0.1.0
4
+ Summary: Self-contained memory vault for any AI agent — vector search, session diaries, and agent-agnostic hooks. The better MemPalace.
5
+ Author: Memorius Contributors
6
+ License-Expression: MIT
7
+ Project-URL: Homepage, https://github.com/Dream-Pixels-Forge/memorius
8
+ Project-URL: Repository, https://github.com/Dream-Pixels-Forge/memorius
9
+ Project-URL: Issues, https://github.com/Dream-Pixels-Forge/memorius/issues
10
+ Classifier: Development Status :: 3 - Alpha
11
+ Classifier: Environment :: No Input/Output (Daemon)
12
+ Classifier: Intended Audience :: Developers
13
+ Classifier: Programming Language :: Python :: 3
14
+ Classifier: Programming Language :: Python :: 3.11
15
+ Classifier: Programming Language :: Python :: 3.12
16
+ Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
17
+ Requires-Python: >=3.11
18
+ Description-Content-Type: text/markdown
19
+ Requires-Dist: pyyaml>=6.0
20
+ Requires-Dist: chromadb>=0.4.0
21
+ Requires-Dist: httpx>=0.24.0
22
+ Provides-Extra: rest
23
+ Requires-Dist: fastapi>=0.104.0; extra == "rest"
24
+ Requires-Dist: uvicorn[standard]>=0.24.0; extra == "rest"
25
+ Requires-Dist: pydantic>=2.0.0; extra == "rest"
26
+ Requires-Dist: sse-starlette>=1.0.0; extra == "rest"
27
+ Provides-Extra: local-embeddings
28
+ Requires-Dist: sentence-transformers>=2.2.0; extra == "local-embeddings"
29
+ Provides-Extra: openai
30
+ Requires-Dist: openai>=1.0.0; extra == "openai"
31
+ Provides-Extra: all
32
+ Requires-Dist: memorius[local-embeddings,openai,rest]; extra == "all"
33
+ Provides-Extra: dev
34
+ Requires-Dist: pytest>=7.0; extra == "dev"
35
+ Requires-Dist: pytest-asyncio>=0.21.0; extra == "dev"
36
+
37
+ # Memorius
38
+
39
+ **Universal memory vault for any AI agent.**
40
+
41
+ Memorius is a self-contained, agent-agnostic memory system that gives LLMs and AI agents persistent, searchable memory with a hierarchical knowledge organization. Drop-in replacement for MemPalace with multi-backend vector storage, pluggable embeddings, built-in MCP + REST servers, and agent-agnostic hooks.
42
+
43
+ ```
44
+ pip install memorius
45
+ ```
46
+
47
+ ## Quick Start
48
+
49
+ ```bash
50
+ # Initialize a vault
51
+ memorius init
52
+
53
+ # Store a memory
54
+ memorius store "The sky is blue because Rayleigh scattering scatters shorter wavelengths more" --vault main --shelf science --folder physics
55
+
56
+ # Semantic search
57
+ memorius search "why is the sky blue"
58
+
59
+ # Mine memories from a conversation
60
+ memorius mine transcript.txt --vault conversations
61
+
62
+ # Check status
63
+ memorius status
64
+
65
+ # Write a diary entry
66
+ memorius diary --session "session-001" --title "Research findings"
67
+ ```
68
+
69
+ ## Architecture
70
+
71
+ ```
72
+ ┌─────────────────────────────────────────────────────────┐
73
+ │ Memorius │
74
+ ├─────────────────────────────────────────────────────────┤
75
+ │ CLI memorius init | store | search | mine | ... │
76
+ │ MCP JSON-RPC protocol server (stdin/stdout) │
77
+ │ REST FastAPI HTTP server (optional) │
78
+ │ Hooks Agent-agnostic lifecycle hooks │
79
+ ├─────────────────────────────────────────────────────────┤
80
+ │ Vault Engine │
81
+ │ ├── ChromaStore Vector search (ChromaDB) │
82
+ │ ├── SQLiteStore Metadata & hierarchy (SQLite) │
83
+ │ └── Embeddings Pluggable providers │
84
+ ├─────────────────────────────────────────────────────────┤
85
+ │ Vault > Shelf > Folder > Note hierarchy │
86
+ │ Diaries Session diary entries │
87
+ │ Mine Extract memories from transcripts │
88
+ ├─────────────────────────────────────────────────────────┤
89
+ │ Plugin Gen → Generate per-agent plugins │
90
+ │ Normalizers → Import Discord/Telegram/WhatsApp/etc │
91
+ └─────────────────────────────────────────────────────────┘
92
+ ```
93
+
94
+ ## Configuration
95
+
96
+ Config lives at `~/.memorius/config.yaml` (auto-created on `memorius init`):
97
+
98
+ ```yaml
99
+ storage:
100
+ path: ~/.memorius/data
101
+
102
+ embeddings:
103
+ provider: chroma-default # chroma-default | sentence-transformers | openai
104
+ model: all-MiniLM-L6-v2
105
+
106
+ vault:
107
+ default: main
108
+
109
+ server:
110
+ mcp_port: 8910
111
+ rest_port: 8912
112
+ host: 127.0.0.1
113
+ ```
114
+
115
+ Environment variable overrides:
116
+
117
+ | Variable | Overrides |
118
+ |---|---|
119
+ | `MEMORIUS_STORAGE_PATH` | `storage.path` |
120
+ | `MEMORIUS_EMBEDDINGS_PROVIDER` | `embeddings.provider` |
121
+ | `MEMORIUS_DEFAULT_VAULT` | `vault.default` |
122
+ | `MEMORIUS_MCP_PORT` | `server.mcp_port` |
123
+ | `MEMORIUS_REST_PORT` | `server.rest_port` |
124
+ | `MEMORIUS_HOST` | `server.host` |
125
+ | `MEMORIUS_OPENAI_API_KEY` | `embeddings.openai.api_key` |
126
+
127
+ ## Embedding Providers
128
+
129
+ | Provider | Requirement | Quality |
130
+ |---|---|---|
131
+ | `chroma-default` | ChromaDB (bundled ONNX) | Good (384d) |
132
+ | `sentence-transformers` | `pip install memorius[local-embeddings]` | Better (768d+) |
133
+ | `openai` | `OPENAI_API_KEY` env var | Best (1536d) |
134
+
135
+ ## CLI Reference
136
+
137
+ ```
138
+ Usage:
139
+ memorius init Initialize a new vault
140
+ memorius status Show vault status
141
+ memorius store <text> Store a memory
142
+ --vault, -v Vault name (default: main)
143
+ --shelf, -s Shelf name (default: default)
144
+ --folder, -f Folder name (default: default)
145
+ --note, -n Note name (default: default)
146
+ memorius search <query> Semantic search
147
+ --vault, -v Filter by vault
148
+ --shelf, -s Filter by shelf
149
+ --limit, -l Max results (default: 10)
150
+ memorius mine <file|text> Extract memories from transcript
151
+ --vault, -v Target vault (default: main)
152
+ memorius diary <session> Write a diary entry
153
+ --title, -t Entry title
154
+ --summary, -s Entry summary
155
+ --vault, -v Vault name (default: main)
156
+ memorius diaries List recent diary entries
157
+ memorius ls Explore vault hierarchy
158
+ memorius serve Start MCP server (stdio)
159
+ memorius serve-rest Start REST API server
160
+ memorius --version Show version
161
+ ```
162
+
163
+ ## MCP Protocol
164
+
165
+ MCP is the primary interface for AI agents to interact with Memorius. Connect any MCP-compatible client (Claude Code, Cursor, Codex CLI, Gemini CLI, etc.) by pointing it at the MCP server:
166
+
167
+ ```json
168
+ {
169
+ "mcpServers": {
170
+ "memorius": {
171
+ "command": "memorius",
172
+ "args": ["serve"]
173
+ }
174
+ }
175
+ }
176
+ ```
177
+
178
+ Available MCP tools:
179
+
180
+ | Tool | Description |
181
+ |---|---|
182
+ | `memorius_status` | Memory vault status |
183
+ | `memorius_store` | Store content in vault/shelf/folder/note hierarchy |
184
+ | `memorius_search` | Semantic search across vault |
185
+ | `memorius_mine` | Extract memories from conversation |
186
+ | `memorius_diary_write` | Write session diary entry |
187
+ | `memorius_diary_list` | List diary entries |
188
+ | `memorius_vault_ls` | Browse vault hierarchy |
189
+
190
+ ## REST API
191
+
192
+ Start the REST server:
193
+
194
+ ```bash
195
+ memorius serve-rest
196
+ ```
197
+
198
+ Endpoints:
199
+
200
+ | Method | Path | Description |
201
+ |---|---|---|
202
+ | GET | `/health` | Health check |
203
+ | POST | `/store` | Store a memory |
204
+ | POST | `/search` | Semantic search |
205
+ | POST | `/mine` | Extract memories |
206
+ | GET | `/status` | System status |
207
+ | POST | `/diary` | Write diary entry |
208
+ | GET | `/palace` | Browse hierarchy |
209
+
210
+ ## Agent Hooks (optional)
211
+
212
+ Memorius includes agent-agnostic lifecycle hooks. Hook scripts are generated per agent:
213
+
214
+ ```bash
215
+ memorius-plugin-gen init
216
+ # Edit universal-manifest.yaml
217
+ memorius-plugin-gen generate
218
+ ```
219
+
220
+ This generates plugins for Claude Code, Codex CLI, Cursor, Gemini CLI, Windsurf, and more.
221
+
222
+ ## Plugin Generator (optional)
223
+
224
+ ```bash
225
+ memorius-plugin-gen list # Show supported agents
226
+ memorius-plugin-gen init # Create universal-manifest.yaml
227
+ memorius-plugin-gen generate # Generate plugins for all agents
228
+ ```
229
+
230
+ ## Conversation Normalizers (optional)
231
+
232
+ ```bash
233
+ memorius-normalize input.json # Auto-detect and normalize
234
+ memorius-normalize input.json --format discord
235
+ ```
236
+
237
+ Supported formats: Discord, Telegram, WhatsApp, generic JSON, plain text.
238
+
239
+ ## Development
240
+
241
+ ```bash
242
+ git clone https://github.com/Dream-Pixels-Forge/memorius.git
243
+ cd memorius
244
+ python3 -m venv .venv
245
+ source .venv/bin/activate
246
+ pip install -e ".[dev]"
247
+
248
+ # Run tests
249
+ pytest
250
+
251
+ # Run end-to-end
252
+ memorius init
253
+ memorius store "test memory"
254
+ memorius search "test"
255
+ ```
256
+
257
+ ## License
258
+
259
+ MIT
@@ -0,0 +1,223 @@
1
+ # Memorius
2
+
3
+ **Universal memory vault for any AI agent.**
4
+
5
+ Memorius is a self-contained, agent-agnostic memory system that gives LLMs and AI agents persistent, searchable memory with a hierarchical knowledge organization. Drop-in replacement for MemPalace with multi-backend vector storage, pluggable embeddings, built-in MCP + REST servers, and agent-agnostic hooks.
6
+
7
+ ```
8
+ pip install memorius
9
+ ```
10
+
11
+ ## Quick Start
12
+
13
+ ```bash
14
+ # Initialize a vault
15
+ memorius init
16
+
17
+ # Store a memory
18
+ memorius store "The sky is blue because Rayleigh scattering scatters shorter wavelengths more" --vault main --shelf science --folder physics
19
+
20
+ # Semantic search
21
+ memorius search "why is the sky blue"
22
+
23
+ # Mine memories from a conversation
24
+ memorius mine transcript.txt --vault conversations
25
+
26
+ # Check status
27
+ memorius status
28
+
29
+ # Write a diary entry
30
+ memorius diary --session "session-001" --title "Research findings"
31
+ ```
32
+
33
+ ## Architecture
34
+
35
+ ```
36
+ ┌─────────────────────────────────────────────────────────┐
37
+ │ Memorius │
38
+ ├─────────────────────────────────────────────────────────┤
39
+ │ CLI memorius init | store | search | mine | ... │
40
+ │ MCP JSON-RPC protocol server (stdin/stdout) │
41
+ │ REST FastAPI HTTP server (optional) │
42
+ │ Hooks Agent-agnostic lifecycle hooks │
43
+ ├─────────────────────────────────────────────────────────┤
44
+ │ Vault Engine │
45
+ │ ├── ChromaStore Vector search (ChromaDB) │
46
+ │ ├── SQLiteStore Metadata & hierarchy (SQLite) │
47
+ │ └── Embeddings Pluggable providers │
48
+ ├─────────────────────────────────────────────────────────┤
49
+ │ Vault > Shelf > Folder > Note hierarchy │
50
+ │ Diaries Session diary entries │
51
+ │ Mine Extract memories from transcripts │
52
+ ├─────────────────────────────────────────────────────────┤
53
+ │ Plugin Gen → Generate per-agent plugins │
54
+ │ Normalizers → Import Discord/Telegram/WhatsApp/etc │
55
+ └─────────────────────────────────────────────────────────┘
56
+ ```
57
+
58
+ ## Configuration
59
+
60
+ Config lives at `~/.memorius/config.yaml` (auto-created on `memorius init`):
61
+
62
+ ```yaml
63
+ storage:
64
+ path: ~/.memorius/data
65
+
66
+ embeddings:
67
+ provider: chroma-default # chroma-default | sentence-transformers | openai
68
+ model: all-MiniLM-L6-v2
69
+
70
+ vault:
71
+ default: main
72
+
73
+ server:
74
+ mcp_port: 8910
75
+ rest_port: 8912
76
+ host: 127.0.0.1
77
+ ```
78
+
79
+ Environment variable overrides:
80
+
81
+ | Variable | Overrides |
82
+ |---|---|
83
+ | `MEMORIUS_STORAGE_PATH` | `storage.path` |
84
+ | `MEMORIUS_EMBEDDINGS_PROVIDER` | `embeddings.provider` |
85
+ | `MEMORIUS_DEFAULT_VAULT` | `vault.default` |
86
+ | `MEMORIUS_MCP_PORT` | `server.mcp_port` |
87
+ | `MEMORIUS_REST_PORT` | `server.rest_port` |
88
+ | `MEMORIUS_HOST` | `server.host` |
89
+ | `MEMORIUS_OPENAI_API_KEY` | `embeddings.openai.api_key` |
90
+
91
+ ## Embedding Providers
92
+
93
+ | Provider | Requirement | Quality |
94
+ |---|---|---|
95
+ | `chroma-default` | ChromaDB (bundled ONNX) | Good (384d) |
96
+ | `sentence-transformers` | `pip install memorius[local-embeddings]` | Better (768d+) |
97
+ | `openai` | `OPENAI_API_KEY` env var | Best (1536d) |
98
+
99
+ ## CLI Reference
100
+
101
+ ```
102
+ Usage:
103
+ memorius init Initialize a new vault
104
+ memorius status Show vault status
105
+ memorius store <text> Store a memory
106
+ --vault, -v Vault name (default: main)
107
+ --shelf, -s Shelf name (default: default)
108
+ --folder, -f Folder name (default: default)
109
+ --note, -n Note name (default: default)
110
+ memorius search <query> Semantic search
111
+ --vault, -v Filter by vault
112
+ --shelf, -s Filter by shelf
113
+ --limit, -l Max results (default: 10)
114
+ memorius mine <file|text> Extract memories from transcript
115
+ --vault, -v Target vault (default: main)
116
+ memorius diary <session> Write a diary entry
117
+ --title, -t Entry title
118
+ --summary, -s Entry summary
119
+ --vault, -v Vault name (default: main)
120
+ memorius diaries List recent diary entries
121
+ memorius ls Explore vault hierarchy
122
+ memorius serve Start MCP server (stdio)
123
+ memorius serve-rest Start REST API server
124
+ memorius --version Show version
125
+ ```
126
+
127
+ ## MCP Protocol
128
+
129
+ MCP is the primary interface for AI agents to interact with Memorius. Connect any MCP-compatible client (Claude Code, Cursor, Codex CLI, Gemini CLI, etc.) by pointing it at the MCP server:
130
+
131
+ ```json
132
+ {
133
+ "mcpServers": {
134
+ "memorius": {
135
+ "command": "memorius",
136
+ "args": ["serve"]
137
+ }
138
+ }
139
+ }
140
+ ```
141
+
142
+ Available MCP tools:
143
+
144
+ | Tool | Description |
145
+ |---|---|
146
+ | `memorius_status` | Memory vault status |
147
+ | `memorius_store` | Store content in vault/shelf/folder/note hierarchy |
148
+ | `memorius_search` | Semantic search across vault |
149
+ | `memorius_mine` | Extract memories from conversation |
150
+ | `memorius_diary_write` | Write session diary entry |
151
+ | `memorius_diary_list` | List diary entries |
152
+ | `memorius_vault_ls` | Browse vault hierarchy |
153
+
154
+ ## REST API
155
+
156
+ Start the REST server:
157
+
158
+ ```bash
159
+ memorius serve-rest
160
+ ```
161
+
162
+ Endpoints:
163
+
164
+ | Method | Path | Description |
165
+ |---|---|---|
166
+ | GET | `/health` | Health check |
167
+ | POST | `/store` | Store a memory |
168
+ | POST | `/search` | Semantic search |
169
+ | POST | `/mine` | Extract memories |
170
+ | GET | `/status` | System status |
171
+ | POST | `/diary` | Write diary entry |
172
+ | GET | `/palace` | Browse hierarchy |
173
+
174
+ ## Agent Hooks (optional)
175
+
176
+ Memorius includes agent-agnostic lifecycle hooks. Hook scripts are generated per agent:
177
+
178
+ ```bash
179
+ memorius-plugin-gen init
180
+ # Edit universal-manifest.yaml
181
+ memorius-plugin-gen generate
182
+ ```
183
+
184
+ This generates plugins for Claude Code, Codex CLI, Cursor, Gemini CLI, Windsurf, and more.
185
+
186
+ ## Plugin Generator (optional)
187
+
188
+ ```bash
189
+ memorius-plugin-gen list # Show supported agents
190
+ memorius-plugin-gen init # Create universal-manifest.yaml
191
+ memorius-plugin-gen generate # Generate plugins for all agents
192
+ ```
193
+
194
+ ## Conversation Normalizers (optional)
195
+
196
+ ```bash
197
+ memorius-normalize input.json # Auto-detect and normalize
198
+ memorius-normalize input.json --format discord
199
+ ```
200
+
201
+ Supported formats: Discord, Telegram, WhatsApp, generic JSON, plain text.
202
+
203
+ ## Development
204
+
205
+ ```bash
206
+ git clone https://github.com/Dream-Pixels-Forge/memorius.git
207
+ cd memorius
208
+ python3 -m venv .venv
209
+ source .venv/bin/activate
210
+ pip install -e ".[dev]"
211
+
212
+ # Run tests
213
+ pytest
214
+
215
+ # Run end-to-end
216
+ memorius init
217
+ memorius store "test memory"
218
+ memorius search "test"
219
+ ```
220
+
221
+ ## License
222
+
223
+ MIT
@@ -0,0 +1,29 @@
1
+ """memorius — self-contained memory vault for any AI agent.
2
+
3
+ Architecture:
4
+
5
+ Storage Layer:
6
+ chroma_db: Vector store for semantic search (ChromaDB)
7
+ sqlite_store: Metadata store for vaults, shelves, folders, notes, and diaries (SQLite)
8
+ Hierarchy: Vault > Shelf > Folder > Note
9
+
10
+ Vault Layer:
11
+ vault: Vault > Shelf > Folder > Note hierarchy
12
+ diary: Session diary entries with timestamps
13
+ mine: Extract memories from conversations/transcripts
14
+ search: Multi-modal search (vector + metadata + temporal)
15
+
16
+ Server Layer:
17
+ mcp: MCP protocol server (primary interface for tool-calling agents)
18
+ rest: FastAPI REST server (alternative interface for web/curl)
19
+
20
+ Integration Layer:
21
+ hooks: Agent-agnostic hook lifecycle system
22
+ plugin_gen: Per-agent plugin manifest generator
23
+ normalizers: Conversation format importers (Discord, Telegram, WhatsApp)
24
+
25
+ CLI Layer:
26
+ memorius: Main CLI — init, mine, search, diary, status, serve, hook
27
+ """
28
+
29
+ __version__ = "0.1.0"