Skip to content

Latest commit

 

History

History
190 lines (139 loc) · 4.15 KB

File metadata and controls

190 lines (139 loc) · 4.15 KB

Xmem-dev

End-to-end local development and demo setup for XMem.

Quick Start

npx create-xmem@latest
cd xmem
npm run dev

npm run dev performs first-run setup when needed, then starts the local XMem API at http://localhost:8000.

This repository is an orchestration and verification workspace. It does not own the XMem product source code. It clones and runs the public XortexAI repositories:

Goal

Reproduce the browser demo locally:

  • /Xingest saves conversations to XMem memory.
  • /Xsearch searches memory and injects context.
  • /Xide injects codebase context.
  • /Xrepo browses and queries indexed repository structure.

Layout

Xmem-dev/
  package.json                   npm-first local commands
  docker-compose.local.yml       Local Postgres/pgvector, MongoDB, Neo4j
  packages/
    create-xmem/                 npx create-xmem package
  templates/
    xmem.env.local               Local XMem .env template
  scripts/
    xmem.js                      npm command wrapper
    install.ps1                  Clone, configure, install, patch, build
    start.ps1                    Start local services and XMem API
    verify.ps1                   Health + ingest/search/retrieve smoke test
    doctor.ps1                   Readable setup diagnostics
    patch-extension-local.ps1    Point extension at localhost
  docs/
    browser-extension-demo.md
    mcp-setup.md
    publishing-create-xmem.md
    scanner-code-mode.md

Cloned repos are placed under repos/, which is ignored by git.

Prerequisites

  • Windows PowerShell
  • Git
  • Docker Desktop
  • Python 3.11+
  • Node.js 20+
  • npm
  • Ollama, unless you configure a cloud LLM key
  • Chrome

Fresh Start

For users, use the public create command:

npx create-xmem@latest
cd xmem
npm run dev

For maintainers working directly on this orchestration repo:

cd G:\Codes\Xortex
git clone https://github.com/XortexAI/Xmem-dev.git
cd Xmem-dev

Install

npm run setup

This will:

  • clone or update the public XortexAI repos into repos/
  • copy templates/xmem.env.local to repos/XMem/.env
  • configure LLM routing
  • pull local Ollama models only when no cloud LLM key is configured
  • start Docker services
  • install XMem with local extras
  • patch the extension to use http://localhost:8000
  • install and build the Chrome extension

LLM Routing

The scripts keep local setup predictable:

  • If repos/XMem/.env or your shell environment has OPENROUTER_API_KEY, GEMINI_API_KEY, CLAUDE_API_KEY, OPENAI_API_KEY, or both AWS Bedrock keys, XMem will use those providers and will not call Ollama.
  • If none of those keys exist, XMem will use local Ollama for chat and embeddings.
  • When a cloud key exists, embeddings are switched to local fastembed so there are no Ollama embedding calls either.

For a persistent cloud setup, put the key in repos/XMem/.env, then rerun:

npm run dev

Start API

npm run start

The API runs at:

http://localhost:8000

Keep that terminal open.

Verify

In a second terminal:

cd xmem
npm run verify

The default local API key is:

dev-xmem-key

Troubleshoot

Run the doctor script for a readable setup report and suggested fixes:

npm run doctor

Power-user flags can still be passed through when needed:

npm run setup -- -IncludeMcp
npm run start -- -SkipDocker

Load Chrome Extension

After install/build:

  1. Open chrome://extensions/
  2. Enable Developer mode
  3. Click Load unpacked
  4. Select <your xmem folder>\repos\xmem-extension\dist
  5. Use API key dev-xmem-key
  6. Use any local user name or id, for example Ankit Kotnala

See browser-extension-demo.md.

Public Repo Hygiene

Do not commit:

  • repos/
  • .env
  • .venv
  • logs
  • API keys
  • browser profiles
  • local Docker volumes

When this flow is stable, upstream only the mature changes to the product repos through pull requests.