Skip to main content

memU Banner

memU

Personal memory, stored as Wiki

Across Sessions. Across Agents. Across Devices.

PyPI version License: Apache 2.0 Python 3.13+ Discord Twitter

NevaMind-AI%2FmemU | Trendshift


memU is a lightweight, agent-driven memory system that gives users a shared LLM wiki across sessions, agents, and devices. It automatically distills your own reusable skills from your agent history. Its core memory logic is only 500 lines — compact enough to inspect, understand, and adapt.

Quick start

memU works with Codex, Claude Code, Cursor, OpenClaw, Hermes, WorkBuddy, and more. See Host adapters.

Choose Cloud or Local, then send the corresponding message to your agent.

Cloud (coming soon)

Cross-device · Free · Unlimited · View online

Read https://memu.pro/SKILL.md and follow it to install memU.

Local / self-hosted

Private · Single-device · Embedding key required

Read https://raw.githubusercontent.com/NevaMind-AI/MemU/main/SKILL.md and follow it to install memU.

How it works

memU memory system architecture

Automatic skill extraction

Once the scheduled bridging task is installed, memU can turn useful agent history into reusable Markdown skills automatically.

How memU turns agent history into reusable skills

  1. Capture new sessions. The host adapter reads new session history, including messages and tool calls.
  2. Prepare self-evolve jobs. prepare slices each session into a self-contained job with the paths and context the agent needs.
  3. Let the agent decide. The agent reads related existing skills, then chooses to do nothing, patch an existing skill, or create a new one.
  4. Write readable skill Markdown. Each skill has a name, description, and reusable workflow, including useful branches, edge cases, and pitfalls.
  5. Commit and index. commit submits changed skill files through commit_results; memU embeds the skill name and description and stores it under the skill track.
  6. Retrieve it later. On a similar future task, memU returns the relevant skill so any connected agent can use the learned workflow.

The judgment and synthesis stay inside the agent. MemoryService makes no LLM or chat calls; it stores, embeds, and retrieves the skill Markdown the agent prepared.

Host adapters: memory for desktop coding agents

memU runs as a sidecar to a desktop agent (ADR 0008/0009/0010), one binary per host. Each binds two seams:

  • record — a scheduled bridging task slices new session logs into self-contained job files; the agent itself distills them into memory/skill Markdown; commit submits whatever the agent left on disk back through commit_results.
  • inject — a standing instruction in the host's instruction file tells the agent to run <binary> retrieve (→ progressive_retrieve) before answering.
