-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path.coderabbit.yaml
More file actions
280 lines (266 loc) · 6.81 KB
/
.coderabbit.yaml
File metadata and controls
280 lines (266 loc) · 6.81 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
# yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json
---
language: en-US
tone_instructions: >-
Be direct, precise, and thorough. Focus on correctness, security, and
maintainability. Acknowledge good practices briefly.
early_access: true
enable_free_tier: true
reviews:
profile: assertive
request_changes_workflow: false
high_level_summary: true
high_level_summary_placeholder: "@coderabbitai summary"
review_status: false
commit_status: true
collapse_walkthrough: false
changed_files_summary: true
sequence_diagrams: true
estimate_code_review_effort: true
assess_linked_issues: true
related_issues: true
related_prs: true
suggested_labels: true
auto_apply_labels: true
labeling_instructions:
# Issue Types
- label: bug
instructions: Something isn't working
- label: feature
instructions: New feature or request
- label: documentation
instructions: Improvements or additions to documentation
- label: question
instructions: Further information is requested
- label: refactor
instructions: Code refactoring without behavior change
# Priority
- label: "priority: critical"
instructions: Requires immediate attention
- label: "priority: high"
instructions: Should be addressed soon
- label: "priority: medium"
instructions: Normal priority
- label: "priority: low"
instructions: Nice to have, not urgent
# Status
- label: blocked
instructions: Waiting on external dependency or decision
- label: "needs review"
instructions: Ready for review
- label: wip
instructions: Work in progress, not ready for review
- label: wontfix
instructions: This will not be worked on
- label: duplicate
instructions: This issue or pull request already exists
- label: invalid
instructions: This doesn't seem right
# Components
- label: "area: cli"
instructions: Related to CLI interface
- label: "area: tui"
instructions: Related to TUI interface
- label: "area: core"
instructions: Related to core business logic
- label: "area: tests"
instructions: Related to testing
- label: "area: ci/cd"
instructions: Related to CI/CD workflows
# Community
- label: "good first issue"
instructions: Good for newcomers
- label: "help wanted"
instructions: Extra attention is needed
# Dependencies
- label: dependencies
instructions: Pull requests that update a dependency file
- label: security
instructions: Security-related issues or fixes
# Maintenance
- label: chore
instructions: Maintenance tasks and housekeeping
- label: performance
instructions: Performance improvements
suggested_reviewers: true
auto_assign_reviewers: true
# Disable decorative features for cleaner reviews
in_progress_fortune: false
poem: false
enable_prompt_for_ai_agents: true
abort_on_close: true
path_filters:
# Exclude generated/vendored content
- "!dist/**"
- "!*.lock"
- "!uv.lock"
- "!docs/cli.md"
- "!docs/assets/screenshots/**"
path_instructions:
- path: "src/**/*.py"
instructions: |
Python 3.14+ codebase using modern type syntax (list[X], X | None).
Uses ruff for linting/formatting, ty for type checking.
Prefer dataclasses over dicts. Catch specific exceptions.
Check for OWASP top 10 vulnerabilities.
- path: "tests/**/*.py"
instructions: |
Tests use pytest. Check for proper assertions, edge cases,
and that tests actually verify the behavior described.
- path: "*.md"
instructions: |
Documentation follows standard markdown. Verify links work
and content is accurate and up-to-date.
- path: ".github/**/*.yml"
instructions: |
GitHub Actions workflows. Check for security issues like
command injection, missing permissions, and pinned actions.
auto_review:
enabled: true
auto_incremental_review: true
drafts: false
labels:
- "!wip"
ignore_title_keywords:
- WIP
- DO NOT MERGE
finishing_touches:
docstrings:
enabled: true
unit_tests:
enabled: true
pre_merge_checks:
docstrings:
mode: warning
threshold: 80
title:
mode: warning
description:
mode: warning
issue_assessment:
mode: warning
tools:
# === Python tools (this is a Python project) ===
ruff:
enabled: true
# Disable redundant Python linters - ruff covers these
flake8:
enabled: false
pylint:
enabled: false
# === Shell/YAML/Markdown (used in this project) ===
shellcheck:
enabled: true
yamllint:
enabled: true
markdownlint:
enabled: true
actionlint:
enabled: true
# === Security scanning ===
gitleaks:
enabled: true
semgrep:
enabled: true
checkov:
enabled: true
# === General tools ===
github-checks:
enabled: true
timeout_ms: 90000
languagetool:
enabled: true
level: default
dotenvLint:
enabled: true
osvScanner:
enabled: true
# === AST pattern matching ===
ast-grep:
essential_rules: true
biome:
enabled: false
hadolint:
enabled: false # No Dockerfiles
swiftlint:
enabled: false
phpstan:
enabled: false
phpmd:
enabled: false
phpcs:
enabled: false
golangci-lint:
enabled: false
detekt:
enabled: false
eslint:
enabled: false
fortitudeLint:
enabled: false
rubocop:
enabled: false
buf:
enabled: false
regal:
enabled: false
pmd:
enabled: false
clang:
enabled: false
cppcheck:
enabled: false
circleci:
enabled: false
clippy:
enabled: false
sqlfluff:
enabled: false
prismaLint:
enabled: false
oxc:
enabled: false
shopifyThemeCheck:
enabled: false
luacheck:
enabled: false
brakeman:
enabled: false
htmlhint:
enabled: false
checkmake:
enabled: false
chat:
art: false # Disable ASCII/emoji art for cleaner responses
auto_reply: true
integrations:
jira:
usage: auto
linear:
usage: auto
knowledge_base:
opt_out: false
web_search:
enabled: true
code_guidelines:
enabled: true
filePatterns:
- "**/AGENT.md"
- "**/AGENTS.md"
- "**/CLAUDE.md"
- .github/copilot-instructions.md
learnings:
scope: auto
issues:
scope: auto
pull_requests:
scope: auto
code_generation:
docstrings:
language: en-US
unit_tests:
path_instructions:
- path: "src/**/*.py"
instructions: |
Generate pytest tests. Use fixtures where appropriate.
Test edge cases and error conditions.