git_commit.py in my project is a small script: it reads the staged diff, sends it to claude -p with a system prompt asking for a Conventional Commit message, and prints the result. server.py's MCP tool generate_commit_message does the same thing through a different interface. Both have a system prompt that says, in effect, "no co-author lines, no signatures, no AI references" — but a system prompt is a request, not a guarantee, so both files also carry a regex safety net that strips anything attribution-shaped out of whatever comes back, just in case the model doesn't fully comply.
I've hardened that regex three separate times over the past few weeks. Every single time, the fix went the same direction: the filter was too aggressive and wiped legitimate commit messages that happened to mention "llm" or "claude" in a normal technical sentence — a commit fixing an MCP timeout, a doc update about a Claude Code hook. I never once checked the opposite direction until this week: what attribution phrasings does the filter fail to catch?
The list it was built from
Here's _STRIP_PATTERNS, identical in both git_commit.py and server.py, before this week:
_STRIP_PATTERNS = [






