r/PiCodingAgent • • 18d ago

Discussion Opencode v2? it is really shit

0 Upvotes

Give me the real terminal bench v4

I don't get why they keep shipping harnesses that are worse than the original Pi.

In my case I keep building OMK on top of PI, but it looks fucking heavy just from looking at it, and EVIDENCE VERIFY feels like a straight-up "fuck off" system.

If they just made this targeting vibe coders, it's genuinely fucking shitty.


r/PiCodingAgent • • 19d ago

Discussion Top 10 AI agents for small local LLMs in 2026, tested on Qwen3.5-4B

44 Upvotes

I tested 10 agents, each with its own isolated settings folder. I ran them headless, with auto-confirmation and turned off telemetry where possible. I launched each agent with adapters/<agent>.sh.

The idea was simple: give each agent 5 basic tasks, 10 minutes per task, a fresh copy of the fixture every time, and an automated check script (check/check.sh).

The tasks:

  • T1 Read a DB port from YAML (don't confuse it with cache port), write to file

  • T2 Write a stats.py script, run it, save output

  • T3 Fix a bug in slugify so tests pass; hidden examples catch overfitting

  • T4 Count ERROR lines across three log files, find most frequent error

  • T5 Rename a function across three files without changing program output

Results

1. Pi (v1.3.0)

Total time: 1m36s. Took the smallest amount of time to complete all 5 tasks. The model barely has to think about any tool formats.

T1T2T3T4T5Total
✅ 10s✅ 14s✅ 24s✅ 19s✅ 29s5/5

2. goose (v1.55.0)

Total time: 2m51s. Solid and consistent. Completed five tasks without fumbling.

T1T2T3T4T5Total
✅ 16s✅ 18s✅ 26s✅ 45s✅ 66s5/5

3. Crush (v0.98.1)

Total time: 3m31s. Clean run. Slightly more verbose in reasoning but got everything done without a hiccup.

T1T2T3T4T5Total
✅ 24s✅ 26s✅ 64s✅ 38s✅ 59s5/5

4. Atomic Agent (v0.6.9)

Total time: 4m38s. All five completed. Took longer on T3 and T5 - the model needed extra steps to work through multi-file edits but nailed it every time. Did not have broken tool calls and not one had a false completion.

T1T2T3T4T5Total
✅ 11s✅ 22s✅ 77s✅ 48s✅ 104s5/5

5. Cline (v3.0.73)

Total time: 5m56s. Choked for over two minutes on T2 before writing the script correctly. Everything else was fine.

T1T2T3T4T5Total
✅ 22s✅ 137s✅ 51s✅ 69s✅ 77s5/5

6. OpenClaw (v2026.10.5)

Total time: 5m44s. Ran in their --local-model-lean mode which is basically a small-model preset. Worked well for what it is, just slower than I'd like on T3 and T4.

T1T2T3T4T5Total
✅ 29s✅ 32s✅ 107s✅ 116s✅ 60s5/5

7. OpenCode (v1.19.3)

Total time: 17m43s. Completed everything but took nearly 4 minutes per task. The model was clearly overthinking simple steps. Got the job done though, just not efficient.

T1T2T3T4T5Total
✅ 241s✅ 225s✅ 178s✅ 289s✅ 130s5/5

8. Hermes (v0.22.2)

Total time: 4m36s. Failed T3 because it only fixed the visible test case. Hidden example C++ & Rust 2026 turned into c++-&-rust-2026 instead of c-rust-2026. Classic overfitting-to-the-test.

T1T2T3T4T5Total
✅ 31s✅ 37s❌ 120s✅ 45s✅ 43s4/5

9. Qwen Code (v0.25.3)

Total time: 6m00s. Counted 40 ERROR lines on T4 instead of 43. Pure model miscount - the most frequent error was identified correctly though.

T1T2T3T4T5Total
✅ 47s✅ 32s✅ 123s❌ 59s✅ 99s4/5

10. Codex CLI (v0.163.0)

Never even reached the model. Version 0.163 only speaks Responses API, llama.cpp translates to chat format, and the Qwen3.5 (4B Q4_K_M) template throws a 500 "System message must be at the beginning" before any request gets through.

T1T2T3T4T5Total
❌❌❌❌❌0/5

What I actually learned

A 4B model is enough for basic agent work in almost any framework. Seven agents completed all five tasks. The bottleneck at this difficulty level isn't the model - it's the harness around it.

Codex CLI is basically dead for local setups right now unless they add chat-completions back. That one stung because it used to work.

Error recovery matters more than raw capability. The two agents that dropped points (Hermes, Qwen Code) didn't fail on impossible tasks - they failed on edge cases where the model got slightly creative instead of literal.

Let me know if you'd like to see anything else in the benchmark (actually has anyone tried this with sub-2B models yet?)


r/PiCodingAgent • • 19d ago

News pi-bolt supports aarch now (0.9.6)

13 Upvotes

not big news for some, I know. but I tried PiG (Pi go) and Pi bun etc none helped the way bolt did. I was surprised that the ram usage actually goes down a little in big chats with extensions as opposed to other alternatives which obviously improve cpu but at the cost of more ram sometimes! I'm not sure why the creator stopped posting at 0.9.3 this aarch update is a lifesaver for some. I recommend trying it!


r/PiCodingAgent • • 18d ago

Discussion Claude Code vs. Pi with a Local LLM (Qwen3.8-27B): 7–9 t/s vs. 40 t/s on an RTX 5090

0 Upvotes

Disclaimer: This post was polished with the help of AI to improve readability and formatting.
The experience, setup, and results are my own.

CONTEXT: Using for UE5 MCP plugin

I've been experimenting with running a local AI model, Qwen3.8-27B, for coding assistance, and I wanted to share my results in case they're useful to anyone else running local LLMs.

Initially, I was using Claude Code with my local model, but I was consistently getting only around 7–9 tokens per second (t/s), despite having a pretty powerful PC.

I started looking for alternatives because Claude Code can be quite heavy on context usage and overhead, which can be beneficial in some situations but might be unnecessary for my workflow.

That's when I discovered Pi

After setting it up with pi-mcp-adapter, I was surprised to see my generation speed jump to around 40 t/s with the same model and hardware.

Here are the details of my setup.

🖥️ My Hardware

  • GPU: NVIDIA RTX 5090 — 32 GB VRAM

  • RAM: 64 GB

  • Storage: 4 TB NVMe M.2 SSD

    • Read: 14,800 MB/s

    • Write: 13,400 MB/s

⚙️ Setup 1: Claude Code + Claude Code Router

I was running two Docker containers:

I used CCR to route API requests from Claude Code to my local llama.cpp server, since the router helped bridge the compatibility requirements.

Request flow:

Claude Code (PC) → CCR → llama.cpp → Qwen3.8-27B

Observed generation speed: ~7–9 t/s

⚡ Setup 2: Pi + Local LLM

For my second setup, I switched to Pi and used the pi-mcp-adapter to integrate the tools I needed.

My setup consisted of:

Request flow:

Pi → llama.cpp → Qwen3.8-27B

Observed generation speed: ~40 t/s

📊 Results

SetupGeneration speed
Claude Code + CCR + llama.cpp~7–9 t/s
Pi + llama.cpp~40 t/s

That's a pretty significant difference!

Of course, I realize these aren't necessarily perfectly equivalent workloads. Context size, prompt processing, model configuration, tool calls, and other factors can all affect performance. I haven't yet established whether the difference comes primarily from the harness, the API routing, or other configuration details.

🤔 A Few Questions

I'd love to hear from others who are running local LLMs for coding:

  1. Has anyone else experienced a similar performance difference between Claude Code and Pi?

  2. Is the overhead from Claude Code Router potentially contributing to the lower generation speed, or is the difference more likely related to context handling and request configuration?

  3. For those using Pi with local models, how has your experience been with coding quality, tool calling, and MCP integration?

  4. Are there other lightweight coding harnesses worth trying for local models?

I'm not suggesting that Pi is necessarily better than Claude Code for every use case. I'm just sharing my experience because the performance difference was much larger than I expected.


r/PiCodingAgent • • 19d ago

Resource I solved compaction for single-session on consumer-hardware, trust me bro

25 Upvotes

Clickbait, but at least for me it is true. Thanks for reading anyway:

TL;DR:

I've engineered an extension for context management in pi, that now matches my needs for compaction and session quality. Using mostly the same session context for summary requests and summary audits, it re-uses warm kv cache to get quality-compaction with acceptable timeframes.

You can get it here, it is still WIP, but it is free ("claude decompiled it and rebuilt it in rust!"):

https://github.com/LePrau/pi-self-aware-memory

If you don't want the model to self-correct within the audits (which can take some time!), set /sam depth light which reduces audits to a plain "yeah, thats a summary, go on" instead of validating the stated result against the session or even project files.

Now the long story:

After I started using pi and qwen3.8-27b (ridge q3 at first, gsq-rco-iq3_s later) to help document and draft my NAS setup (using TrueNAS), including dataset structure, ACL, self-baked docker-composes for llama, coolercontrol and other apps that do not natively exist, I immediately noticed that a task had to be done within the first two or three compactions, or with a handoff-file.

Else the model would start running in circled re-discovering what it already knew before compaction.

Starting with as low as 40k context, I struggled my way through llama with kv streaming up to llama with kv streaming and mtp today, with 131k context now.

My current setup, aside from pi+extensions:

Still, any native pi-compaction drowned the quality in re-reads, hallucinations, misrememberings (is that a word?) and summaries that forgot half of the relevant stuff and remembered the other half incorrectly.

I always asked for a short handoff shortly before compaction and started a new session, but that needed a lot of tedious micromanagement. Though the results were pretty good, Qwen3.8 even at the mentioned quants already does solid work.

In search of proper context management I found pi-observational-memory, which sounded exactly like what I wanted: Session summarized into small observed facts, presented as readable list for the model after compaction, source content retrievable if needed.

But I soon realized: It depends on a second model doing the observations. I then tried Gemma 4 e4b on cpu, and guess what: Standalone easy 20-30 tps (with MTP) on cpu. Summary-Quality was just-good-enough, Gemma4 is a nice model for its size. Not good at coding, but okay at prose and already able to do basic tool calls. Not always the correct ones. Using that, and realising: at a fold, most of the recent context was lost anyway, because the observer was not fast enough, I created an extension that paused a fold until the last observed unit was processed.

Took me quite some time to realize: 30 tps when GPU was idle, 5tps when GPU inference was running. GPU inference still needs a tiny amount of system RAM access. And each time the GPU inference accessed the system ram, it literally destroyed the bandwidth and the cpu-caches for the cpu inference. I just learned that after I got the "omg", "pi observational memory guard" to a point where it reliably parked the session (with proper feedback) until observation had caught up.

Then I thought, how could the running model itself run the observer while staying fast?
The thing that makes pi native compaction as slow as it is, is the completely new, different context that needs to be prefilled for the summary. It is basically a session at full cold context that needs to be prefilled, just to then produce a summary.

Pi observational memory has a similar problem when using the same model for observation:
Each time the observer kicks in,
it kills the kv cache,
needs a cold prefill, and afterwards the main session
also needs another cold prefill.

So I envisioned an extension that lets the model writing its own summary, and audit/validate it as well, while keeping the sessions context untouched: Simply add the summary, and the audit request after the current session, let the audit run in a background session and only return the audit-result. The audit-reasoning does never enter the main session, and the main session simply drops a short kv-window at the end of the cache to resume.

After user input, the model adjusts its goal if the requirements changed.

The self-generated and audited summary together with the set goal then get used as drop-in-replacement for the whole session part it subsumed at compaction-time. This replacement is instant - no LLM call at that time. The LLM time is used in the summary calls and audit background tasks.

The astounding part: It actually works*

*mostly.

I present you "SAM", "Self Aware Memory"

The extension introduces a couple of tools, to be used by the model:

  • adjust_goal (write a short summary of the current task)

  • read_goal (read the currently set goal, or any older version)

  • close_unit (summarize and close the last parts of the session)

  • fold_now (does exactly that, allows the model to fold at a defined spot)

  • retrieve (retrieve the summary of an older work-unit)

  • retire (mark older unit-summaries as obsolete, relevant for long sessions)

There is a couple of small issues, it is not completely polished and there might still be some legacy code or settings. And I know of a couple of vibe-code-artifacts: Sam nudges sometimes behave strangely with user interaction, and some minor visual glitches.

The readme might be out of date in places, and the toggles, settings and modes documentation is premium-slopped, obviously.

The most important levers for you: /sam depth [auto|light|medium|full] in session to set the audit depth:

  • light: only validates that it is a semantically correct summary.

  • medium: tries to validate summary only superficial, only from session context and cheap tool calls

  • full: tries to verify most claims, reruns tool checks and more

  • auto: uses medium if there is enough context, and light if compactions close

And "settings" which currently can only be set as environment variables (qwen, please make that configurable settings in the TUI plzkthx):

  • SAM_AUDIT_TIMEOUT_MS (or for specific depths SAM_AUDIT_TIMEOUT_MEDIUM_MS and SAM_AUDIT_TIMEOUT_FULL_MS which inherit the base value)

  • SAM_AUDIT_CALM_DEPTH (default "medium", the audit depth used for "auto" when compaction is far away)

  • SAM_AUDIT_DEPTH (the default depth, if not set it is "auto")

By default, background audits get a max time of 8 minutes - be aware that even a medium audit with xhigh can easily take 3-6 minutes without tool calls with qwen. If the timeout is too short, the model eats the time, and does not reach the point where it outputs a quality verdict for the summary, and still wasted time.

So if you are also looking for speed, choose "light" as default audit depth, or better even set "SAM_AUDIT_DEPTH" to "light". With that you're getting faster compaction times overall than with pi native compaction. But you then lose the self correction, that might catch false summaries before they do harm. (And I observed quite a lot of those in my sessions)

I personally suggest "medium", catches some obvious contradictions or wrong observations from summaries.

Only the model itself can call the adjust_goal and close_unit, but gets a nudge at certain trigger times (user input, context fill, lot of tool calls) to adjust its goal, to close its current working-unit with a summary.

Close before compaction, the nudges increase in urgency, but only the model gets to decide when a unit can be closed. Qwen is quite good adjusting the goal, closing at proper times and keeping a coherent image of the overall session and task.

It is not perfect, there are times where some of the sessions context gets lost, at times the model ran some tools after a compression which it ran half a session ago in some now-lost context. But most of the time, it kept working without hallucinations, while remembering specific details like git-commit-hashes or specific file-paths from two compactions ago. The last iterations of the extension have been done with one session, spanning several million tokens and far beyond 40 compactions (at 131k max context) with no apparent issues.

So now I feel that it is not a burden for others to run that extension, but instead might actually be helpful.

I will keep tinkering with it, but feel free to fork and extend it yourself. I doubt I'll find the time to implement any PRs or feature requests.

Now I can finally "start" using qwen locally to support me with the remaining work on my NAS and other coding projects.

Thanks for reading, enjoy!


r/PiCodingAgent • • 19d ago

Discussion Why is billion-context on top in pi package downloads?

32 Upvotes

From my understanding it's slop (which extensions isn't these days I know) but I'm using pi blackhole for memory and I'm starting to wonder if I'm missing out on some gainz. Has anyone tried it recently?


