pi-system-prompt-manager

Manage a library of named system prompts in pi, with per-session enable/disable, selection, and optional per-model scoping.

Packages

Package details

extension

Install pi-system-prompt-manager from npm and Pi will load the resources declared by the package manifest.

$ pi install npm:pi-system-prompt-manager
Package
pi-system-prompt-manager
Version
0.1.1
Published
Jun 15, 2026
Downloads
not available
Author
tbystrican
License
MIT
Types
extension
Size
14.9 KB
Dependencies
0 dependencies · 1 peer
Pi manifest JSON
{
  "extensions": [
    "./extensions"
  ]
}

Security note

Pi packages can execute code and influence agent behavior. Review the source before installing third-party packages.

README

pi-system-prompt-manager

A pi extension to manage a library of named system prompts, with per-session enable/disable, runtime selection, and optional per-model scoping.

Install

pi install git:github.com/tombystrican/pi-system-prompt-manager

Then run /reload (or restart pi).

Usage

Use the /sysprompt command:

  • /sysprompt — interactive menu: pick a prompt, Disable, or ➕ Add new prompt…
  • /sysprompt <name> — set active prompt and enable it
  • /sysprompt on / /sysprompt off — toggle the active prompt
  • /sysprompt list — list prompts (● active+on, ○ active+off)
  • /sysprompt add [name] — create a new prompt (name → description → text → append/replace)
  • /sysprompt edit <name> — edit an existing prompt's text
  • /sysprompt remove <name> — delete a prompt

The active prompt shows in the footer status (sysprompt: <name> or sysprompt: off).

Scope

Enable/disable and selection are per session (keyed by session id), falling back to a global default. Changing the prompt in one session does not affect others, and the choice persists when you resume that session.

Per-model prompts

Add a models array to a prompt entry to scope it to specific models. When set, the prompt only applies while one of those models is active:

"review-mode": {
  "description": "Strict review",
  "text": "Be a strict reviewer...",
  "mode": "append",
  "models": ["<provider>/<id>"]
}

Files

The extension stores data under ~/.pi/agent/:

  • system-prompts.json — the prompt library (editable by hand)
  • system-prompt-state.json — per-session { enabled, active } state

Prompt entry shape

"<name>": {
  "description": "short label shown in menus",
  "text": "the prompt text",
  "mode": "append",                 // "append" (after pi's prompt, default), "prepend" (before), or "replace"
  "models": ["<provider>/<id>"]   // optional scope; omit = all models
}

License

MIT