@foister150/pi-tagging
Tag pi sessions with path-style hierarchical tags and browse them as a tree. Adds /tag and /tag-view.
Package details
Install @foister150/pi-tagging from npm and Pi will load the resources declared by the package manifest.
$ pi install npm:@foister150/pi-tagging- Package
@foister150/pi-tagging- Version
0.1.0- Published
- Jun 25, 2026
- Downloads
- not available
- Author
- foister150
- License
- MIT
- Types
- extension
- Size
- 25.3 KB
- Dependencies
- 0 dependencies · 1 peer
Pi manifest JSON
{
"extensions": [
"src/tags.ts"
]
}Security note
Pi packages can execute code and influence agent behavior. Review the source before installing third-party packages.
README
@foister150/pi-tagging
A pi extension that lets you organize your sessions with path-style, hierarchical tags and browse them as a file-tree-like structure.
/tag— view/add/remove tags on the current session/tag <tag…>— quick-add one or more tags (e.g./tag pacemaker/frontend)/tag pick— choose any session, then edit its tags/tag-view— browse every session as a tag tree; switch, rename, delete, or retag from there
Tags use a / separator to form sub-tags, so pacemaker/frontend is a child of
pacemaker. Untagged sessions are grouped under an etc bucket. Tags are stored
centrally in ~/.pi/agent/session-tags.json and refreshed in the background on
every session start.
Install
pi install npm:@foister150/pi-tagging
Or pin a version:
pi install npm:@foister150/pi-tagging@0.1.0
Install from git instead of npm:
pi install git:github.com/Foister150/pi-tagging
Try it for a single run without installing:
pi -e npm:@foister150/pi-tagging
Usage
Tagging
/tag # interactive add/remove menu for the current session
/tag pacemaker/frontend # quick-add (space-separated, path-style, multiple ok)
/tag pacemaker infra/ci # add several at once
/tag pick # choose another session, then edit its tags
Sub-tags are just tags with a / in them — pacemaker/frontend/auth is three
levels deep.
Browsing
/tag-view
Top level shows your tags (pacemaker, infra, …) plus an etc bucket for
untagged sessions. Drill into 📁 folders; selecting a session (🗎) opens an
action menu:
- Switch / resume into the session
- Edit tags
- Rename
- Delete (moved to trash — uses the
trashCLI when available, otherwise~/.pi/agent/sessions-trash/<timestamp>/, so deletes stay recoverable)
How tags are stored
A single JSON index at ~/.pi/agent/session-tags.json, keyed by session file
path. /tag-view reconciles the index against the sessions that actually exist
on disk each run (adding new sessions as untagged, pruning ghosts of deleted
files), so it is self-healing.
License
MIT © Landon Foister