A workbench without repositories could end up with no git identity, and nothing
said so. The container started, git ran, and the first commit failed with
“Please tell me who you are”, usually inside an agent that had been told to
commit its work, where it reads like the agent’s fault.
Put GIT_USER_NAME and GIT_USER_EMAIL in monoceros-config.env once, and
every workbench you build from then on has them, whether it clones anything or
not. A single workbench that should commit under a different name gets them in
its own acme.env. Neither needs an entry in the yml. A name and an address are
personal data, the env files are gitignored, and the yml is the part you share.
Removing them works the same way. Take the identity out of the file you put it
in and apply. The container no longer has one, and monoceros check reports
that. It sounds obvious, and it did not work before: the identity was also read
back from the file apply writes inside the container, so it survived the
removal of everything that declared it. Details on
Git and repos.
The three OpenCode roles use this. When a plan
scaffolds a new project, its first step is now git init plus a .gitignore,
so the implementer can commit each round and the reviewer reads a diff instead
of every file in full. In a measured run that cut the review from 18 minutes to
under two. A project that was already there is left alone.