bandicot

A safe door for online clients, and Versions from a shell

Web and phone clients now reach only the methods their token opens, and other agents and scripts can read and restore Versions with bandicot vcs.

Engine

Web and phone clients and online agents reach your Mac's engine through the bridge, and the bridge now checks every request before it passes. A read-only token opens what reads. A separate token is needed for anything that changes Bandicot. The shell, files outside the project, secrets, your account and permissions are never served through it, whatever the token. A refused request gets an answer that names the method, so a client can say why.

Every method the engine serves is sorted into one of those doors, and a test fails if a new one is added without a door.

bandicot vcs gives other agents, CLIs and scripts the project's Versions from a terminal: status, log, diff, show, describe, restore and undo. It prints plain text by default and JSON with --json. Restore and undo show what would change first, and change files only when run again with --yes.