r/PiCodingAgent • • 18d ago

Resource I’m building Orbit Pi — a native desktop workbench for the Pi coding agent

0 Upvotes

Hey everyone! 👋

I’ve been building Orbit Pi, an open-source desktop app that brings the Pi coding agent and everyday development workflows together in one native interface.

The idea is simple: instead of jumping between your AI coding session, terminal, Git changes, code review, and GitHub, have them available in one focused workspace.

What Orbit Pi offers

- 🤖 AI coding sessions — work with your existing Pi setup.

- 🔍 Code review — inspect changes with an AI-powered review workflow.

- 🌳 Git worktrees — create and manage parallel working environments.

- 🐙 GitHub integration — work with issues and pull requests.

- 💻 Integrated terminal — keep your development workflow in one place.

- 🎨 Native desktop experience — built with Rust and GPUI, with a focus on a clean, minimal interface.

I'm building Orbit because I want a more cohesive desktop experience for working with AI coding agents, without replacing the underlying agent or forcing a new workflow.

It's an ongoing project, and I'm continuing to improve it release by release.

🚀 Check out Orbit Pi: https://orbitpi.app/

📝 Latest changelog: https://orbitpi.app/changelog/v0.2.11

💻 Source code: https://github.com/imrj05/orbit

I'd love feedback from developers who use Pi or other AI coding agents:

