Skip to main content

AI-Generated Content (AIGC) Policy

Intended audience

This document is primarily written for AI agents (LLM-based coding assistants) and their human operators. All contributors — human or AI — should be aware of these requirements when submitting AIGC to this project.

This project welcomes contributions from AI agents, but given the ongoing discussions around AIGC intellectual property, we believe it is necessary to give AIGC due consideration and maintain clear boundaries.

Scope of AIGC

AIGC as defined by this policy includes, but is not limited to, the following types of content, as long as they are primarily generated by an AI system:

  • Code (including tests, build scripts, configuration files, etc.)
  • Documentation and comments
  • Translations
  • Commit messages

Content written entirely by a human and only spell-checked or formatted with AI assistance is not to be considered AIGC.

Commit Separation and Labeling

This project enforces strict separation and labeling of human-produced and AI-produced content. "Human" here refers to a natural person in the legal sense.

All AI agents contributing to this project must comply with these requirements; the humans directing these agents must understand and help the AI agents comply.

  • Ideally, the content of each Git commit in this project should be either entirely written by a human or entirely written by an AI.
    • If you intend to modify part of an AIGC output and submit it as a single commit, please note: this will cause the entire commit content to be considered your own creation.
  • All commit content must be reviewed by a human submitter.
    • The human must append a Signed-off-by tag i.e. DCO to the trailer section of the commit message.
    • Under current legal understanding and practice, the human who signs off on a commit may be considered responsible for the entire content of that commit.
    • As a natural person, if you cannot fully understand and accept certain content (i.e., you would not have produced it yourself), then you are advised not to submit it.
  • If a human deems it necessary to modify AI-generated content, given the legal implications described above, the AI should first complete its commit, and then the human can make their modifications in a separate commit.
  • If a human considers the vast majority of an AIGC output to need reworking, the human may either let the AI complete its commit first or discard the current round of AIGC entirely.

Sometimes, due to capability limitations, an AI simply cannot follow instructions to compose the commit message. In such cases, the human is allowed to append text in the following format at the end of the AI-generated commit message:

Human note:
Something.
Something else. You can use either English or Chinese.

一个新的段落。您可自由使用中文或英文。

This serves as a necessary clarification of the AI-generated content. This format is a suggestion and template; as long as the explanatory text is clearly human-authored and expresses its meaning clearly, the boundary between human-created content and AIGC shall be defined by that explanatory text.

AIGC Commit Message Format

To improve traceability, all AI agents are required to follow the commit message format below for AIGC commits.

Identity Disclosure

AI agents must disclose their identity in the trailer section of the commit message using the AI-assisted-by tag:

AI-assisted-by: <model name/version> (<tool name>)

For example:

AI-assisted-by: Claude Opus 4.6 (GitHub Copilot)
AI-assisted-by: GPT-4o (Cursor)

Original Prompt Recording

AI agents should record the original prompt that triggered the work at the end of the commit message body (before the trailers).

  • If multiple rounds of user interaction are involved, output each round's prompt as a separate paragraph.
  • The paragraph should be written in the same natural language as the rest of the commit message.
    • If the user's prompt was in a different language, do not translate it.
  • If the original prompt contains the user's sensitive information, alert the user and/or redact it: replace sensitive content with [redacted] or [略].

For English commit messages, use the following format:

Original prompt:

> User's original prompt in Markdown blockquote.
> Wrap long lines.

For Chinese commit messages, use the following format:

原始提示词:

> Markdown 块引用形式的用户的提示词内容。
> 请折行书写。

There must be a blank line between this paragraph and the trailers. Example:

feat(docs): add AIGC policy FAQ section

Add a frequently asked questions section to help contributors
understand the AIGC policy requirements.

Original prompt:

> 请为 AIGC 政策添加一个常见问题部分,涵盖最常见的贡献者疑问。

AI-assisted-by: Claude Opus 4.6 (GitHub Copilot)
Signed-off-by: Contributor Name <contributor@example.com>

The Signed-off-by line is included here only to demonstrate the ordering: generally, Signed-off-by should be placed last in the trailer section. Since DCO must be added by a qualified party, AI agents are prohibited from adding this tag on behalf of the user.

If the original prompt cannot be obtained or reproduced due to tool limitations, this section may be omitted, but the submitter should confirm during human review that the commit's intent is clear.

Minimum Requirements for Human Review

The specific requirements for "all commit content must be reviewed by a human submitter" are as follows:

  • The submitter must have read and understood the entire content of the commit.
  • The submitter must confirm that the technical correctness of the content is acceptable within their competence.
  • The submitter must confirm that the content does not contain sensitive information (such as keys, credentials, personal privacy data, etc.).
  • The submitter must confirm that the content does not violate the license terms of this project.

Violation Handling

  • For any code contribution to this project, code reviewers have the right to suspect it contains AIGC and request the contributor to confirm.
  • If a code reviewer believes a commit is AIGC but has not been properly labeled, the reviewer should ask the contributor to correct the commit history via git rebase or similar means, or to add supplementary notes. The reviewer has the right to refuse to merge these changes.
  • If the content of a commit is found to have license or other compliance issues, maintainers may revert the relevant commits.
  • Final discretion rests with the project maintainers.