mirror of
https://github.com/ivuorinen/coderabbit.git
synced 2026-03-17 14:00:51 +00:00
Add pre-commit hooks (YAML lint, schema validation, editorconfig), CI workflow, and new path instructions for test files, Dockerfiles, config files, and archival docs.
247 lines
7.1 KiB
YAML
247 lines
7.1 KiB
YAML
---
|
|
# yaml-language-server: $schema=https://storage.googleapis.com/coderabbit_public_assets/schema.v2.json
|
|
language: en-US
|
|
tone_instructions: >-
|
|
Adopt a concise, matter-of-fact style that gets straight to the
|
|
point without unnecessary pleasantries. Highlight issues, and suggest
|
|
production-grade, elegant, and concise solutions.
|
|
In instructions for LLM's, optimize token usage.
|
|
early_access: true
|
|
enable_free_tier: true
|
|
reviews:
|
|
profile: chill
|
|
request_changes_workflow: true
|
|
high_level_summary: true
|
|
high_level_summary_placeholder: '@coderabbitai summary'
|
|
high_level_summary_in_walkthrough: true
|
|
auto_title_placeholder: '@coderabbitai'
|
|
auto_title_instructions: use short, semantic commit style descriptions
|
|
review_status: true
|
|
commit_status: true
|
|
fail_commit_status: false
|
|
collapse_walkthrough: true
|
|
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
|
|
suggested_reviewers: true
|
|
auto_assign_reviewers: true
|
|
poem: false
|
|
labeling_instructions: []
|
|
path_filters: []
|
|
path_instructions:
|
|
- path: "**/*"
|
|
instructions: >-
|
|
- Check for security vulnerabilities and potential issues.
|
|
- Ensure the code follows the **DRY, AHA, and SOLID** principles.
|
|
- If there is a way to simplify code, suggest it.
|
|
- path: '**/*.go'
|
|
instructions: >-
|
|
Review the Go code, point out issues relative to principles of clean
|
|
code, expressiveness, and performance.
|
|
- path: '**/*.proto'
|
|
instructions: >-
|
|
Review the Protobuf definitions, point out issues relative to
|
|
compatibility, and expressiveness.
|
|
- path: '**/*.sh'
|
|
instructions: >-
|
|
Review the shell scripts, point out issues relative to security,
|
|
performance, and maintainability.
|
|
- path: "TODO.md"
|
|
instructions: >-
|
|
This is the file for tracking the project tasks.
|
|
It's usually maintained by an LLM, and may contain lies.
|
|
- path: .github/**
|
|
instructions: >-
|
|
When the project is hosted on GitHub:
|
|
- All GitHub-specific configurations, templates, and tools
|
|
should be found in the '.github' directory tree.
|
|
- 'actionlint' erroneously generates false positives when
|
|
dealing with GitHub's `${{ ... }}` syntax in conditionals.
|
|
- 'actionlint' erroneously generates incorrect solutions
|
|
when suggesting the removal of valid `${{ ... }}` syntax.
|
|
- path: docs/*
|
|
instructions: >-
|
|
When a project contains a `docs/` directory:
|
|
1. Consider the files in the `docs/` directory tree the core/main/in-depth
|
|
documentation of the project. Also consider the 'docs/**.md' files the
|
|
second place to look for project documentation after the 'README.md' file.
|
|
2. When reviewing the documentation files (e.g. `docs/**.md`),
|
|
they should additionally be linted with help from the tool `markdownlint`, pointing out any issues.
|
|
3. When reviewing the documentation files in `docs/` directory, they should
|
|
additionally be linted with help from the tool `languagetool`, pointing out any issues.
|
|
4. Focus on grammar, spelling, and punctuation.
|
|
5. Also consider readability and clarity of contents.
|
|
6. Avoid gender-specific language and use the imperative form.
|
|
- path: "docs/plans/**"
|
|
instructions: >-
|
|
These are historical design and planning documents. They may contain
|
|
outdated information and do not reflect current implementation.
|
|
Do not enforce current coding standards or suggest updates to align
|
|
with current practices. Focus only on grammar, spelling, and
|
|
readability if changes are being reviewed.
|
|
- path: "**/*.{test,spec}.*"
|
|
instructions: >-
|
|
These are test files. Focus on test coverage completeness,
|
|
assertion quality, and avoiding flaky test patterns.
|
|
Some duplication in tests is acceptable for readability —
|
|
do not enforce DRY as aggressively as in production code.
|
|
- path: "**/Dockerfile*"
|
|
instructions: >-
|
|
Review Dockerfiles for security best practices (non-root user,
|
|
minimal base images, no secrets baked into layers), multi-stage
|
|
build opportunities, and layer caching efficiency.
|
|
- path: "**/*.{json,yaml,yml,toml}"
|
|
instructions: >-
|
|
Configuration files: verify valid structure, ensure no hardcoded
|
|
secrets or credentials, and check consistency with project conventions.
|
|
abort_on_close: true
|
|
disable_cache: false
|
|
auto_review:
|
|
enabled: true
|
|
auto_incremental_review: true
|
|
ignore_title_keywords: []
|
|
labels: []
|
|
drafts: true
|
|
base_branches: []
|
|
finishing_touches:
|
|
docstrings:
|
|
enabled: true
|
|
unit_tests:
|
|
enabled: true
|
|
pre_merge_checks:
|
|
docstrings:
|
|
mode: warning
|
|
threshold: 80
|
|
title:
|
|
mode: warning
|
|
requirements: ''
|
|
description:
|
|
mode: warning
|
|
issue_assessment:
|
|
mode: warning
|
|
tools:
|
|
ast-grep:
|
|
rule_dirs: []
|
|
util_dirs: []
|
|
essential_rules: true
|
|
packages: []
|
|
shellcheck:
|
|
enabled: true
|
|
ruff:
|
|
enabled: true
|
|
markdownlint:
|
|
enabled: true
|
|
github-checks:
|
|
enabled: true
|
|
timeout_ms: 90000
|
|
languagetool:
|
|
enabled: true
|
|
enabled_rules: []
|
|
disabled_rules: []
|
|
enabled_categories: []
|
|
disabled_categories: []
|
|
enabled_only: false
|
|
level: default
|
|
biome:
|
|
enabled: true
|
|
hadolint:
|
|
enabled: true
|
|
swiftlint:
|
|
enabled: true
|
|
phpstan:
|
|
enabled: true
|
|
level: default
|
|
phpmd:
|
|
enabled: true
|
|
phpcs:
|
|
enabled: true
|
|
golangci-lint:
|
|
enabled: true
|
|
yamllint:
|
|
enabled: true
|
|
gitleaks:
|
|
enabled: true
|
|
checkov:
|
|
enabled: true
|
|
detekt:
|
|
enabled: true
|
|
eslint:
|
|
enabled: true
|
|
flake8:
|
|
enabled: true
|
|
rubocop:
|
|
enabled: true
|
|
buf:
|
|
enabled: true
|
|
regal:
|
|
enabled: true
|
|
actionlint:
|
|
enabled: true
|
|
pmd:
|
|
enabled: true
|
|
cppcheck:
|
|
enabled: true
|
|
semgrep:
|
|
enabled: true
|
|
circleci:
|
|
enabled: true
|
|
clippy:
|
|
enabled: true
|
|
sqlfluff:
|
|
enabled: true
|
|
prismaLint:
|
|
enabled: true
|
|
pylint:
|
|
enabled: true
|
|
oxc:
|
|
enabled: true
|
|
shopifyThemeCheck:
|
|
enabled: true
|
|
luacheck:
|
|
enabled: true
|
|
brakeman:
|
|
enabled: true
|
|
dotenvLint:
|
|
enabled: true
|
|
htmlhint:
|
|
enabled: true
|
|
checkmake:
|
|
enabled: true
|
|
chat:
|
|
auto_reply: true
|
|
integrations:
|
|
jira:
|
|
usage: disabled
|
|
linear:
|
|
usage: disabled
|
|
knowledge_base:
|
|
opt_out: false
|
|
web_search:
|
|
enabled: true
|
|
code_guidelines:
|
|
enabled: true
|
|
filePatterns: []
|
|
learnings:
|
|
scope: auto
|
|
issues:
|
|
scope: auto
|
|
jira:
|
|
usage: disabled
|
|
project_keys: []
|
|
linear:
|
|
usage: disabled
|
|
team_keys: []
|
|
pull_requests:
|
|
scope: auto
|
|
code_generation:
|
|
docstrings:
|
|
language: en-US
|
|
path_instructions: []
|
|
unit_tests:
|
|
path_instructions: []
|