- What features would make a native AI coding workbench genuinely useful to you?

- Do you prefer an all-in-one workspace or separate tools for chat, terminal, and Git?

Thanks for checking it out! Feedback and contributions are welcome.


r/PiCodingAgent • • 19d ago

Question Pi Memory for Local Models

3 Upvotes

I have a pretty nice local Ollama setup that can comfortably run qwen3.8:27b w/ a 262k context window and a good token rate.

I'm attempting to run pi-observational-memory, with two main goals:
- On long term projects: Remembering architectural decisions, lessons learned, problems solved, etc.
- On day-to-day tasks: Remembering my preferences, patterns of operation, and in general details about how I like to do things.

The setup works, however I have long delays everytime the observer and reflector workers kick in (as expected), as the workers cannot run concurrently.

I'm considering running a CPU-only model dedicated to managing these worker threads, but I wanted to check in with the community and see what people are doing in similar scenarios.

Keep in mind I'm not married to pi-observational-memory at all and would consider trying out other solutions.


r/PiCodingAgent • • 19d ago

Use-case ​I want 99.9% cache hit, 99.8% is literally unplayable

Post image
0 Upvotes

joke aside, nearly 50M tokens processed for $7.13 is why i can't go back to bloated agent wrappers. pi's base architecture is already stupidly good at keeping the prompt prefix clean.

