semantic-versioning
Faz seu agente gerenciar versões de software e criar changelogs. Ele segue regras para organizar as atualizações de forma clara.
O que ela faz
Esta ferramenta ajuda a gerenciar as versões do seu software de forma organizada. Ela atualiza automaticamente os números de versão e cria um registro das mudanças feitas, seguindo um padrão chamado 'versionamento semântico'.
Quando usar
- ✓Quando você lança uma nova funcionalidade.
- ✓Quando corrige um erro.
- ✓Quando faz uma alteração que pode quebrar o funcionamento de algo anterior.
Exemplo do que pedir para a IA
“Gere a próxima versão do meu projeto com base nas últimas mudanças.”
Quer saber mais? Abra as seções abaixo.
Como usar
O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.
Link da skill
Mensagem pronta para colar
Como funciona
A ferramenta analisa os comentários que você fez no código (chamados 'commits') para entender o tipo de mudança. Com base nisso, ela decide se aumenta o número da versão principal, secundária ou de correção e atualiza um arquivo de registro de alterações.
Instalação
Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.
No terminal (Claude Code, Codex, Cursor), na pasta do projeto:
npx skills add sickn33/agentic-awesome-skills --skill semantic-versioningOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/semantic-versioning/SKILL.md -o SKILL.mdConteúdo técnico (SKILL.md)
Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.
Versionamento Semântico
Automatize o gerenciamento de versões e a geração de changelogs seguindo os princípios do SemVer.
Pré-requisitos
- Repositório Git com histórico de commits
- Node.js (para a maioria das ferramentas)
- Commits convencionais (recomendado)
Noções Básicas de Versionamento Semântico
Formato da Versão
MAJOR.MINOR.PATCH[-PRERELEASE][+BUILD]
Examples:
1.0.0
2.1.3
1.0.0-alpha.1
1.0.0-beta.2+build.123
Componentes da Versão
| Componente | Quando Incrementar |
|---|---|
| MAJOR | Mudanças que quebram a compatibilidade (mudanças incompatíveis na API) |
| MINOR | Novas funcionalidades (compatível com versões anteriores) |
| PATCH | Correções de bugs (compatível com versões anteriores) |
| PRERELEASE | Versões pré-lançamento (alpha, beta, rc) |
| BUILD | Metadados de build (ignorados na precedência) |
Precedência de Versão
1.0.0-alpha < 1.0.0-alpha.1 < 1.0.0-alpha.beta
< 1.0.0-beta < 1.0.0-beta.2 < 1.0.0-beta.11
< 1.0.0-rc.1 < 1.0.0 < 2.0.0
Commits Convencionais para Versão
Commit Type → Version Bump:
feat: → MINOR
fix: → PATCH
docs: → PATCH (or no release)
style: → PATCH (or no release)
refactor: → PATCH
perf: → PATCH
test: → No release
chore: → No release
BREAKING CHANGE: → MAJOR
feat!: → MAJOR
fix!: → MAJOR
semantic-release
Instalação
npm install --save-dev semantic-release \
@semantic-release/changelog \
@semantic-release/git
Configuração
// .releaserc.json
{
"branches": ["main"],
"plugins": [
"@semantic-release/commit-analyzer",
"@semantic-release/release-notes-generator",
["@semantic-release/changelog", {
"changelogFile": "CHANGELOG.md"
}],
["@semantic-release/npm", {
"npmPublish": true
}],
["@semantic-release/git", {
"assets": ["CHANGELOG.md", "package.json", "package-lock.json"],
"message": "chore(release): ${nextRelease.version} [skip ci]\n\n${nextRelease.notes}"
}],
"@semantic-release/github"
]
}
Configuração Avançada
// release.config.js
module.exports = {
branches: [
'main',
{ name: 'beta', prerelease: true },
{ name: 'alpha', prerelease: true }
],
plugins: [
['@semantic-release/commit-analyzer', {
preset: 'angular',
releaseRules: [
{ type: 'docs', release: 'patch' },
{ type: 'refactor', release: 'patch' },
{ type: 'style', release: 'patch' },
{ type: 'perf', release: 'patch' },
{ breaking: true, release: 'major' }
]
}],
['@semantic-release/release-notes-generator', {
preset: 'angular',
writerOpts: {
commitsSort: ['subject', 'scope']
}
}],
'@semantic-release/changelog',
'@semantic-release/npm',
'@semantic-release/git',
'@semantic-release/github'
]
};
Integração com GitHub Actions
# .github/workflows/release.yml
name: Release
on:
push:
branches: [main]
jobs:
release:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
persist-credentials: false
- uses: actions/setup-node@v4
with:
node-version: '20'
- run: npm ci
- name: Release
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
run: npx semantic-release
standard-version
Instalação
npm install --save-dev standard-version
Configuração
// .versionrc.json
{
"types": [
{ "type": "feat", "section": "Features" },
{ "type": "fix", "section": "Bug Fixes" },
{ "type": "docs", "section": "Documentation" },
{ "type": "style", "section": "Styling" },
{ "type": "refactor", "section": "Code Refactoring" },
{ "type": "perf", "section": "Performance" },
{ "type": "test", "section": "Tests" },
{ "type": "chore", "section": "Maintenance" }
],
"skip": {
"bump": false,
"changelog": false,
"commit": false,
"tag": false
},
"commitUrlFormat": "https://github.com/owner/repo/commit/{{hash}}",
"compareUrlFormat": "https://github.com/owner/repo/compare/{{previousTag}}...{{currentTag}}"
}
Uso
# Primeiro lançamento
npx standard-version --first-release
# Lançamento regular (detecta automaticamente o aumento da versão)
npx standard-version
# Aumento de versão específico
npx standard-version --release-as minor
npx standard-version --release-as 1.1.0
# Pré-lançamento
npx standard-version --prerelease alpha
…
Perguntas frequentes
O que é 'versionamento semântico'?
É uma forma padronizada de numerar versões de software. O número tem três partes: MAJOR.MINOR.PATCH. MAJOR muda quando há alterações que quebram a compatibilidade, MINOR muda para novas funcionalidades e PATCH para correções de bugs.
Preciso usar 'commits convencionais'?
É recomendado. Eles são comentários no código que seguem um padrão (como 'feat:' para novas funcionalidades ou 'fix:' para correções), o que ajuda a ferramenta a entender melhor as mudanças e a gerar as versões corretamente.
Quais ferramentas essa skill usa?
Ela pode usar ferramentas como 'semantic-release' ou 'standard-version', além de outras para gerar o histórico de alterações (changelog).
Detalhes
Descrição original do autor
Automate versioning and changelog generation using semantic versioning principles.
Popularidade
- Estrelas no GitHub
- 48 mil
- Posição no ranking
- #4098
- Licença
- MIT
- Atualizada em
- 15/10/2026
Comentários
- …
Mais skills deste repositório
00-andruia-consultant
Ajuda seu agente a iniciar ou melhorar projetos de IA. Ele analisa código, sugere ferramentas e cria planos de ação em espanhol.
sickn33/agentic-awesome-skills
007
Faz seu agente realizar auditorias de segurança e modelagem de ameaças. É útil para proteger projetos contra ataques e vulnerabilidades.
sickn33/agentic-awesome-skills
10-andruia-skill-smith
Ajuda seu agente a criar ou melhorar ferramentas de IA. Ele define como as ferramentas funcionam, escreve a documentação e valida a estrutura.
sickn33/agentic-awesome-skills
20-andruia-niche-intelligence
Faz seu agente criar um resumo sobre um setor específico. É útil para entender o contexto, regras, padrões de uso e riscos de um projeto, usando fontes confiáveis.
sickn33/agentic-awesome-skills
Skills parecidas
bun-runtime
Faz seu agente usar o Bun para rodar, organizar e testar código. Ajuda a escolher o Bun em vez de outras ferramentas e a migrar projetos existentes.
affaan-m/ECC
database-migrations
Ajuda seu agente a fazer mudanças seguras em bancos de dados. Ele garante que as alterações possam ser desfeitas e minimiza o tempo de inatividade.
affaan-m/ECC
deployment-patterns
Configura fluxos de implantação e CI/CD, containerização e estratégias de rollback para garantir lançamentos seguros.
affaan-m/ECC