| changelog-path | Path to the changelog/unreleased directory | no | changelog/unreleased |
| on-missing-entry | Action to take when changelog entry is missing: "fail", "warn", or "generate" | no | fail |
| missing-entry-message | Custom message to display when changelog entry is missing | no | This pull request is missing a logchange entry in the changelog/unreleased directory |
| skip-files-regex | If all edited files match this regex pattern, skip changelog requirement | no | "" |
| skip-changelog-labels | Comma-separated list of PR labels that skip changelog requirement (e.g., documentation,chore,skip-changelog) | no | "" |
| dry-run | If true, generate suggestions without posting comments or setting outputs (for testing configuration) | no | false |
| claude-token | Claude API token for AI-powered changelog generation (required if on-missing-entry is "generate") | no | — |
| claude-model | Claude model to use for generation | no | claude-opus-4-1-20250805 |
| claude-system-prompt | Custom system prompt for Claude changelog generation | no | — |
| changelog-language | Language to write the generated changelog entry in | no | English |
| max-tokens-context | Maximum tokens to use for PR diff context | no | 5000 |
| max-tokens-per-file | Maximum tokens per file when truncating diff | no | 1000 |
| changelog-types | Comma-separated list of allowed changelog types (JSON format) | no | added,changed,deprecated,removed,fixed,security,dependency_update,other |
| mandatory-fields | Comma-separated list of mandatory fields in changelog entry | no | title |
| forbidden-fields | Comma-separated list of forbidden fields in changelog entry | no | "" |
| optional-fields | Comma-separated list of optional fields (empty means all standard fields allowed) | no | "" |
| legacy-changelog-paths | Comma-separated list of legacy changelog file paths to detect (e.g., CHANGELOG.md,HISTORY.txt). Defaults to CHANGELOG.md. Set to empty string to disable legacy changelog detection. | no | CHANGELOG.md |
| on-legacy-entry | Action when legacy changelog entry is found. Always fails the action with different levels of help: "fail" (just fail), "warn" (fail + comment), "remove" (fail + removal suggestions), "convert" (fail + removal suggestions + LLM conversion to logchange) | no | convert |
| on-legacy-and-logchange | Action when both legacy and logchange entries in same PR: "fail", "warn", or "ignore" | no | warn |
| legacy-entry-message | Custom message when legacy changelog entry is found | no | I detected a legacy changelog entry. Converting it to logchange format... |
| legacy-conflict-message | Custom message when both legacy and logchange entries are present | no | This PR contains both legacy and logchange changelog entries. Please use only logchange format. |
| external-issue-regex | Regex pattern to detect external issue references (e.g., JIRA-123). Must have capture group for issue ID. Example: "JIRA-(\d+)" | no | "" |
| external-issue-url-template | URL template for external issues with {id} placeholder. Example: "https://jira.example.com/browse/{id}" | no | "" |
| generate-important-notes | Whether to instruct AI to generate important_notes in changelog entries (default: true) | no | true |
| github-issue-detection | Whether to detect GitHub issue references (#123) in PR description (default: true) | no | true |
| issue-tracker-url-detection | Whether to detect issue tracker URLs (via LLM filtering) in PR description. Only URLs matching configured external issue trackers are added as links (default: true) | no | true |
| validation-fail-message | Custom message to display when changelog entry validation fails | no | The changelog entry does not comply with the required format |
| validation-fail-workflow | Whether to fail the workflow on validation errors or just comment | no | true |