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

elepha

v0.3.0

Published

Local memory layer for developers switching between AI coding CLIs

Readme

elepha demo

The elepha demo video shows Codex stopping mid-task, then Claude Code resuming that same session and explaining why an earlier approach was rejected, from a conversation it never had.

About elepha

elepha is a local memory layer over the session transcripts that AI coding tools already write to disk. It turns that existing history into searchable memory you can recall inside the chat you are already using.

  • Not a wrapper — Keep using your tool directly; elepha never sits in front of it.
  • Repository-clean — Adds nothing to your repositories, and never modifies the original transcripts.
  • Automatic capture — Sessions are recorded as you work; nothing to save, tag, or write up.
  • You choose what it remembers — Approve whole workspace folders or individual projects; their existing transcripts become searchable straight away.
  • More than the diff — git shows what changed; elepha keeps the reasoning behind it: the approaches you rejected, the constraints, the thinking you left unfinished.

How it works

  1. Reads local transcripts in the background. It watches the session files that supported tools already write, limited to projects and folders you approve.
  2. Builds one searchable local memory. It organizes eligible sessions in one local database.
  3. Recalls inside your current chat. Find a session with elepha:query, open it with elepha:select:<n>, or go straight to the latest with elepha:last. Search looks at session titles and how you opened each session; opening one brings the whole conversation back, reasoning included.

In-AI-chat commands

| Command | What it does | |------------------------------------|----------------------------------------------------------------| | elepha:last | Inject the most recent session and continue where you stopped. | | elepha:list | List the five most recent sessions, numbered. | | elepha:list:<n> | List the last n, up to 100. | | elepha:query <search terms> | Search every approved project. | | elepha:query:here <search terms> | Search the current project only. | | elepha:select:<n> | Inject session n from the last list or query. |

Full list: docs/commands-in-ai-chat.md.

Supported tools and platforms

elepha supports Claude Code and Codex, each in both the desktop app and the CLI, with memory shared across all of them. Support for more transcript-writing AI coding tools is planned.

It runs on macOS, Linux, and Windows through WSL, with Node.js 22 or newer. Native Windows is not supported.

The original transcripts are never modified, so memory can always be rebuilt. That matters while elepha is still pre-1.0: its storage schema and command surface can change between releases.

Privacy and consent

elepha runs entirely on your machine: capture, storage, search, and recall are local, with no hosted memory service. The one exception is explicit; if you configure an external synthesis provider, the turns sent for synthesis are handled under that provider's data policy.

  • Consent-gated — you choose which projects or workspace folders elepha may capture.
  • Transcript-safe — the original session files are never modified.
  • One local database — memory lives at ~/.elepha/elepha.db and can be rebuilt from retained transcripts; back it up to keep consent and deletion history.

Get started

npm install -g elepha
elepha install
elepha init

Codex needs a one-time approval of elepha's hooks through /hooks. Then open a supported tool and type elepha:last.

Full walkthrough: getting-started guide.

Documentation

Possible scenarios

Your assistant runs out of tokens mid-task. You are deep in a problem when one assistant hits its usage limit before it can even prepare a handoff. Open another supported tool, type elepha:last, and carry on. Claude Code runs dry, Codex picks it up, or the other way around.

You want a second opinion. Pull the same session into another tool with elepha:last and ask it to review. To reach further back, search in plain language: elepha:query the N+1 we fixed in the orders query, then elepha:select:<n>.

License and links

elepha is open-source software licensed under the Mozilla Public License 2.0 (MPL-2.0).