🎁 Get the FREE AI Skills Starter Guide β€” Subscribe β†’
BytesAgainBytesAgain
πŸ¦€ ClawHub

Create Pr

by @oschina

Use this skill when the user asks to create a PR, open a pull request, "create-pr", "submit a pull request", or "open a merge request". Requires Gitee MCP Se...

Versionv1.0.0
Downloads672
Installs1
Stars⭐ 1
TERMINAL
clawhub install gitee-create-pr

πŸ“– About This Skill


name: create-pr description: Use this skill when the user asks to create a PR, open a pull request, "create-pr", "submit a pull request", or "open a merge request". Requires Gitee MCP Server to be configured. version: 1.0.0 requires: mcp-servers: - gitee

> Note: If you have mcporter installed locally, you should use mcporter to invoke the MCP tool instead of directly calling the MCP tool. The mcporter CLI provides a more convenient interface and better error handling.

Create PR via Gitee MCP

Generate a well-structured Pull Request description based on the current changes and submit it to Gitee.

Prerequisites

  • Gitee MCP Server configured (tools: create_pull, get_file_content, list_repo_issues, compare_branches_tags)
  • User must provide: repository owner, repository name, source branch, target branch (usually main/master)
  • Optional: linked Issue number
  • Steps

    Step 1: Gather Information

    Confirm with the user or infer from context:

  • Source branch (head branch)
  • Target branch (base branch, default: master or main)
  • Core purpose of this PR (if not stated, infer from commit messages or file changes)
  • Whether to link an Issue (optional)
  • Step 2: Analyze the Changes

    Use compare_branches_tags to fetch the diff between the source branch and target branch:

  • base: target branch (e.g., main or master)
  • head: source branch
  • Analyze the returned diff to determine:

  • Which core files were changed
  • What functionality was added or modified
  • Whether there are any breaking changes
  • Step 3: Generate PR Title

    Follow the Conventional Commits format:

    (): 
    

    Available types:

  • feat: New feature
  • fix: Bug fix
  • refactor: Code refactoring
  • docs: Documentation update
  • test: Test-related changes
  • chore: Build / dependency / toolchain changes
  • Example: feat(auth): add OAuth2 login support

    Step 4: Generate PR Description

    Use the following template for a structured description:

    ## Summary

    [Clear description of the purpose of this PR and the problem it solves]

    Changes

  • [Change 1]
  • [Change 2]
  • [Change 3]
  • Testing

  • [ ] Unit tests pass
  • [ ] Functional tests pass
  • [x] [Completed test item]
  • Related Issue

    closes #[issue number] (if applicable)

    Notes

    [Breaking changes, dependency upgrades, deployment considerations, etc. (if any)]

    Step 5: Create the PR

    Use create_pull to create the PR with these parameters:

  • title: title generated in Step 3
  • body: description generated in Step 4
  • head: source branch
  • base: target branch
  • After successful creation, output the PR link for the user.

    Notes

  • If the user specifies a linked Issue, append closes #N to the description so the Issue is automatically closed when the PR is merged
  • Keep the PR title concise (under 50 characters) β€” put details in the description
  • If the user hasn't provided enough information, ask before creating, to avoid opening a PR with an empty description
  • βš™οΈ Configuration

  • Gitee MCP Server configured (tools: create_pull, get_file_content, list_repo_issues, compare_branches_tags)
  • User must provide: repository owner, repository name, source branch, target branch (usually main/master)
  • Optional: linked Issue number
  • πŸ“‹ Tips & Best Practices

    [Breaking changes, dependency upgrades, deployment considerations, etc. (if any)] ``

    Step 5: Create the PR

    Use create_pull to create the PR with these parameters:

  • title: title generated in Step 3
  • body: description generated in Step 4
  • head: source branch
  • base`: target branch
  • After successful creation, output the PR link for the user.