Agent skill
changelog-rene-kuhm-opencode-ohmyopencod
Generar changelog semántico basado en commits y PRs. Sigue el formato Keep a Changelog y Conventional Commits.
Install this agent skill to your Project
npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/other/other/changelog-rene-kuhm-opencode-ohmyopencod
SKILL.md
Changelog Skill
Eres un experto en documentación de releases. Tu rol es generar changelogs claros, útiles y bien estructurados siguiendo estándares de la industria.
Formato: Keep a Changelog
Seguimos el formato Keep a Changelog:
# Changelog
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [Unreleased]
### Added
- New features
### Changed
- Changes in existing functionality
### Deprecated
- Soon-to-be removed features
### Removed
- Now removed features
### Fixed
- Bug fixes
### Security
- Vulnerability fixes
## [1.0.0] - 2024-12-25
### Added
- Initial release
Proceso de Generación
1. Obtener Commits desde Última Release
# Obtener última tag
LAST_TAG=$(git describe --tags --abbrev=0 2>/dev/null || echo "")
# Commits desde última release
if [ -n "$LAST_TAG" ]; then
git log ${LAST_TAG}..HEAD --pretty=format:"%h|%s|%an|%ad" --date=short
else
git log --pretty=format:"%h|%s|%an|%ad" --date=short
fi
2. Parsear Conventional Commits
Tipos de commit:
| Prefix | Category | Example |
|---|---|---|
feat: |
Added | feat: add user authentication |
fix: |
Fixed | fix: resolve login timeout |
docs: |
(skip) | docs: update README |
style: |
(skip) | style: format code |
refactor: |
Changed | refactor: restructure API |
perf: |
Changed | perf: optimize database queries |
test: |
(skip) | test: add unit tests |
chore: |
(skip) | chore: update dependencies |
security: |
Security | security: fix XSS vulnerability |
deprecate: |
Deprecated | deprecate: mark old API |
remove: |
Removed | remove: legacy endpoints |
3. Template de Changelog Entry
## [X.Y.Z] - YYYY-MM-DD
### Added
- **Feature Name**: Brief description of the feature ([#123](link))
- Additional details if needed
### Changed
- **Component/Module**: What changed and why ([#124](link))
### Fixed
- **Bug Title**: What was wrong and how it's fixed ([#125](link))
### Security
- **CVE-XXXX-XXXXX**: Description of security fix ([#126](link))
Comandos
GENERATE - Crear nuevo changelog
# Ver historial de commits
git log --oneline -30
# Ver PRs mergeados (si usa GitHub)
gh pr list --state merged --limit 20
# Crear versión
VERSION=$(cat package.json | jq -r '.version')
UPDATE - Actualizar changelog existente
- Leer CHANGELOG.md actual
- Mover contenido de [Unreleased] a nueva versión
- Crear nueva sección [Unreleased] vacía
- Actualizar links de comparación
Guías de Escritura
DO ✅
- Escribir en imperativo: "Add feature" no "Added feature"
- Ser específico: "Fix login timeout on slow networks"
- Incluir contexto: "Remove deprecated v1 API (deprecated in v2.0.0)"
- Linkear a issues/PRs relevantes
- Agrupar cambios relacionados
DON'T ❌
- Commits de merge: "Merge branch 'feature'"
- Muy vago: "Fix bug"
- Muy técnico: "Refactor AbstractFactoryProvider"
- Cambios internos que no afectan usuarios
- Duplicar información
Ejemplo de Output
## [2.1.0] - 2024-12-25
### Added
- **Dark Mode**: Users can now switch between light and dark themes
- Persists preference in localStorage
- Respects system preference by default ([#234](https://github.com/org/repo/pull/234))
- **Export to PDF**: Generate PDF reports from dashboard ([#236](https://github.com/org/repo/pull/236))
- **Keyboard Shortcuts**: Navigate faster with Vim-style bindings ([#238](https://github.com/org/repo/pull/238))
### Changed
- **Dashboard Performance**: Reduced initial load time by 40% through lazy loading ([#240](https://github.com/org/repo/pull/240))
- **API Response Format**: Standardized error responses to follow RFC 7807 ([#242](https://github.com/org/repo/pull/242))
- ⚠️ Breaking change for clients parsing error responses
### Fixed
- **Login Timeout**: Fixed intermittent 504 errors on slow networks ([#244](https://github.com/org/repo/pull/244))
- **Date Picker**: Correct timezone handling for international users ([#246](https://github.com/org/repo/pull/246))
### Security
- **XSS Prevention**: Sanitize user-generated content in comments ([#248](https://github.com/org/repo/pull/248))
- CVE-2024-12345
### Deprecated
- **v1 API**: Will be removed in v3.0.0. Migrate to v2 API endpoints.
[2.1.0]: https://github.com/org/repo/compare/v2.0.0...v2.1.0
Integración con CI/CD
# GitHub Action para changelog automático
name: Update Changelog
on:
push:
tags:
- 'v*'
jobs:
changelog:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Generate changelog
run: |
# Script de generación
./scripts/generate-changelog.sh
Resumen del Output
📋 CHANGELOG GENERATION COMPLETE
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Version: 2.1.0
Date: 2024-12-25
Commits analyzed: 47
Changes by Category:
✨ Added: 3
🔄 Changed: 2
🐛 Fixed: 2
🔒 Security: 1
⚠️ Deprecated: 1
Files Modified:
- CHANGELOG.md (updated)
Next Steps:
1. Review the generated changelog
2. Adjust wording if needed
3. Commit: git commit -am "docs: update changelog for v2.1.0"
4. Tag: git tag v2.1.0
5. Push: git push && git push --tags
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
Didn't find tool you were looking for?