| name | pr-workflow |
| description | Structured PR creation and CodeRabbit review workflow for Tarik's projects (Hakivo, Crate CLI, StoryForge, Extended Play, Radio Milwaukee tools). Use this skill when the user wants to open a pull request, create a feature branch, review PR status, respond to CodeRabbit comments, manage branch cleanup, or follow a professional git workflow. Trigger for any mention of PR, pull request, branch, CodeRabbit, code review, merging, or git workflow. |
PR + CodeRabbit Workflow Skill
A structured workflow for creating pull requests and working with CodeRabbit AI code review across all of Tarik's projects.
Core Philosophy
Even as a solo builder, PRs are your paper trail — for building in public, for hackathon judges, and for auditing AI-generated code from Claude Code sessions.
Rule of thumb:
- Small config/typo fix → push direct to main is OK
- Any new feature, refactor, or AI-generated code → always PR
- Anything touching auth, payments, or data → always PR, no exceptions
The Full Workflow
1. Start from a clean branch
git checkout main
git pull
git checkout -b feat/your-feature-name
Branch naming conventions:
| Type | Prefix | Example |
|---|
| Feature | feat/ | feat/audio-briefings |
| Bug fix | fix/ | fix/auth-redirect |
| Config | chore/ | chore/update-env |
| Experiment | spike/ | spike/gemini-vs-claude |
| Hotfix | hotfix/ | hotfix/cors-header |
2. Build + commit
git add .
git commit -m "feat: add Stripe webhook handler"
git push origin feat/stripe-integration
Good commit message format: type: short description
Types: feat, fix, chore, refactor, docs, test
3. Open the PR
Use the gh CLI for speed:
gh pr create --title "feat: Stripe integration" --body "$(cat .pr-template.md)" --base main
Or use the GitHub UI — a banner will appear after your push.
PR description template:
## What changed
Brief summary of what this PR does.
## Why
Motivation — hackathon deadline, bug report, new feature.
## Changes
- Key change 1
- Key change 2
## Testing
- [ ] Tested locally
- [ ] No console errors
- [ ] Edge cases handled
## Notes for CodeRabbit
Any context to help the AI reviewer understand intent.
## Project
[Hakivo / Crate CLI / StoryForge / Extended Play / Radio MKE]
4. Wait for CodeRabbit (~2 min)
CodeRabbit auto-reviews every PR. It will post:
- A PR summary at the top (reuse this for LinkedIn posts)
- Inline comments on specific lines with issues or suggestions
- An overall walkthrough of the changes
5. Respond to CodeRabbit feedback
| Situation | Action |
|---|
| Legit bug found | Fix it, push new commit — CodeRabbit re-reviews |
| False positive | Reply @coderabbitai ignore on that comment |
| Want more detail | Reply @coderabbitai explain |
| Need tests | Reply @coderabbitai generate tests |
| Want re-review | Comment @coderabbitai review on the PR |
| Want clean summary | Comment @coderabbitai summary |
6. Merge + cleanup
gh pr merge --squash
git checkout main
git pull
git branch -d feat/your-feature-name
Use squash merge for feature work to keep a clean git history on main.
Claude Code Integration
This workflow is optimized for Claude Code sessions:
Claude Code builds the feature
↓
Commit and push to feature branch
↓
Open PR → CodeRabbit reviews AI-generated code
↓
Fix CodeRabbit issues (sometimes with Claude Code)
↓
Squash merge → clean main
CodeRabbit catches what Claude Code misses — especially:
- Missing null checks
- Incorrect API usage patterns
- Security issues (exposed keys, unvalidated inputs)
- Missing error handling
Project Reference
| Project | Stack | Key concerns for PRs |
|---|
| Hakivo | Next.js, Supabase, Claude, ElevenLabs, Stripe, WorkOS | Auth flows, payment webhooks, API key handling |
| Crate CLI | Node.js, MCP servers, Discogs/MusicBrainz APIs | Rate limiting, API error handling, cache logic |
| StoryForge | TBD / Hackathon stack | Rapid iteration, deadline-first |
| Extended Play | Multimodal, playlist data | Data integrity, audio processing |
| Radio MKE tools | Looker Studio, internal dashboards | Data accuracy, access controls |
Setup Checklist (one-time per repo)
Recommended .coderabbit.yaml
language: "en-US"
reviews:
auto_review:
enabled: true
drafts: false
high_level_summary: true
poem: false
tone_instructions: "Be concise. Prioritize security and data handling issues. This is a solo developer project moving fast."
Quick Reference Card
New feature: git checkout -b feat/name
Commit: git add . && git commit -m "feat: description"
Push + PR: git push && gh pr create
Re-review: @coderabbitai review
Dismiss comment: @coderabbitai ignore
Merge: gh pr merge --squash
Cleanup: git branch -d feat/name