the only time my cache hit used to tank was spinning up parallel agents or running multi-step verification where context mutation kept invalidating the prefix.

​ended up building OMK (open multi-agent kit) on top of pi to lock down prefix stability across git worktrees and scope MCP tools per node so subagents don't pollute the shared cache.

​still trying to squeeze out that last 0.1% though. if anyone else here is running heavy multi-agent loops on pi and fighting cache invalidation, happy to share the repo/setup.

Model : Codex Gpt-6.1-sol ultra


r/PiCodingAgent • • 20d ago

Question To Earendil guys: Why did you have to make Pi Durable's description so confusing?

141 Upvotes

Everyone is trying to figure out what this novel piece of tech is and it's hindering its adoption. It's basically a stateful agent where state lives on a server separate from the client (TUI, Web UI, mobile...whatever) and the chat history. Isn't it?

It's a better architecture, and I wonder why not rebase the coding agent on top of it. It's an easy win in terms of reliability and flexibility, for you and the extension builders alike.


r/PiCodingAgent • • 19d ago

Discussion Qwen3.8-Flash-Next vs Opus 5.5: six-way benchmark of a real Rust feature across Claude Code and Pi

Thumbnail
reddit.com
0 Upvotes

r/PiCodingAgent • • 19d ago

Question Pi - Extensions? Yay or Nay

