Skip to content

Commits without AI trailers

Commits should look like yours. agent-skills uses three independent layers, so one failing does not matter.

commit and task write messages in the project’s convention, from .tasks/workflow.md or detected from your own recent commits, and never add trailers: no Co-Authored-By, no “Generated with”, no agent links or emoji signatures. They commit only after you say OK, stage only the listed files, and never push, merge, rebase or force unless you ask in that conversation.

Terminal window
agent-skills config attribution off # ~/.claude/settings.json
agent-skills config attribution off --project . # this project's .claude/settings.json
agent-skills config attribution status
agent-skills config attribution on # undo

It sets "attribution": { "commit": "", "pr": "" }, which hides the commit trailer and the pull request footer, and the older "includeCoAuthoredBy": false for earlier Claude Code versions. Other keys are kept, a backup is written before the first change, and invalid JSON is never overwritten.

Terminal window
cd ~/code/shop
agent-skills hooks install
agent-skills hooks status
agent-skills hooks uninstall

The commit-msg hook removes:

  • Co-authored-by: trailers. All of them by default; to keep human co-authors, run git config agent-skills.keepHumanCoauthors true, and only AI ones are removed.
  • Footers such as “Generated with Claude Code”, “Generated by GitHub Copilot” or “Made with Cursor”. A “generated, made or created with” line is removed only when it names an AI tool, so “Generated with protoc” stays.

It never touches anything else: the subject, the body, Signed-off-by, comment lines and everything below the scissors line of git commit -v stay byte for byte, line endings included.

  • Your existing commit-msg hook is kept and still runs after this one; uninstalling restores it.
  • In repositories that use husky, lefthook or another core.hooksPath, the installer does not take over that folder. It prints one line to add to your own hook: node .git/hooks/agent-skills-commit-msg.cjs "$1".
  • The hook needs node on PATH; without it, the hook skips itself instead of blocking commits.
  • Hooks are per repository and are not committed. Install it in each clone.

Skribly Agent has the same hook built in: Code & git → Hook without AI trailers.

Terminal window
git log --format='%h %s%n%b' | grep -inE 'co-authored-by|generated with' | head

Rewriting published history is a team decision; agent-skills never does it.