@spences10/pi-recall

extensionmaintained

Pi extension that syncs pirecall and nudges agents to query past Pi sessions when history matters

by · v0.0.16 · published 2w ago

$ pi install npm:@spences10/pi-recall
downloads/mo
692
stars
108
last push
1d ago
open issues
11

Signals

license: MITtestspi manifest: missinginstall size: —deps: 0peer deps: 0

Download trend

1.5K downloads · last 12 weeks (weekly)

README

@spences10/pi-recall

built with Vite+ tested with Vitest npm version license

my-pi package preview

Find the old decision, bugfix, or implementation detail instead of rediscovering it. pi-recall keeps pirecall synced and reminds the model to query past Pi sessions when history would save time or avoid repeated work.

Installation

pi install npm:@spences10/pi-recall

Local development from this monorepo:

pnpm --filter @spences10/pi-recall run build
pi install ./packages/pi-recall
# or for one run only
pi -e ./packages/pi-recall

What it does

  • runs npx pirecall sync --json in the background on session start when ~/.pi/pirecall.db exists
  • runs npx pirecall sync --json again on session shutdown
  • injects a system reminder telling the model to use pnpx pirecall ... --json or npx pirecall ... --json
  • adds /resume-recall [query], a SQLite-backed searchable and paged picker for live session files
  • keeps Pi's native /resume unchanged as the fallback

The recall picker uses pirecall only for discovery. Before opening a selection it checks that the JSONL still exists, then delegates the actual switch to Pi's session runtime and SessionManager lifecycle.

Model reminder

The injected reminder tells the model to use pirecall when:

  • the user references prior work
  • previous session context would prevent repeated work
  • project history or decisions matter

Useful commands:

pnpx pirecall sync --json
pnpx pirecall recall "auth refactor" --json
pnpx pirecall search "prompt presets" --json
pnpx pirecall sessions --json
pnpx pirecall stats --json

To find and resume a live session interactively:

/resume-recall
/resume-recall auth refactor

Use npx instead of pnpx outside pnpm-oriented environments. If the pirecall index or resumable API is unavailable, use Pi's native /resume picker.

Using from a custom harness

import recall from '@spences10/pi-recall';

// pass `recall` as an ExtensionFactory to your Pi runtime

my-pi imports this package directly and enables it as the built-in recall reminder.

Development

Package scripts build transitive workspace dependencies first, then run local tools through Vite+ with vp exec.

pnpm --filter @spences10/pi-recall run check
pnpm --filter @spences10/pi-recall run test
pnpm --filter @spences10/pi-recall run build

License

MIT