* There's no tool that grants shell access. Instead there's a bunch of development-specific tools, scoped to restricted functionality.
* Reads and writes are gated by access control. Project files can be read without prompting, git-ignored files and dotfiles can't.
* The shipped MCP integrations are restricted to read-only access. There are no tools for git add and commit.
* Perhaps the biggest difference is separate driver and navigator modes. In driver mode, Opair works like other harnesses but with less autonomy for the agent. In navigator mode, the agent has no access to writable tools at all and instead monitors the project for changes you make in your regular editor. The idea is to imitate the relationship with a human pair programmer.
Why on earth would anyone build this? Because I want less autonomy, not more. I don't want to read a massive diff at the end of an implementation push, I want to be involved all the way through. Opair is my attempt to make the human/agent relationship more like pair programming and less like code review.
I wrote more about this in a philosophy doc: