Get the FREE Ultimate OpenClaw Setup Guide →

changelog

npx machina-cli add skill jikig-ai/soleur/changelog --openclaw
Files (1)
SKILL.md
4.7 KB

Changelog Generator

Generate a fun, engaging changelog for an internal development team by summarizing the latest merges to the main branch, highlighting new features, bug fixes, and giving credit to the developers.

Time Period

  • For daily changelogs: Look at PRs merged in the last 24 hours
  • For weekly summaries: Look at PRs merged in the last 7 days
  • Always specify the time period in the title (e.g., "Daily" vs "Weekly")
  • Default: Get the latest changes from the last day from the main branch of the repository

PR Analysis

Analyze the provided GitHub changes and related issues. Look for:

  1. New features that have been added
  2. Bug fixes that have been implemented
  3. Any other significant changes or improvements
  4. References to specific issues and their details
  5. Names of contributors who made the changes
  6. Use gh cli to lookup the PRs as well and the description of the PRs
  7. Check PR labels to identify feature type (feature, bug, chore, etc.)
  8. Look for breaking changes and highlight them prominently
  9. Include PR numbers for traceability
  10. Check if PRs are linked to issues and include issue context

Content Priorities

  1. Breaking changes (if any) - MUST be at the top
  2. User-facing features
  3. Critical bug fixes
  4. Performance improvements
  5. Developer experience improvements
  6. Documentation updates

Formatting Guidelines

Create a changelog summary with the following guidelines:

  1. Keep it concise and to the point
  2. Highlight the most important changes first
  3. Group similar changes together (e.g., all new features, all bug fixes)
  4. Include issue references where applicable
  5. Mention the names of contributors, giving them credit for their work
  6. Add a touch of humor or playfulness to make it engaging
  7. Use emojis sparingly to add visual interest
  8. Keep total message under 2000 characters for Discord
  9. Use consistent emoji for each section
  10. Format code/technical terms in backticks
  11. Include PR numbers in parentheses (e.g., "Fixed login bug (#123)")

Deployment Notes

When relevant, include:

  • Database migrations required
  • Environment variable updates needed
  • Manual intervention steps post-deploy
  • Dependencies that need updating

The final output should be formatted as follows:

<change_log>

🚀 [Daily/Weekly] Change Log: [Current Date]

🚨 Breaking Changes (if any)

[List any breaking changes that require immediate attention]

🌟 New Features

[List new features here with PR numbers]

🐛 Bug Fixes

[List bug fixes here with PR numbers]

🛠️ Other Improvements

[List other significant changes or improvements]

🙌 Shoutouts

[Mention contributors and their contributions]

🎉 Fun Fact of the Day

[Include a brief, work-related fun fact or joke]

</change_log>

Style Guide Review

Review the changelog using the EVERY_WRITE_STYLE.md file and go one by one to ensure adherence to the style guide. Use multiple agents, run in parallel to make it faster.

Remember, the final output should only include the content within the <change_log> tags. Do not include any thought process or original data in the output.

Discord Posting (Optional)

Post changelogs to Discord by adding a webhook URL:

First get the webhook URL with printenv DISCORD_WEBHOOK_URL, then post using curl with the literal URL:

curl -H "Content-Type: application/json" \
  -d "{\"content\": \"{{CHANGELOG}}\"}" \
  "<webhook-url>"

Replace <webhook-url> with the actual Discord webhook URL.

To get a webhook URL, go to Discord server > Server Settings > Integrations > Webhooks > New Webhook.

Error Handling

  • If no changes in the time period, post a "quiet day" message: "🌤️ Quiet day! No new changes merged."
  • If unable to fetch PR details, list the PR numbers for manual review
  • Always validate message length before posting to Discord (max 2000 chars)

Schedule Recommendations

  • Run daily at 6 AM NY time for previous day's changes
  • Run weekly summary on Mondays for the previous week
  • Special runs after major releases or deployments

Audience Considerations

Adjust the tone and detail level based on the channel:

  • Dev team channels: Include technical details, performance metrics, code snippets
  • Product team channels: Focus on user-facing changes and business impact
  • Leadership channels: Highlight progress on key initiatives and blockers

Source

git clone https://github.com/jikig-ai/soleur/blob/main/plugins/soleur/skills/changelog/SKILL.mdView on GitHub

Overview

Changelog Generator crafts concise, engaging summaries of the latest merges to the main branch. It analyzes PR labels, issues, and descriptions to surface breaking changes, new features, bug fixes, and contributor shoutouts, making release notes clear and entertaining. Each entry includes PR numbers for traceability and links back to the discussion.

How This Skill Works

The skill uses the `gh` CLI to fetch PRs merged within a specified time window, then analyzes labels (e.g., feature, bug, chore) and linked issues. It categorizes changes into breaking changes, new features, and fixes, pulls contributor names, and formats the output with PR numbers for easy reference.

When to Use It

  • Daily changelog for the last 24 hours
  • Weekly summary for the last 7 days
  • Release notes for the latest main-branch merges
  • What merged today or this week
  • Scheduled internal updates and handoffs

Quick Start

  1. Step 1: Trigger the skill with one of the supported phrases (e.g., "create changelog", "daily changelog", or "release notes").
  2. Step 2: Specify the time period (last 24h for daily, last 7 days for weekly) or let it default to the latest changes from main.
  3. Step 3: Review the generated changelog and publish to your internal docs or channel.

Best Practices

  • Place breaking changes at the top of the changelog with clear impact notes
  • Group items by type: New Features, Bug Fixes, Chores, etc.
  • Include PR numbers and linked issue references for traceability
  • Credit contributors by name and handle in shoutouts
  • Keep descriptions concise and add a light touch of humor or personality

Example Use Cases

  • Daily changelog (2026-03-08): 🚀 New feature `Dashboard Widgets` added in PR (#123 by @alice). 🐛 Bug fix in PR (#124 by @bob) improves auth flow. Breaking change: `config.yaml` migration required (#125). Shoutouts to @carol and #126 for UI polish.
  • Weekly summary (2026-03-01 to 2026-03-07): 🔧 Chore cleanup and refactors in PRs (#130, #131) by @dave. 🆕 Feature: `Export to CSV` in PR (#132 by @erin). 🐛 Fix: intermittent crash fixed in PR (#133 by @frank). Breaking change: `db_connection` upgrade in PR (#134).
  • Release notes (latest main): 💡 Feature: `AI-assisted validation` in PR (#135 by @grace). 🐛 Bug: fixed flaky tests in PR (#136 by @helen). 🛠️ Devex: docs updated in PR (#137 by @ian).
  • What merged this week: Feature enhancements in PR (#138 by @jill) and bug fixes in PR (#139 by @ken). Shoutouts to contributors @linda, @mike for review and feedback.
  • Internal update: `performance-improvements` merged (#140 by @nina). Breaking change: `cache layer` rework requires config refresh (#141).

Frequently Asked Questions

Add this skill to your agents
Sponsor this space

Reach thousands of developers