pi-menu-tree

A hierarchical slash-command menu for Pi.

Packages

Package details

extension

Install pi-menu-tree from npm and Pi will load the resources declared by the package manifest.

$ pi install npm:pi-menu-tree
Package
pi-menu-tree
Version
0.1.5
Published
Aug 28, 2026
Downloads
953/mo · 19/wk
Author
rperaza
License
MIT
Types
extension
Size
19.3 KB
Dependencies
0 dependencies · 2 peers
Pi manifest JSON
{
  "extensions": [
    "./extensions/index.ts"
  ]
}

Security note

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

README

Pi Menu Tree

A hierarchical slash-command menu for Pi. It turns the flat / command list into keyboard-navigable categories without leaving the terminal.

Features

  • Shows a category menu immediately when you type /.
  • Groups commands into Native commands, Extensions, Skills, and Prompt templates.
  • Opens each group as an inline submenu beneath Pi's editor.
  • Uses Esc for navigation: submenu → root menu → editor.
  • Preserves Pi's native command and path autocomplete when you type a command directly, such as /model or /skill:typescript.

Usage

  1. Type / in Pi. The root menu opens immediately.
  2. Use / and Enter to select a category.
  3. Select a command from its submenu.
  4. The command is placed in the editor. Press Enter once to run it, exactly as with Pi's native autocomplete.
⚙ Native commands
🧩 Extensions
🧠 Skills
📋 Prompt templates

Press Esc in a submenu to return to the categories, or press Esc in the root menu to close it.

Installation

npm

After publishing:

pi install npm:pi-menu-tree

From a Git repository

pi install git:github.com/<YOUR_GITHUB_USER>/pi-menu-tree

Local development

pi install ./pi-menu-tree

Restart Pi or run /reload after installing or updating the package.

Publishing

The GitHub Actions workflow publishes when a version tag is pushed. It uses npm trusted publishing (OIDC), so no long-lived npm token is stored in GitHub.

Before the first release, configure joisephdev/pi-menu-tree as a trusted publisher for this package in npm. Then publish a release by updating version in package.json and pushing its matching tag:

npm version 0.1.0
# Review the generated commit and tag.
git push origin main --follow-tags

The tag must match the package version, for example v0.1.0.

How it works

Pi Menu Tree decorates the active editor through Pi's public editor API. It retains the underlying editor's styling and application shortcuts, delegating all autocomplete except the exact / input, which opens this package's menu tree.

Compatibility

  • Pi with extension support.
  • Node.js 20 or later.
  • Compatible with custom editors such as @sting8k/pi-droid-styling; install Pi Menu Tree after the styling extension so it can decorate that editor.

Security

Pi extensions execute with your user permissions. Review the source before installing from a third-party repository.

License

MIT