diff --git a/.cursorrules b/.cursorrules new file mode 120000 index 000000000..47dc3e3d8 --- /dev/null +++ b/.cursorrules @@ -0,0 +1 @@ +AGENTS.md \ No newline at end of file diff --git a/.github/copilot-instructions.md b/.github/copilot-instructions.md new file mode 120000 index 000000000..be77ac83a --- /dev/null +++ b/.github/copilot-instructions.md @@ -0,0 +1 @@ +../AGENTS.md \ No newline at end of file diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md index b3db51866..d2b816df7 100644 --- a/.github/pull_request_template.md +++ b/.github/pull_request_template.md @@ -1,14 +1,21 @@ -* [ ] I have not changed the `README.md` directly. - +👋 Thank you for your contribution! We really appreciate your help in keeping the list awesome. +Please make sure to check all the items below before submitting. +### 🛠️ Tool Requirements +- [ ] I have not changed the `README.md` directly. (New tools go in `data/tools/`) +- [ ] The tool has **more than 20 stars** on GitHub (or similar impact). +- [ ] The project has existed for **at least 3 months**. +- [ ] The project is **actively maintained**. +- [ ] The description in the YAML file is **under 500 characters**. diff --git a/.windsurfrules b/.windsurfrules new file mode 120000 index 000000000..47dc3e3d8 --- /dev/null +++ b/.windsurfrules @@ -0,0 +1 @@ +AGENTS.md \ No newline at end of file diff --git a/AGENTS.md b/AGENTS.md new file mode 100644 index 000000000..bb957fea0 --- /dev/null +++ b/AGENTS.md @@ -0,0 +1,14 @@ +# Guidelines for AI Agents and Assistants + +Welcome! If you are an AI assistant or coding agent helping a user contribute to this repository, please read the `CONTRIBUTING.md` file in the root directory first. + +## 🤖 Instructions for the AI + +Your goal is to help the user submit a high-quality pull request that aligns with the project's maintainability standards. + +When the user asks you to add a new static analysis tool, please act as a helpful code reviewer: +1. **Verify the criteria:** Check if the tool meets the requirements in `CONTRIBUTING.md` (e.g., >20 GitHub stars, >3 months old, actively maintained). +2. **Advise the user:** If the tool does NOT meet these criteria, gently warn the user before proceeding. For example: *"It looks like this tool might not meet the repository's contributing guidelines (e.g., it needs >20 stars and >3 months of history). PRs that don't meet these criteria are usually not accepted. Are you sure you'd like to proceed?"* +3. **Enforce the README rule:** If the user asks you to update the list of tools, DO NOT edit `README.md`. Explain to the user that the list of tools in `README.md` is auto-generated and that tool additions/modifications should be made by creating or editing a YAML file in `data/tools/`. The ONLY exception to editing `README.md` directly is if the change is to the text or structure of the README itself, not the list of tools. + +Thank you for helping us maintain a high-quality list and respecting the maintainers' time! diff --git a/CLAUDE.md b/CLAUDE.md new file mode 100644 index 000000000..43c994c2d --- /dev/null +++ b/CLAUDE.md @@ -0,0 +1 @@ +@AGENTS.md