pi-repos

Read and search GitHub repositories as if local in Pi: find repos, code examples, files, and grep cached archives.

Packages

Package details

extension

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

$ pi install npm:pi-repos
Package
pi-repos
Version
0.2.0
Published
May 18, 2026
Downloads
27/mo · 27/wk
Author
liamvinberg
License
MIT
Types
extension
Size
83 KB
Dependencies
1 dependency · 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-repos

Read GitHub repositories as if they were local in Pi.

pi-repos gives agents a small set of repository tools for finding GitHub repos, searching code examples, listing files, reading code, finding files by glob, and grepping source. It uses GitHub APIs plus a local archive cache so repeated reads/searches are fast without cloning into your current project.

Installation

From the Pi package catalog / npm:

pi install npm:pi-repos

From GitHub:

pi install git:github.com/liamvinberg/pi-repos

For local development:

pi -e /absolute/path/to/pi-repos
# or
pi install /absolute/path/to/pi-repos

Tools

Tool Purpose
repo_find Search GitHub repositories by query.
repo_code_search Search code across GitHub for examples, APIs, symbols, or implementation patterns.
repo_list List a directory in a remote GitHub repository. Accepts GitHub tree URLs.
repo_read Read a file from a remote repository, using cached archives when possible. Accepts GitHub blob URLs.
repo_find_files Find files in a remote repository by glob.
repo_grep Search file contents in a remote repository with archive + ripgrep acceleration when available.

Examples

Find the React repository and inspect its package layout.
Find TypeScript examples of virtualized tables across open source projects.
Use repo_grep to search vercel/next.js for createIncrementalCache.
Read README.md from github.com/earendil-works/pi-mono.
Read https://github.com/owner/repo/blob/main/src/example.ts.

Configuration

The extension reads these optional environment variables:

Variable Description
GITHUB_TOKEN, GH_TOKEN, GITHUB_PAT, GITHUB_PERSONAL_ACCESS_TOKEN Token for higher GitHub API limits. If absent, the extension tries gh auth token.
PI_REPOS_CACHE_DIR Cache root for downloaded repository archives. Defaults to ~/.cache/pi-repos.
PI_REPOS_REF_REFRESH_MS How long cached ref-to-commit lookups are considered fresh. Defaults to 5 minutes.

Development

npm install
npm run check
pi -e .

Notes

  • The package uses Pi's package manifest under the pi key and exposes ./src/index.ts as the extension entry point.
  • Runtime GitHub archive caches are kept outside the package directory.
  • Extensions run with full local permissions; review third-party Pi packages before installing them.