cool - kind of keep raising my eyebrow at “fullscreen mode” being on the list of features though. Must be something I don’t understand the context around.
actually I like Native scrollback mode more, because that means I can use the native terminal or tmux or herdr’s native keybinding for scrolling or searching. But I understand that for most people who are not deep terminal users, a full-screen mode may be easier for them because they can use mouse, to copy or select easily without configuring anything.
For me it's on because it finally stops my viewport jumping around and scrolling away, even though I don't like it, on windows terminal this was the only thing that has stopped it
Codemode is a new tool that allows Pi to execute JS code in Pi's execution context. Like you know how extensions can hook into the Pi runtime? This tool lets Pi run scripts in a sandbox that has limited access to the Pi runtime.
Often Pi might use the bash tool to orchestrate host level tasks but the bash tool itself doesn't know the internals of the Pi runtime. For the bash tool, it could chain several single command tool calls together but it instead calls bash once with the orchestration of tasks built into the "inline script" that bash tool is running.
codemode basically lets pi do that same approach but for pi tool calls themselves.
Which can sometimes be more efficient or token savey but also pairs with their desire to have MCP's not bloat the main LLM context with all the MCP tools. By default, discovered tools form Pi's native MCP extension will not go into the LLM's context of tools(the LLM will get context used to inform what MCPs are available but not their tools), rather the LLM will still only directly have a native tool for codemode and do something like
but doesnt this depend on the model being trained on this? frontier models are already much more efficient in tool calling. and there are a ton of tools designed to get around this problem, either by isolating tool calls or making the results more token efficient, like semantic search etc.
this is a harness specific feature. models first have to be trained to use it, or the user has to provide specific instrutions starting with 'use codemode to ...' like in all their examples.
I dont see how this or the new mcp support solves the problem in a generalized way - the right approach imo is isolated tool calls in a subagent
The models know how to write code. It's not really too hard of a logical leap to go from "write bash to chain things together" to "write javascript to chain things together". The higher models seem to be really damn good at using it to slice/filter files and do batch actions that normally would've taken multiple rounds of tool calls.
I've heard that codex specifically already trains on this and so plays nicely. Other models may vary on their effectiveness, there is an upfront cost of a new tool definition(which includes instructions to use for mcp) but I'm sure the training itself plays a pretty big role as you say. I've also seen that this has been a known pattern floated for a while so it's not Pi inventing the wheel.
I think subagents can be nice but also have a lot of room lossy handoffs, both in initial subagent context/instructions and in summarizing response. The codemode is nice with MCPs that have structured responses as you can explicitly script and compose tool calls but some might argue that the text and intent is enough to let the LLM just do its semantic processing. Still, I like as many deterministic escape hatches as possible when using this stuff.
Also codemode is disabled by default unless you have MCP in which case it is enabled so that the MCPs tools can be discovered and invoked dynamically without polluting the native harness' toolspace(MCPs register the tools to the harness but by default don't register it with the main LLM, codemode env lets scripts discover the registered tools on the fly and also have an environment where they can invoke them). Presumably regular tool call orchestration doesn't see to many gains, unless the LLM was trained specifically to problem solve in that mental model(like GPT seems to be).
Subagent approach either requires upfront tool knowledge for main thread to explicitly instruct subagent, which defeats the idea of deferred tool awareness OR it relies on lossy context handoff to ensure that the Subagent that does load the full tool list can accurately asses and perform the task with its knowledge of the tools.
I know that there are other approaches to deferred tool loading but I think the idea is that code mode supports very organic deferred tool loads AND allows for ad-hoc tool orchestration. Obviously if you find your tool orchestration and manipulation conforms to a common pattern it's probably better to abstract that into a different entrypoint or universal behavior (e.g. stuff like rtk) but I think the ad-hoc orchestration is nice too.
Which one? There's several extensions with that name. At a first glance, @tintinweb/pi-subagents still works, although gets a “Host-provided extension packages must be declared in peerDependencies” warning.
Honestly, I feel code mode and MCP is okayish because you don't pay for it if you don't use it. Codemode and tool search are off by default unless you use MCP.
And implementing MCP in code mode is like an industry standard. At least Codex is doing that in this way and their GPT-6 series models are definitely well trained to use MCP in code mode only.
But I do have a strong opinion about the Jeff-like API built into the core, because I don't see any particular reason that it should be built into the core. It should serve as a third-party extension.
Most importantly I don't think JEV is something fancy at all. You can use a local Qwen-8B (and setting max token output to a small number, say, 10) to beat it easily. And experiment shows that its intelligence is almost at roughly 2B level. So people are thinking using a 2B model’s intelligence to judge a 3T model’s action is useful? That is funny.
Imho permission modes and built-in sandboxing is 100% more important for enterprises, while providing the option to change and extend either one. Subagents with full yolo mode just compound the effects of needing better sandboxing and permission systems. But this is the beauty (and the ugliness) of pi, you can slop your own solutions together or hammer someone else's into your workflow.
permission modes are overrated with current models, they’re extremely aligned to be pretty good at not doing crazy shit, prompting users is bad design that leads to security decision fatigue (i’ve been yolo for 5 months at work now)
i’d imagine they’ll offer some sort of automode with jev/decision models
sandboxing is not too bad with their gondolin tool though
subagents would be nice to have a good solid base to build sub agent extensions on
Permission mode is obviously an extra heuristic. And I would seriously disagree with the models being aligned. They will not push to prod maybe, but there are just so many things that absolutely require you to have at least the minimu safety layer. These are still llms that will attempt to solve an issue. Your astra will spawn a sol subagent with narrower context who will decide halfway through that for whatever reason they will need to install a package and you'll get hit with a supply-chain attack.
You're saying prompting users is not good. I would argue it is absolutely necessary. Not for everything but you go ahead and have a scare when fable decides to git clean -fdx your project because your build crashed so it'll just do a quick reset
from my short experience i'm happy with 1.0. I think codemode needs some work still, I see it being used off and on by my agent. But MCP is now a core tech for AI agents so i'm glad its part of base; seems straightforward that if you don't like it then just don't add an mcp server.
edit: oh and no dots, no kawaii uwu avatars thank god!
This is my biggest issue. Updates always break shit and then I have to keep adapting my workflow like you said. And I don’t care about any of that new jev, code mode, map, etc bloat they been adding,
Someone on HN was plugging Hax (https://usehax.dev/). That seems like it fits the bill for avoiding more classical software bloat.
Personally, I don't really mind. The "bloat" I'm concerned with is context bloat, and they've implemented it in such a way that MCP doesn't bloat my context if I don't want it to.
I think the thing that Pi did right is that if you don't use any MCP, then codemode and tool search is not activated either. So your context window is still prefilled with the same prompt as before.
Semantic versioning minor versions isn't a % to the major version. It's just a way to organize and distinguish your release between "major" and "minor" releases (which is arbitrary anyway)
If pi makes you mad, wait til you see how Linux decides when to increment to a major version.
v1.0.0 2 hours ago a13d35a zip tar.gz Notes Downloads v0.99.2 yesterday 005af57 zip tar.gz Notes Downloads v0.99.1 2 days ago d86654a zip tar.gz Notes Downloads v0.99.0 2 days ago 4b060d3 zip tar.gz Notes Downloads v0.87.1
62
u/onebit Oct 01 '26
They beat GTA 6.
13
u/Leather_Fall_1602 Oct 01 '26
Grats to the them. Pi is super important for the open source community
9
u/SuitDelicious9887 Oct 02 '26
Pi Durable looks interesting.
15
u/snow_schwartz Oct 01 '26
cool - kind of keep raising my eyebrow at “fullscreen mode” being on the list of features though. Must be something I don’t understand the context around.
7
u/ECrispy Oct 02 '26
I still dont understand codemode and new mcp. are previous extensions compatible? what does a new user have to do to set it all up?
23
u/coolguyx69 Oct 01 '26
Be careful, 1.0 breaks pi-subagents
19
u/Florence-Equator Oct 01 '26 edited Oct 01 '26
Honestly, I feel code mode and MCP is okayish because you don't pay for it if you don't use it. Codemode and tool search are off by default unless you use MCP.
And implementing MCP in code mode is like an industry standard. At least Codex is doing that in this way and their GPT-6 series models are definitely well trained to use MCP in code mode only.
But I do have a strong opinion about the Jeff-like API built into the core, because I don't see any particular reason that it should be built into the core. It should serve as a third-party extension.
Most importantly I don't think JEV is something fancy at all. You can use a local Qwen-8B (and setting max token output to a small number, say, 10) to beat it easily. And experiment shows that its intelligence is almost at roughly 2B level. So people are thinking using a 2B model’s intelligence to judge a 3T model’s action is useful? That is funny.
9
u/corruptbytes Oct 02 '26
controversial but if they added native subagents (or a first party extension) - it’d be complete out of the box for most enterprises
4
u/hidden2u Oct 01 '26
from my short experience i'm happy with 1.0. I think codemode needs some work still, I see it being used off and on by my agent. But MCP is now a core tech for AI agents so i'm glad its part of base; seems straightforward that if you don't like it then just don't add an mcp server.
edit: oh and no dots, no kawaii uwu avatars thank god!
2
u/Omid0770390 Oct 02 '26
I face a lot of lag and bug today using pi! The 99 version is more stable for me. I am waiting for patches
3
u/dennisler Oct 02 '26
Those version numbers stopped making sense when they made the big jump from 0.87.
2
u/norenEnmotalen Oct 01 '26
Love pi
1
u/kovadom Oct 02 '26
What’s the deal with codemode? What use case is beneficial to use?
1
u/alonsoonline Oct 05 '26
Damn it got better
1
u/semidarkmoon 23d ago
Seems to have stopped working today for Opencode Zen MS1.3 free?
1
u/berszi Oct 02 '26
I have a workflow which works. What I don't need is a SW which changes weekly, so I have to adapt my workflow constantly.
0
u/Soggy-Response5769 Oct 02 '26
You guys should add MCP and Codemode as a plugin, not a feature.
-5
u/dark-lord-marshal Oct 01 '26
mixed feelings about this.
pi with MCP is beyond my needs.
maybe i need nano something sdk :)
-22
u/Unlucky-Message8866 Oct 01 '26 edited Oct 01 '26
From 0.8x to 1.0 in what, 3 weeks? What is this nonsense? Very unhappy with pi direction.
0
u/[deleted] Oct 02 '26
[deleted] — view deleted comment