feat: add AI-facing documentation#5340
Conversation
✅ Deploy Preview for asyncapi-website ready!Built without sensitive environment variables
To edit notification comments on pull requests, go to your Netlify project configuration. |
📝 WalkthroughWalkthroughAdds a new repository-root Changes
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~4 minutes Poem
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 2
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@AGENTS.md`:
- Line 36: Replace the incorrect possessive "its" in the contribution guideline
sentence "Open an issue first and get it approved before starting any PR, unless
its a typo or obvious fix" with the contraction "it's" so the line reads "Open
an issue first and get it approved before starting any PR, unless it's a typo or
obvious fix"; update this exact sentence in AGENTS.md to fix the grammar typo.
- Around line 17-32: The fenced code block containing the project directory
listing (the block starting with ``` and lines like "pages/", "components/",
".github/") is missing a language tag which triggers markdownlint MD040; update
the opening fence to include a language (e.g., change ``` to ```text) so the
block is explicitly marked as plain text and the lint rule is satisfied.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #5340 +/- ##
=========================================
Coverage 100.00% 100.00%
=========================================
Files 22 22
Lines 830 830
Branches 159 159
=========================================
Hits 830 830 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
|
⚡️ Lighthouse report for the changes in this PR:
Lighthouse ran on https://deploy-preview-5340--asyncapi-website.netlify.app/ |
There was a problem hiding this comment.
Pull request overview
Adds an AI-facing guidelines document (AGENTS.md) intended to be automatically consumed by AI coding assistants and CodeRabbit, aligning AI-generated contributions with this repo’s workflow and conventions.
Changes:
- Introduces
AGENTS.mdwith project overview, structure, workflows, and coding/testing conventions for AI assistants. - Documents repo-specific conventions (linting, import sorting, Tailwind tokens, typography components, testing locations).
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| - Props interfaces use JSDoc comments on each field | ||
| - Data shape interfaces use `I` prefix (e.g. `IBlogPost`, `IHeadProps`) | ||
| - Component props use descriptive names (e.g. `HeadingProps`, `ButtonProps`) | ||
| - Enum values are used for component variants (see `@/types/`) |
There was a problem hiding this comment.
The TypeScript conventions here read as strict rules, but they aren’t consistently true across the codebase (e.g., some props interfaces don’t have JSDoc on each field, and some data shapes are exported as type aliases like IBlogPost). Suggest rewording these bullets as recommendations and/or broadening to “types/interfaces” to better match reality.
| - Props interfaces use JSDoc comments on each field | |
| - Data shape interfaces use `I` prefix (e.g. `IBlogPost`, `IHeadProps`) | |
| - Component props use descriptive names (e.g. `HeadingProps`, `ButtonProps`) | |
| - Enum values are used for component variants (see `@/types/`) | |
| - Prefer adding JSDoc comments to fields in props types/interfaces | |
| - Data shape types/interfaces often use an `I` prefix (e.g. `IBlogPost`, `IHeadProps`) | |
| - Prefer descriptive names for component props types/interfaces (e.g. `HeadingProps`, `ButtonProps`) | |
| - Enum values are commonly used for component variants (see `@/types/`) |
| ```bash | ||
| npm install # Install dependencies | ||
| npm run dev # Start dev server | ||
| npm run build # Production build | ||
| npm run lint # Run ESLint | ||
| npm test # Run Jest tests | ||
| npx cypress run # Run Cypress E2E tests | ||
| ``` |
There was a problem hiding this comment.
The repo has a dedicated Netlify edge/functions test script (npm run test:netlify running Deno tests). It would be helpful to include it in either Project Overview (Testing) or the Dev Commands list so contributors run the full suite before opening PRs.
|
|
||
| ## Contribution Workflow | ||
|
|
||
| 1. **Open an issue first** and get it approved before starting any PR, unless its a typo or obvious fix |
There was a problem hiding this comment.
Grammar: "unless its" should be "unless it's" (contraction for "it is").
| 1. **Open an issue first** and get it approved before starting any PR, unless its a typo or obvious fix | |
| 1. **Open an issue first** and get it approved before starting any PR, unless it's a typo or obvious fix |
| Unless explicitly asked: | ||
| - `package-lock.json` — only modify through `npm install` | ||
| - `.github/workflows/` — CI configuration | ||
| - `config/` JSON files — auto-generated data |
There was a problem hiding this comment.
The guideline "config/ JSON files — auto-generated data" looks overly broad for this repo; there are config files that are meant to be edited manually (e.g., tools-manual.json, maintainers lists). Consider narrowing this to the specific generated outputs (like tools.json/all-tags.json/posts.json, etc.) so contributors don’t avoid legitimate updates.
| - `config/` JSON files — auto-generated data | |
| - Generated config outputs such as `config/tools.json`, `config/all-tags.json`, and `config/posts.json` — auto-generated data; other `config/` JSON files may be manually maintained |
c73f71c to
4eb9791
Compare
There was a problem hiding this comment.
♻️ Duplicate comments (2)
AGENTS.md (2)
17-17:⚠️ Potential issue | 🟡 MinorAdd a language tag to the fenced block at Line 17.
The code fence should be explicitly typed (e.g.,
text) to satisfy markdownlint MD040.Proposed fix
-``` +```text🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@AGENTS.md` at line 17, The fenced code block composed of triple backticks at the location shown needs an explicit language tag to satisfy markdownlint MD040; update the opening fence from ``` to a tagged fence such as ```text (or another appropriate language) so the block becomes a typed fenced code block; locate the bare ``` fence in AGENTS.md (the block starting at the shown position) and add the language identifier to the opening fence.
36-36:⚠️ Potential issue | 🟡 MinorFix contraction typo at Line 36 (
its→it's).Use the contraction form in this sentence for correct grammar.
Proposed fix
-1. **Open an issue first** and get it approved before starting any PR, unless its a typo or obvious fix +1. **Open an issue first** and get it approved before starting any PR, unless it's a typo or obvious fix🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@AGENTS.md` at line 36, Change the typo in the sentence "Open an issue first and get it approved before starting any PR, unless its a typo or obvious fix" to use the contraction "it's"; update the word "its" to "it's" in that sentence within AGENTS.md so it reads "unless it's a typo or obvious fix".
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Duplicate comments:
In `@AGENTS.md`:
- Line 17: The fenced code block composed of triple backticks at the location
shown needs an explicit language tag to satisfy markdownlint MD040; update the
opening fence from ``` to a tagged fence such as ```text (or another appropriate
language) so the block becomes a typed fenced code block; locate the bare ```
fence in AGENTS.md (the block starting at the shown position) and add the
language identifier to the opening fence.
- Line 36: Change the typo in the sentence "Open an issue first and get it
approved before starting any PR, unless its a typo or obvious fix" to use the
contraction "it's"; update the word "its" to "it's" in that sentence within
AGENTS.md so it reads "unless it's a typo or obvious fix".
|



Added
Agent.mdthat AI coding assistants (Cursor, Claude,Copilot) automatically pick up when working in this repo.LIke I said in the issue itself - CodeRabbit auto-detects
AGENTS.mdand uses it as review criteria during PR reviews (ref)There are some more changes that were not discussed in the issue itself, I took some context/References from LLM behavioral guidelines repos forrestchang/andrej-karpathy-skills , CodeRabbit code guidelines docs
Checklist:
AGENTS.mdadded.coderabbit.yamlimprovements — to be done in a follow-up commit (coordinating with feat: improve coderabbit workflow #5294)Summary by CodeRabbit