Skip to content
 
 

Latest commit

 

History

5,017 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Hi :)

This is my fork of Pi. I created it because I thought the features I'm thinking of might be too niche and not make it too the official Pi, and also because those features can't be implemented as an extension, and need a source patch.

Fork based on upstream Pi v0.80.3

Features I Have Implemented

1. A "Worked For" Time Line

This was inspired by Codex. It shows this:

image

I mirrored it in Pi, and it now shows like this:

Package Description
@earendil-works/chord Standalone application-composition runtime for services, replicated state, RPC, and plugins
@earendil-works/pi-telemetry Vendor-neutral telemetry contracts, reference adapter, conformance tests, and typed schemas
@earendil-works/pi-ai Unified multi-provider LLM API (OpenAI, Anthropic, Google, etc.)
@earendil-works/pi-durable Durable conversation, task, and document runtime
@earendil-works/pi-agent-core Agent runtime with tool calling and state management
@earendil-works/pi-coding-agent Interactive coding agent CLI
@earendil-works/pi-tui Terminal UI library with differential rendering
image

See #1 for the PR that implemented this.

2. Bi-directional Thinking Toggle

This was also inspired by Codex. It was implemented in #2

3. A Telegram Client(ish)

It has all commands that Pi has, even your extensions. You can start a new session directly from the bot, instead of starting it from the terminal and continuing in telegram. See PR #3 to see how it was implemented.

Screenshot_20260706-013340 Screenshot_20260706-013255 Screenshot_20260706-013330
npm install --ignore-scripts  # Install all dependencies without running lifecycle scripts
npm run build         # Refresh model data, then build all packages
npm run build:offline # Rebuild using existing model data without network access
npm run check         # Lint, format, and type check
./test.sh            # Run tests (skips LLM-dependent tests without API keys)
./pi-test.sh         # Run pi from sources (can be run from any directory)

Building standalone binaries from release source

GitHub releases include a versioned source archive covered by the release's SHA256SUMS file. Extract it and run the same build script used for the official standalone binaries:

VERSION="<release-version>"
tar -xzf "pi-${VERSION}-source.tar.gz"
cd "pi-${VERSION}"
./scripts/build-binaries.sh --offline-model-data --platform linux-x64 --out "$PWD/out"

The archive includes release model data and native prebuilds. --offline-model-data uses that model data without refreshing provider catalogs. The script installs dependencies and builds the executable with its runtime assets; pass --skip-install if dependencies are already provided.

Supply-chain hardening

4. Pinning Sessions in /resume

Some sessions are more important than others and you go back and forth between them. It's nice to be able to pin them. See PR #8 for how it was implemented.

Screenshot_20260716_114538 Screenshot_20260716_114605

5. Resume OpenCode Sessions In Pi

Just wanted to be import opencode sessions directly in pi so I can continue there. Implemented via #9 and #10. Checkout the extension's README. Watch the demo below.

pi-resume-opencode

6. Resume Codex Sessions in Pi

As you can see, the first two features are implemented were inspired by Codex CLI, so it only makes sense to add support for it here. This was implemented via PR #12. You can watch the demo below. Detailed README for the extension can be found here.

pi-codex-resume

7. Codex Usage Status

Added a /status extension for checking live ChatGPT Codex usage. It displays 5-hour and 7-day limits, credits, reset information, and blocked states, with RPC notifications for Telegram clients. See PR #22 and the extension source.

About

My own Pi, just the way I like.

Topics

Resources

Contributing

Security policy

Stars

12 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages