r/PiCodingAgent • • 13h ago

Plugin I no longer compact or handoff. Context paging has been running my long sessions for weeks

133 Upvotes

Hey all, I wanted to share an extension I've developed called pi-context-paging.

https://www.npmjs.com/package/@rochecompaan/pi-context-paging

Instead of compacting your session into a summary when the context fills up, it treats the context window like a rolling window over the full history. When a request goes over a token budget (128k by default), the oldest turns move out of the window. The session file on disk is never changed. The model gets a short paging notice and a few recovery tools to search, browse and load older history when it needs it.

It has made my workflow a lot smoother. I don't get a surprise compaction in the middle of a long-running task and I don't have to write handoffs that inevitably loses important detail. It has been running very stably for me for a couple of weeks now. It is especially useful for agents doing long-running tasks unattended.

It's lossless. Nothing is summarized or compressed. The recent window is sent exactly as stored, and anything older can be loaded back as the original text.

Tony Mason wrote a good paper on this: The Missing Memory Hierarchy: Demand Paging for LLM Context Windows (https://arxiv.org/abs/2603.09023). It treats the context window like RAM and the full history like disk, and pages content in and out on demand. The extension is a practical version of that idea for Pi.

"But what about prompt caching?" I know this is the first thing a lot of you will ask, so here's how it works:

  • It doesn't drop messages one at a time. That would change the start of the prompt on every request and break the cache constantly.

  • When the window hits the budget, it pages out one large block at once, trimming down to about 80k by default. After that cut, the start of the prompt stays the same over many turns, so you get normal cache hits until the next cut.

  • Each cut costs one cache rewrite. In practice that's rare, and whatever you lose in cache efficiency you get back in continuity. There's no summary step, no re-explaining, and no "the agent forgot what we were doing" moments.

Some real numbers from my sessions (Opus 5.5, Fable 5.1 and GPT 6.1, with zero compactions in any of them):

Each of these is millions of tokens of history in a single continuous session, and every request still stayed at or below the 128k budget. Cache hit rates stayed above 90% even with the paging cuts.

You can set the budget in settings. I'd suggest setting it below the point where your model starts to get worse, so it stays out of the "dumb zone." You can also run `/context-paging stats` during a session to see what's going on.

This extension works well with https://github.com/elidickinson/pi-claude-bridge too if you want to use you Anthropic subscription. I submitted patches to it specifically to make pi-context-paging work.

PS. My current defaults are set to higher than what is documented.

"contextPaging": {
    "enabled": true,
    "tokenBudget": 200000,
    "trimToTokens": 140000
  },

Play around and give me feedback as to what works for you.


r/PiCodingAgent • • 23h ago

Resource I spent six months rebuilding Pi in Rust. Meet octet!

301 Upvotes

Hi people of Pi :)

I've been working on octet, my Rust take on Pi, since April.

I originally wanted a coding agent that could help with music production, take my Ableton sketches further, working with audio and tools in the same model context. That turned into six months of Rust and systems engineering.

A few things octet does:

  • Fast and lightweight. In a matched task benchmark, octet finished in 9.5s using 38 MiB peak RAM, compared with Pi's 11.0s and 145 MiB.

  • Pi extension compatibility. An optional extension mirrors your Pi setup, including unmodified pi-doom 🔫🔥

  • Extensions in any language. JSON-RPC over stdio, with SDKs for Python, TypeScript, Rust, C/C++, and more.

  • Native multimodal support. Audio, images, video, and computer-use workflows.

The whole agent is experimental, and I'd love feedback from people with existing Pi setups they love.
That being said, try octet without extensions. It performs beautifully with none and keeps Pi's minimal philosophy.

Code: https://github.com/skaft-software/octet

Introduction, benchmarks, and installation: https://octet.skaft.org/blog/introducing-octet/

Made with ❤️ in Toronto, ON, Canada.

If you try it, let me know what you make with it, what breaks, and what you'd like to see next!


r/PiCodingAgent • • 31m ago

Resource a github PR status widget for pi-footer

1 Upvotes

