Set up CR Cab
Connect Slack and GitHub. Takes a few minutes. Easy to remove if it's not for you.
Sign in with Google to create your organization and get your API key.
Sign in with GoogleThe Slack app adds these commands for your team:
/cr_p0— Available for urgent and all other reviews/cr_p1— Available for normal priority and below/cr_p2— Available for low priority only/cr_busy— Not available for reviews right now
Only requests the Commands permission. Can be removed from Slack at any time.
Add this file to your repo at .github/workflows/cr-cab.yml
name: CR Cab Reviewer Assignment
on:
pull_request:
types: [opened, ready_for_review]
permissions:
pull-requests: write
jobs:
assign-reviewer:
runs-on: ubuntu-latest
steps:
- uses: crCab/cr-cab-reviewers@main
with:
cr_cab_api_key: ${{ secrets.CR_CAB_API_KEY }}You'll need an API key. Generate one below, then add it to your repo's GitHub Secrets as CR_CAB_API_KEY
Generate API Key
Keys are valid for 1 month. You'll only see it once, so save it somewhere.
Add or merge this into your existing template at .github/PULL_REQUEST_TEMPLATE.md
## Priority
- [ ] P0 - Urgent (immediate review needed)
- [x] P1 - Normal (standard review SLA)
- [ ] P2 - Low (review when available)
## Description
<!-- Describe your changes here -->P1 is the default—most PRs use it without changes. Selecting a priority is optional.
That's everything. When someone opens a PR:
- The default priority (P1) is used—most PRs don't need any changes
- The action finds an available reviewer at that level
- Reviewer gets assigned automatically
Team members update their availability in Slack whenever it changes. /cr_busy when heads-down, /cr_p1 when ready for reviews.
Questions?
If something isn't working, let us know. We're happy to help with setup.