From 1985ff756ef62faf7baad0c884719339ffb652bd Mon Sep 17 00:00:00 2001 From: Ismo Vuorinen Date: Wed, 23 Jul 2025 19:18:47 +0300 Subject: [PATCH] feat: add coderabbit.yaml and link it (#1) --- README.md | 4 +- coderabbit.yaml | 225 ++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 228 insertions(+), 1 deletion(-) create mode 100644 coderabbit.yaml diff --git a/README.md b/README.md index 25518b8..0163e62 100644 --- a/README.md +++ b/README.md @@ -7,9 +7,11 @@ To use it, create a `.coderabbit.yaml` file in the project root and add this: ```yaml remote_config: - url: "https://raw.githubusercontent.com/ivuorinen/coderabbit/refs/heads/main/.coderabbit.yaml" + url: "https://raw.githubusercontent.com/ivuorinen/coderabbit/refs/heads/main/coderabbit.yaml" ``` +You can see the full configuration here: [coderabbit.yaml](coderabbit.yaml) + This way the repository is always using the latest configuration. ## Links diff --git a/coderabbit.yaml b/coderabbit.yaml new file mode 100644 index 0000000..0dbf1dc --- /dev/null +++ b/coderabbit.yaml @@ -0,0 +1,225 @@ +--- +# 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. + 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: [] +