Monorepo for Aesthetic.Computer aesthetic.computer
4
fork

Configure Feed

Select the types of activity you want to include in your feed.

aa-bridge: set committer identity to aa-bridge on spawned claude

Author stays as whatever the cwd's git config says (@jeffrey), but
the committer is now aa-bridge <aa@aesthetic.computer> on every
commit made through the bridge. Standard "authored-by-X,
committed-by-Y" pattern — trivially filterable via
`git log --committer=aa-bridge`, visible in `--pretty=fuller` and
in the GitHub UI. Overridable via AA_GIT_COMMITTER_NAME / _EMAIL.

Also exports AA_BRIDGE=1 so downstream tools (hooks, scripts) can
detect the context.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

+15 -1
+15 -1
help/bridge/aa-bridge.mjs
··· 150 150 } 151 151 152 152 // ───────── claude spawn ───────── 153 + // 154 + // Git attribution: commits made through this bridge keep the *author* as 155 + // whatever the cwd's git config says (@jeffrey), but set the *committer* 156 + // to the aa-bridge endpoint. This preserves the standard 157 + // "authored-by-X, committed-by-Y" semantics, and makes these commits 158 + // trivially filterable via `git log --committer=aa-bridge`. 159 + const COMMITTER_NAME = process.env.AA_GIT_COMMITTER_NAME || "aa-bridge"; 160 + const COMMITTER_EMAIL = process.env.AA_GIT_COMMITTER_EMAIL || "aa@aesthetic.computer"; 161 + 153 162 function spawnClaude(message, sessionId) { 154 163 const args = [ 155 164 "--print", ··· 168 177 args.push(message); 169 178 return spawn(CLAUDE_BIN, args, { 170 179 cwd: WORK_DIR, 171 - env: { ...process.env }, 180 + env: { 181 + ...process.env, 182 + AA_BRIDGE: "1", 183 + GIT_COMMITTER_NAME: COMMITTER_NAME, 184 + GIT_COMMITTER_EMAIL: COMMITTER_EMAIL, 185 + }, 172 186 stdio: ["ignore", "pipe", "pipe"], 173 187 }); 174 188 }