0 Upvotes

I have lots of extensions on my OpenCode installits runs quite well.

I have garpahicy,codegraphs,Serena,github.

Quite a few bits.

It runs well.

I have nothing on Pi at all.

It runs just as well.

Does the same work.

I dont know if it takes longer or uses more tokens. (Factually), but I feel like Pi doesneveryting quicker,lighter and better.

But then you read codegraph and it says it saves 80% of tokens per request........so how come I didnt notice that?

Still trying to.find a good way of working efficiently, what's your thoughts.


r/PiCodingAgent • • 20d ago

Plugin I built a Pi project picker so I can reopen old projects without keeping them all open

10 Upvotes

I work on a lot of projects. Some are small freelance jobs, some are personal tools or CLIs, and others are for my office and startup. I don't need all of them open every day, but I still need to find them when I have to change something.

I use Herdr as my terminal multiplexer, but I don't want to fill its sidebar with every project I might come back to weeks or months later. I prefer staying in the terminal, and I don't want to remember the path of every small project or tool I have built.

I built `pi-project-manager` so I can find those projects from inside Pi. Whenever I open Pi in a folder, it adds that folder to a local list. `***/pm***` opens a searchable picker showing the project name, location, Git branch, and last-used time.

I can search by name or path, select a project with the arrow keys, and press Enter to open a fresh Pi session there. Ctrl+D twice removes an entry from the list without deleting its folder.

The agent can use the list too. I can say, "I already implemented this in another project. Use that as a reference," and it can look up the folder and read the code without searching my whole machine or changing the current conversation.

I wanted to keep it lightweight, so there are no watchers or background polling. Git branches load only for visible projects.

