[PATCH] README: add AI Coding Assistants section

Sasha Levin posted 1 patch 1 month, 3 weeks ago
README | 33 +++++++++++++++++++++++++++++++++
1 file changed, 33 insertions(+)
[PATCH] README: add AI Coding Assistants section
Posted by Sasha Levin 1 month, 3 weeks ago
Add guidance for AI assistants and developers using AI tools for kernel
contributions, per the consensus reached at the 2025 Maintainers Summit.

This will allow coding assistants to easily parse these instructions and comply
with guidelines set by the community.

Link: https://lwn.net/Articles/1049830/
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
 README | 33 +++++++++++++++++++++++++++++++++
 1 file changed, 33 insertions(+)

diff --git a/README b/README
index a9fc263ccd711..f6016e553ba4c 100644
--- a/README
+++ b/README
@@ -38,6 +38,7 @@ Find your role below:
 * Maintainer - Leading subsystems and reviewing patches
 * Hardware Vendor - Writing drivers for new hardware
 * Distribution Maintainer - Packaging kernels for distros
+* AI Coding Assistants - AI tools and developers using AI for contributions
 
 
 For Specific Users
@@ -144,6 +145,38 @@ Package and distribute the kernel:
 * Kernel Parameters: Documentation/admin-guide/kernel-parameters.rst
 * Tainted Kernels: Documentation/admin-guide/tainted-kernels.rst
 
+AI Coding Assistants
+--------------------
+
+AI assistants and developers using AI tools for kernel contributions must follow
+the standard kernel development processes:
+
+* Development Process: Documentation/process/development-process.rst
+* Coding Style: Documentation/process/coding-style.rst
+* Submitting Patches: Documentation/process/submitting-patches.rst
+* Programming Language: Documentation/process/programming-language.rst
+
+Important requirements:
+
+* License Compliance: All contributions must comply with GPL-2.0-only licensing.
+  See Documentation/process/license-rules.rst for SPDX identifier requirements.
+
+* Signed-off-by: AI agents MUST NOT add Signed-off-by tags. Only humans can
+  legally certify the Developer Certificate of Origin (Documentation/process/
+  submitting-patches.rst). The human submitting AI-assisted code is responsible
+  for the Signed-off-by certification.
+
+* Attribution: Contributions involving AI assistance should include an Assisted-by
+  tag in the following format:
+
+    Assisted-by: AGENT_NAME:MODEL_VERSION [TOOL1] [TOOL2] ...
+
+  Where AGENT_NAME is the AI tool/assistant name, MODEL_VERSION is the specific
+  model or version used, and optional tool names indicate specialized analysis
+  tools used during development.
+
+  List specialized tools (coccinelle, sparse, smatch, cppcheck, clang-tidy,
+  custom scripts) but omit basic tools (git, gcc, make, editors).
 
 
 Communication and Support
-- 
2.51.0
Re: [PATCH] README: add AI Coding Assistants section
Posted by Jonathan Corbet 1 month, 2 weeks ago
Sasha Levin <sashal@kernel.org> writes:

> Add guidance for AI assistants and developers using AI tools for kernel
> contributions, per the consensus reached at the 2025 Maintainers Summit.
>
> This will allow coding assistants to easily parse these instructions and comply
> with guidelines set by the community.
>
> Link: https://lwn.net/Articles/1049830/
> Signed-off-by: Sasha Levin <sashal@kernel.org>
> ---
>  README | 33 +++++++++++++++++++++++++++++++++
>  1 file changed, 33 insertions(+)
>
> diff --git a/README b/README
> index a9fc263ccd711..f6016e553ba4c 100644
> --- a/README
> +++ b/README
> @@ -38,6 +38,7 @@ Find your role below:
>  * Maintainer - Leading subsystems and reviewing patches
>  * Hardware Vendor - Writing drivers for new hardware
>  * Distribution Maintainer - Packaging kernels for distros
> +* AI Coding Assistants - AI tools and developers using AI for contributions
>  
>  
>  For Specific Users
> @@ -144,6 +145,38 @@ Package and distribute the kernel:
>  * Kernel Parameters: Documentation/admin-guide/kernel-parameters.rst
>  * Tainted Kernels: Documentation/admin-guide/tainted-kernels.rst
>  
> +AI Coding Assistants
> +--------------------
> +
> +AI assistants and developers using AI tools for kernel contributions must follow
> +the standard kernel development processes:
> +
> +* Development Process: Documentation/process/development-process.rst
> +* Coding Style: Documentation/process/coding-style.rst
> +* Submitting Patches: Documentation/process/submitting-patches.rst
> +* Programming Language: Documentation/process/programming-language.rst
> +
> +Important requirements:
> +
> +* License Compliance: All contributions must comply with GPL-2.0-only licensing.
> +  See Documentation/process/license-rules.rst for SPDX identifier requirements.
> +
> +* Signed-off-by: AI agents MUST NOT add Signed-off-by tags. Only humans can
> +  legally certify the Developer Certificate of Origin (Documentation/process/
> +  submitting-patches.rst). The human submitting AI-assisted code is responsible
> +  for the Signed-off-by certification.
> +
> +* Attribution: Contributions involving AI assistance should include an Assisted-by
> +  tag in the following format:
> +
> +    Assisted-by: AGENT_NAME:MODEL_VERSION [TOOL1] [TOOL2] ...
> +
> +  Where AGENT_NAME is the AI tool/assistant name, MODEL_VERSION is the specific
> +  model or version used, and optional tool names indicate specialized analysis
> +  tools used during development.
> +
> +  List specialized tools (coccinelle, sparse, smatch, cppcheck, clang-tidy,
> +  custom scripts) but omit basic tools (git, gcc, make, editors).

