npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

pi-git-delegate

v0.2.2

Published

Pi extension: delegate git operations (diff/log/blame) to cheaper models via subagents, saving costs and keeping parent context clean.

Readme

Pi Git Delegate

CI Publish npm version npm downloads License: MIT Pi package Trusted Publishing

Delegate git operations (diff/log/blame) to cheaper models via subagents — keeping parent context clean and cutting costs.

What this is

Pi Git Delegate provides typed tools that internally delegate heavy git read operations (diff, log, blame) to subagents. The subagent processes the raw git output and returns only a concise summary to the parent session. This prevents large diffs from polluting the parent's context window and lets you route expensive operations to cheaper models.

When to delegate

The cost leverage principle: delegate only when input is large and output is small.

| Operation | Delegation | Why | |---|---|---| | git diff (→ summary) | ✅ Delegate | Diff is large (1000+ tokens), summary is tiny | | git log (→ changelog) | ✅ Delegate | Many commits → compact digest | | git blame (→ context) | ✅ Delegate | Full blame is verbose; what matters is who/when/why | | git status | ❌ Direct | Output is tiny; subagent overhead not worth it | | git push / git commit | ❌ Direct | Write operations stay in parent for safety |

Features

  • git_diff_summary — delegate git diff to a subagent, return a 1-3 sentence summary
  • git_log_summary — delegate git log range, return a structured digest
  • git_blame_summary — delegate git blame, return who changed what and why
  • Per-tool model routing — set provider and model per tool in .pi/settings.json (null uses the session defaults)
  • /git-delegate:configure — interactive help for writing the settings block
  • /git-delegate:status — show current model routing and example JSON
  • Model override parameter — override model per-call via tool parameter
  • Fallback to current model — no config needed; uses the parent session model
  • Write guard — no write operations exposed as tools

Install

pi install npm:pi-git-delegate

Install locally (project-scoped):

pi install npm:pi-git-delegate -l

Try without installing:

pi -e .

Quick start

After installing (see above) or running pi -e . from this repo, call each tool in Pi:

git_diff_summary({ref: "HEAD~3"})
git_log_summary({range: "main..feature"})
git_blame_summary({path: "src/auth.ts"})

The tools are registered automatically — no extra setup required.

Configuration

Model routing is optional. Run in Pi:

/git-delegate:configure

This shows what each key does, prints a starter JSON block, and can save it to .pi/settings.json interactively.

Check the current routing anytime with:

/git-delegate:status

Manual example for .pi/settings.json:

{
  "pi-git-delegate": {
    "diff": { "provider": "anthropic", "model": "claude-3-5-haiku-latest" },
    "log": { "provider": null, "model": null },
    "blame": { "provider": null, "model": null }
  }
}

null means "use the current session provider/model".

Tool examples

Once installed, the tools are available automatically. Pi calls them via pi list.

git_diff_summary({ref: "HEAD~3"})
→ "feat: add avatar upload with resize (3 files, 2 commits)"

git_log_summary({range: "main..feature"})
→ "3 commits: feat(avatar), fix(crop), chore(deps)"

git_blame_summary({path: "src/auth.ts"})
→ "src/auth.ts: 3 authors, most recent by @alice (2026-06-01)"

Package contents

| Path | Purpose | |---|---| | extensions/ | Pi TypeScript extension entrypoints | | lib/ | Shared TypeScript helpers | | docs/ | Optional supporting docs |

Development

npm install
npm run ci

Release

This package is set up for npm Trusted Publishing, so no NPM_TOKEN is required.

npm version patch
git push

See docs/release.md for setup details.

Docs

docs/ is optional supporting documentation, not a fixed six-file set. README stays the GitHub/npm entrypoint; add docs/*.md only when they help users or maintainers.

Security

Pi packages can execute code with your local permissions. Review extensions before installing third-party packages.

For vulnerability reporting, see SECURITY.md.

Links

  • npm: https://www.npmjs.com/package/pi-git-delegate
  • GitHub: https://github.com/eiei114/pi-git-delegate
  • Issues: https://github.com/eiei114/pi-git-delegate/issues

License

MIT