npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

memoir-cli

v3.3.1

Published

Persistent memory for AI coding tools via MCP. Your AI remembers across sessions, tools, and machines. Works with Claude, Cursor, Gemini, Windsurf, and 7 more tools.

Downloads

3,700

Readme

memoir

Persistent memory for AI coding tools.

npm version npm downloads GitHub stars License: MIT Node.js

Your AI forgets everything between sessions. memoir gives it long-term memory via MCP.

11 tools supportedE2E encryptedCross-platformOpen source

Works with Claude Code, Cursor, Windsurf, Gemini, Copilot, Codex, ChatGPT, Aider, Zed, Cline, and Continue.dev.

WebsitenpmBlogContributing

The Problem

You told Claude your project uses Zustand, not Redux. You explained your auth middleware to Cursor. You spent weeks building up context across your AI tools.

Next session? Gone. New machine? Gone. Switch tools? Gone.

How memoir fixes it

memoir is a persistent memory layer that runs via MCP inside your AI tools. Your AI can search, read, and save memories automatically — across sessions, tools, and machines.

you: how does auth work in this project?

  memoir_recall("auth setup architecture")
  Found 3 memories matching "auth"

claude: Based on your previous sessions: this project uses JWT auth
  with refresh tokens, the middleware is in src/middleware/auth.ts,
  and you chose Zustand over Redux for auth state (decided March 12).

No re-explaining. memoir remembered.

Architecture

graph LR
    A[Claude Code] --> M[memoir MCP]
    B[Cursor] --> M
    C[Gemini CLI] --> M
    D[Windsurf] --> M
    E[+ 7 more] --> M

    M --> R[recall / remember / list / read]
    R --> S[(Local Memory Store)]

    S --> P[memoir push]
    P --> G[GitHub / Cloud]
    G --> Q[memoir restore]
    Q --> S2[(New Machine)]

memoir runs as a local MCP server inside your AI tools. Your AI can search, save, and recall memories automatically. Push to sync across machines.

Quick Start

# Install
npm install -g memoir-cli

# Setup
memoir init

Add MCP to your AI tools

Claude Code — add to ~/.mcp.json:

{
  "mcpServers": {
    "memoir": { "command": "memoir-mcp" }
  }
}

Cursor — add to .cursor/mcp.json:

{
  "mcpServers": {
    "memoir": { "command": "memoir-mcp" }
  }
}

That's it. Your AI tools now have 6 memory abilities:

| MCP Tool | What it does | |----------|-------------| | memoir_recall | Search across all your AI memories | | memoir_remember | Save context for future sessions | | memoir_list | Browse all memory files by tool | | memoir_read | Read a specific memory in full | | memoir_status | See which AI tools are detected | | memoir_profiles | Switch between work/personal |

What Gets Synced

memoir syncs three layers that no other tool connects:

Layer 1: AI Memory (via MCP + CLI)

Configs, instructions, and project knowledge across 11 tools — searchable and writable from inside any AI conversation.

| Tool | What gets synced | |------|-----------------| | Claude Code | ~/.claude/ settings, memory, CLAUDE.md files | | Gemini CLI | ~/.gemini/ config, GEMINI.md files | | ChatGPT | CHATGPT.md custom instructions | | OpenAI Codex | ~/.codex/ config, AGENTS.md | | Cursor | Settings, keybindings, .cursorrules | | GitHub Copilot | Config, copilot-instructions.md | | Windsurf | Settings, keybindings, .windsurfrules | | Zed | Settings, keymap, tasks | | Cline | Settings, .clinerules | | Continue.dev | Config, .continuerules | | Aider | .aider.conf.yml, system prompt |

Layer 2: Session State

What you were doing — not just what your AI knows, but the active context.

  • Last coding session captured automatically
  • What files you changed, what errors you hit, what decisions you made
  • Injected into your AI on restore so it picks up mid-conversation
  • Secrets auto-redacted (API keys, tokens, passwords stripped before sync)

Layer 3: Workspace

Your actual projects — code, files, everything.

  • Git projects: Remote URLs saved, auto-cloned on restore
  • Non-git projects: Bundled as compressed archives, unpacked on restore
  • Uncommitted work: Saved as patches, applied after clone
  • Zero git commands needed — memoir handles it all

Key Features

Cross-tool memory

Tell Claude something once. Cursor knows it too. memoir is the shared memory layer between all your AI tools.

