create-github-release
Acerca de
Esta habilidad automatiza la creación de lanzamientos en GitHub con etiquetas de versionado semántico apropiadas, generación de registros de cambios y subida opcional de artefactos. Está diseñada para publicar versiones estables de software, bibliotecas o aplicaciones mediante GitHub CLI. Úsela cuando necesite distribuir artefactos de compilación junto con notas de lanzamiento estructuradas para las partes interesadas.
Instalación rápida
Claude Code
Recomendadonpx skills add pjt222/agent-almanac -a claude-code/plugin add https://github.com/pjt222/agent-almanacgit clone https://github.com/pjt222/agent-almanac.git ~/.claude/skills/create-github-releaseCopia y pega este comando en Claude Code para instalar esta habilidad
Documentación
Create GitHub Release
Tag + notes + artifacts → GitHub release.
Use When
- Mark stable ver for distrib
- Publish lib/app ver
- Release notes for stakeholders
- Distrib artifacts (bins, tarballs)
In
- Required: Ver # (semver)
- Required: Changes summary
- Optional: Build artifacts
- Optional: Pre-release flag
Do
Step 1: Ver
Semver (MAJOR.MINOR.PATCH):
| Change | Example | When |
|---|---|---|
| MAJOR | 1.0.0 -> 2.0.0 | Breaking |
| MINOR | 1.0.0 -> 1.1.0 | New feat, backward compat |
| PATCH | 1.0.0 -> 1.0.1 | Bug fix only |
Got: Ver matches change scope.
If err: Doubt breaking → review public API diff. Any removal / signature change of exported fn → breaking → MAJOR.
Step 2: Ver in Project Files
DESCRIPTION(R pkgs)package.json(Node)Cargo.toml(Rust)pyproject.toml(Python)
Got: Ver updated + committed.
If err: Already updated (usethis::use_version()) → verify match.
Step 3: Notes
Changelog by cat:
## What's Changed
### New Features
- Added user authentication (#42)
- Support for custom themes (#45)
### Bug Fixes
- Fixed crash on empty input (#38)
- Corrected date parsing in UTC (#41)
### Improvements
- Improved error messages
- Updated dependencies
### Breaking Changes
- `old_function()` renamed to `new_function()` (#50)
**Full Changelog**: https://github.com/user/repo/compare/v1.0.0...v1.1.0
Got: Notes by cat (feat/fix/breaking) + issue/PR refs.
If err: Hard to categorize → git log v1.0.0..HEAD --oneline → reconstruct.
Step 4: Tag
git tag -a v1.1.0 -m "Release v1.1.0"
git push origin v1.1.0
Got: Tag local + remote. git tag -l shows.
If err: Tag exists → git tag -d v1.1.0 && git push origin :refs/tags/v1.1.0 + recreate. Push rejected → check write access.
Step 5: Release
gh CLI (rec):
gh release create v1.1.0 \
--title "v1.1.0" \
--notes-file CHANGELOG.md
Artifacts:
gh release create v1.1.0 \
--title "v1.1.0" \
--notes "Release notes here" \
build/app-v1.1.0.tar.gz \
build/app-v1.1.0.zip
Pre-release:
gh release create v2.0.0-beta.1 \
--title "v2.0.0 Beta 1" \
--prerelease \
--notes "Beta release for testing"
Got: Release on GitHub w/ tag + notes + artifacts.
If err: gh not auth → gh auth login. Tag not on remote → git push origin v1.1.0.
Step 6: Auto-Gen Notes
gh release create v1.1.0 \
--title "v1.1.0" \
--generate-notes
Cats in .github/release.yml:
changelog:
categories:
- title: New Features
labels:
- enhancement
- title: Bug Fixes
labels:
- bug
- title: Documentation
labels:
- documentation
- title: Other Changes
labels:
- "*"
Got: Notes from merged PR titles by label. .github/release.yml → cats.
If err: Empty notes → PRs merged (not closed) + labels. Manual fallback.
Step 7: Verify
# List releases
gh release list
# View specific release
gh release view v1.1.0
Got: List shows. View shows correct title/tag/notes/assets.
If err: Missing → check Actions workflows. Verify tag: git tag -l.
Check
- Ver tag = semver
- Tag = correct commit
- Notes accurate
- Artifacts attached + downloadable
- Release visible on repo page
- Pre-release flag correct
Traps
- Wrong commit tag: Verify
git logpre-tag. Tag after ver-bump commit. - No push tags:
git pushdoesn't. Usegit push --tags/git push origin v1.1.0. - Ver fmt inconsist:
v1.0.0vs1.0.0→ pick + stick. - Empty notes: Always meaningful. Users need "what changed".
- Delete+recreate tags: Avoid. Create new ver instead.
→
commit-changes— stage + commitmanage-git-branches— branch mgmt for release preprelease-package-version— R-specificconfigure-git-repository— git setupsetup-github-actions-ci— auto releases via CI
Repositorio GitHub
Habilidades relacionadas
content-collections
MetaEsta habilidad proporciona una configuración probada en producción para Content Collections, una herramienta centrada en TypeScript que transforma archivos Markdown/MDX en colecciones de datos con tipado seguro mediante validación Zod. Úsala al construir blogs, sitios de documentación o aplicaciones Vite + React con mucho contenido para garantizar seguridad de tipos y validación automática de contenido. Abarca todo, desde la configuración del plugin de Vite y compilación MDX hasta la optimización de despliegue y validación de esquemas.
polymarket
MetaEsta habilidad permite a los desarrolladores crear aplicaciones con la plataforma de mercados de predicción Polymarket, incluyendo la integración de API para operaciones y datos de mercado. También proporciona transmisión de datos en tiempo real a través de WebSocket para monitorear operaciones en vivo y actividad del mercado. Úsela para implementar estrategias de trading o crear herramientas que procesen actualizaciones de mercado en tiempo real.
creating-opencode-plugins
MetaEsta habilidad ayuda a los desarrolladores a crear complementos de OpenCode que se conectan a más de 25 tipos de eventos, como comandos, archivos y operaciones LSP. Proporciona la estructura del complemento, las especificaciones de la API de eventos y los patrones de implementación para módulos en JavaScript/TypeScript. Úsala cuando necesites interceptar, monitorear o extender el ciclo de vida del asistente de IA de OpenCode con lógica personalizada basada en eventos.
sglang
MetaSGLang es un framework de alto rendimiento para el servicio de LLM que se especializa en generación rápida y estructurada para JSON, expresiones regulares y flujos de trabajo de agentes utilizando su caché de prefijos RadixAttention. Ofrece una inferencia significativamente más rápida, especialmente para tareas con prefijos repetidos, lo que lo hace ideal para salidas complejas y estructuradas, y conversaciones multiturno. Elige SGLang sobre alternativas como vLLM cuando necesites decodificación restringida o estés construyendo aplicaciones con uso extensivo de prefijos compartidos.