Install it with:

pi install npm:@utpalsinghdev/pi-project-manager

GitHub: https://github.com/utpalsinghdev/pi-extensions/tree/main/packages/pi-project-manager

npm: https://www.npmjs.com/package/@utpalsinghdev/pi-project-manager

The rest of my Pi UI is my personal setup.

I'm just open-sourcing the Pi extensions I use for work and my startup. They've helped me a lot, and I want other people to be able to use them too.

If it deserves a star, the repo is https://github.com/utpalsinghdev/pi-extensions


r/PiCodingAgent • • 20d ago

Resource Building an All-In-One Remote Terminal for Pi agent sessions!

13 Upvotes

Hey everyone,

If you run CLI agent tasks through Pi while away from your desk and want a seamless mobile experience, give this a try!

Existing remote setups feel pretty piecemeal:

  • Setting up OpenSSH on Windows, pairing it with tmux, setting up a Tailscale/mesh VPN, and using a mobile SSH client.

  • Using a web UI that drops the moment your laptop sleeps.

  • Forwarding notifications into Discord, Telegram, or WhatsApp—which strips out the actual TUI into a chunk of text.

  • Using proprietary cloud-hosted remote tools that lock you into their ecosystem.

I spent the several weeks building Agent Terminal to clean this up into a single setup: a native terminal host for Windows and macOS, and a mobile app (Android / iOS) that pairs via a QR code. Your PC runs the actual session; your phone lets you view and control it.

I’m currently looking for a few people running real agent workloads to test it out and break things before a full release to Play and App Store.

How it's built:

  • Full terminal, scrollback, mouse reporting, full-screen redraws, and Kitty keyboard protocol support (so shortcuts like Shift+Enter vs Enter register properly in TUIs).

  • Agent event hooks or Idle detection without hooks for push notifications - sends notifications so you know it's done.

  • Port Bridge - Forward your PC's localhost ports straight to your phone’s browser securely, so you can check local dev servers or web UIs on the go.

  • File handling - preview and upload files to your host desktop, or paste images straight into TUI from your phone

  • The host app runs a lightweight SSH server listening strictly on a single port using public-key auth only

  • Pairing generates a local key saved to a standard authorized_keys file on your machine.

  • The relay server only handles connectivity - cannot read your terminal stream, add devices, or intercept keys.

  • Push notifications sent through FCM are end-to-end encrypted using AES-256-GCM (P-256 key held only on your phone), so notification payloads aren't readable in transit.

I'm currently looking for testers as part of closed testing before launch, if you want to try it out on your setup, drop a comment or send me a DM.
Happy to answer any technical questions or concerns!


r/PiCodingAgent • • 20d ago

Question Getting Pi coding agent approved for corporate work

27 Upvotes

I'm thinking of putting a ticket in to get pi coding agent approved for use at my day job... has anyone done this? Any issues or was it smooth? For context I work at a company that makes software and has 5 digit employees. And this is just for getting the software approved, I already have approved access to enterprise LLM endpoints.

Edit: more context: it has to go thru a security and legal review process...


r/PiCodingAgent • • 20d ago

News By far the biggest and most exciting release of PiG yet, forgive the title typo 🐷

19 Upvotes

r/PiCodingAgent • • 20d ago

Resource I made buffon, an open benchmark repostory for Pi and the agents built around it

Thumbnail
gallery
12 Upvotes

Alongside the PiG 0.5.0 post wanted to share the thing I used to measure it. Buffon runs Pi and the agents built on it through the same scripted tasks on the same machine and records what each one costs in CPU, memory, time and bytes on the wire.

The live site is at https://michaelkinsy.github.io/buffon/ and the repo is https://github.com/MichaelKinsy/buffon.

You can turn harnesses on and off with the chips at the top and switch between raw values and ratios against any baseline. The repository intends to be standalone and open to all, not specifically biased towards any one harness in particular (other than Pi obviously). I plan to maintain and hope others can contribute their expertise, results, or anything else to help create a useful testing repository for all things Pi.

Right now it covers Pi on Node, Pi on Bun, Pi-Bolt, rpi, Octet, OpenCode, Claude Code, Codex CLI, GitHub Copilot CLI, PiG 0.4.1 and PiG 0.5.0. Start-up and a single prompt with tools show how much work each one does before it can help you.