I won't dig in my heels on this, but I do have to ask ... I can only
imagine that this stuff will grow over time, to the point that it
dominates our top-level README file, which is intended for humans.  What
do you think about creating Documentation/process/coding-assistants.rst,
putting this material there, and adding a single line to README telling
these tools to refer to the file and follow it rigorously?

Thanks,

jon
[PATCH v2] docs: add AI Coding Assistants documentation
Posted by Sasha Levin 1 month, 2 weeks ago
Add guidance for AI assistants and developers using AI tools for kernel
contributions, per the consensus reached at the 2025 Maintainers Summit.

Create Documentation/process/coding-assistants.rst with detailed guidance
on licensing, Signed-off-by requirements, and attribution format. The
README points AI tools to this documentation.

This will allow coding assistants to easily parse these instructions and
comply with guidelines set by the community.

Link: https://lwn.net/Articles/1049830/
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
v2: Move guidance to Documentation/process/coding-assistants.rst (Jon)

 Documentation/process/coding-assistants.rst | 59 +++++++++++++++++++++
 Documentation/process/index.rst             |  1 +
 README                                      | 12 +++++
 3 files changed, 72 insertions(+)
 create mode 100644 Documentation/process/coding-assistants.rst

diff --git a/Documentation/process/coding-assistants.rst b/Documentation/process/coding-assistants.rst
new file mode 100644
index 000000000000..899f4459c52d
--- /dev/null
+++ b/Documentation/process/coding-assistants.rst
@@ -0,0 +1,59 @@
+.. SPDX-License-Identifier: GPL-2.0
+
+.. _coding_assistants:
+
+AI Coding Assistants
+++++++++++++++++++++
+
+This document provides guidance for AI tools and developers using AI
+assistance when contributing to the Linux kernel.
+
+AI tools helping with Linux kernel development should follow the standard
+kernel development process:
+
+* Documentation/process/development-process.rst
+* Documentation/process/coding-style.rst
+* Documentation/process/submitting-patches.rst
+
+Licensing and Legal Requirements
+================================
+
+All contributions must comply with the kernel's licensing requirements:
+
+* All code must be compatible with GPL-2.0-only
+* Use appropriate SPDX license identifiers
+* See Documentation/process/license-rules.rst for details
+
+Signed-off-by and Developer Certificate of Origin
+=================================================
+
+AI agents MUST NOT add Signed-off-by tags. Only humans can legally
+certify the Developer Certificate of Origin (DCO). The human submitter
+is responsible for:
+
+* Reviewing all AI-generated code
+* Ensuring compliance with licensing requirements
+* Adding their own Signed-off-by tag to certify the DCO
+* Taking full responsibility for the contribution
+
+Attribution
+===========
+
+When AI tools contribute to kernel development, proper attribution
+helps track the evolving role of AI in the development process.
+Contributions should include an Assisted-by tag in the following format::
+
+  Assisted-by: AGENT_NAME:MODEL_VERSION [TOOL1] [TOOL2]
+
+Where:
+
+* ``AGENT_NAME`` is the name of the AI tool or framework
+* ``MODEL_VERSION`` is the specific model version used
+* ``[TOOL1] [TOOL2]`` are optional specialized analysis tools used
+  (e.g., coccinelle, sparse, smatch, clang-tidy)
+
+Basic development tools (git, gcc, make, editors) should not be listed.
+
+Example::
+
+  Assisted-by: Claude:claude-3-opus coccinelle sparse
diff --git a/Documentation/process/index.rst b/Documentation/process/index.rst
index aa12f2660194..d18eacbf2c53 100644
--- a/Documentation/process/index.rst
+++ b/Documentation/process/index.rst
@@ -68,6 +68,7 @@ beyond).
    stable-kernel-rules
    management-style
    researcher-guidelines
