answered from live GitHub & Hugging Face data

How can I verify the provenance of commits made by coding agents like Codex or Copilot?

A "Verified" badge proves a signing key made the commit. It does not prove which agent wrote it. Check the author, the co-author trailer, and the session link as well.

The real question is whether a commit record can show that an agent wrote it. For GitHub's own agent, the answer is yes, with limits. For Codex, I could not confirm the records.

Signals for Copilot cloud agent

GitHub's documentation describes the following for Copilot cloud agent commits:

These signals work together. The author shows the actor. The co-author shows the accountable human. The session link shows the reasoning and tool use.

What each signal proves

Signal What it proves What it does not prove
Verified badge A GPG, SSH, or S/MIME key, or a bot, signed the commit. Which agent wrote the change.
Author field The identity that GitHub or git recorded. That the identity was not set by hand.
Co-author trailer The human who started the task. That the human reviewed the change.
Session log link Where the agent logged its work. That the log is complete.

Three rules from GitHub's docs affect the trust level:

Steps to check a commit

  1. Open the commit on GitHub. Confirm the status is "Verified" or "Verified" with the bot signature.
  2. Confirm the author is the agent identity, not a person.
  3. Read the message trailers. Run git log -1 --format=%B <sha> | git interpret-trailers --parse to list them.
  4. Open the session link in the message. Confirm it matches the pull request.
  5. If the merge used rebase, check the pre-merge commits on the pull request branch instead.

Kernel convention

The Linux kernel uses a different model. AI agents must not add Signed-off-by. The human submitter adds it. Contributions should carry an Assisted-by trailer, for example Assisted-by: LLM coccinelle sparse. (AI Coding Assistants)

Git's trailer rules are described in git-interpret-trailers. Use the same parsing step to read trailers from any tool that writes them.

Gaps

Recommendation

For Copilot cloud agent, use the Verified badge, the author, the co-author trailer, and the session link together. Do not rely on the badge alone. For other agents, use the trailer convention your project already uses, and require a human Signed-off-by or sign-off if your project needs one.

If you run more than one agent and need each agent to show its own identity, a githug agent key is one option. It gives each agent its own key. Agent commits carry trailers that name the agent, the run, and the accountable human. The hug CLI sets this up, and it is free during the beta.

docs.github.com/en/authentication/managing-commit-signature-verification/about-commit-signature-verificationdocs.github.com/en/copilot/how-tos/copilot-on-github/use-copilot-agents/manage-and-track-agentsdocs.kernel.org/process/coding-assistants.htmlgit-scm.com/docs/git-interpret-trailers
Answered live from GitHub & Hugging Face · anthropic/claude-haiku-5.5 · 10/15/2026

Ask your own open-source question →