4 ms·
I’m going to go against the grain and say that Pi is a little too minimal by default. The emacs comparison is interesting, but default Pi is like emacs that can
by mft_ 2mo ago
I’m going to go against the grain and say that Pi is a little too minimal by default. The emacs comparison is interesting, but default Pi is like emacs that can load files but you’ve got to extend it manually to save or search within a file.
I’d argue that there’s a minimal set of functions that a coding harness needs to just enable a model to get stuff done, and they shouldn’t be an extra effort to set up.
(Oh-my-pi exists for those of a similar persuasion.)
- v3gas 2mo agoWhat is that set of functions for you?
- mft_ 2mo agoI can't offer a definitive list. But some/all of web access, web search, sub-agents, plan, goals, looping, and maybe a to-do list. I'd suggest the default should be anything that makes the model more efficient or effective to a reasonable current level.
- newtwilly 2mo agoI disagree on plan and todo-list, which seem relatively not needed to me. No comment on goals/looping, which I don't have much experience with. To me it's great how minimal the system prompt and tool set is, and I doubt those features are worth the tokens for every model. (Who knows if they improve performance for SOTA models, and they probably harm performance for small local models.) I would add "better sandbox" support, which I think should be included out of the box. Not having a very simple way to get out of "yolo" mode is kinda crazy. Sure, there are plugins, but they do have some issues. pi-bash-approval is good, but manual approval plus allowlist is a "bad" way to run coding agents. The "best" way in my current opinion, is where commands run by default in a sandbox, but commands can be ran unsandboxed as needed, requiring approval or allow-list in that case. Cursor was pretty good at this (when I used it). For example I don't want to configure my sandbox with access to docker, which would present easy jailbreaks, but I do want to allowlist certain docker commands or approve them to run on my host as needed. pi-sandbox is good at allowing me to configure sandbox access, but this feature where somethings can run unsandboxed is missing. I write more about this and about (hacky, but productive enough) workaround here: https://github.com/carderne/pi-sandbox/issues/50 https://github.com/carderne/pi-sandbox/issues/50
- nfRfqX5n 2mo agoAre you sure those tools make the model more efficient?
- mft_ 2mo agoNo. But: web access, web search --> basically essential at this point plan, goals, looping --> necessary if this is how you work, and working like this is probably (arguably?) more efficient to-do list --> IME seems to help efficiency with local agents if they utilise it, but this is totally subjective sub-agents --> who knows
- talloaktrees 2mo agothe thing is about some of these things, like sub-agents, is that any implementation of sub-agents is going to be extremely opinionated, so it would never make sense to be in pi out of the box.