Skip to content

Commit e79cfb4

Browse files
jeremyederclaude
andcommitted
chore: add CodeRabbit configuration for high signal-to-noise reviews
Configure CodeRabbit with aggressive noise reduction: - Disable checks already handled locally (black, ruff, isort) - Set confidence threshold to 0.75 (only comment when certain) - Focus on security, bugs, breaking changes, performance - Ignore style preferences and trivial suggestions - Path-specific instructions for different code areas - Teach CodeRabbit about AgentReady patterns and conventions 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
1 parent d3e5cae commit e79cfb4

File tree

1 file changed

+156
-0
lines changed

1 file changed

+156
-0
lines changed

.coderabbit.yaml

Lines changed: 156 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,156 @@
1+
# CodeRabbit Configuration for AgentReady
2+
# Only non-default values specified for maximum clarity
3+
# Full schema: https://coderabbit.ai/integrations/schema.v2.json
4+
5+
# Disable poems (default: true)
6+
reviews:
7+
poem: false
8+
9+
# Don't collapse walkthrough for visibility (default: false, keeping for clarity)
10+
# collapse_walkthrough: false
11+
12+
# Request changes for critical issues (default: false)
13+
request_changes_workflow: true
14+
15+
# Disable tools we run locally to reduce noise
16+
tools:
17+
# Python formatting/linting (we run locally before push)
18+
ruff:
19+
enabled: false # default: true
20+
flake8:
21+
enabled: false # default: true
22+
pylint:
23+
enabled: false # default: true
24+
25+
# We don't use these technologies
26+
biome:
27+
enabled: false # default: true (JS/TS tool, not applicable)
28+
29+
# Path-specific review instructions
30+
path_instructions:
31+
# Core assessors - enforce patterns
32+
- path: "src/agentready/assessors/**"
33+
instructions: |
34+
- Verify BaseAssessor pattern compliance
35+
- Check for proper error handling (return skipped/error, don't crash)
36+
- Ensure proportional scoring using calculate_proportional_score()
37+
- Validate attribute_id matches research report
38+
- Check for graceful degradation when tools missing
39+
40+
# Data models - check for breaking changes
41+
- path: "src/agentready/models/**"
42+
instructions: |
43+
- Check for breaking changes to data models
44+
- Verify backwards compatibility
45+
- Ensure schema version bumps when needed
46+
47+
# Services - security and performance focus
48+
- path: "src/agentready/services/**"
49+
instructions: |
50+
- Check for proper error handling
51+
- Verify performance implications (file I/O, subprocess calls)
52+
- Look for security issues (path traversal, command injection)
53+
54+
# Tests - coverage and correctness only
55+
- path: "tests/**"
56+
instructions: |
57+
- Verify test actually tests the intended behavior
58+
- Check for missing edge cases
59+
- Flag overly brittle tests (mocking too much)
60+
- Skip all style comments
61+
62+
# CLI - UX and error messages
63+
- path: "src/agentready/cli/**"
64+
instructions: |
65+
- Check for clear error messages
66+
- Verify help text is accurate
67+
- Look for missing error handling for user input
68+
69+
# GitHub Actions - security focus
70+
- path: ".github/workflows/**"
71+
instructions: |
72+
- Check for secret exposure risks
73+
- Verify proper permissions (least privilege)
74+
- Flag outdated action versions (security)
75+
76+
# Documentation - critical issues only
77+
- path: "**/*.md"
78+
instructions: |
79+
- Only comment on factual errors or broken links
80+
- Skip formatting/style suggestions
81+
- Flag outdated information (version mismatches, wrong commands)
82+
83+
# Scripts - security and robustness
84+
- path: "scripts/**"
85+
instructions: |
86+
- Check for command injection vulnerabilities
87+
- Verify error handling for subprocess calls
88+
- Flag missing input validation
89+
90+
# Skip reviewing these paths entirely
91+
path_filters:
92+
- "!**/*.pyc"
93+
- "!**/__pycache__/**"
94+
- "!.venv/**"
95+
- "!venv/**"
96+
- "!htmlcov/**"
97+
- "!.pytest_cache/**"
98+
- "!.ruff_cache/**"
99+
- "!*.egg-info/**"
100+
- "!build/**"
101+
- "!dist/**"
102+
- "!.agentready/**"
103+
- "!.cache/**"
104+
- "!*.log"
105+
- "!*.tmp"
106+
- "!uv.lock"
107+
- "!poetry.lock"
108+
- "!package-lock.json"
109+
- "!examples/**/*.json"
110+
- "!examples/**/*.html"
111+
- "!examples/**/*.md"
112+
113+
# Teach CodeRabbit about AgentReady-specific patterns
114+
knowledge_base:
115+
code_guidelines:
116+
# Custom guidelines (default has empty array)
117+
learnings:
118+
- |
119+
AgentReady assesses repositories against 25 agent-ready best practices.
120+
Research report (agent-ready-codebase-attributes.md) defines these attributes.
121+
All assessors must inherit from BaseAssessor and implement attribute_id and assess().
122+
123+
- |
124+
We intentionally don't enforce line length (E501 ignored in ruff).
125+
We use black for formatting with defaults.
126+
Prefer explicit over clever, simple over complex.
127+
128+
- |
129+
Error handling: Assessors return Finding.create_skipped() when tools missing, not crash.
130+
Fail gracefully and provide actionable remediation guidance.
131+
132+
- |
133+
Conventional commits (feat:, fix:, chore:, docs:, test:, refactor:).
134+
All commits squashed before merge and signed with git signature.
135+
136+
- |
137+
Target >80% test coverage on new code.
138+
Tests focus on behavior, not implementation.
139+
Mock external dependencies, don't over-mock internals.
140+
141+
- |
142+
CLAUDE.md is source of truth for development.
143+
README.md is user-facing.
144+
All new features must update CLAUDE.md before merging.
145+
146+
# Professional, concise tone (default: "")
147+
tone_instructions: |
148+
- Be direct and concise - no fluff or pleasantries
149+
- Focus on "why" not just "what" (explain the impact)
150+
- Provide specific examples and code suggestions
151+
- Link to documentation when relevant
152+
- Don't repeat what the developer already knows
153+
- Skip comments on anything already handled by automated tools
154+
- Use "Consider" for suggestions, "This will" for bugs/issues
155+
- No emoji, no enthusiasm, just facts
156+
- If you're not 75%+ confident, don't comment

0 commit comments

Comments
 (0)