﻿---
title: changelog gh-release cli command
description: Create changelog entries from the PRs referenced in a GitHub release. 
url: https://docs-v3-preview.elastic.dev/elastic/docs-builder/pull/2927/cli/changelog/gh-release
products:
  - Elastic Docs Builder
---

# changelog gh-release cli command
```bash
docs-builder changelog gh-release <repo> [<version>] [options]
```

Create changelog entries from the PRs referenced in a GitHub release.

## Arguments

<definitions>
  <definition term="<repo> string required">
    Required: GitHub repository in owner/repo format (e.g., "elastic/elasticsearch" or just "elasticsearch" which defaults to elastic/elasticsearch)
  </definition>
  <definition term="<version> string">
    Optional: Version tag to fetch (e.g., "v9.0.0", "9.0.0"). Defaults to "latest"
    **Default:** `latest`
  </definition>
</definitions>


## Options

<definitions>
  <definition term="--config string">
    Optional: Path to the changelog.yml configuration file. Defaults to 'docs/changelog.yml'
    **Constraints:** symbolic links not allowed, must exist, extensions: yml, yaml, supports `~` home expansion
  </definition>
  <definition term="--description string">
    Optional: Bundle description text with placeholder support. Supports VERSION, LIFECYCLE, OWNER, and REPO placeholders. Overrides bundle.description from config.
  </definition>
  <definition term="--output string">
    Optional: Output directory for changelog files. Falls back to bundle.directory in changelog.yml when not specified. Defaults to './changelogs'
  </definition>
  <definition term="--release-date string">
    Optional: Explicit release date for the bundle in YYYY-MM-DD format. Overrides GitHub release published date.
  </definition>
  <definition term="--[no-]strip-title-prefix">
    Optional: Remove square brackets and text within them from the beginning of PR titles (e.g., "[Inference API] Title" becomes "Title")
    **Default:** `false`
  </definition>
  <definition term="--[no-]warn-on-type-mismatch">
    Optional: Warn when the type inferred from release notes section headers doesn't match the type derived from PR labels. Defaults to true
    **Default:** `false`
  </definition>
  <definition term="-l --log-level enum">
    Minimum log level.
    **Values:** trace, debug, information, warning, error, critical, none
    **Default:** `information`
  </definition>
  <definition term="-c --config-source enum">
    Override the configuration source: local, remote
    **Values:** local, remote, embedded
  </definition>
  <definition term="--[no-]skip-private-repositories">
    Skip cloning private repositories
  </definition>
</definitions>