Host Binary Session log it mines Instruction file it patches
Codex memu-codex ~/.codex/sessions/**/*.jsonl ~/.codex/AGENTS.md
Claude Code memu-claude-code ~/.claude/projects/<project>/<session>.jsonl ~/.claude/CLAUDE.md
Cursor (Agent/CLI) memu-cursor ~/.cursor/projects/<project>/agent-transcripts/**.jsonl ./AGENTS.md (per project)
OpenClaw memu-openclaw ~/.openclaw/agents/<agentId>/sessions/*.jsonl ~/.openclaw/workspace/AGENTS.md
Hermes Agent memu-hermes ~/.hermes/state.db (SQLite, read-only) ~/.hermes/SOUL.md
WorkBuddy memu-workbuddy ~/.workbuddy/projects/<project>/<session>.jsonl ~/.workbuddy/MEMORY.md
any other agent memu-agent found by memu-agent detect (JSONL dialect sniffed) found by detect (AGENTS.md / CLAUDE.md / SOUL.md / …)

For agents without a dedicated binary, memu-agent detect probes the machine and reports per agent whether memorization works (a recognizable session log exists) and whether retrieval works (an instruction file exists to patch) — then the same verbs run against what it found.

All hosts share one configured memory backend via ~/.memu/config.env — local or MemU Cloud. What one host's sessions taught memU, another host retrieves.

Installation is the one-message setup at the top of this README. SKILL.md is the routing skill it hands your agent: install the package, identify which host you are (falling back to memu-agent detect for anything without a dedicated adapter), print that host's packaged install guide (<binary> docs install), and follow it — configure the memory backend, register the scheduled bridging task, patch the instruction file, each step behind a verify gate — then report which seams (memorization / retrieval) are now active.

Afterwards <binary> doctor proves the whole loop resolves: config, selected mode, and a live retrieval.

Adding another host means implementing one TranscriptSource (where its session logs live, how its records are shaped) plus a HostSpec-sized CLI — the pipeline, verbs, and instruction text are shared.

CLI

With memU Cloud, sign in at memu.so to view your memory files. With a local installation, memory lives in the shared store configured by MEMU_DB in ~/.memu/config.env — typically ~/.memu/memu.sqlite3 for local SQLite, or a Postgres DSN.

Once installed, your agent retrieves relevant memory automatically before answering. To retrieve manually, run the adapter for your host:

memu-codex retrieve "What should I remember about this project?"
# or: memu-claude-code / memu-cursor / memu-openclaw / memu-hermes / memu-workbuddy / memu-agent

Install or invoke the CLI directly:

pip install memu-cli         # library + memu + memu-codex CLIs
npx memu-cli --help          # CLI via npm launcher (engine: PyPI package memu-cli)
uvx --from memu-cli memu     # CLI via uv, no install

Configuration

Values resolve in order: process env → ~/.memu/config.env → default. memU supports Local and Cloud memory backends, selected by MEMU_MEMORY_MODE; an unset mode remains Local for backward compatibility.

For Local / self-hosted installations, every CLI flag has a matching variable:

Setting Env var Default
Store MEMU_DB ./data/memu.sqlite3 (CLI); required for host adapters
Embedding provider MEMU_EMBED_PROVIDER openai (also: jina, voyage, doubao, openrouter); legacy MEMU_LLM_PROVIDER still read
API key MEMU_API_KEY the provider's env var, e.g. OPENAI_API_KEY
Embedding model MEMU_EMBED_MODEL the provider's default
Base URL MEMU_BASE_URL the provider's default

Run <binary> doctor to display the resolved mode and verify the same retrieval path the host uses.

Storage backends

Provider DSN Vector search Use for
inmemory brute-force cosine tests, throwaway sessions
sqlite sqlite:///path.sqlite3 brute-force cosine local/default, single writer
postgres postgresql://... pgvector concurrent access, large stores (pip install "memu-cli[postgres]")
service = MemoryService(
    database_config={"metadata_store": {"provider": "postgres", "dsn": "postgresql://..."}},
    embedding_profiles={"default": {"provider": "jina"}},
)

License

Apache-2.0

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

memu_cli-0.5.0.tar.gz (12.1 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

memu_cli-0.5.0-cp313-abi3-win_amd64.whl (311.9 kB view details)

Uploaded CPython 3.13+Windows x86-64

memu_cli-0.5.0-cp313-abi3-manylinux_2_39_x86_64.whl (443.0 kB view details)

Uploaded CPython 3.13+manylinux: glibc 2.39+ x86-64

memu_cli-0.5.0-cp313-abi3-manylinux_2_39_aarch64.whl (436.4 kB view details)

Uploaded CPython 3.13+manylinux: glibc 2.39+ ARM64

memu_cli-0.5.0-cp313-abi3-macosx_11_0_arm64.whl (411.8 kB view details)

Uploaded CPython 3.13+macOS 11.0+ ARM64

memu_cli-0.5.0-cp313-abi3-macosx_10_12_x86_64.whl (413.0 kB view details)

Uploaded CPython 3.13+macOS 10.12+ x86-64

File details

Details for the file memu_cli-0.5.0.tar.gz.

File metadata

  • Download URL: memu_cli-0.5.0.tar.gz
  • Upload date:
  • Size: 12.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for memu_cli-0.5.0.tar.gz
Algorithm Hash digest
SHA256 11b98f977cc0b6cddf2bb5491982f22bd83081fe751194bb5ad4653c7da987c1
MD5 5cac5127557a7510d07947a0cebccc0d
BLAKE2b-256 32ff95257d618e798b65b1b38cd9662decef33040cdc6c8fa95cfe7178c9c111

See more details on using hashes here.

Provenance

The following attestation bundles were made for memu_cli-0.5.0.tar.gz:

Publisher: publish-memu-cli.yml on NevaMind-AI/memU

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file memu_cli-0.5.0-cp313-abi3-win_amd64.whl.

File metadata

  • Download URL: memu_cli-0.5.0-cp313-abi3-win_amd64.whl
  • Upload date:
  • Size: 311.9 kB
  • Tags: CPython 3.13+, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for memu_cli-0.5.0-cp313-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 9144935f4d849f677074f4ab6472bc980d6f8b2748f9b4a6bca72082220305eb
MD5 09c58ac9a379a6191a5cfb575b5e74ea
BLAKE2b-256 5be704785bdf3cbce9be7062e924b611a0b00dfa4204eb7a5f56a64e943ab56e

See more details on using hashes here.

Provenance

The following attestation bundles were made for memu_cli-0.5.0-cp313-abi3-win_amd64.whl:

Publisher: publish-memu-cli.yml on NevaMind-AI/memU

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file memu_cli-0.5.0-cp313-abi3-manylinux_2_39_x86_64.whl.

File metadata

File hashes

Hashes for memu_cli-0.5.0-cp313-abi3-manylinux_2_39_x86_64.whl
Algorithm Hash digest
SHA256 707f0e4d56fad16f75a8c6e2390e0b400a06f5a8e6c16e1a8232b6cc4848d6c2
MD5 3f29c88b5af320fe5c231e71292a33aa
BLAKE2b-256 7888591a92c05da67723d25e7074b4264e57c9ff437f5af197dd866800f74c12

See more details on using hashes here.

Provenance

The following attestation bundles were made for memu_cli-0.5.0-cp313-abi3-manylinux_2_39_x86_64.whl:

Publisher: publish-memu-cli.yml on NevaMind-AI/memU

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file memu_cli-0.5.0-cp313-abi3-manylinux_2_39_aarch64.whl.

File metadata

File hashes

Hashes for memu_cli-0.5.0-cp313-abi3-manylinux_2_39_aarch64.whl
Algorithm Hash digest
SHA256 3c054c00bbcee58deb4a25fa5e2acd76b3f8094cd5d933f9f45c6fdfefff76a5
MD5 fae04fa176d27ba045be74ca31a05b4d
BLAKE2b-256 fd749be6d59753ab525c82a34b6b562bd5eca6c41353838f0f2c7ad83aa8a09d

See more details on using hashes here.

Provenance

The following attestation bundles were made for memu_cli-0.5.0-cp313-abi3-manylinux_2_39_aarch64.whl:

Publisher: publish-memu-cli.yml on NevaMind-AI/memU

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file memu_cli-0.5.0-cp313-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for memu_cli-0.5.0-cp313-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f2fd274bb0f7946c0d136aec015043b622689e216a44554f3ee413fe155e7f65
MD5 bedb0b1a030016fe93c52ac1b8e949a2
BLAKE2b-256 d06eaffa4fbb251308ff1c7c8ea714b0ffe2fe8c2a4371cfe472378b84ff1257

See more details on using hashes here.

Provenance

The following attestation bundles were made for memu_cli-0.5.0-cp313-abi3-macosx_11_0_arm64.whl:

Publisher: publish-memu-cli.yml on NevaMind-AI/memU

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file memu_cli-0.5.0-cp313-abi3-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for memu_cli-0.5.0-cp313-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 aca112b060f3e3b8da1d3da924face7047f399e42871e397e185a9bcacb6c757
MD5 7a9bb497216af048288e2c206ae5658b
BLAKE2b-256 5a3cc782a13da84ad2cc88f2f576f71c2a4b18cfda165d39dffd498c7f49c4c9

See more details on using hashes here.

Provenance

The following attestation bundles were made for memu_cli-0.5.0-cp313-abi3-macosx_10_12_x86_64.whl:

Publisher: publish-memu-cli.yml on NevaMind-AI/memU

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

0.10.0

2 files

0.9.0

2 files

0.8.0

2 files

0.7.0

2 files

0.6.0

2 files

This release

0.5.0 This release

6 files

0.4.0

6 files

0.3.0

6 files

0.2.0

6 files

0.1.0

6 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page