@@ -257,65 +257,6 @@ Load `dist/` in Chrome via `chrome://extensions` → "Load unpacked". Point it t
257257
258258https://github.com/user-attachments/assets/97793cf9-d247-4d02-9c31-3cc9bbbf89aa
259259
260- ### 3. Use the SDKs
261-
262- <a id =" sdks " ></a >
263-
264- Every SDK exposes the same three core operations: ** ` ingest ` ** , ** ` retrieve ` ** , and ** ` search ` ** .
265-
266- #### Python SDK (` client/xmem ` )
267- ``` python
268- from xmem import XMemClient
269-
270- client = XMemClient(api_url = " http://localhost:8000" )
271-
272- # Ingest a conversation turn
273- client.ingest(
274- user_query = " I switched from Python to Go for all new backend services." ,
275- agent_response = " That's a solid choice for performance-critical services." ,
276- user_id = " dev_42"
277- )
278-
279- # Retrieve with LLM-generated answer
280- result = client.retrieve(
281- query = " What language do I prefer for backends?" ,
282- user_id = " dev_42"
283- )
284- print (result.answer) # "You prefer Go for backend services..."
285-
286- # Raw search (no LLM generation)
287- hits = client.search(
288- query = " backend architecture decisions" ,
289- domains = [" profile" , " summary" ],
290- user_id = " dev_42"
291- )
292- ```
293-
294- #### TypeScript SDK (` @xmem/sdk ` )
295- ``` typescript
296- import { XMemClient } from " @xmem/sdk" ;
297-
298- const client = new XMemClient (" http://localhost:8000" );
299-
300- const hits = await client .search ({
301- query: " python backend architecture" ,
302- domains: [" code" , " summary" ],
303- user_id: " dev_42"
304- });
305- ```
306-
307- #### Go SDK (` github.com/xmem/sdk-go ` )
308- ``` go
309- client := xmem.NewClient (" http://localhost:8000" , " " )
310-
311- answer , _ := client.Retrieve (xmem.RetrieveParams {
312- Query : " Did I ever mention my dog?" ,
313- UserID : " dev_42" ,
314- })
315- ```
316-
317- ---
318-
319260## Architecture
320261
321262![ Architecture] ( architecture.png )
@@ -377,10 +318,6 @@ User Query
377318└──────────────────────────────────┘
378319```
379320
380- ### Resilience
381-
382- Every LLM call in the pipeline passes through the ** Model Registry** . If a provider fails or rate-limits, the request is automatically rerouted to the next provider in the fallback chain. No data loss. No downtime.
383-
384321---
385322
386323## Configuration
@@ -399,72 +336,3 @@ XMem is highly configurable. Override any agent's model, tune the fallback chain
399336| ` RATE_LIMIT ` | ` 60 ` | API requests per minute |
400337| ` TEMPERATURE ` | ` 0.4 ` | LLM generation temperature |
401338
402- See [ docs/configuration.md] ( docs/configuration.md ) for the full reference.
403-
404- ---
405-
406- ## Docker
407-
408- ``` bash
409- docker build -t xmem .
410- docker run -p 8000:8000 --env-file .env xmem
411- ```
412-
413- Or with Docker Compose for the full stack (XMem + Neo4j + MongoDB):
414- ``` bash
415- cd docker && docker-compose up
416- ```
417-
418- ---
419-
420- ## Project Structure
421-
422- ```
423- xmem/
424- ├── src/
425- │ ├── agents/ # Classifier, Profiler, Temporal, Summarizer,
426- │ │ # Judge, Weaver, Code, Snippet, Image agents
427- │ ├── pipelines/ # LangGraph ingestion & retrieval workflows
428- │ ├── api/ # FastAPI routes, middleware, rate limiting
429- │ ├── storage/ # Pinecone vector store client
430- │ ├── graph/ # Neo4j graph client + schema definitions
431- │ ├── scanner/ # Git ops, AST parser, incremental indexer
432- │ ├── models/ # Multi-LLM registry + provider builders
433- │ ├── schemas/ # Pydantic models for all memory domains
434- │ ├── config/ # Settings, effort levels, constants
435- │ └── prompts/ # System prompts for each agent
436- ├── tests/ # Unit, integration, and E2E tests
437- ├── benchmarks/ # LongMemEval + LoCoMo evaluation suite
438- ├── frontend/ # Ingestion/retrieval visualization UI
439- ├── docker/ # Docker Compose for full stack
440- └── pyproject.toml
441- ```
442-
443- ---
444-
445- ## Contributing
446-
447- https://github.com/user-attachments/assets/07b93914-4fd2-47ca-b048-c3cd390455e3
448-
449- We welcome contributions:
450-
451- ``` bash
452- # Setup dev environment
453- pip install -e " .[dev]"
454-
455- # Run tests
456- GEMINI_API_KEY=dummy pytest
457-
458- # Lint
459- ruff check src/
460- ```
461-
462- PRs for new IDE extensions (VSCode, JetBrains), additional language support in the AST parser, and new storage backends are especially welcome.
463-
464- ---
465-
466- <div align =" center " >
467- <strong >Forget forgetting. Build with XMem.</strong >
468- <br /><br />
469- <a href =" #quickstart " >Get Started</a > · <a href =" https://github.com/XortexLabs/xmem/issues " >Report Bug</a > · <a href =" https://github.com/XortexLabs/xmem/issues " >Request Feature</a >
470- </div >
0 commit comments