pi-prs

Pull request review feedback and watching for pi

Packages

Package details

extension

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

$ pi install npm:pi-prs
Package
pi-prs
Version
0.1.0
Published
Aug 22, 2026
Downloads
177/mo · 177/wk
Author
mavam
License
MIT
Types
extension
Size
91 KB
Dependencies
2 dependencies · 2 peers
Pi manifest JSON
{
  "extensions": [
    "./src/index.ts"
  ]
}

Security note

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

README

🐙 pi-pr

A Pi extension that owns GitHub pull request state for your session: footer widgets, review feedback, and watching.

🚀 Installation

pi install npm:pi-prs

Install GitHub CLI and authenticate it before using the extension.

✨ Usage

pi-pr resolves the pull request for the current branch on its own and keeps it fresh in the background. Fork and upstream remotes both work, and switching branches re-resolves immediately.

Start watching that pull request for review feedback:

/pr watch

The extension sends unresolved review feedback to pi, then checks GitHub every 30 seconds for new comments and reviews. New external feedback starts an agent turn so pi can address it.

Stop watching:

/pr unwatch

Watching stops automatically when the pull request closes or merges.

🧩 Footer widgets

When pi-fancy-footer is installed, pi-pr publishes the pull request number, unresolved review threads, and CI status. You can change their placement, visibility, and colors with /fancy-footer.

🔌 Extension API

pi-pr is the only extension that should poll GitHub in a session. Other extensions consume its state from the event bus instead of shelling out to gh:

import { createPiPrClient } from "pi-prs/api";

export default function (pi) {
  const client = createPiPrClient(pi);
  client.onState((state) => {
    // state.pullRequest?.ci, .unresolvedThreadCount, .isDraft, …
  });
  client.onFeedback((event) => {
    // event.feedback: new review findings
  });
}

Publishing a pi-pr:feedback event yourself sends those findings to pi as a steering message.

🧰 Requirements

📄 License

MIT