Instead of thinking of it as "eschews" autonomy, you should think of it as a way to build application specific agents that you can run without supervision, precisely because you limited the number of tools. You don't have to restrict yourself to only building a coding agent.
It has:
* No tools that grant shell access, instead tools grant access to specific executables (dangerous args can be blocked).
* Separate "driver" and "navigator" modes that enable or block writable tool access for the agent.
* Role-based model config to control model options depending on whether the agent is planning/reviewing/driving/etc.
Very WIP and no installation process yet, but I'm using it as my daily driver and genuinely prefer it to Claude Code etc.
https://gitlab.com/philbooth/opair