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

pi-diet-memory

v0.1.1

Published

Explicit lightweight persistent memory for Pi with no automatic context injection.

Readme

pi-diet-memory

Explicit lightweight persistent memory for Pi with no automatic context injection.

pi-diet-memory gives Pi agents a small, inspectable memory store for durable user preferences, project conventions, and lessons learned. Memories are saved only when explicitly requested or proposed for user approval. The extension avoids transcript scraping, vector databases, background consolidation, and automatic prompt injection, keeping prompt overhead low while still letting agents search memory when relevant.

How to use it

Use pi-diet-memory for durable context that should survive sessions:

  • user preferences
  • workflow habits
  • recurring corrections
  • stable project conventions
  • lessons learned

Do not use it for:

  • secrets
  • temporary task state
  • raw transcripts
  • one-off command output
  • facts that are better stored in repo docs

Commands

Show saved memories:

/memory

Search approved memories:

/memory-search jj workflow

Save an explicit memory:

/memory-remember I prefer concise recommendations first, then caveats.

Review proposed memories:

/memory-review

Tool

One compact tool:

  • memory — list, search, review, remember, propose, approve, update, and forget memories.

Save an explicit user-requested memory

Use remember only when the user asks to remember something.

{ "action": "remember", "text": "User prefers compact action-enum tools for small Pi extensions.", "kind": "preference", "tags": "pi,extensions,tools", "pinned": true }

Propose an inferred memory

Use propose when the agent notices a durable preference, but the user did not explicitly ask to save it.

{ "action": "propose", "text": "User prefers positive guidance phrased as desired behavior rather than negative bans.", "kind": "preference", "evidence": "User requested this style while discussing AGENTS.md guidance.", "tags": "guidance,style" }

Review pending candidates

{ "action": "review" }

Approve a candidate

{ "action": "approve", "id": "cand_..." }

Search approved memories

{ "action": "search", "query": "positive guidance" }

Update a memory

{ "action": "update", "id": "mem_...", "text": "User prefers concise positive guidance phrased as desired behavior rather than negative bans.", "pinned": true }

Forget a memory

{ "action": "forget", "id": "mem_..." }

Memory kinds

Use one of:

  • preference — user style or workflow preference
  • project — stable project convention
  • lesson — correction or mistake to avoid
  • reference — useful durable fact or link

Scopes

Default is global:

{ "scope": "global" }

Use project scope for repo-specific memory:

{ "scope": "project" }

Storage

JSON Lines under:

~/.pi/agent/pi-diet-memory/
  memories.jsonl
  candidates.jsonl

Memories are human-readable and easy to inspect or back up.

Safety

  • Memory is context, not authority; current user instructions and repo evidence win.
  • Do not store secrets.
  • Prefer concise, stable preferences and lessons over raw transcript snippets.
  • Use propose for inferred memories, review for pending candidates, and remember for explicit user requests.

Install

From npm:

pi install npm:pi-diet-memory

From GitHub:

pi install git:github.com/ProbabilityEngineer/pi-diet-memory

For project-local install, add -l:

pi install -l git:github.com/ProbabilityEngineer/pi-diet-memory

For local testing:

pi -e ./index.ts

Development

npm install
npm run lint