commit-check
Configuration for commit-check, a commit message, branch naming, and push linter
cchk.tomlcommit-check.toml**/.github/cchk.toml**/.github/commit-check.toml
Validate
Check your file against this schema
Opens the validator with this schema already loaded. Paste your
cchk.toml and it validates in your browser — nothing is uploaded.
Reference
Fields
Generated directly from the schema, following local
$refs, to two levels of nesting.
| Field | Type | Description |
|---|---|---|
inherit_from | string | Inherit configuration from a parent file. Supports github: shorthand (e.g., github:owner/repo:path/to/cchk.toml), HTTPS URL, or local file path. https://github.com/commit-check/commit-check/blob/main/docs/configuration.rst#organization-leve |
commit | object | Settings for commit message validation. https://github.com/commit-check/commit-check/blob/main/docs/configuration.rst |
commit.conventional_commits | boolean | Enforce Conventional Commits specification. https://www.conventionalcommits.org default: true |
commit.message_pattern | string | Custom regex pattern for commit message validation. When set (non-empty), this replaces the auto-generated Conventional Commits regex entirely. Useful for enforcing custom formats such as JIRA smart commits (e.g., ^PROJ-\\d+: .+). default: "" |
commit.subject_capitalized | boolean | Subject must start with a capital letter. default: true |
commit.subject_imperative | boolean | Subject must be in imperative mood. https://github.com/commit-check/commit-check/blob/main/commit_check/imperatives.py default: true |
commit.subject_max_length | integer | Maximum length of the subject line. No limit by default. |
commit.subject_min_length | integer | Minimum length of the subject line. No limit by default. |
commit.allow_commit_types | array<string> | Allowed commit types when conventional_commits is true. default: ["feat", "fix", "docs", "style", "refactor", "test"… |
commit.allow_merge_commits | boolean | Allow merge commits. default: true |
commit.allow_revert_commits | boolean | Allow revert commits. default: true |
commit.allow_empty_commits | boolean | Allow empty commits. default: false |
commit.allow_fixup_commits | boolean | Allow fixup commits (e.g., fixup! <commit message>). default: true |
commit.allow_wip_commits | boolean | Allow work-in-progress commits (e.g., WIP: <commit message>). default: false |
commit.require_body | boolean | Require a body in the commit message. default: false |
commit.require_signed_off_by | boolean | Require Signed-off-by line in the commit message footer. default: false |
commit.ignore_authors | array<string> | List of commit authors or co-authors (Co-authored-by: lines) to bypass all commit checks. Useful for bots (e.g., dependabot[bot], coderabbitai[bot]). default: [] |
branch | object | Settings for branch naming validation. https://conventional-branch.github.io/ |
branch.conventional_branch | boolean | Enforce Conventional Branch specification. https://conventional-branch.github.io/ default: true |
branch.allow_branch_types | array<string> | Allowed branch types when conventional_branch is true. default: ["feature", "bugfix", "hotfix", "release", "chore", "feat"… |
branch.allow_branch_names | array<string> | Additional standalone branch names allowed when conventional_branch is true (e.g., ["develop", "staging"]). By default, master, main, HEAD, and PR-* are always allowed. default: [] |
branch.require_rebase_target | string | Target branch for rebase requirement. If not set, no rebase validation is performed. |
branch.ignore_authors | array<string> | List of authors to bypass branch checks. default: [] |
push | object | Settings for push validation (pre-push hook). https://github.com/commit-check/commit-check |
push.allow_force_push | boolean | Allow force pushes. Set to false to block force pushes when used as a pre-push hook or with --no-force-push. default: true |
Audit
What we found in this schema
- Declared draft: draft-07
- Validates cleanly against its own meta-schema.
- 25 properties, 100% carrying a description, max nesting depth 6.
Standards
Specification sections for the keywords in this schema
| Keyword | Document | Section |
|---|---|---|
$id | JSON Schema Core, draft 2020-12 | §8.2.1 — The "$id" Keyword |
$schema | JSON Schema Core, draft 2020-12 | §8.1.1 — "$schema" |
additionalProperties | JSON Schema Core, draft 2020-12 | §10.3.2.3 — "additionalProperties" |
default | JSON Schema Validation, draft 2020-12 | §9.2 — "default" |
description | JSON Schema Validation, draft 2020-12 | §9.1 — "title" and "description" |
items | JSON Schema Core, draft 2020-12 | §10.3.1.2 — "items" |
minimum | JSON Schema Validation, draft 2020-12 | §6.2.4 — "minimum" |
properties | JSON Schema Core, draft 2020-12 | §10.3.2.1 — "properties" |
type | JSON Schema Validation, draft 2020-12 | §6.1.1 — "type" |
Documents
- JSON Schema Core, draft 2020-12 — JSON Schema: A Media Type for Describing JSON Documents, A. Wright, H. Andrews, B. Hutton, G. Dennis, Eds., 2022. draft-bhutton-json-schema-01. An expired Internet-Draft with no formal standing in the IETF standards process; it is nonetheless the specification of record for JSON Schema 2020-12, published by json-schema.org.
- JSON Schema Validation, draft 2020-12 — JSON Schema Validation: A Vocabulary for Structural Validation of JSON, A. Wright, H. Andrews, B. Hutton, Eds., 2022.
- RFC 8259 (STD 90) — The JavaScript Object Notation (JSON) Data Interchange Format, T. Bray, Ed., 2017. The format a schema describes.
- RFC 6901 — JavaScript Object Notation (JSON) Pointer. Defines the pointer syntax used by $ref fragments and the ~0 / ~1 escapes.
Source
Attribution
This schema comes from SchemaStore, distributed under the Apache License 2.0. Copyright 2015–present Mads Kristensen and contributors. View the original file. The field table and audit on this page are generated by JSONTools.tools; the schema itself is unmodified.