Agent skill
workflow
Gerencia fluxo Git com commits atômicos seguindo Conventional Commits. Use quando precisar organizar commits, gerenciar branches, ou seguir padrões de versionamento Git.
Install this agent skill to your Project
npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/other/other/workflow-aronpc-ai
Metadata
Additional technical details for this skill
- author
- aronpc
- version
- 1.0.0
- category
- github
SKILL.md
workflow
Resumo
Gerencia fluxo Git com commits atômicos seguindo Conventional Commits.
Skills Relacionadas
| Skill | Quando usar junto |
|---|---|
coder |
Para commits após implementação |
sprint |
Para commits de tarefas do sprint |
pr-review |
Para preparar PRs bem estruturados |
cicd |
Para triggers de CI/CD |
standards |
Para pre-commit hooks |
Quando usar
Use esta skill sempre que:
- Antes de fazer commits
- Para revisar histórico de commits
- Para configurar pre-commit hooks
- Para gerenciar branches e feature branches
- Para configurar regras de merge e pull requests
CRÍTICO: Commits Atômicos
NUNCA commit como "Claude" ou "AI Assistant" - commits são SEMPRE no nome do desenvolvedor.
CRÍTICO: Regras de Mensagem de Commit
NUNCA incluir o seguinte em mensagens de commit:
- ❌
🤖 Generated with [Claude Code](https://claude.com/claude-code) - ❌
Co-Authored-By: Claude <[email protected]> - ❌ Qualquer atribuição ou assinatura relacionada a AI
Commits devem parecer como foram escritos por um desenvolvedor humano.
Regras de Commit
-
Um commit = Uma mudança lógica
- Uma feature = um commit
- Um bug fix = um commit
- Um refactor = um commit
-
Formato de Mensagem:
<type>: <descrição curta> <descrição detalhada se necessária> - Ponto de mudanças - Outra mudança -
Tipos de Commit:
feat:Nova featurefix:Bug fixrefactor:Refatoração de códigodocs:Documentaçãotest:Testeschore:Manutenção
-
Quando Fazer Commit:
- Após completar uma feature
- Após fixar um bug
- Após adicionar testes
- Após rodar
composer fixcom sucesso
Workflow Git
# 1. Faça mudanças no código
# 2. Execute verificações de qualidade
composer fix
composer test
# 3. Stage apenas arquivos relacionados
git add app/Http/Controllers/Owner/StaffController.php
git add resources/js/pages/owner/staff/
# 4. Commit com mensagem descritiva
git commit -m "feat: Add StaffController with CRUD operations"
# 5. Atualize documentação em commit separado
git add IMPLEMENTATION.md
git commit -m "docs: Mark Staff Management as complete"
Exemplos de Bons Commits
# ✅ GOOD - atômico, focado
git commit -m "feat: Add Staff Management CRUD
Implemented complete staff management system:
- StaffController with index, create, store, edit, update, destroy
- React pages: index, create, edit, businesses
- StaffForm reusable component
- Translations in EN, ES, PT-BR
- Plan limit enforcement"
# ✅ GOOD - documentação separada
git commit -m "docs: Update implementation progress for Staff Management"
Exemplos de Commits Ruins
# ❌ BAD - muito grande, múltiplas features
git commit -m "Added everything"
# ❌ BAD - mensagem vaga
git commit -m "Fixed stuff"
# ❌ BAD - misturando features
git commit -m "Added staff management and fixed menu bug"
Estrutura de Mensagem de Commit
Formato Completo
<type>(<escopo>): <assunto>
<body>
<footer>
Type (Obrigatório)
feat: Nova featurefix: Bug fixdocs: Mudanças na documentaçãostyle: Formatação, missing semi colons, etc (sem mudança de código)refactor: Refatoração de códigotest: Adicionando testes faltando ou corrigindo testes existenteschore: Atualização de tarefas de build, configuração, etc.
Scope (Opcional)
O escopo deve indicar a área do código afetada:
controller: Para controllersmodel: Para modelsmigration: Para migrationsfilament: Para resources/pages Filamenti18n: Para traduçõestests: Para testes
Subject (Obrigatório)
- Use tempo imperativo ("add" não "added" ou "adds")
- Não coloque primeira letra maiúscula
- Não termine com ponto (.)
- Limite de 72 caracteres
Body (Opcional)
- Use tempo imperativo
- Inclue motivo do mudança e对比 com comportamento anterior
- Cada linha máxima de 72 caracteres
Footer (Opcional)
- Referencie issues fechados
- Liste breaking changes
Workflow de Branches
Branch Strategy
| Branch | Propósito | Estabilidade |
|---|---|---|
main |
Produção | ✅ Sempre estável |
develop |
Desenvolvimento | ⚠️ Pode ser instável |
feature/* |
Features | 🔨 Em desenvolvimento |
Criando Feature Branch
# Crie branch de feature a partir de develop
git checkout develop
git pull origin develop
git checkout -b feature/staff-management
# Trabalhe na feature
# ... faça mudanças ...
# Commit com mensagens apropriadas
git add .
git commit -m "feat: add staff controller"
# Push para origin
git push origin feature/staff-management
# Crie pull request para develop
Merge Strategy
# ✅ GOOD - Squash and merge (develop -> main)
git checkout main
git merge develop --squash
git commit -m "release: v1.8.0"
git push origin main
# ✅ GOOD - Rebase feature branch antes de merge
git checkout feature/staff-management
git rebase develop
git push origin feature/staff-management --force
Pull Requests
Criando Pull Request
# Após push de feature branch
gh pr create \
--title "feat: Add Staff Management" \
--body "Implementa gestão completa de funcionários:
## Changes
- StaffController com operações CRUD
- Páginas React para list, create, edit
- StaffForm component reutilizável
- Traduções EN, ES, PT-BR
- Validação de limites de plano
## Testing
- [x] Testes unitários para Actions
- [x] Testes de feature para endpoints HTTP
- [x] Testes de Policies
## Checklist
- [x] Sem N+1 queries
- [x] Traduções completas
- [x] Documentação atualizada" \
--base develop
Revisando Pull Request
# List PRs
gh pr list
# Ver diff do PR
gh pr diff 123
# Adicionar revisor
gh pr edit 123 --add-reviewer @username
# Aprovar PR
gh pr review 123 --approve
Solução de Problemas
Commit Acidental de Arquivos Errados
# Remove arquivos do último commit mas mantenha mudanças
git reset HEAD~1 path/to/file.php
# Commit correto
git commit -m "fix: correct commit message"
Editar Última Mensagem de Commit
git commit --amend -m "feat: corrected commit message"
Reverter Commit
# Reverter commit mas manter histórico
git revert <commit-hash>
# Reverter merge
git revert -m 1 <merge-commit-hash>
Reset para Remoto
# ATENÇÃO: Perde mudanças locais
git fetch origin
git reset --hard origin/main
Melhores Práticas
✅ FAÇA
- Faça commits atômicos (uma mudança lógica por commit)
- Use mensagens descritivas seguindo Conventional Commits
- Separe documentação em commits próprios
- Execute
composer fixecomposer testantes de commitar - Use feature branches para desenvolvimento
- Crie pull requests para revisão
- Mantenha histórico de commits limpo
- Use squash merge para integrar features
❌ NÃO FAÇA
- Não misture mudanças lógicas em um commit
- Não use mensagens vagas ("fix", "update", etc.)
- Não commite código que não passa nos testes
- Não commite arquivos gerados (.DS_Store, node_modules, etc.)
- Não faça commits diretos em main/develop
- Não force push em branches compartilhadas (sem razão muito boa)
- Não ignore conflitos de merge
- Não deixe branches velhas sem merge
Checklist de Commit
Antes de fazer commit:
-
composer fixexecutado com sucesso -
composer testpassando - Mudanças lógicas agrupadas
- Mensagem segue formato Conventional Commits
- Atribuição AI removida (se presente)
- Apenas arquivos relacionados stageados
- Documentação atualizada (veja
documentation-updates) - Sem dados sensíveis ou tokens
Documentação e Git
Integração com documentation-updates:
Após implementar features, atualize a documentação em commits separados:
# Commit de código primeiro
git add app/ resources/
git commit -m "feat: Add Staff Management CRUD"
# Commit de documentação separadamente
git add IMPLEMENTATION.md CHECKPOINT.md
git commit -m "docs: Update implementation progress - Staff Management complete"
Veja documentation-updates para:
- Quando atualizar IMPLEMENTATION.md (sempre após cada feature)
- Quando atualizar CHECKPOINT.md (após marcos principais)
- Quando atualizar README.md (raramente, apenas mudanças significativas)
- Tracking de features em sprints (veja
sprint-management)
Referências
- Conventional Commits - Especificação
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?