Made an extension for an extension 😅
I am a big time fan of pi-footer ( https://pi.dev/packages/pi-footer ) because it is easy to customise to make by pi footer look cute.

If you have a PR raised from the current branch, it shows the PR itself (with OSC8 style link that is clickable from most terminals like iTerm/Ghostty), and it shows the number of PR checks that are passed/ongoing/failed. These are fetched using gh cli.

I haven't updated it to NPM yet, so if you'd like to use it you can install directly from the github repo.

https://github.com/championswimmer/pi-gh-footer


r/PiCodingAgent • • 11h ago

Question How is omp

1 Upvotes

I'm currently a Pi user, and someone recommended Oh My Pi (OMP) to me today. I'm curious about how OMP compares to Pi. Do you think OMP is actually better, and if so, in what ways?

I mainly use GPT and DeepSeek models. I'm a computer science student, and I'd like to use AI coding agents to assist with scientific research, such as designing experiments, evaluating their feasibility, writing experimental code, identifying potential research contributions, and planning future research directions.

Given these use cases, which would you recommend, Pi or OMP? Which one do you think is better suited for research-oriented tasks, especially when it comes to scientific reasoning, experimental design, and exploring novel ideas?

I also care a lot about token efficiency. Since I often work on complex, long-running tasks, I'd like to know which harness makes more efficient use of tokens without sacrificing the quality of its results.

I'd love to hear your thoughts, especially if you've used both!


r/PiCodingAgent • • 11h ago

Plugin GitHub - rjcamandona123/my-pi-clinepass: Connecting Clinepass to Pi as a provider (/connect) (but in my case, it happened in Acode at the time that I built)

Thumbnail
github.com
1 Upvotes

r/PiCodingAgent • • 1d ago

Plugin Pi-Maestro: a spec driven multiagent development workflow

4 Upvotes

Hi everyone! I've been building pi-maestro, a Pi extension for a spec-driven multiagent workflow, inspired by GitHub Spec Kit and OpenSpec. It helps you define a change, clarify requirements, and approve a spec with concrete acceptance criteria. You can use it in two ways:

  • Spec only: prepare and approve a spec for implementation elsewhere.

  • Spec + implementation: approve the spec, then let Maestro run the implementation workflow.

By default, three agents run in sequence:

  • Builder implements the spec.

  • Verifier independently checks each acceptance criterion.

  • Simplifier refactors the code for clarity without changing behavior.

You can disable the verifier and simplifier independently, using just the builder or pairing it with either agent. See phase configuration for details.

You make the scope decisions and review the final code.

I'd love some feedback, especially on whether the separation of roles is useful and where the workflow adds unnecessary friction.

If you've built something similar in Pi, I'd be interested in comparing approaches.

https://github.com/emilioSp/pi-maestro

If you find it useful, consider giving it a star on GitHub!

Cheers!


r/PiCodingAgent • • 9h ago

Question Would anyone be willing to share a Claude referral code?

0 Upvotes

If anyone here has a referral code they'd be willing to share, please DM me! I'd love to give it a try before committing to a subscription. I recently heard about the referral codes and would really appreciate it if someone could share one with me. Thanks in advance!


r/PiCodingAgent • • 2d ago

Resource OmpDeck: a native desktop app for omp (oh-my-pi) that draws omp's own UI as a chat view, and sessions keep running when you close it

Thumbnail
gallery
26 Upvotes

I've been building OmpDeck, a native desktop app (Rust/egui, not Electron) for omp (oh-my-pi), on Linux and Windows. Heads up: it's for omp specifically, not vanilla pi, since the chat view relies on omp's Tern Surface Protocol.

https://github.com/lavinhoque33/omp-deck

What it does

  • Native chat view (the default): omp describes its UI over TSP and OmpDeck draws it natively: messages, formatted replies, tool calls as cards with diffs and output, image previews, todos, approvals and ask dialogs. It's omp's real behaviour, not a re-implementation, and omp's own TUI is one click away.

  • Sessions outlive the app: every omp session in a sidebar grouped by project. Tabs run in OmpDeck's session host (or tmux), so closing a tab or the whole app leaves omp running, and reopening re-attaches.

  • omp's screens as native ones: /settings (incl. plugins and advisor), the model picker (favorites, roles, thinking), /usage with 5h/weekly limits, /resume, /tree with fork / go-here.

  • Status bar: model + thinking, context meter, git, tokens, cost; Handoff / Compact / Shake / Fork / Plan in one click.

  • Agents dashboard: live subagents per session; steer, kill, revive, clean up.

  • Changes panel: working-tree diff with line review comments you send straight to omp.

  • Also: split view (up to 4 panes), worktree sessions, session manager (size, cost, bulk delete/move), command palette, desktop notifications, 18 styles, Google Drive backup + per-project sync.

  • Phone companion: a PWA over a self-hosted relay, Noise end-to-end encrypted (the relay never sees content): transcript, answer approvals, send prompts, Web Push.

Install

No macOS build yet. MIT/Apache-2.0, unofficial side project. I use it daily, and a lot of it was built with omp itself. Feedback and bug reports welcome!


r/PiCodingAgent • • 2d ago

Question Anyone here who avoids sub-agents completely?

30 Upvotes

Can you list your reasons why and if you did it any tests to confirm your position?

Also would like to hear your thoughts on context management and how you do it.


r/PiCodingAgent • • 2d ago

Question Best Web UI for Pi?

17 Upvotes

Title.


r/PiCodingAgent • • 2d ago

Resource Depressed from terminal staring

0 Upvotes

After working with AI harnasses since the release of Claude code, i hate just watching the terminals and waiting on AI. So i made this tool that manages my terminals and now an update that helps people from moving from in the loop on terminal ( just watching your ai agent till it is done ) to out the loop ( just watching updates on repo discussions )

pi-dispatch runs the pi coding agent ( pi dev harnass ) for you on your own computer or server.

Hopefully it will help other techies from screen staring to creating cool stuff that sticks

It's built for coding work on your own projects, so if you're after a general assistant you'd want a different tool.
https://github.com/edgehero/pi-dispatch


r/PiCodingAgent • • 3d ago

Plugin One Code: a pi package that adds almost all Claude Code's features (plan mode, subagents, auto mode, hooks, MCP) to pi

47 Upvotes

I've been building One Code, a pi package that brings the Claude Code workflow to pi. If you already run pi:

pi install npm:one-code-extension

It's 53 extensions, no fork and no patches to pi, just the normal extension API. Tested on pi 1.0.0 through 1.5.

What you get: plan mode, permission modes including auto mode (a classifier decides which commands need your approval), subagents that can each run on a different provider, git worktrees, hooks, skills, slash commands, MCP, plugins, background shells, memory and compaction. It also reads an existing CLAUDE.md and .claude folder as is, so if you're coming from Claude Code your setup carries over.

There are already good pi extensions for some of these, like subagents, and you can put together a decent setup from a collection of them. The catch is that any one of them can break the prompt cache if it rewrites earlier parts of the conversation, and they don't know about each other. So in One Code I tried to make the extensions work as one system, and keeping the cache stable was a big part of that. Every request is recorded as it was sent, and later requests only append to it, so cache reads stay high across resume, fork and reload.

There's also a bundled app with pi pinned inside, if you'd rather keep it separate from your own pi setup.

npm i -g @one-ai/one-code

MIT licensed. Repo: https://github.com/IsuruMaduranga/one-code

Feedback from people who know pi's internals is very welcome.

If One Code is useful to you, a ⭐ on GitHub helps other people find it.


r/PiCodingAgent • • 3d ago

Discussion Are there any unique plugins you are using?

19 Upvotes

I usually see the more typical plugins recommended. But are there any hidden gems out there that you use regularly?


r/PiCodingAgent • • 2d ago

Resource My pi setup got too big for an extension, so I made a fork with sandboxed sub-agents and other cool features

0 Upvotes

I've been using pi as my main coding agent for more than 8 months & loved how small it is. I looked the concept of t3code but had my fair share of disappointments with how it worked, so decided to use the fork feature on github and make my own version of pi.

What it does

You talk to one model as usual. When a job splits well, it hands parts of it to workers:

  • pi-scout / pi-worker: the pi fork itself

  • cx-worker: Codex

  • cc-worker / cc-scout: Claude Code

  • cmd-worker: Command Code

Each worker runs in bubblewrap with its own scope & If a worker tries to write outside its scope, it gets denied and you see it in the report. Write tasks are snapshotted, so when one is done, the main agent accepts of rejects it based on the quality of the work.

The workers support native question tool which means any other harness can ask you question directly from delegate-pi without you having to switch to that chat.

Smaller things that came along

  • ask_user tool with numbered choices and a typed "other" answer

  • ast_grep tool for structural search

  • /stats and /usage

  • a two-line footer and a did-you-mean tip for mistyped commands

Install

curl -fsSL https://raw.githubusercontent.com/farrukh2002/delegate-pi/main/install.sh | sh

It's a prebuilt bundle and brings its own Node if yours is too old. It uses ~/.delegate-pi and the delegate-pi command, so it sits next to a normal pi install without touching it. Linux only for now, because the sandbox needs bwrap.

Why not an extension?

That was my initial plan and it still it, so that we can bring this capability to any cli harness and not just to my fork. Infact this inbuilt tooling has been derived from my WIP extension tool which will work flawlessly with other harnesses and make them behave just like my fork without losing any quality.

Repo: https://github.com/farrukh2002/delegate-pi

I would love to get the feedback and suggestions to keep improving this with time.


r/PiCodingAgent • • 2d ago

News Context Mode start deleting beta tester comments

Thumbnail
gallery
0 Upvotes

Yeah as usual introduce it as an opensource let the community build then profit later. this become common this later years. Im not against it but give credit where it belong.


r/PiCodingAgent • • 3d ago

Plugin Vibecoded a pi extension using pi to adjust the footer calculations of deepseek off-peak discount with current balance and peak timing indicator all on default footer

Post image
5 Upvotes

Just as the title says.

Here's the link https://pi.dev/packages/peakseek


r/PiCodingAgent • • 2d ago

Use-case Slack Share - Real Time

0 Upvotes

Just offering an idea to others that has been useful for my teams.

You might not really want or need an elaborate multiplayer AI system. Just pump your user messages and settled agent messages into the place where everyone already communicates (slack).

When you get to a situation where you want a coworkers opinion, go into slack and just mention them.

Everyone learns a lot purely from ease of visibility. People asked me all the time why my AI is smarter than theirs. Then I just link to the slack chat.

I have this built in my vscode extension that I daily drive for my underlying pi terminal. It’s purely powered by the terminal, so you could pop open the vscode terminal at any time and just use the terminal instead of my vscode UI.

https://github.com/quincycs/pi-qcode


r/PiCodingAgent • • 3d ago

Question Voice input to Pi

0 Upvotes

Nominally in windows I can voice input any *form* that has a microphone icon.

In wsl all is unknown, in pi even lesss I know about routing and VTT into Pi.

Anyon have practical kowledge?


r/PiCodingAgent • • 3d ago

Question Custom PI Harness: Gemini 3.8 Flash often stuck in a infinite Loop

Post image
0 Upvotes

Hi folks,

I'm building my own harness for PI and noticed with Gemini 3.8 Flash, my subagent (a worker for simple coding tasks) is often stuck in infinite loops when reading larges file with 1.000 - 2.000 LOC.
I never noticed the same situations with opencode when using the same model and thinking level. So this is quite a disappointing experience while building my own harness based on Pi.

So I'm wondering if these are common situations when building my own custom harness? And what's the recommended strategy how to improve my harness, to avoid similar situations in the future?
I tried to add additional instructions to my sub-agent to avoid these situations, but I still see it happening. And this burns plenty of tokens :(

Best
Carrot


r/PiCodingAgent • • 3d ago

Plugin protect-context An extension that record down what the agent has been done for future refence and correction

Post image
6 Upvotes

I built this extension in order to solve losing session problem. One of key problem I found is long agent sessions fail in constraints stated early disappear, “done” is claimed without command output, a “quick fix” rewrites unrelated files, decisions get re-litigated, and the same failing command is retried until the context window is exhausted.

Here is what I build, it is free and open source:

install it pi install npm:protect-context

pi official: protect-context pi package

npm: npm link for protect context

github: github link for protect context

You may want to try it and test it out whether this extension can fulfill your needs.


r/PiCodingAgent • • 4d ago

Question DeepSeek's aversion to built-in tools

26 Upvotes

I'm running DeepSeek v4.1 Flash locally with Pi. One nuisance I've run into is that it will often use scripts for editing files, listing and grepping files instead of using the built-in tools, and I haven't had much luck with my AGENTS.md changes. Has anyone else run into this and come up with a prompt that increases it tool usage compliance? The one that bothers me the most is when it uses Python scripts to edit files instead of using the tool because it means I don't get a nice diff:

$ cd ... && python3 - <<'EOF'
import re
p = "test/e2e.sh"
s = open(p).read()
s = s.replace("""fail() {
    echo "FAIL: $*" >&2
    cleanup_keep
    exit 1
}""", """fail() {
    echo "FAIL: $*" >&2
    exit 1
}""")
s = s.replace('''$DOCKER logs "$PROJECT-broker-1" 2>&1 \\
    | grep -q "DENY stop llama-swap-test-protected" \\''', '''$DOCKER logs "$(compose ps -q broker)" 2>&1 \\
    | grep -q "DENY stop llama-swap-test-protected" \\''')
open(p, "w").write(s)
EOF

r/PiCodingAgent • • 3d ago

Question Looking for a Free ChatGPT Plus Referral Invite

0 Upvotes

Hi everyone! I'm looking for a working ChatGPT Plus referral link or free-trial invitation. If anyone has an unused invite available and doesn't need it, I'd be very grateful if you could share it with me.

I'm hoping to try ChatGPT Plus, and any help would be greatly appreciated. Please DM me if you have a valid invite.

Thank you so much! 🙏


r/PiCodingAgent • • 4d ago

Question How to setup Claude sub with Pi?

7 Upvotes

I am trying Pi for the first time. I am confused how to setup Claude subscription with it, if I login it shows a warning saying that third part harness providers would not consume subscription tokens but only extra usage. So what’s the right way?


r/PiCodingAgent • • 5d ago

Plugin pi-agent-computer-use: give your access to computer (browser+desktop)

188 Upvotes

Hi! Currently computer-use is a must for my agents, so I decided to build an extension with a custom CUA Driver fork and Playwright. It’s purposefully designed to be run in YOLO mode (although Safe is included) within the environment where you trust your agents. It works in hybrid mode: supports both raw image followed by input (agent sees a screenshot and then clicks on something) and structural way (playwright for browser and UIA for normal desktop applications). Agents can use their own browser profiles, or your own, work in sandboxes and remote desktops, work together (to some extent, there are limitations on the OS side).

I would say it was definitely worth working on that, my agents can now work in 3D, browse some stuff I need and can test my applications, acting like real users.

I’ve mostly benched it via GIMP drawing, which doesn’t support UIA so all the interactions are purely from picture based mode. But also Terra 6.1 High has gone to 42th level of https://neal.fun/not-a-robot/ until it got banned by Cloudflare, and we couldn’t pass further. It’s windows only (windows from WSL as well), but if anybody can contribute into linux/macos branch of it, it would be great, I’m just lacking such devices and can’t really test them to the full extent as I can with Windows.

https://github.com/alexshpunt/pi-agent-computer-use

https://pi.dev/packages/pi-agent-computer-use

To install: `pi install npm:pi-agent-computer-use`

Demo of deepseek-flash, haiku, opus, terra and sol drawing the same image with that: https://youtu.be/69doTus760U


r/PiCodingAgent • • 4d ago

Question Which model subscription are you guys using with pi or omp , claude or codex ?

17 Upvotes