Skip to content

tomsej/pi-ext

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

           ██▓███   ██▓              ▓█████ ▒██   ██▒▄▄▄█████▓
          ▓██░  ██▒▓██▒              ▓█   ▀ ▒▒ █ █ ▒░▓  ██▒ ▓▒
          ▓██░ ██▓▒▒██▒   ▄▄▄▄▄     ▒███   ░░  █   ░▒ ▓██░ ▒░
          ▒██▄█▓▒ ▒░██░   ░░░░░     ▒▓█  ▄  ░ █ █ ▒ ░ ▓██▓ ░
          ▒██▒ ░  ░░██░              ░▒████▒▒██▒ ▒██▒  ▒██▒ ░
          ▒▓▒░ ░  ░░▓░              ░░ ▒░ ░▒▒ ░ ░▓ ░  ▒ ░░
          ░▒ ░     ░▒░               ░ ░  ░░░   ░▒ ░    ░
          ░░       ░░                  ░    ░    ░    ░
                                       ░  ░ ░
demo.mp4

A collection of extensions, skills, and themes for Pi, the AI coding agent for the terminal.

Extensions range from visual UI enhancements (custom footer, leader key palette, session switcher) to deep integrations (web search, code review, Ghostty terminal support). Everything is MIT licensed and designed to be installed together or individually.

Leader key palette → model switcher → session picker → code review

Install

pi install github:tomsej/pi-ext

Or install individual extensions:

pi install github:tomsej/pi-ext/extensions/leader-key

Requires Pi v0.37.3+.

Extensions

Press Ctrl+Space to open a floating command palette — like Vim's which-key or Emacs' leader key. Actions are organized into single-character groups (s for Session, m for Model, f for Favourites, t for Thinking level). Auto-discovers extension commands and merges them with built-in actions.

Includes sub-modules:

  • Model Switcher — searchable provider → model → thinking level picker
  • Favourite Models — quick-switch to preset model+thinking combos via favourite-models.json
  • Thinking Picker — adjust reasoning effort (off, minimal, low, medium, high, xhigh)

Split-panel session picker with Pi's native session selector on the left and a live conversation preview on the right. Search, rename, delete, and resume sessions without leaving the TUI.

Standalone multi-step model selector with searchable lists: pick a provider, pick a model, pick a thinking level. Available as /switch command or Ctrl+Shift+M. Also used internally by the leader key extension.

Replaces Pi's default footer with a compact powerline-style status bar:

~/project (main) │ ↑12k ↓8k $0.42 │ 42%/200k │ ⚡ claude-sonnet-4 • medium

Shows working directory, git branch, token usage, cost, context window utilization, and active model — all in a single line.

Web search, content extraction, and video understanding. Zero config if you're signed into Google in Chrome, or bring your own Perplexity/Gemini API keys. Based on pi-web-access by Nico Bailon.

Tools: web_search, fetch_content, get_search_content

Capabilities: Perplexity & Gemini search, GitHub repo cloning, YouTube video understanding, local video analysis, PDF extraction, blocked-page fallbacks, interactive search curator UI.

See the full README for details.

/review command with multiple modes: review a GitHub PR (checks it out locally), diff against a base branch, review uncommitted changes, review a specific commit, or provide custom review instructions. Supports project-specific REVIEW_GUIDELINES.md. Derived from mitsuhiko/agent-stuff (Apache 2.0).

File-based todo management stored in .pi/todos/. Each todo is a standalone markdown file with JSON front matter. Supports claiming (lock files), tagging, status tracking, and automatic GC of closed items. Comes with both a /todos TUI and LLM-facing tools (todo tool) for natural language task management. Derived from mitsuhiko/agent-stuff (Apache 2.0).

/context command showing what's loaded in the current session: extensions, skills, project context files (AGENTS.md/CLAUDE.md), context window usage, and session cost totals. Derived from mitsuhiko/agent-stuff (Apache 2.0).

Ghostty terminal integration. Sets dynamic window titles with project, session, and model info. Animates a braille spinner and pulses Ghostty's native progress bar while the agent is working. Based on pi-ghostty by HazAT.

Skills

Skill Description
commit Conventional Commits-style git commit — infers type, scope, and summary from the diff
github Recipes for the gh CLI — PR checks, CI runs, issue queries, JSON output
librarian Research open-source libraries with evidence-backed answers and GitHub permalinks

Themes

Theme Description
catppuccin-mocha Dark theme based on Catppuccin Mocha

Configuration

Most extensions work out of the box. Notable config:

  • Leader Key — edit extensions/leader-key/favourite-models.json to set your favourite model presets
  • Pi Web Access — optionally configure API keys in ~/.pi/web-search.json (see README)
  • Todos — set PI_TODO_PATH env var to change the storage directory (defaults to .pi/todos)

License

MIT © tomsej

About

Extensions, skills, and themes for Pi coding agent

Resources

License

Stars

Watchers

Forks

Packages