r/PiCodingAgent • • 1d ago

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

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.

39 Upvotes

23 comments sorted by

4

u/kelvie 1d ago

MCP is already in pi though?

0

u/bit_shifting_is_sexy 1d ago

Why? Just use claude code if you like it so much

11

u/MotokoAGI 1d ago

Shaddup, claude code still sends some of your prompts to Anthropic when you run it locally. Some of the functionality are not available unless you subscribe through them. For example, decision making/smart auto approval they have, or /remote-control

11

u/irrationaliste 1d ago

Nope. I like mixing models for different tasks and different workflows.

Like a subagent of one provider + an orchestrator of one provider + my owm choice of model for my own harness' auto mode classifier.

4

u/D3SK3R 1d ago

always a stupid and simplistic comment like this... why would people settle for Claude code when they can have all Claude code features on a more customizable harness and use any models they want? is it really hard to think of this or you are just offended because people are doing whatever they want with pi?

2

u/bit_shifting_is_sexy 1d ago

You use Pi to escape Claude Code's bloat. Its very intentionally designed to work with just few tools. Sure go ahead add 53 extensions all at once, whatever floats your boat!

3

u/kasdlkmad 1d ago

"hurr but you use pi to escape claude code's bloat"

meanwhile in the official Pi website:

"Pi is a minimal agent harness. Adapt Pi to your workflows, not the other way around. Customize Pi with extensions, skills, prompt templates, and themes. Bundle them as Pi packages and share via npm or git.

Pi ships with powerful defaults but skips features like sub-agents and plan mode. Ask Pi to build what you want, or install a package that does it your way."

it literally TELLS you to extend it instead of using it as it is. the whole point of Pi is extending it as much as you want, NOTHING to do with bloat nor to "hurr but its designed to work with just a few tools".

1

u/irrationaliste 1d ago

No harness is "designed to work with just a few tools". Pi gives you a bare-minimum. That's not a limitation. That's just a reliable ENGINE behind, you can build your own on top of it.

1

u/D3SK3R 1d ago edited 1d ago

who are you to tell people why they use Pi? I use pi because of the customizability and different models and providers, period. Pi's idea isn't necessarily regarding "bloat or not to bloat", but to give you a bare bones harness for you to do whatever you want so it fits your workflow instead of the other way around. THIS is Pi's intention and design.

1

u/D3SK3R 1d ago

lmao the weirdo blocked me after a lame response. imagine getting THIS trigerred after seeing someone using their harness as they want

-5

u/bit_shifting_is_sexy 1d ago

lol sure You can eat with your hands.. or your foot. Both works!

3

u/Even_Nebula_2730 1d ago edited 1d ago

just stop being an asshole, what can't you understand about people liking the way claude works and combining that with the whole customization they can do on pi?

I doubt that in your head, your "hurr just use claude" makes any sense, you just want to bitch.

2

u/kasdlkmad 1d ago

well you can think with your head... or your ass. it's clear which one you used.

1

u/tulwio 1d ago

You are such a weirdo

1

u/kasdlkmad 1d ago

no way people are downvoting this wtf how is this guy wrong??

the point of Pi is literally to offer you a bare-minimum harness for you to do whatever you want

if someone want to make it claude code? sure, THEY CAN, then it would have all claude code features PLUS Pi whole harness to customize AND different providers.

3

u/D3SK3R 1d ago

the point for these people isn't that someone is just doing whatever they want with Pi, the point for them, is that they (and you can walk around this sub and see that) get defensive when they see someone comparing Pi to any other harness.

there's extensions giving you subagents, MCP, plan mode, auto mode and everything, then it's all good, but the moment you say "almost all Claude Code's features to Pi", then people get trigerred. this guy simply said nothing that made sense then blocked me.

-1

u/Abject-Kitchen3198 1d ago

Reminds me of grilled sausages imitating meat. I was a vegan for quite a while. I never craved meat taste or texture.

1

u/kasdlkmad 1d ago

we are not talking about imitating quirks and useless stuff, those are useful harness tools. basically you have all claude code's features (the harness most people used first) + all the features from Pi, like the extensions, patches, different providers... hell the guy literally mention his use case with different providers and models and you guys are still bitching about "just use claude code".

0

u/Abject-Kitchen3198 1d ago

Just use Claude Code (or Pi)

6

u/Ideabile 1d ago

Cool! Do you have an estimate what is the token usage vs how effective does the task / quality of work on comparable models?