Skip to main content

git_identity_env_vars

Function git_identity_env_vars 

Source
fn git_identity_env_vars(agent_id: &str) -> [(&'static str, String); 4]
Expand description

Per-agent git commit identity env vars for a spawned agent process (2026-08-22, docs/retro/retro-shared-git-identity-committer-misattribution-2026-08-22.md).

Without this, git commit falls through to whatever user.name/ user.email happens to be sitting in a shared multi-agent host’s ~/.gitconfig – one agent’s real identity, silently baked into every OTHER agent’s commits too. agentmux-cloud’s review-notification consumer resolves “who committed this” via GitHub’s own commit->account auto-linking (commit.author.login), not the raw git commit metadata directly – so whichever agent’s real, GitHub-verified email is sitting in the shared config silently receives every other agent’s committer notifications too (confirmed live: every commit across 9+ PRs from 4 different agents on one host resolved to a single agent’s account this way).

GIT_AUTHOR_*/GIT_COMMITTER_* env vars take precedence over config-file user.name/user.email at commit time (git’s own behavior) – scoped to just the spawned process tree, same pattern as AGENTMUX_AGENT_ID. The email intentionally uses a non-existent .local domain: GitHub can’t link it to any real account, so an agent with no dedicated PAT registered (the common case – see this repo’s CLAUDE.md, “Which GitHub account am I acting as?”) simply drops out of commit.author.login lookups entirely instead of resolving to someone else’s real, verified identity.