git-workflow · agno-agi — skill for Claude Code: commit and branch guidelines
A skill that enforces best practices for commits, branch names, and pull requests. Includes commit message validation, branch naming templates, and PR checklist structure — useful if your team has git standards.
npx skills add agno-agi/agno --skill git-workflow -a claude-codeWhat git-workflow does
git-workflow provides three core elements: commit message format following type(scope): description with types like feat, fix, docs, refactor; branch naming conventions (feature/TICKET-123-description); and a PR template with testing and documentation checklist. The skill includes a Python script (commit_message.py) for validating and generating messages.
This is a guidance tool that suggests format and reminds you of best practices but does not block commits. Works with Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, and OpenCode. Installation varies by editor: for Claude Code, run npx skills add agno-agi/agno --skill git-workflow -a claude-code.
What it helps with
- Format commits as Conventional Commits with type and scope
- Choose a branch name that links a ticket ID to the work
- Fill a PR description template with testing notes and checklist
- Validate commit messages before pushing to the repository
- Teach team members a consistent git workflow
Example prompts for the agent
- What's the right commit message for adding OAuth2 support?
- Help me pick a branch name for a null pointer bug fix
- Generate a PR description for dependency updates
How to install git-workflow
1Skills CLI (Vercel)
npx skills add agno-agi/agno --skill git-workflow -a claude-code2Manually: put the files in place
~/.claude/skills/git-workflow/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/git-workflow/
1Skills CLI (Vercel)
npx skills add agno-agi/agno --skill git-workflow -a codex2Manually: put the files in place
.agents/skills/git-workflow/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add agno-agi/agno --skill git-workflow -a cursor2Manually: put the files in place
.cursor/skills/git-workflow/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install agno-agi/agno git-workflow2Manually: put the files in place
.github/skills/git-workflow/SKILL.md1Skills CLI (Vercel)
npx skills add agno-agi/agno --skill git-workflow -a gemini-cli2Platform CLI
gemini skills install https://github.com/agno-agi/agno --path cookbook/02_agents/16_skills/sample_skills/git-workflowManually: put the files in place
.devin/skills/git-workflow/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add agno-agi/agno --skill git-workflow -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
From the same set3
The whole set →Other versions of git-workflow
Similar
Questions about git-workflow
How do I install git-workflow in Claude Code?
Run npx skills add agno-agi/agno --skill git-workflow -a claude-code. The skill file will appear at ~/.claude/skills/git-workflow/SKILL.md.
What does git-workflow do?
It provides a standard format for commit messages (feat, fix, docs, etc.), branch naming (feature/TICKET-description), and pull request structure with checklists for tests and documentation.
Does git-workflow validate commits automatically?
It includes a Python script (commit_message.py) to check and generate messages, but it is a guidance tool—it suggests format rather than blocking commits.
Source text
SKILL.md · Apache-2.0
---
name: git-workflow
description: Git workflow guidance for commits, branches, and pull requests
license: Apache-2.0
metadata:
version: "1.0.0"
author: agno-team
tags: ["git", "version-control", "workflow"]
---
# Git Workflow Skill
You are a Git workflow assistant. Help users with commits, branches, and pull requests following best practices.
## Commit Message Guidelines
For commit message generation and validation, use `get_skill_script("git-workflow", "commit_message.py")`.
### Format
```
<type>(<scope>): <subject>
<body>
<footer>
```
### Types
- **feat**: New feature
- **fix**: Bug fix
- **docs**: Documentation only
- **style**: Formatting, no code change
- **refactor**: Code change that neither fixes a bug nor adds a feature
- **perf**: Performance improvement
- **test**: Adding or updating tests
- **chore**: Maintenance tasks
### Examples
```
feat(auth): add OAuth2 login support
Implemented OAuth2 authentication flow with Google and GitHub providers.
Added token refresh mechanism and session management.
Closes #123
```
```
fix(api): handle null response from external service
Added null check before processing response data to prevent
NullPointerException when external service returns empty response.
Fixes #456
```
## Branch Naming
### Format
```
<type>/<ticket-id>-<short-description>
```
### Examples
- `feature/AUTH-123-oauth-login`
- `fix/BUG-456-null-pointer`
- `chore/TECH-789-update-deps`
## Pull Request Guidelines
### Title
Follow commit message format for the title.
### Description Template
```markdown
## Summary
Brief description of what this PR does.
## Changes
- Change 1
- Change 2
## Testing
How was this tested?
## Checklist
- [ ] Tests added/updated
- [ ] Documentation updated
- [ ] No breaking changes
```
## Common Commands
### Starting Work
```bash
git checkout main
git pull origin main
git checkout -b feature/TICKET-123-description
```
### Committing
```bash
git add -p # Interactive staging
git commit -m "type(scope): description"
```
### Updating Branch
```bash
git fetch origin
git rebase origin/main
```
### Creating PR
```bash
git push -u origin feature/TICKET-123-description
# Then create PR on GitHub/GitLab
```
© agno-team · Apache-2.0 · agno-agi/agno