Automate Git commits, pull requests, releases, and CI/CD workflows
Automate Git commits, pull requests, releases, and CI/CD workflows
Automate GitHub workflows including intelligent auto-commits, CI/CD pipelines, automated releases, and pull request management. Saves time on repetitive Git operations and ensures consistent workflow practices.
Time Saved: ~20 minutes per workflow setup
Complexity: Medium
Prerequisites: Git, GitHub CLI (gh), Node.js
python3 /home/ubuntu/skills/github-workflow-automation/scripts/auto_commit.py /path/to/repo
python3 /home/ubuntu/skills/github-workflow-automation/scripts/auto_commit.py /path/to/repo "Add new feature"
# Copy template to project
cp /home/ubuntu/skills/github-workflow-automation/templates/ci-cd.yml /path/to/repo/.github/workflows/ci-cd.yml
Phase 1: Detection
Phase 2: Message Generation
Phase 3: Commit and Push
git add .)# Made changes to multiple files
python3 /home/ubuntu/skills/github-workflow-automation/scripts/auto_commit.py ~/my-project
# Output:
# 📁 Repository: /home/ubuntu/my-project
# 📝 Changes detected:
# M src/index.js
# M src/styles.css
# 💬 Commit message: Update JavaScript/TypeScript code
# 📦 Staging changes...
# 💾 Committing...
# ✅ Committed successfully
# 🌿 Current branch: main
# 🚀 Pushing to origin/main...
# ✅ Pushed successfully!
# 🎉 All done!
python3 /home/ubuntu/skills/github-workflow-automation/scripts/auto_commit.py ~/my-project "Fix critical bug in authentication"
# Output:
# 📁 Repository: /home/ubuntu/my-project
# 📝 Changes detected:
# M src/auth.js
# 💬 Commit message: Fix critical bug in authentication
# 📦 Staging changes...
# 💾 Committing...
# ✅ Committed successfully
# 🌿 Current branch: main
# 🚀 Pushing to origin/main...
# ✅ Pushed successfully!
# 🎉 All done!
# Create workflows directory
mkdir -p ~/my-project/.github/workflows
# Copy CI/CD template
cp /home/ubuntu/skills/github-workflow-automation/templates/ci-cd.yml ~/my-project/.github/workflows/ci-cd.yml
# Commit and push
python3 /home/ubuntu/skills/github-workflow-automation/scripts/auto_commit.py ~/my-project "Add CI/CD workflow"
The auto-commit script generates context-aware commit messages:
| File Types Changed | Generated Message | |--------------------|-------------------| | Only .md files | "Update documentation" | | .py files | "Update Python code" | | .js or .ts files | "Update JavaScript/TypeScript code" | | .json files | "Update configuration" | | .css or .scss files | "Update styles" | | Single file | "Update {filename}" | | Multiple files | "Update {count} files" |
Edit .github/workflows/ci-cd.yml:
# Change Node version
- uses: actions/setup-node@v3
with:
node-version: '20' # Change here
# Add environment variables
env:
DATABASE_URL: ${{ secrets.DATABASE_URL }}
API_KEY: ${{ secrets.API_KEY }}
# Customize deployment
- name: Deploy to production
run: |
npm run deploy # Your deploy command
# Tag a release
git tag v1.0.0
git push --tags
# GitHub Actions will automatically:
# 1. Build the project
# 2. Create a release
# 3. Upload artifacts
gh pr create --title "Add new feature" --body "Description of changes"
gh pr merge <pr-number> --squash
gh release create v1.0.0 --title "Version 1.0.0" --notes "Release notes"
gh run list
gh run view <run-id>
main - Production-ready codedevelop - Development branchfeature/* - Feature brancheshotfix/* - Urgent fixesProblem: "Not a git repository"
# Solution: Initialize git
cd /path/to/project
git init
git remote add origin <url>
Problem: "Failed to push"
# Solution: Pull first
git pull origin main --rebase
# Then run auto-commit again
Problem: Workflow file not detected
# Solution: Check file location
# Must be in .github/workflows/
# File must have .yml or .yaml extension
Problem: Workflow syntax error
# Solution: Validate YAML
# Use GitHub Actions validator or yamllint
Problem: "Permission denied" when pushing
# Solution: Check authentication
gh auth status
gh auth login
# Only run on specific paths
on:
push:
paths:
- 'src/**'
- '!**/*.md'
strategy:
matrix:
node-version: [16, 18, 20]
os: [ubuntu-latest, windows-latest]
# .github/workflows/reusable.yml
on:
workflow_call:
inputs:
environment:
required: true
type: string
scripts/auto_commit.py - Intelligent auto-commit and pushtemplates/ci-cd.yml - Complete CI/CD pipelinetemplates/release.yml - Automated release workflowreferences/workflow_patterns.md - Patterns and best practices1. User makes changes to code
2. User runs auto_commit.py
3. Script detects changes and generates message
4. Script commits and pushes
5. GitHub Actions triggers CI/CD
6. Tests run automatically
7. If tests pass, deploy to production
✅ Changes committed automatically
✅ Intelligent commit messages generated
✅ CI/CD pipeline runs on push
✅ Tests execute successfully
✅ Deployment automated
Manual Git Workflow: ~5 minutes per commit
With This Skill: ~30 seconds
Savings: ~4.5 minutes per commit
Daily Savings (10 commits): ~45 minutes
Created: February 10, 2026
Status: Production Ready
Tested: GitHub, GitHub Actions, GitHub CLI
Search for places (restaurants, cafes, etc.) via Google Places API proxy on localhost.
Interact with GitHub using the `gh` CLI. Use `gh issue`, `gh pr`, `gh run`, and `gh api` for issues, PRs, CI runs, and advanced queries.
Create or update AgentSkills. Use when designing, structuring, or packaging skills with scripts, references, and assets.
Start voice calls via the OpenClaw voice-call plugin.
Notion API for creating and managing pages, databases, and blocks.
Gemini CLI for one-shot Q&A, summaries, and generation.
Category:developer