Preset Options
These options are forwarded to the conventional-commits preset and are accepted
by generateChangelog, createGenerator, createPreset, and the config file.
types
Type: Array<{ type: string; section?: string; scope?: string; effect?: 'bump' | 'changelog' | 'hidden'; hidden?: boolean }>
Defines which commit types appear in the changelog and under which section.
sectioncontrols the visible heading for matching commits.scopenarrows the rule to commits with that scope (e.g.fix(deps)).effectcontrols visibility.'hidden'omits the type entirely.'bump'and'changelog'are passed through to the upstream preset for bump logic.hidden: trueis the legacy spelling ofeffect: 'hidden'and is still accepted for compatibility with older upstream versions.
effect is the preferred field.
{
types: [
{ type: 'feat', section: 'Features' },
{ type: 'fix', section: 'Bug Fixes' },
{ type: 'build', section: 'Build' },
{ type: 'docs', section: 'Docs' },
{ type: 'chore', effect: 'hidden' },
],
}
ignoreCommits
Type: RegExp
A regex that drops matching commits from the changelog entirely. Only expressible in a JavaScript config file, not JSON.
{
ignoreCommits: /^chore: release candidate /;
}
issuePrefixes
Type: ReadonlyArray<string>
Tokens that introduce a reference to an issue. Defaults to ['#'].
{
issuePrefixes: ['#', 'WEB-'];
}
scope
Type: string | ReadonlyArray<string>
Only include commits whose scope matches one of these values. When omitted, all scopes are included.
{
scope: ['api', 'ui'];
}
scopeOnly
Type: boolean
When true, only commits that have a scope are included (combined with scope
to filter by those specific scopes). Defaults to false.
preMajor
Type: boolean
When true, the preset operates in pre-major mode (e.g. emit BREAKING CHANGES
under a different heading). Defaults to false.
URL Formatters
Customize how issue, commit, compare, and user links are rendered. Each receives the conventional-changelog context object.
{
formatIssueUrl: (context, reference) => `https://jira.example.com/browse/${reference.issue}`,
formatCommitUrl: (context, commit) => `https://github.com/egose/repo-toolkit/commit/${commit.hash}`,
formatCompareUrl: (context) => `https://github.com/egose/repo-toolkit/compare/${context.previousTag}...${context.currentTag}`,
formatUserUrl: (context, user) => `https://github.com/${user}`,
}
Only expressible in a JavaScript config file.