Translate between AI tools

memoir migrate --from chatgpt --to claude
# AI-powered — rewrites conventions, not copy-paste

memoir migrate --from chatgpt --to all
# Translate to every tool at once

Cross-machine sync

# On your main machine
memoir push

# On any other machine
memoir restore -y
# ✔ AI memory restored (Claude, Gemini, Cursor, 11 tools)
# ✔ 44 projects cloned & unpacked
# ✔ Uncommitted changes applied
# ✔ Session context injected — AI picks up mid-conversation

E2E Encryption

memoir encrypt    # toggle encryption on/off
memoir push       # prompted for passphrase, AES-256-GCM encrypted

Your backup is encrypted before it leaves your machine. Secret scanning auto-redacts API keys, tokens, and passwords.

Profiles (personal / work)

memoir profile create work
memoir push --profile work
memoir profile switch personal

Cloud sync

memoir login
memoir cloud push      # encrypted cloud backup
memoir cloud restore   # restore from any version

Cross-platform (Mac / Windows / Linux)

Paths remap automatically between platforms. Push from Mac, restore on Windows. It just works.

All Commands

| Command | What it does | |---------|-------------| | memoir init | Setup wizard — GitHub or local storage | | memoir push | Back up AI memory + workspace + session | | memoir restore | Restore everything on a new machine | | memoir mcp | Start MCP server for editor integration | | memoir status | Show detected AI tools | | memoir doctor | Diagnose issues, scan for secrets | | memoir view | Preview what's in your backup | | memoir diff | Show changes since last backup | | memoir migrate | Translate memory between tools via AI | | memoir snapshot | Capture current coding session | | memoir resume | Pick up where you left off | | memoir encrypt | Toggle E2E encryption | | memoir profile | Manage profiles (personal/work) | | memoir cloud push | Back up to memoir cloud | | memoir cloud restore | Restore from memoir cloud | | memoir history | View cloud backup versions | | memoir login | Sign in to memoir cloud | | memoir share | Create encrypted shareable link | | memoir upgrade | View plans and upgrade | | memoir update | Self-update to latest version |

How memoir compares

| Feature | memoir | dotfiles managers | ai-rulez | memories.sh | |---------|--------|-------------------|----------|-------------| | MCP memory layer | 6 tools | No | No | No | | AI memory sync | 11 tools | No | 18 tools | 3 tools | | Cross-tool recall | Yes | No | No | No | | Workspace sync | Yes | No | No | No | | Session handoff | Yes | No | No | No | | AI-powered migration | Yes | No | No | No | | E2E encryption | Yes | No | No | No | | Secret scanning | Yes | Some | No | No | | Cross-platform remap | Yes | Some | No | No | | Cloud backup | Yes | No | No | Yes ($15/mo) | | Profiles | Yes | No | No | No | | Free & open source | Yes | Yes | Yes | No |

Common Workflows

Your AI remembers across sessions

# Monday — you explain your auth setup to Claude
# ...Claude calls memoir_remember to save the decision

# Thursday — new conversation
you: "add a protected route"
# Claude calls memoir_recall, finds your auth architecture
# No re-explaining needed

New machine setup

npm install -g memoir-cli && memoir init && memoir restore -y
# Done. Everything's back.

Switching AI tools

memoir migrate --from chatgpt --to claude
# Your custom instructions become a proper CLAUDE.md

Team onboarding

# Senior dev pushes team config
memoir push --profile team

# New hire runs one command
memoir restore --profile team
# Every project cloned. Every AI tool configured. Day one productive.

Security

  • E2E encryption — AES-256-GCM with scrypt key derivation
  • Secret scanning — 20+ patterns detect API keys, tokens, passwords, connection strings
  • Auto-redaction — secrets stripped from session handoffs before sync
  • No credentials synced — .env files, auth tokens, and API keys are never included
  • Passphrase verified — wrong passphrase caught before decrypt attempt
  • Local MCP server — runs on your machine, no data sent to external services

Requirements

  • Node.js >= 18
  • Git (for workspace sync)
  • Works on macOS, Windows, Linux

Contributing

Contributions welcome — especially new tool adapters and MCP improvements.

  1. Fork the repo
  2. Create your branch (git checkout -b feature/my-feature)
  3. Commit and push
  4. Open a PR

Links

License

MIT