MCP HubMCP Hub
Вернуться к навыкам

create-pull-request

pjt222
Обновлено 2 days ago
6 просмотров
17
2
17
Посмотреть на GitHub
Метаwordaiautomation

О программе

Этот навык Claude автоматизирует создание и управление пулл-реквестами в GitHub с использованием GitHub CLI. Он обрабатывает подготовку веток, формирование заголовков и описаний PR, создание пулл-реквеста, а также управление рабочими процессами ревью и слияния. Используйте его для предложения изменений из feature-ветки на ревью или для объединения завершённой работы в основную ветку.

Быстрая установка

Claude Code

Рекомендуется
Основной
npx skills add pjt222/agent-almanac -a claude-code
Команда плагинаАльтернативный
/plugin add https://github.com/pjt222/agent-almanac
Git клонированиеАльтернативный
git clone https://github.com/pjt222/agent-almanac.git ~/.claude/skills/create-pull-request

Скопируйте и вставьте эту команду в Claude Code для установки этого навыка

Документация

Create Pull Request

GitHub PR w/ clear title + structured desc + branch setup.

Use When

  • Feature/fix branch → review
  • Merge completed → main
  • Req code review
  • Doc purpose + scope of changes

In

  • Required: Feature branch w/ committed changes
  • Required: Base branch (usually main)
  • Optional: Reviewers
  • Optional: Labels / milestone
  • Optional: Draft status

Do

Step 1: Branch Ready

Verify up-to-date + all committed:

# Check for uncommitted changes
git status

# Fetch latest from remote
git fetch origin

# Rebase on latest main (or merge)
git rebase origin/main

Got: Branch ahead of origin/main, no uncommit, no conflicts.

If err: Rebase conflicts → resolve (see resolve-git-conflicts) → git rebase --continue. Diverged → git merge origin/main.

Step 2: Review Changes

Full diff + commit history:

# See all commits on this branch (not on main)
git log origin/main..HEAD --oneline

# See the full diff against main
git diff origin/main...HEAD

# Check if branch tracks remote and is pushed
git status -sb

Got: All commits PR-relevant. Diff = intended changes only.

If err: Unrelated commits → interactive rebase → clean up history pre-PR.

Step 3: Push Branch

# Push branch to remote (set upstream tracking)
git push -u origin HEAD

Got: Branch on GitHub remote.

If err: Rejected → git pull --rebase origin <branch> + resolve.

Step 4: Title + Desc

Title <70 chars. Body for details:

gh pr create --title "Add weighted mean calculation" --body "$(cat <<'EOF'
## Summary
- Implement `weighted_mean()` with NA handling and zero-weight filtering
- Add input validation for mismatched vector lengths
- Include unit tests covering edge cases

## Test plan
- [ ] `devtools::test()` passes with no failures
- [ ] Manual verification with example data
- [ ] Edge cases: empty vectors, all-NA weights, zero-length input

🤖 Generated with [Claude Code](https://claude.com/claude-code)
EOF
)"

Draft:

gh pr create --title "WIP: Add authentication" --body "..." --draft

Got: PR on GitHub + URL. Desc = what changed + how to test.

If err: gh not auth → gh auth login. Wrong base → --base main.

Step 5: Review Feedback

Respond + push:

# View PR comments
gh api repos/{owner}/{repo}/pulls/{number}/comments

# View PR review status
gh pr checks

# After making changes, commit and push
git add <files>
git commit -m "$(cat <<'EOF'
fix: address review feedback on input validation

EOF
)"
git push

Got: New commits on PR. Comments addressed.

If err: CI fail post-push → gh pr checks → fix pre-rereq.

Step 6: Merge + Cleanup

Post-approval:

# Merge the PR (squash merge keeps history clean)
gh pr merge --squash --delete-branch

# Or merge with all commits preserved
gh pr merge --merge --delete-branch

# Or rebase merge (linear history)
gh pr merge --rebase --delete-branch

Update local main:

git checkout main
git pull origin main

Got: PR merged, remote branch deleted, local main updated.

If err: Blocked by fail checks / missing approvals → address first. No force-merge w/o resolve.

Check

  • Title <70 chars + descriptive
  • Body: summary + test plan
  • All commits PR-relevant
  • CI passes
  • Branch up-to-date vs base
  • Reviewers assigned (if req)
  • No sensitive data

Traps

  • PR too large: Focus 1 feat/fix. Large → hard review + merge conflicts.
  • No test plan: Always describe verify, even docs.
  • Stale branch: Base moved ahead → rebase pre-PR → min conflicts.
  • Force-push during review: Avoid on branch w/ open comments. Push new → incremental visible.
  • Ignoring CI: Check gh pr checks pre-rereq. Fail CI = waste reviewers.
  • Branch not deleted: Use --delete-branch → remote clean.

  • commit-changes — PR commits
  • manage-git-branches — branch create + naming
  • resolve-git-conflicts — rebase/merge conflicts
  • create-github-release — release post-merge

GitHub репозиторий

pjt222/agent-almanac
Путь: i18n/caveman-ultra/skills/create-pull-request
0
agentsagentskillsai-assisted-developmentclaude-codeskillsteams

Похожие навыки

content-collections

Мета

Этот навык предоставляет проверенную в продакшене настройку для Content Collections — TypeScript-ориентированного инструмента, который преобразует файлы Markdown/MDX в типобезопасные коллекции данных с валидацией Zod. Используйте его при создании блогов, сайтов документации или контентных приложений на Vite + React для обеспечения типобезопасности и автоматической проверки содержимого. Он охватывает всё: от настройки плагина Vite и компиляции MDX до оптимизации развертывания и валидации схем.

Просмотреть навык

polymarket

Мета

Этот навык позволяет разработчикам создавать приложения на платформе прогнозных рынков Polymarket, включая интеграцию с API для торговли и получения рыночных данных. Он также обеспечивает потоковую передачу данных в реальном времени через WebSocket для отслеживания текущих сделок и рыночной активности. Используйте его для реализации торговых стратегий или создания инструментов, обрабатывающих обновления рынка в реальном времени.

Просмотреть навык

creating-opencode-plugins

Мета

Этот навык помогает разработчикам создавать плагины OpenCode, которые подключаются к более чем 25 типам событий, таким как команды, файлы и операции LSP. Он предоставляет структуру плагина, спецификации API событий и шаблоны реализации для модулей на JavaScript/TypeScript. Используйте его, когда вам нужно перехватывать, отслеживать или расширять жизненный цикл ассистента OpenCode AI с помощью пользовательской событийно-ориентированной логики.

Просмотреть навык

sglang

Мета

SGLang — это высокопроизводительный фреймворк для обслуживания больших языковых моделей (LLM), специализирующийся на быстрой структурированной генерации JSON, regex и рабочих процессов агентов с использованием кэширования префиксов RadixAttention. Он обеспечивает значительно более высокую скорость вывода, особенно для задач с повторяющимися префиксами, что делает его идеальным для сложных структурированных результатов и многократных диалогов. Выбирайте SGLang вместо альтернатив, таких как vLLM, когда вам требуется ограниченное декодирование или вы создаете приложения с интенсивным совместным использованием префиксов.

Просмотреть навык