mirror of
https://github.com/alirezarezvani/ClaudeForge.git
synced 2026-07-03 10:23:15 -04:00
feat(commands): add GitHub workflow integration slash commands
Phase 4: Claude Code Slash Commands Created 4 GitHub Integration Commands: 1. /github-init - CI/CD system initialization - Runs bootstrap workflow - Creates dev branch - Configures branch protection - Sets default branch to dev - Complete setup verification 2. /commit-smart - Smart commits with quality gates - Pre-commit validation (Python, Bash, secrets) - Conventional Commits format generation - Interactive commit message builder - Quality checks before committing 3. /create-pr - Pull request creation - Branch validation - Target branch detection (dev/main) - PR title generation (Conventional Commits) - PR template population - Workflow trigger explanation 4. /release - GitHub release creation - Version validation (semantic versioning) - CHANGELOG.md integration - Automated release notes - Post-release actions guide All commands provide: - Step-by-step guidance - Copy-paste ready commands - Validation checks - Error handling - Links to documentation Integration with workflows: - Commands trigger bootstrap, pr-into-dev, dev-to-main, release workflows - Enforces quality gates and conventions - Aligns with branching strategy Next: Test workflows with sample feature PR
This commit is contained in:
@@ -0,0 +1,184 @@
|
||||
---
|
||||
title: /create-pr
|
||||
description: Create pull request with proper validation
|
||||
---
|
||||
|
||||
# Create Pull Request
|
||||
|
||||
You are helping the user create a pull request that follows ClaudeForge conventions.
|
||||
|
||||
## Workflow
|
||||
|
||||
1. **Detect Current Branch**
|
||||
```bash
|
||||
CURRENT_BRANCH=$(git branch --show-current)
|
||||
echo "Current branch: $CURRENT_BRANCH"
|
||||
```
|
||||
|
||||
2. **Determine Target Branch**
|
||||
- If current branch starts with `feature/`, `fix/`, `hotfix/`, `test/`, `refactor/`, `docs/`:
|
||||
- Target: `dev`
|
||||
- If current branch is `dev`:
|
||||
- Target: `main` (release PR)
|
||||
- Otherwise: Ask user
|
||||
|
||||
3. **Validate Branch Name**
|
||||
- Check if branch follows convention
|
||||
- If not, suggest renaming:
|
||||
```bash
|
||||
git branch -m feature/new-name
|
||||
```
|
||||
|
||||
4. **Check for Uncommitted Changes**
|
||||
```bash
|
||||
git status --short
|
||||
```
|
||||
- If changes exist, suggest committing first
|
||||
|
||||
5. **Push Branch** (if needed)
|
||||
```bash
|
||||
git push -u origin $CURRENT_BRANCH
|
||||
```
|
||||
|
||||
6. **Generate PR Title**
|
||||
- Based on commits since target branch
|
||||
- Must follow Conventional Commits format
|
||||
- Examples:
|
||||
- `feat(installer): add Windows PowerShell support`
|
||||
- `fix(skill): correct template selection logic`
|
||||
- `docs: update installation guide`
|
||||
|
||||
7. **Generate PR Description**
|
||||
|
||||
Use PR template format:
|
||||
```markdown
|
||||
## Description
|
||||
[Describe changes]
|
||||
|
||||
## Type of Change
|
||||
- [x] [Selected type]
|
||||
|
||||
## Related Issues
|
||||
Closes #[issue number]
|
||||
|
||||
## Changes Made
|
||||
- Change 1
|
||||
- Change 2
|
||||
|
||||
## Testing Performed
|
||||
- [x] Tested installation
|
||||
- [x] Tested slash command
|
||||
...
|
||||
```
|
||||
|
||||
8. **Create PR**
|
||||
```bash
|
||||
gh pr create \
|
||||
--base [target branch] \
|
||||
--title "[PR title]" \
|
||||
--body "[PR description]"
|
||||
```
|
||||
|
||||
Or for draft:
|
||||
```bash
|
||||
gh pr create --draft \
|
||||
--base [target branch] \
|
||||
--title "[PR title]" \
|
||||
--body "[PR description]"
|
||||
```
|
||||
|
||||
9. **Post-Creation**
|
||||
- Show PR URL
|
||||
- Explain what workflows will run:
|
||||
- For PR to dev: `pr-into-dev.yml`
|
||||
- For PR to main: `dev-to-main.yml`
|
||||
- Link to workflow documentation
|
||||
|
||||
## Validation Checklist
|
||||
|
||||
Before creating PR, verify:
|
||||
- ✅ Branch name follows convention
|
||||
- ✅ PR title follows Conventional Commits
|
||||
- ✅ At least one issue referenced
|
||||
- ✅ All changes committed and pushed
|
||||
- ✅ Target branch is correct
|
||||
|
||||
## Examples
|
||||
|
||||
**Feature PR to dev:**
|
||||
```bash
|
||||
gh pr create \
|
||||
--base dev \
|
||||
--title "feat(skill): add Rust template support" \
|
||||
--body "## Description
|
||||
|
||||
Adds Rust project template with Cargo.toml detection and
|
||||
appropriate CLAUDE.md generation.
|
||||
|
||||
## Type of Change
|
||||
- [x] New feature
|
||||
|
||||
## Related Issues
|
||||
Closes #42
|
||||
|
||||
## Changes Made
|
||||
- Add Rust template in skill/examples/
|
||||
- Update template_selector.py with Rust detection
|
||||
- Add Rust-specific validation rules
|
||||
|
||||
## Testing Performed
|
||||
- [x] Tested on sample Rust project
|
||||
- [x] Validated template output
|
||||
- [x] Python syntax checks pass"
|
||||
```
|
||||
|
||||
**Release PR (dev to main):**
|
||||
```bash
|
||||
gh pr create \
|
||||
--base main \
|
||||
--title "release: v1.1.0" \
|
||||
--body "## Description
|
||||
|
||||
Release version 1.1.0 with new features and bug fixes.
|
||||
|
||||
## Changes in This Release
|
||||
- feat(skill): Rust template support
|
||||
- feat(installer): Windows improvements
|
||||
- fix(skill): Template selection bugs
|
||||
- docs: Updated installation guide
|
||||
|
||||
## Related Issues
|
||||
Closes #42, #45, #48
|
||||
|
||||
## CHANGELOG
|
||||
See CHANGELOG.md for full details.
|
||||
|
||||
## Testing
|
||||
- [x] All quality gates pass
|
||||
- [x] Tested installation on macOS, Linux, Windows
|
||||
- [x] Tested all new features"
|
||||
```
|
||||
|
||||
## Workflow Triggers
|
||||
|
||||
**PR to dev:**
|
||||
- Validates branch name (must be feature/*, fix/*, etc.)
|
||||
- Validates PR title (Conventional Commits)
|
||||
- Checks for linked issues
|
||||
- Runs quality gates (Python, Markdown, Bash, secrets)
|
||||
|
||||
**PR to main:**
|
||||
- Validates source branch (must be dev, release/*, or dependabot/*)
|
||||
- Checks CHANGELOG.md updated
|
||||
- Validates production build
|
||||
- Runs full quality gates
|
||||
|
||||
## Success Output
|
||||
|
||||
Show user:
|
||||
1. PR URL
|
||||
2. Workflow status link
|
||||
3. Next steps (wait for CI, request review)
|
||||
4. Link to relevant docs (GITHUB_WORKFLOWS.md, BRANCHING_STRATEGY.md)
|
||||
|
||||
Provide clear guidance and actual commands user can run.
|
||||
Reference in New Issue
Block a user