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

@priyanexodus/engram

v0.1.4

Published

Persistent, shared, AI-readable context layer for your codebase. Plugs into Claude Code, Claude.ai, Copilot, or any MCP-compatible tool.

Downloads

640

Readme

⚡ Engram

Persistent, shared, AI-readable context layer for your codebase

MIT License Node.js

Your team should never spend tokens or time re-explaining a project to an AI again.


What It Does

Engram captures your project's context once and serves it to every AI session, every teammate, every project.

  • Context Persistence — SQLite knowledge graph of your codebase (symbols, relationships, module boundaries) that survives across sessions
  • Shared Team Memory — Structured CLAUDE.md system that every AI session reads on startup
  • Module Compression — On-demand compressed snapshots via Repomix integration
  • MCP Tools — Four tools any connected AI can call proactively

Quick Start

# Initialize in your project
npx @priyanexodus/engram init

# Index your codebase
npx @priyanexodus/engram scan

# Check what was indexed
npx @priyanexodus/engram status

# Auto-configure your AI text editor
npx @priyanexodus/engram link

# Start the MCP server manually (if not linked)
npx @priyanexodus/engram serve

MCP Configuration

The easiest way to configure Engram is to use the interactive auto-linker:

npx @priyanexodus/engram link

This will automatically find your mcp.json file (for Claude Desktop, Windsurf, Cline, etc.) and inject the correct configuration.

If you prefer to configure it manually, here are the configurations for popular tools:

Claude Code / Claude.ai

Add to your MCP settings:

{
  "mcpServers": {
    "engram": {
      "command": "npx",
      "args": ["-y", "@priyanexodus/engram", "serve"],
      "cwd": "/path/to/your/project"
    }
  }
}

Antigravity / Gemini

Add this to your Antigravity MCP configuration (e.g., mcp.json or within extension settings):

{
  "mcpServers": {
    "engram": {
      "command": "npx",
      "args": ["-y", "@priyanexodus/engram", "serve"],
      "cwd": "/path/to/your/project"
    }
  }
}

Available MCP Tools

| Tool | Description | |------|-------------| | get_module_map | Compressed structural overview of any module | | find_symbol | Locate any definition or call site instantly | | get_project_memory | Read all decisions, conventions, and context | | add_project_memory | Append a decision with attribution |

CLI Commands

engram init [--template <name>]     # Initialize project (templates: base, nextjs, python-api)
engram scan [--full] [--module <p>] # Index codebase (incremental by default)
engram memory list [--category]     # List project memory entries
engram memory add <cat> <key> <val> # Add a memory entry
engram memory sync                  # Sync CLAUDE.md ↔ database
engram status                       # Show index statistics
engram link                         # Auto-configure MCP in your AI editor
engram serve                        # Start MCP server

Architecture

┌─────────────────────────────────────────────┐
│              Any AI Tool                    │
│   Claude Code · Claude.ai · Copilot · etc   │
└────────────────────┬────────────────────────┘
                     │ MCP Protocol (stdio)
┌────────────────────▼────────────────────────┐
│            Engram (Node.js)                 │
│                                             │
│  tree-sitter       →   Symbol parsing       │
│  better-sqlite3    →   Knowledge graph      │
│  repomix           →   Compression          │
│  CLAUDE.md         →   Team memory          │
└────────────────────┬────────────────────────┘
                     │
┌────────────────────▼────────────────────────┐
│           SQLite (.engram/engram.db)         │
│     symbols · edges · project_memory        │
└─────────────────────────────────────────────┘

Project Templates

base (default)

Generic project template with placeholder CLAUDE.md sections.

nextjs

Next.js App Router template with:

  • App Router conventions and component patterns
  • Module boundaries: app/, components/, lib/, public/

python-api

Python API template (FastAPI/Flask) with:

  • API conventions and module structure
  • Module boundaries: api/, models/, services/, tests/

How It Works

  1. npx @priyanexodus/engram init creates the context structure (CLAUDE.md, config, .engram directory)
  2. npx @priyanexodus/engram scan uses tree-sitter to parse your codebase into a SQLite knowledge graph
  3. npx @priyanexodus/engram serve exposes four MCP tools that any AI can call
  4. AI tools call get_project_memory on session start to load context
  5. AI tools call find_symbol and get_module_map during work
  6. AI tools call add_project_memory to record decisions for the team

Requirements

  • Node.js ≥ 20
  • For best results: C++ build tools (for tree-sitter native bindings)
    • Ubuntu/Debian: sudo apt install build-essential python3
    • macOS: xcode-select --install

Note: If tree-sitter native bindings fail to compile, Engram falls back to a regex-based parser with reduced accuracy. A clear warning will be displayed.

License

MIT © Priyadharshan Sivakumar