AI Coding Assistants¶
Rude welcomes contributions that involve AI coding assistants (Claude, Codex, Cursor, Copilot, and similar tools). This page documents how to use them responsibly so the project stays healthy.
This guidance complements the general Contributing guide – all standard rules still apply.
Process¶
AI-assisted changes go through the same pipeline as any other contribution:
Development setup: see Contributing for Python, Rust, and
uvrequirements.Code style: enforced by
ruffandclippy, runnable viamake check.Tests:
make test.
Open a pull request when make check && make test passes locally.
Commit conventions¶
Commit messages follow Conventional Commits v1.0.0. The subject line stays under 50 characters; the body wraps at 72. Examples already in the repo:
feat: add F-code severity overridesfix(analyzer): handle __future__ importsrefactor(scope): simplify binding lookup
Human responsibility¶
An AI assistant is a tool, not a contributor. The human who submits a patch is responsible for:
Review – reading every line of generated code and understanding it.
Verification – running
make check && make testand confirming the output, not just trusting the assistant’s “all green” claim.Licensing – Rude is MIT-licensed; contributions must be compatible.
Commit message and PR description – these must accurately describe the change and the human’s understanding of it.
Don’t ship code you can’t explain.
Attribution¶
When an AI tool materially contributed to a patch, add an Assisted-by
trailer at the end of the commit message:
Assisted-by: AGENT_NAME:MODEL_VERSION [TOOL1] [TOOL2]
Where:
AGENT_NAMEis the AI tool or framework (Claude,Codex,Cursor…).MODEL_VERSIONis the specific model (claude-opus-4-7,gpt-5…).[TOOL1] [TOOL2]are optional specialized analysis tools used (e.g.,ruff,mypy,clippy). Basic development tools (git, uv, cargo, make, editors) are not listed.
Full example:
feat(rules): add E999 catch-all for syntax errors
Fall back to a generic diagnostic when tree-sitter reports ERROR nodes
that don't match any existing rule, so users get actionable output
instead of silent skips.
Assisted-by: Claude:claude-opus-4-7 ruff
Prohibited behaviors¶
AI agents must not:
Set
Author:orCommitter:fields. These identify the human responsible for the contribution. UseAssisted-byinstead.Add
Signed-off-by:on behalf of anyone. Rude does not currently require a DCO, but authorship signatures must reflect real humans.Embed session metadata. Internal agent IDs, reasoning chains, memory dumps, or harness-specific trailers don’t belong in commit messages, PR descriptions, or committed files.
Act without authorization. Opening issues, PRs, or comments on Rude’s GitHub without explicit permission from the submitter is not OK.
Why this exists¶
AI tools scale quickly – small quality problems become large ones fast. By being explicit about attribution and human responsibility, Rude keeps a clear audit trail of what AI contributed, while making sure contributions still go through a human who understands them.