I love this question, because it's something I've been thinking about a lot for the next evolution of this product. My solution, currently, is that the CLI provides all the guardrails.
All the security and logical primitives are enforced via the CLI's command layout, similar to how it is done with git, and the human is still in the loop for the most critical stuff like initial onboarding, saving secrets, resolving conflicts, running deployments, and performing rotations.
I do eventually want to find safe ways for agents to take over those tasks, and there is a lot to learn from how software factory agents currently work with git. The thing is, even with software factories, the VERSION CONTROL gates are also usually still defined by humans (when to commit, merge, deploy, etc.). Whatever it is, the same level of automation ought to exist for secrets and configuration.
To that end, I have an upcoming MCP that acts as a wrapper for orchestrating sequences of Capy CLI commands (but never the contents of them). In the preliminary MCP implementation there's nothing the agent is actually able to interpret, besides maybe identifying variable names, what the stack looks like, and what services the application likely uses.