@arvoretech/pi-prs-tracker
PI extension that keeps open/recently-merged PRs pinned in the chat as a persistent widget
Package details
Install @arvoretech/pi-prs-tracker from npm and Pi will load the resources declared by the package manifest.
$ pi install npm:@arvoretech/pi-prs-tracker- Package
@arvoretech/pi-prs-tracker- Version
1.3.0- Published
- Jun 24, 2026
- Downloads
- 351/mo · 351/wk
- Author
- joao.barros.arvore
- License
- MIT
- Types
- extension
- Size
- 40.9 KB
- Dependencies
- 0 dependencies · 1 peer
Pi manifest JSON
{
"extensions": [
"./dist/index.js"
]
}Security note
Pi packages can execute code and influence agent behavior. Review the source before installing third-party packages.
README
@arvoretech/pi-prs-tracker
Keeps your open and recently-merged PRs pinned in the chat as a persistent widget — now with CI and production deploy status. PRs are auto-detected from gh pr create calls (and any GitHub PR URL) the agent runs during the session, and their status is refreshed in the background.
Install
pi install npm:@arvoretech/pi-prs-tracker
Or in .pi/settings.json:
{
"packages": ["npm:@arvoretech/pi-prs-tracker"]
}
How it works
- Listens to
bashtool executions. When a command containsgh pr createor its output prints agithub.com/<owner>/<repo>/pull/<n>URL, the PR is captured automatically. - For each tracked PR it runs
gh pr view <n> --json ...to read title, state, merge commit and the status check rollup (CI). - When a tracked PR becomes
MERGED, it looks up the production deploy workflow run triggered by thepushfor that merge commit (gh run list --commit <sha>) and tracks it throughqueued → in_progress → success/failure. - A widget pinned above the editor lists every tracked PR with:
- State:
[open]/[draft]/[merged]/[closed] - CI:
CI passed/CI failed/CI runningwith check counts - Deploy:
deploy queued/deploying to main/deployed to main/deploy failed
- State:
- Background polling (every 60s) refreshes CI and deploy statuses. Merged PRs stay for 24h (and are kept longer if a deploy is still in flight); closed PRs drop off immediately.
Deploy detection
The production deploy run is matched by the push event on the merge commit, picking a workflow whose name contains deploy but not staging. This matches the Deploy workflow in api-arvore, frontend-arvore-nextjs, etc.
Commands
/prs— show usage/prs hide— hide the widget/prs show— re-show the widget/prs refresh— force an immediate status refresh
Requirements
- GitHub CLI (
gh) authenticated in the working directory.