Claude Skills
CollectionsCompareWorkflowsNominate
Sign inSign up
© 2026 Curated Agent Skills·Learn more about Agent Skills
Back to repository

write-changelog

verified

Generate changelog entries from archived tickets and update CHANGELOG.md.

View on GitHub

Marketplace

workaholic

qmu/workaholic

Plugin

core

development

Repository

qmu/workaholic

plugins/core/skills/write-changelog/SKILL.md

Last Verified

February 4, 2026

Install Skill

Select agents to install to:

Scope:
npx add-skill https://github.com/qmu/workaholic/blob/main/plugins/core/skills/write-changelog/SKILL.md -a claude-code --skill write-changelog

Installation paths:

Claude
.claude/skills/write-changelog/
Powered by add-skill CLI

Instructions

# Write Changelog

Generate and update CHANGELOG.md with entries from archived tickets.

## Generate Entries

Run the bundled script to generate changelog entries:

```bash
bash .claude/skills/write-changelog/sh/generate.sh <branch-name> <repo-url>
```

The script outputs formatted markdown grouped by category (Added, Changed, Removed).

### Output Format

```markdown
### Added

- Title ([hash](commit-url)) - [ticket](ticket-path)

### Changed

- Title ([hash](commit-url)) - [ticket](ticket-path)

### Removed

- Title ([hash](commit-url)) - [ticket](ticket-path)
```

Only categories with entries are included.

### Entry Format

Each entry includes:

- **Title**: H1 heading from ticket file
- **hash**: Short commit hash linking to GitHub commit
- **ticket**: Relative path to archived ticket file

## Derive Issue URL

From branch name:

- Extract issue number from branch (e.g., `i111-20260113-1832` -> `111`)
- Branch format: `i<issue>-<date>-<time>` or `feat-<date>-<time>` (no issue)

## Update CHANGELOG.md

Add a new section at the top of the changelog (after the `# Changelog` header):

```markdown
## [branch-name](issue-url)

<entries from script>
```

If no issue number exists in branch name, use just the branch name without link:

```markdown
## branch-name
```

## Verify Structure

Ensure the changelog maintains proper structure:

- Title line at top: `# Changelog`
- Newest section first
- Blank lines between sections

Validation Details

Front Matter
Required Fields
Valid Name Format
Valid Description
Has Sections
Allowed Tools
Instruction Length:
1416 chars