changelog-orchestrator

Draft changelog PRs by collecting GitHub/Slack/Git changes, formatting with templates, running quality gates, and preparing a branch/PR. Use when generating weekly/monthly release notes or when the user asks to create a changelog from recent merges. Trigger with "changelog weekly", "generate release notes", "draft changelog", "create changelog PR".

claude-codecodexopenclaw
9 Tools
mattyp-changelog Plugin
automation Category

Allowed Tools

"ReadWriteEditGrepGlobBash(git:*)Bash(gh:*)Bash(python:*)Bash(date:*)"

Provided by Plugin

mattyp-changelog

Automate changelog generation: fetch recent changes, synthesize release notes, run quality gates, and prepare a PR.

automation v0.1.0
View Plugin

Installation

This skill is included in the mattyp-changelog plugin:

/plugin install mattyp-changelog@claude-code-plugins-plus

Click to copy

Instructions

Changelog Orchestrator

Overview

This skill turns raw repo activity (merged PRs, issues, commits, optional Slack updates) into a publishable changelog draft and prepares a branch/PR for review.

Prerequisites

  • A project config file at .changelog-config.json in the target repo.
  • Required environment variables set (at minimum GITHUB_TOKEN for GitHub source).
  • Git available in PATH; gh optional (used for PR creation if configured).

Instructions

  1. Read .changelog-config.json from the repo root.
  2. Validate it with ${CLAUDESKILLDIR}/scripts/validate_config.py.
  3. Decide date range:
  4. Load the configured markdown template (or fall back to ${CLAUDESKILLDIR}/assets/weekly-template.md).
  5. Render the final markdown using ${CLAUDESKILLDIR}/scripts/render_template.py.
  6. Ensure frontmatter contains at least date (ISO) and version (SemVer if known; otherwise 0.0.0).
  7. Run deterministic checks using ${CLAUDESKILLDIR}/scripts/quality_score.py.
  8. If score is below threshold:
  9. Write the changelog file to the configured output_path.
  10. Create a branch changelog-YYYY-MM-DD, commit with docs: add changelog for YYYY-MM-DD.
  11. If gh is configured, open a PR; otherwise, print the exact commands the user should run.

See ${CLAUDESKILLDIR}/references/implementation.md for detailed implementation guide.

Output

  • A markdown changelog draft (usually CHANGELOG.md), plus an optional PR URL.
  • A quality report (score + findings) from ${CLAUDESKILLDIR}/scripts/quality_score.py.

Error Handling

See ${CLAUDESKILLDIR}/references/errors.md for comprehensive error handling.

Examples

See ${CLAUDESKILLDIR}/references/examples.md for detailed examples.

Resources

  • Validate config: ${CLAUDESKILLDIR}/scripts/validate_config.py
  • Render template: ${CLAUDESKILLDIR}/scripts/render_template.py
  • Quality scoring: ${CLAUDESKILLDIR}/scripts/quality_score.py
  • Default templates:
  • ${CLAUDESKILLDIR}/assets/default-changelog.md
  • ${CLAUDESKILLDIR}/assets/weekly-template.md
  • ${CLAUDESKILLDIR}/assets/release-template.md

Ready to use mattyp-changelog?