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

laminark

v2.22.7

Published

Persistent adaptive memory for Claude Code

Readme

Laminark

Persistent adaptive memory for Claude Code. Automatically captures observations from your coding sessions, classifies them using LLM-based curation, and surfaces relevant context when you need it.

Features

  • Automatic observation capture via Claude Code hooks (Write, Edit, Bash, etc.)
  • LLM-based classification: discoveries, problems, solutions (noise filtered out)
  • Full-text search with BM25 ranking
  • Knowledge graph with entity and relationship tracking
  • Cross-session memory scoped per project
  • Web UI for browsing observations and graph
  • Duplicate detection and secret redaction

Installation

Quick Install (Recommended)

One command — no git clone needed:

curl -fsSL https://raw.githubusercontent.com/NoobyNull/Laminark/master/plugin/scripts/install.sh | bash

This will:

  1. Install laminark globally via npm
  2. Register the MCP server with Claude Code
  3. Configure hooks in ~/.claude/settings.json

Local Installation (Development)

For local development or testing:

git clone https://github.com/NoobyNull/Laminark.git
cd Laminark
npm install
npm run build
./plugin/scripts/local-install.sh

This uses npm link so changes to the repo are reflected immediately after rebuilding.

Manual Installation (Advanced)

If you need manual control:

# Install the package
npm install -g laminark

# Register MCP server
claude mcp add-json laminark '{"command":"laminark-server"}' -s user

# Configure hooks manually in ~/.claude/settings.json
# (see install.sh for the hook structure)

Post-Installation

Verify installation:

# If installed from repo:
./plugin/scripts/verify-install.sh

# Or check manually:
npm list -g laminark && claude mcp list | grep laminark

Laminark will now run in every Claude Code session. Each project's memory is isolated by directory path -- Project A and Project B never share data, but each project remembers across sessions.

Updating

npm update -g laminark
# Or: ./plugin/scripts/update.sh

Uninstalling

claude mcp remove laminark -s user
npm uninstall -g laminark
# Then remove laminark hook entries from ~/.claude/settings.json
# Optionally: rm -rf ~/.laminark  (deletes all memories)

Recommended: GSD (Get Shit Done)

Laminark pairs well with GSD by @gsd-framework, a structured workflow plugin for Claude Code. While Laminark handles persistent memory and context, GSD provides project planning, phased execution, and atomic commits. Together they give Claude Code sessions continuity (Laminark) and structure (GSD).

Note: GSD is an independent project. Its authors do not endorse or recommend Laminark. This is our recommendation based on how well the two tools complement each other.

claude plugin add gsd

The install scripts will offer to install GSD automatically if it isn't already present.

Why User-Level?

  • Works in every project automatically -- no per-project .mcp.json needed
  • Cross-session memory persists for each project
  • Single database at ~/.laminark/data.db, scoped by project hash
  • Hooks and MCP tools are available everywhere

Data Storage

All data is stored in a single SQLite database at ~/.laminark/data.db. Each project is identified by a SHA-256 hash of its directory path, ensuring complete isolation between projects.

MCP Tools

| Tool | Description | |------|-------------| | save_memory | Save an observation with optional title | | recall | Search, view, purge, or restore memories | | query_graph | Query the knowledge graph for entities and relationships | | graph_stats | View knowledge graph statistics | | topic_context | Show recently stashed context threads | | status | Show Laminark status and statistics |

Development

npm install
npm run build
npm test

Release History

See CHANGELOG.md for detailed release notes.

Versioning: Laminark uses MILESTONE.PHASE.SEQUENTIAL format (e.g., v2.21.0) aligned with GSD workflow phases.

Latest Releases:

  • v2.21.0 (2026-02-14) - Phase 21: Graph Visualization (Milestone v2.2 complete)
  • v2.18.0 (2026-02-14) - Phase 18: Agent SDK Migration (Milestone v2.1 complete)
  • v2.16.0 (2026-02-10) - Phase 16: Staleness Management (Milestone v2.0 complete)
  • v1.8.0 (2026-02-09) - Phase 8: Web Visualization (Milestone v1.0 complete)

See .planning/MILESTONES.md for comprehensive milestone documentation.

License

ISC