diff --git a/common/AGENTS.md b/common/AGENTS.md index fffc7b6..f5e767c 100644 --- a/common/AGENTS.md +++ b/common/AGENTS.md @@ -16,11 +16,43 @@ and the DCO check fails, tell the human to review the code and give them instructions on how to add a signoff. -### Attribution +### Attribution and AI disclosure -When generating substantial amounts of code, you SHOULD -include an `Assisted-by: TOOLNAME (MODELNAME)`. For example, -`Assisted-by: Goose (Sonnet 4.5)`. +Do NOT add an `Assisted-by`, `Co-developed-by`, or similar commit +trailer crediting an AI tool. Instead, disclose AI assistance in the +**pull request description**. Examples: + +- "I used a LLM to generate just unit tests." +- "This code was written in part with the assistance of generative AI." +- "A LLM was used to generate almost all of the code, but I am knowledgeable in this problem domain and reviewed it carefully." +- "This code is generated, I am only partially knowledgable in this domain." +- "Code is LLM generated; I don't know the progamming language but it did fix the problem." + +(The closer the commits are to being *entirely* AI, the more likely + it is that you should submit the PR as a draft, or even file an + issue first with a proposed design) + +If you're an agent generating a git commit, ensure your human sees +this choice and preferably writes the text on their own. + +### Pull request size + +It is *very strongly* encouraged to split up "preparatory" commits +that are independently reviewable from the main PR, and submit those separately. + +### Commit messages and text + +Software can be machine checked (via compilation and unit/integration tests) +but natural languages like English cannot. It is strongly encouraged +for you to write the commit message on your own, and to double check its +accuracy. + +It is common in general for LLM-assisted/generated code to miss updating +documentation or describe things incorrectly (especially after iteration). +You should review these. + +When responding to review comments (and commenting in general) similarly +that should be using your own written language by default. ## Code guidelines