|
| 1 | +# 🤖 MDAnalysis AI-generated contributions policy 🤖 |
| 2 | + |
| 3 | +### Version: 1.0 (2026-02-03) |
| 4 | +### License: [CC-BY-4.0](https://creativecommons.org/licenses/by/4.0/) |
| 5 | + |
| 6 | +This document defines the [MDAnalysis organization's](https://github.com/MDAnalysis/) policy regarding AI-generated content. This policy applies to all aspects of the MDAnalysis project, including all the GitHub repositories under the organization. |
| 7 | + |
| 8 | +For the purposes of this document, _content_ is defined as any contribution to the MDAnalysis organization, both code and non-code, including but not limited to: |
| 9 | +- Code submitted for inclusion in MDAnalysis, or other organization-owned repositories |
| 10 | +- Documentation of any kind |
| 11 | +- Communication content (e.g. issues, discussions, pull request descriptions, and reviews) |
| 12 | + |
| 13 | +We recognize that the use of AI in open source software raises many difficult questions and acknowledge that views, approaches, and technical capabilities are rapidly changing. |
| 14 | +We invite comments and further discussion (via our [discussion channels](https://www.mdanalysis.org/pages/community/)) and expect to periodically review this policy. |
| 15 | + |
| 16 | +## Policy overview |
| 17 | + |
| 18 | +MDAnalysis does not accept any substantial uses of AI-generated content in contributions. |
| 19 | + |
| 20 | +AI tools may be used in limited cases, for example when it is used for small amounts of AI-assisted code (e.g. autocompletion using copilot, cursor, etc...) |
| 21 | +or for language translation purposes. **Such uses must always be declared.** |
| 22 | + |
| 23 | +## Policy details |
| 24 | + |
| 25 | +### 0. AI usage must always be declared |
| 26 | + |
| 27 | +All contributions must be fully transparent about any AI usage. Failure to disclose AI use (e.g. in pull request description details) |
| 28 | +may be queried by other developers and may be considered non-compliance with this policy. |
| 29 | + |
| 30 | +If we suspect that AI tools were used as part of a contribution, MDAnalysis developers may ask you for clarification. |
| 31 | +Please do not take offense if this happens to you, distinguishing between AI-generated and human-authored content is increasingly difficult! |
| 32 | + |
| 33 | +### 1. Fully generated code is not allowed |
| 34 | + |
| 35 | +Fully AI-generated contributions, such as content generated by prompting a large language model (e.g. claude code or chatgpt) or produced by any agentic AI system are not permitted in MDAnalysis. |
| 36 | + |
| 37 | +Some limited exceptions are described in sections #2 and #3 for integrated development environments (IDEs) and language translation. |
| 38 | + |
| 39 | +### 2. Limited AI assistance exemption: IDEs and autocompletion |
| 40 | + |
| 41 | +AI tools are now so deeply integrated into many modern development environments, and it may be impractical to avoid them entirely. |
| 42 | +We recognise that this is particularly true for modern integrated development environments (IDEs), which may use AI to power features like autocompletion. |
| 43 | + |
| 44 | +In these limited cases of code generation, typically ranging from a single variable to a couple of lines of code, |
| 45 | +AI assitance is deemed acceptable. However, if code generation exceeds minimal, sporadic amounts (e.g. repeated or large multi-line blocks), |
| 46 | +it would be considered fully AI-generated and, as defined in section #1, is not acceptable. |
| 47 | + |
| 48 | +As per section #0, it is your responsibility to report the extent of AI assitance you used. |
| 49 | + |
| 50 | +### 3. Limited AI assistance exemption: language translation |
| 51 | + |
| 52 | +MDAnalysis aims to foster an inclusive environment for all contributors and users. We recognise that language barrier can limit participation |
| 53 | +in open-source projects, particularly for non-native English speakers. |
| 54 | + |
| 55 | +Whilst we prefer you communicate with us in your own words (and languages if needed), we acknowledge that AI-based translation tools may sometimes |
| 56 | +be necessary for communicating in issues / discussions. If such tools are used, we ask you to disclose their use and purpose. |
| 57 | + |
| 58 | +### 4. Contributors are responsible authors and must be aware of, and declare, any derivate work |
| 59 | + |
| 60 | +Contributors are responsible for the content and provenance of every aspect of their contribution, including any design decisions. |
| 61 | +Contributors must be aware of whether their work derives from external sources / codebases and must declare any derivative work. |
| 62 | + |
| 63 | +### 5. Human reviewers are required |
| 64 | + |
| 65 | +All code merged into MDAnalysis repositories must be reviewed by a human reviewer. Instructions / suggestions from human reviewers always take precedence over those of non-human reviewers. |
| 66 | + |
| 67 | +### 6. Consequences for failure to comply to this policy |
| 68 | + |
| 69 | +Any failures to comply with this policy should be reported to the MDAnalysis core developers through |
| 70 | +our [standard communications channels](https://www.mdanalysis.org/pages/community/#ask-questions--get-help) or email to mdanalysis@numfocus.org . |
| 71 | +The core developers may enforce this policy through a range of actions, which may include restricting or banning individuals from future contributions. |
| 72 | + |
| 73 | +There is a zero tolerance policy for intentionally failing to disclose or misrepresenting the extent of AI usage. |
| 74 | + |
| 75 | +## Acknowledgements |
| 76 | + |
| 77 | +We acknowledge the [Kornia AI policy](https://github.com/kornia/kornia/blob/main/AI_POLICY.md) and discussions |
| 78 | +within the [Scientific Python Community](https://discuss.scientific-python.org/t/a-policy-on-generative-ai-assisted-contributions/1702/18) |
| 79 | +for providing guidance and insight in shaping this policy. |
0 commit comments