Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ for your topic of interest. You can also use the search function in the top-left
organization/how_to_contribute
organization/areas
organization/pull_requests/index
organization/general_rules_and_guidelines

.. toctree::
:hidden:
Expand Down
37 changes: 37 additions & 0 deletions organization/general_rules_and_guidelines.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
General rules and guidelines
============================

This page contains guidelines relevant for contributing to any area of Godot.

When contributing to any particular area, please also refer to its respective guidelines.

Code of conduct
---------------

When you contribute to Godot, we expect that you respect our `Code of Conduct <https://godotengine.org/code-of-conduct/>`__.

Contributing with AI and large language models
----------------------------------------------

.. note:: When this page refers to "AI" it means any LLM/generative
AI model like ChatGPT, Claude, Grok, etc., or any other
models that fulfill the same role.

The use of AI to contribute to Godot is discouraged.
We acknowledge that AI can be useful, but we are convinced that human effort results in better and more relevant
contributions.

If you use AI to assist with your contribution, you are required to:

- Understand and verify any of its solutions.
- If you don't understand the solution, do not submit it.
- Proofread and edit anything it generates.
- Alternatively, it would be better to let AI proofread something you created *on your own*.
- Disclose how and how much you used AI for your contribution.
- In particular, you must disclose if you used AI to write part of your contribution or issue/pull request description.
- Using translation software for text that you originally wrote is acceptable for issues and pull requests.

As a rule of thumb, only submit code that you fully understand and are prepared to explain to a maintainer. Maintainers
are spending their personal time reviewing your code, it is your job to ensure that the code you submit is well-tested
and functional. Please be respectful of their time and only submit code that you have put thought and effort into.
Contributions made entirely by AI are prohibited.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Contributions made entirely by AI are prohibited.
As a rule of thumb, only submit code that you fully understand and are prepared to explain to a maintainer. Maintainers are spending their personal time reviewing your code, it is your job to ensure that the code you submit is well-tested and functional. Please be respectful of their time and only submit code that you have put thought and effort into. Contributions made entirely by AI are prohibited.

I want to follow up the strict rules with a more general re-statement that clarifies why we don't want people to just dump fully AI authored code.

I am tempted to add something like "I don't want to bother reviewing code that you didn't bother writing" But I think that is a little to snarky for this sort of text.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this is a good way to say that but professionally and politely

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"Prohibited" itself is an excessively strong word. We don't often ban users for their low-quality submissions, nor we have the authority to prevent them from submitting them in the first place (which is what "prohibit" implies in my opinion).

Copy link
Member Author

@Ivorforce Ivorforce Oct 28, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Generally I would agree, but in this case I think it may be appropriate. We don't want users setting up AI agents with the task of "Look through the Godot source code and submit fixes for bugs as PRs".

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I agree with Ivor here. Generally "prohibit" is much too strong of a word. But in this case we need to be extremely firm or else we might as well say nothing at all.

Language like "we encourage you not to submit PRs made entirely by AI" is practically useless.

Importantly, we aren't saying you can't submit a PR with some AI generated code. What is prohibited are PRs that are made entirely by AI without being validated

Perhaps an acceptable compromise would be:

"Contributions made entirely by AI without careful human testing and validation are prohibited."

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If the human is testing and validating, that wouldn't be entirely AI authored anymore, right? If the improvement is simple, that's already more work than what the AI "put in", and if it's complex, it's doomed to fail anyway 😅