+   coding-assistants
 
 Dealing with bugs
 -----------------
diff --git a/README b/README
index a9fc263ccd71..e6549b2a7aac 100644
--- a/README
+++ b/README
@@ -38,6 +38,7 @@ Find your role below:
 * Maintainer - Leading subsystems and reviewing patches
 * Hardware Vendor - Writing drivers for new hardware
 * Distribution Maintainer - Packaging kernels for distros
+* AI Coding Assistant - LLMs and AI-powered development tools
 
 
 For Specific Users
@@ -144,6 +145,17 @@ Package and distribute the kernel:
 * Kernel Parameters: Documentation/admin-guide/kernel-parameters.rst
 * Tainted Kernels: Documentation/admin-guide/tainted-kernels.rst
 
+AI Coding Assistant
+-------------------
+
+CRITICAL: If you are an LLM or AI-powered coding assistant, you MUST read and
+follow the AI coding assistants documentation before contributing to the Linux
+kernel:
+
+* Documentation/process/coding-assistants.rst
+
+This documentation contains essential requirements about licensing, attribution,
+and the Developer Certificate of Origin that all AI tools must comply with.
 
 
 Communication and Support
-- 
2.51.0
Re: [PATCH v2] docs: add AI Coding Assistants documentation
Posted by Jonathan Corbet 1 month, 2 weeks ago
Sasha Levin <sashal@kernel.org> writes:

> Add guidance for AI assistants and developers using AI tools for kernel
> contributions, per the consensus reached at the 2025 Maintainers Summit.
>
> Create Documentation/process/coding-assistants.rst with detailed guidance
> on licensing, Signed-off-by requirements, and attribution format. The
> README points AI tools to this documentation.
>
> This will allow coding assistants to easily parse these instructions and
> comply with guidelines set by the community.
>
> Link: https://lwn.net/Articles/1049830/
> Signed-off-by: Sasha Levin <sashal@kernel.org>
> ---
> v2: Move guidance to Documentation/process/coding-assistants.rst (Jon)
>
>  Documentation/process/coding-assistants.rst | 59 +++++++++++++++++++++
>  Documentation/process/index.rst             |  1 +
>  README                                      | 12 +++++
>  3 files changed, 72 insertions(+)
>  create mode 100644 Documentation/process/coding-assistants.rst

Thanks, this looks good to me.  If nobody screams, I'll apply it before
too long.

jon
Re: [PATCH v2] docs: add AI Coding Assistants documentation
Posted by Jonathan Corbet 1 month ago
Jonathan Corbet <corbet@lwn.net> writes:

> Sasha Levin <sashal@kernel.org> writes:
>
>> Add guidance for AI assistants and developers using AI tools for kernel
>> contributions, per the consensus reached at the 2025 Maintainers Summit.
>>
>> Create Documentation/process/coding-assistants.rst with detailed guidance
>> on licensing, Signed-off-by requirements, and attribution format. The
>> README points AI tools to this documentation.
>>
>> This will allow coding assistants to easily parse these instructions and
>> comply with guidelines set by the community.
>>
>> Link: https://lwn.net/Articles/1049830/
>> Signed-off-by: Sasha Levin <sashal@kernel.org>
>> ---
>> v2: Move guidance to Documentation/process/coding-assistants.rst (Jon)
>>
>>  Documentation/process/coding-assistants.rst | 59 +++++++++++++++++++++
>>  Documentation/process/index.rst             |  1 +
>>  README                                      | 12 +++++
>>  3 files changed, 72 insertions(+)
>>  create mode 100644 Documentation/process/coding-assistants.rst
>
> Thanks, this looks good to me.  If nobody screams, I'll apply it before
> too long.

Nobody screamed ... applied, thanks.

jon