This document aligns with the OpenJS Foundation AI Coding Assistants Policy.
Tools should never replace human judgment, regardless of whether they are powered by AI.
Node.js requires contributors to understand and take full responsibility for every change they propose. The answer to "Why is X an improvement?" can never be "I'm not sure. The AI did it."
If AI tools assisted in generating a contribution, acknowledge that honestly. Regardless of how much code is generated by AI, disclosure does not serve as a disclaimer of responsibility.
Be aware that the mention of for-profit trademarks or commercial brands in
commit messages, which are part of the code base, can be abused for
profit-driven marketing. If the disclosure involves for-profit trademarks or
commercial brands, it's recommended to either anonymize the branding (e.g. say
a frontier reasoning model, a closed-source coding agent instead of
<brand>), or only mention the for-profit brand/trademark in the PR
description, but not in the commit message, unless the message would not have
made sense without mentioning the specific brand/trademark. These
recommendations only apply to for-profit tools/models, not any non-profit ones.
Pull requests that contain AI-generated code the contributor has not personally understood, tested, and verified waste collaborator time and will be subject to closure without additional review. Contributors who repeatedly submit such changes, show no understanding of the project or its processes, or are dishonest about the use of automated assistance may be blocked from further contributions.
Pull requests must not be opened by automated tooling, unless specifically approved in advance by the project. To request approval, either open an issue in nodejs/admin, or if the automation can be done in the form of a GitHub workflow, submit a pull request to add the workflow and use the usual pull request review process to seek consensus.
Contributors may use AI tools to assist with contributions, but such tools never replace human judgment.
When using AI as a coding assistant:
-
Understand the codebase first. Do not skip familiarizing yourself with the relevant subsystem. Always verify analysis generated by tools against the actual source code with human judgement.
-
Own every line you submit. You are responsible for all code in your pull request, regardless of how it was created. The submitted changes must satisfy the project's Developer's Certificate of Origin and licensing requirements. Be prepared to explain any change in detail during review.
-
Keep the commits logical. The commit message guidelines and commit squashing guidelines must be followed regardless of what tool is used in the pull request.
-
Test thoroughly. Existing tests should not be removed or modified without human verification. It is crucial to verify, with human judgement, the correctness of new tests against the intended behavior of the feature being tested, independently of how the implementation happens to behave.
-
Do not disappear. If you open a PR, follow it through. Respond to feedback and iterate until the work lands or is explicitly closed. If you can no longer pursue it, close the PR. Stalled PRs block progress.
-
Do not use AI to claim "good first issue" tasks. These issues exist to help new contributors learn the codebase and processes hands-on.
-
Keep the comments useful. Verify with human judgement that the comments are necessary and accurate. Remove comments that simply restate what the code does. Add comments only where the logic is non-obvious.
Node.js values concise, precise communication that respects collaborator and contributor time.
- Do not paste messages generated entirely by AI in pull requests, issues, or the project's communication channels. Such communication may be removed in accordance to the Node.js moderation policy.
- Verify claims about the code with human judgement before using them in communications. Results from AI tools should only be treated as hypothesis. Link to actual code, documentation and specifications as source of truth.
- Grammar and spell-check tools are acceptable when they improve clarity and conciseness.