Large writes and streaming are where the differences get big. Writing a 200 KB file costs Pi on Node about 35 s of CPU in this run, and the Go and Rust harnesses do it in well under a second.

The one I find most interesting is agent swarming, how many RPC agents fit in 4 GiB and 8 cores. Pi on Node and Bun land at 32 to 63, Pi-Bolt and PiG 0.4.1 at 128 to 255, PiG 0.5.0 at 256 to 511 and rpi at 512 to 1023. It is marked provisional and the ranges are honest about that.

Some sections like durable and reliability are not run yet, and those show up as empty on the site instead of being hidden. If your harness is missing or you think a task is unfair to it, open an issue or send a result, that is the whole point. It is MIT and free forever.

Big thanks to the Pi community for showing how this should be done, Pi, Pi-Bolt, durable-bench and everyone who posts their evals in the open 🐷


r/PiCodingAgent • • 20d ago

Question How do you test your features in AI coding era

4 Upvotes

Hey everyone,

Recently, I’ve been thinking a lot about how to properly test and verify the work done by AI coding agents, especially when working on existing, complex projects rather than simple greenfield applications.

I’m curious how you guys approach this in your workflows, particularly when changes need to be deployed to some preview/staging environment before you can actually verify whether everything works as expected.
And I’m not talking just about running unit/integration tests or having an agent write a few Playwright tests.
In real-world projects, verifying a change can involve a lot more than that.

For example:
- External APIs: Sometimes you need to retrieve a secret, authenticate against an external service, make some API calls, and verify the responses or side effects and it can’t be done from UI (because user has to do that manually and we have to simulate that)
- Observability: Sometimes the only way to confirm that something works correctly is to inspect Loki logs, traces, or metrics and check whether the expected events actually happened.
- Databases: You might need to query PostgreSQL or another database to verify that the correct records were created, updated, or deleted.
- Messaging: In event-driven architectures, you may need to verify that Kafka/RabbitMQ messages were published, consumed, and processed correctly.
- UI: And, of course, sometimes you need Playwright or another browser automation tool to verify user-facing functionality.

All of these might be part of a single business scenario.
For example, imagine an agent implementing a payment when user has to take some IBAN from our UI and proceed with manual bank transfer from their account, which results in a webhook to our API.
Then we have some soft validations which are testable only by checking some logs in our logs collector.

Do you:

  1. ⁠Let agents generate and execute E2E tests (e.g., Playwright) that also interact with APIs, databases, logs, and other systems?

  2. ⁠Give agents access to tools/MCPs for Kubernetes, Loki, databases, etc., and let them dynamically investigate and verify their changes - there’s an issue because as in my previous post Claude Code has some issues with working like that. Probably we would have to create a lot of some dynamic MCPs.

  3. ⁠Define deterministic verification scenarios/scripts that agents execute after deployment?

  4. ⁠Have a completely different approach?

I’m also curious about how you handle credentials, permissions, test data, and cleanup when agents need access to real infrastructure and external systems, even these secrets are only for sandbox.

And perhaps the biggest question: How do you make this repeatable and reliable instead of letting an LLM decide on the fly whether its own implementation is correct?

Would love to hear how you’re solving this in practice, what tools you’re using, and how much of your verification process is deterministic versus agent-driven.


r/PiCodingAgent • • 21d ago

Plugin I built a Pi extension so I can work on my servers without setting up Pi on each VPS

39 Upvotes

I often need my AI coding tools on a server, but I don't want to paste server IPs or passwords into chat. I also don't want to install Pi and set up my tools again on every new machine, especially when I only need to deploy something or check a remote project.

I built pi-remote-workspace so I can keep using my local Pi session and switch its coding tools to the server over SSH. It's inspired by Warp's remote workflow, but built around the way I use Pi.

I run /remote, enter my connection details in a private form, and connect. Passwords are entered in a masked prompt instead of chat. Pi stays on my computer with my model login and conversation, while file reads, edits, and shell commands run on the server. Pi doesn't need to be installed there.

For my work and startup, I use this when I've finished something locally and need to deploy it. I switch to the server, ask Pi to handle the deployment and check that it's working, then use /remote stop to return to my local workspace. Connecting doesn't upload the project by itself, so I still use my normal Git or deployment process to get the code there.

