mirror of
https://github.com/ksyasuda/dotfiles.git
synced 2026-03-20 06:11:27 -07:00
2.2 KiB
2.2 KiB
Git Platform Commands
GitHub CLI commands for the CodeRabbit Autofix skill.
Prerequisites
GitHub CLI (gh):
- Install:
brew install ghor cli.github.com - Authenticate:
gh auth login - Verify:
gh auth status
Core Operations
1. Find Pull Request
gh pr list --head $(git branch --show-current) --state open --json number,title
Gets the PR number for the current branch.
2. Fetch Unresolved Threads
Use GitHub GraphQL reviewThreads (there is no REST pulls/<pr-number>/threads endpoint):
gh api graphql \
-F owner='{owner}' \
-F repo='{repo}' \
-F pr=<pr-number> \
-f query='query($owner:String!, $repo:String!, $pr:Int!) {
repository(owner:$owner, name:$repo) {
pullRequest(number:$pr) {
reviewThreads(first:100) {
nodes {
isResolved
comments(first:1) {
nodes {
databaseId
body
author { login }
}
}
}
}
}
}
}'
Filter criteria:
isResolved == false- root comment author is one of:
coderabbitai,coderabbit[bot],coderabbitai[bot]
Use the root comment body for the issue prompt.
3. Post Summary Comment
gh pr comment <pr-number> --body "$(cat <<'EOF'
## Fixes Applied Successfully
Fixed <file-count> file(s) based on <issue-count> unresolved review comment(s).
**Files modified:**
- `path/to/file-a.ts`
- `path/to/file-b.ts`
**Commit:** `<commit-sha>`
The latest autofix changes are on the `<branch-name>` branch.
EOF
)"
Post after the push step (if pushing) so branch state is final.
4. Acknowledge Review
# React with thumbs up to the CodeRabbit comment
gh api repos/{owner}/{repo}/issues/comments/<comment-id>/reactions \
-X POST \
-f content='+1'
Find the comment ID from step 2.
5. Create PR (if needed)
gh pr create --title '<title>' --body '<body>'
Error Handling
Missing gh CLI:
- Inform user and provide install instructions
- Exit skill
API failures:
- Log error and continue
- Don't abort for comment posting failures
Getting repo info:
gh repo view --json owner,name,nameWithOwner