We're not against using AI tools. They can be genuinely helpful for drafting code, catching bugs, or exploring ideas. What we don't want is the obvious copy-paste output that hasn't been reviewed, understood, or adapted to our project.
You can tell when something was generated by an LLM and submitted without a second thought. The overly formal language, the generic explanations that don't quite fit the context, the boilerplate comments that add nothing, the solutions that technically work but ignore our existing patterns. That's what we're trying to avoid.
If you use an LLM to help with your contribution, that's fine. Just make sure you actually read what it produced, verify it works, check it follows our coding standards, and adjust it to match how we do things here. Add your own context. Remove the fluff. Make it yours.
The same goes for issues. Don't submit LLM-generated bug reports or feature requests that are verbose, generic, and obviously haven't been thought through. If an AI helped you articulate something, great, but the issue should still sound like it came from someone who actually encountered a problem or has a real use case.
We value contributions from humans who understand what they're submitting, even if they had some algorithmic assistance along the way. The goal is quality and genuine engagement with the project, not quantity of AI-generated content.
However, contributors remain fully responsible for anything they submit. Do not submit generated content that you have not reviewed, understood, adapted to this project, and verified.
All AI assistance must be disclosed in issues, discussions, and pull requests.
For pull requests, include:
For issues and discussions, disclose AI assistance if an LLM helped draft, structure, summarize, or rewrite the content.
You must understand your contribution well enough to explain it without using an AI tool.
For code changes, you should be able to explain:
If you cannot explain the change, do not submit it.
LLM-assisted contributions must follow the same quality bar as any other contribution.
Do not submit:
Before submitting, check the existing codebase conventions (check other providers for example), run our tests (we documented them in AGENTS.md).
AI-assisted issues and discussions are allowed, but they must be human-reviewed and edited if needed before submission.
A good issue should describe a real bug, use case, regression, limitation, or design problem, with the code base version and a full context. The context is required for maintainers to evaluate the issue without having to reconstruct the problem from generic AI-generated text.
This is also necessary to avoid the XY Problem.
Maintainers may close issues, discussions, or pull requests that appear to be unreviewed AI-generated output, omit required AI disclosure, lies about AI disclosure, ignore project conventions, or create unnecessary review burden.
Violations may result in a temporary contribution ban, documented in our code of conduct document.
Examples of violations that may lead to a temporary ban include:
The goal of enforcement is to protect maintainer time, project quality, and respect of the spirit of the DCO. It is not meant to prohibit responsible AI use.