@firstpick/pi-extension-notes
Local notes CRUD extension for Pi with optional rule-note prompt injection.
Package details
Install @firstpick/pi-extension-notes from npm and Pi will load the resources declared by the package manifest.
$ pi install npm:@firstpick/pi-extension-notes- Package
@firstpick/pi-extension-notes- Version
0.2.2- Published
- Jun 8, 2026
- Downloads
- 772/mo · 223/wk
- Author
- firstpick
- License
- MIT
- Types
- extension
- Size
- 30.8 KB
- Dependencies
- 1 dependency · 1 peer
Pi manifest JSON
{
"extensions": [
"./index.ts"
]
}Security note
Pi packages can execute code and influence agent behavior. Review the source before installing third-party packages.
README
pi-extension-notes
Local notes management for Pi with optional rule-note prompt injection.
What it does
- Create, list, read, update, and delete local markdown notes.
- Uses fuzzy lookup for fast retrieval/editing.
- Stores notes in a transparent file-based structure.
- Optionally injects
rule*notes into the system prompt at startup.
Install
pi install npm:@firstpick/pi-extension-notes
Configuration
PI_NOTES_DIR- Optional custom notes storage directory.
- Default:
~/.pi/agent/memory/notes
PI_NOTES_INCLUDE_RULES_IN_PROMPT1|true|yes|on: inject rule notes into system prompt on start.- unset/other: keep rule notes stored but do not inject.
Commands
/note— open$VISUAL/$EDITORfor a new note, matching Pi's native Ctrl+G external-editor flow./note <title> :: <content>or/note <content>— create/save a note directly./note-list— list notes (newest first)./note-read [slug|query]— read a note (fuzzy match)./note-update— choose whether to update a note title/filename or content./note-title-update— pick a note and update its title/filename./note-title-update <slug|title> :: <new title>— update a note title/filename directly./note-content-update— pick a note and edit its content in$VISUAL/$EDITOR./note-content-update <slug|title>— edit a matching note's content in$VISUAL/$EDITOR./note-content-update <slug|title> :: <content>— update note content directly./note-delete— pick a note from Pi's selector and delete it after confirmation./note-delete <slug|title>— delete a matching note after confirmation./notes-rules— choose ON/OFF for automatic rule-note prompt injection and persist it to Pi's global.env./note-status— show notes directory and rule-injection status.
Tools
note_list— list notes with optional rule filtering.- Inputs:
limit(1–100), optionalincludeRulesOnly
- Inputs:
note_read— read one note by slug/title using fuzzy matching.- Input:
query
- Input:
note_update— update an existing note's content by slug/title.- Inputs:
query,content
- Inputs:
note_delete— delete a note by slug/title. Requires explicitconfirm=true.
Example view
/note rule-testing :: Always run the smallest useful check before claiming completion.
Saved note: rule-testing
/note-list
- rule-testing [rule]
/note-read testing
# rule-testing
Always run the smallest useful check before claiming completion.
Use notes for durable reminders, project conventions, or rule* notes you may want injected into future sessions.