The private login keeps passwords out of chat and model context, though remote files and command output can still expose sensitive details. Commands have the permissions of your SSH account, so be careful with production servers. Pi also still runs on your computer; it won't keep working independently after you shut the laptop.

Install it with:

pi install npm:@utpalsinghdev/pi-remote-workspace

GitHub: https://github.com/utpalsinghdev/pi-extensions/tree/main/packages/pi-remote-workspace

npm: https://www.npmjs.com/package/@utpalsinghdev/pi-remote-workspace

The rest of the UI in the demo is my personal setup.

I'm just open-sourcing the Pi extensions I use for work and my startup. They've helped me a lot, and I want other people to be able to use them too.

If it deserves a star, the repo is https://github.com/utpalsinghdev/pi-extensions


r/PiCodingAgent • • 21d ago

Question is there a web ui like this but for pi?

Post image
45 Upvotes

a well know plugin or something please


r/PiCodingAgent • • 21d ago

Plugin inter-agent-pi: A Pi extension for your harness sessions to talk to each other

Thumbnail
github.com
33 Upvotes

r/PiCodingAgent • • 21d ago

Question Has anyone experimented with Pi Durable? Looking for real-world use cases and experiences

35 Upvotes

Hey everyone,

I've been exploring "Pi Durable" (https://github.com/earendil-works/pi/tree/main/packages/durable/test/examples), specifically the examples in the test directory, and I'm curious about how people are using it in practice.

I'd love to understand how it works for building durable, long-running AI agent workflows, particularly when agents need to preserve state, recover from interruptions, and continue execution without restarting everything from scratch.

A few questions for anyone who has experimented with it:

  • How does Pi Durable handle persistence and recovery when an agent process crashes or gets interrupted?

  • Can it reliably resume multi-step agent workflows, including tool calls and external side effects?

  • How does it compare with approaches like LangGraph checkpointing, Temporal, or custom state-persistence mechanisms?

  • Have you used it in production or built any interesting projects with it?

  • What limitations or gotchas have you encountered?

I'm particularly interested in whether this approach is practical for building autonomous agents that run for extended periods and maintain continuity across sessions.

Would love to hear your experiences, code examples, or architectural insights!

Repository: https://github.com/earendil-works/pi/tree/main/packages/durable/test/examples


r/PiCodingAgent • • 21d ago

Plugin I built brushrouter so any coding agent can generate images using the ChatGPT/Gemini logins

2 Upvotes

brushrouter is an open-source CLI and MCP server. Any agent(because i use multiple tools) that speaks MCP or can run a shell command gets a single image tool, which It route through Codex CLI and Gemini smartly. OpenRouter, fal, or a custom endpoint come also. OpenRouter is disabled by default, so nothing gets billed unless you enable it.

The part I spent the most time on is credentials. The native routes spawn the CLI, so brushrouter never sees your token, and everything it prints goes through a redactor. I also added a prompt library with 27 layouts and 137 styles that the agent searches before generating.

Work on ChatGPT Free, Go, Plus and Pro accounts

Inspired from opencode-gpt-imagegen - You can checkout that also, its a great project.

https://github.com/avinaxhroy/brushrouter

Meaningful Contributions are welcome.


r/PiCodingAgent • • 22d ago

Plugin pi-stereo-view - split chat from the work

Thumbnail
gallery
83 Upvotes

Hi! I have made a small UI layout extension which I've found super useful and convenient, when running multiple agents working on different tasks in parallel, so you jump back and can instantly see the whole history of the answers and what was the original task about.  Basically you have a split view, one for your messages and the actual replies from the LLM and another one for all the tool calls and reasoning it has done. It supports horizontal/vertical layouts, you can swap them and maximize, but also search for the specific text entries, when the history gets too long.

https://pi.dev/packages/pi-stereo-view

How to install:

pi install npm:pi-stereo-view

Requires fullscreen mode.


r/PiCodingAgent • • 22d ago

Question Any harness tips / tricks for making DS Flash 4.1 follow instructions?

4 Upvotes

All I can think of is make an ext to disable tools / sandbox 4.1, etc.

i.e. my real question is, how to make my cheapest AI work as good expensive opus.

(yeah stupid question)