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.jsonin the target repo. - •Required environment variables set (at minimum
GITHUB_TOKENfor GitHub source). - •Git available in PATH;
ghoptional (used for PR creation if configured).
Instructions
- •Read
.changelog-config.jsonfrom the repo root. - •Validate it with
{baseDir}/scripts/validate_config.py. - •Decide date range:
- •Load the configured markdown template (or fall back to
{baseDir}/assets/weekly-template.md). - •Render the final markdown using
{baseDir}/scripts/render_template.py. - •Ensure frontmatter contains at least
date(ISO) andversion(SemVer if known; otherwise0.0.0). - •Run deterministic checks using
{baseDir}/scripts/quality_score.py. - •If score is below threshold:
- •Write the changelog file to the configured
output_path. - •Create a branch
changelog-YYYY-MM-DD, commit withdocs: add changelog for YYYY-MM-DD. - •If
ghis configured, open a PR; otherwise, print the exact commands the user should run.
See {baseDir}/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
{baseDir}/scripts/quality_score.py.
Error Handling
See {baseDir}/references/errors.md for comprehensive error handling.
Examples
See {baseDir}/references/examples.md for detailed examples.
Resources
- •Validate config:
{baseDir}/scripts/validate_config.py - •Render template:
{baseDir}/scripts/render_template.py - •Quality scoring:
{baseDir}/scripts/quality_score.py - •Default templates:
- •
{baseDir}/assets/default-changelog.md - •
{baseDir}/assets/weekly-template.md - •
{baseDir}/assets/release-template.md
- •