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

@askjo/pi-mem

v1.0.0

Published

Pi coding agent extension for plain-Markdown memory system — long-term memory, daily logs, and scratchpad checklist

Downloads

42

Readme


Layout

Memory files live under ~/.pi/agent/memory/ (override with PI_MEMORY_DIR):

| Path | Purpose | |------|---------| | MEMORY.md | Curated long-term memory (decisions, preferences, durable facts) | | SCRATCHPAD.md | Checklist of things to keep in mind / fix later | | daily/YYYY-MM-DD.md | Daily append-only log (today + yesterday loaded at session start) | | notes/*.md | LLM-created files (lessons, self-review, reference material, etc.) |

Identity and behavioral files (e.g. SOUL.md, AGENTS.md, HEARTBEAT.md) can also live in the memory directory and be injected into context via PI_CONTEXT_FILES.

Tools

| Tool | Description | |------|-------------| | memory_write | Write to long_term (MEMORY.md), daily (today's log), or note (notes/filename). Supports append and overwrite modes. | | memory_read | Read MEMORY.md (long_term), SCRATCHPAD.md (scratchpad), daily logs (daily), notes (note), any root file (file), or list everything (list). | | memory_search | Search across all files — filenames and content. Case-insensitive keyword search across root, notes/, and daily/. | | scratchpad | Manage a checklist: add, done, undo, clear_done, list. |

Context Injection

The following are automatically injected into the system prompt before every agent turn:

  • Files listed in PI_CONTEXT_FILES (e.g. SOUL.md,AGENTS.md,HEARTBEAT.md)
  • MEMORY.md
  • SCRATCHPAD.md (open items only)
  • Today's and yesterday's daily logs

Files in notes/ and older daily logs are not injected — they're accessible on-demand via memory_search and memory_read.

Configuration

| Env Var | Default | Description | |---------|---------|-------------| | PI_MEMORY_DIR | ~/.pi/agent/memory/ | Root directory for all memory files | | PI_DAILY_DIR | $PI_MEMORY_DIR/daily/ | Directory for daily logs | | PI_CONTEXT_FILES | (empty) | Comma-separated list of extra files to inject into context (e.g. SOUL.md,AGENTS.md,HEARTBEAT.md) | | PI_AUTOCOMMIT | false | When 1 or true, auto-commit to git after every write |

Dashboard Widget

An auto-generated "Last 24h" summary is shown on session start and switch:

  • Scans recent session files for titles, costs, and sub-agent counts
  • Groups by topic using an LLM call (falls back to flat list)
  • Rebuilt every 15 minutes in the background
  • Also shows open scratchpad items

Related

  • pi-reflect — Self-improving reflection engine for pi. Analyzes recent conversations and iterates on memory, behavioral rules, and identity files. Pairs naturally with pi-mem.

Installation

pi install git:github.com/jo-inc/pi-mem

License

MIT