跳到正文
cccskills
免费在 GitHub 公开

pr

Commit and push changes, then create a new PR or append to an existing one.

中文简介正在准备中。当前显示原文说明。

集成工具GitHub
查看安装方法

包含的文件(1)

  • SKILL.md3.2 KB

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

PR — Commit & Push

Commits local changes, pushes to remote, and creates a new PR or appends to an existing one — automatically detected based on branch state.

Instructions

  • NEVER force push.
  • NEVER push directly to main/master — always go through PR workflow.
  • All user-facing text must use the language the user has been using in the conversation. Do not default to English.
  • When presenting choices, use interactive dialogs with selectable options rather than plain text.

Step 1: Pre-flight

  1. git branch --show-current — current branch name. If empty (detached HEAD), ask the user to switch to a branch first and stop.
  2. gh pr list --head {branch} --state open --json number,url — open PRs

Determine the remote's default branch and store as {default_branch}.

Mode selection:

Current branchOpen PR on this branchMode
{default_branch}N/A (new branch)Create
otheryesAppend
othernoCreate

Step 2: Stage & Generate Commit Message

Run git status --porcelain and inspect the output:

  • No output → no local changes. Skip to Step 3 (there may be unpushed commits to push).
  • Both staged and unstaged changes → ask the user: commit only the staged files (partial), or stage everything (full)?
  • Otherwise → full (stage everything).

If full: run git add -A. If partial: skip (files are already staged).

Read the staged diff (git diff --cached) and generate a commit message following the project's commit conventions. If no convention is found, default to a concise English message under 120 characters ending with a period, with no other punctuation, focusing on user-perceivable changes.


Step 3: Commit & Push

Append mode

If there is staged content, commit first. Then push and output the existing PR URL.

If there is nothing to commit and nothing to push, inform the user and stop.

Create mode

Generate PR metadata

Based on all changes since {default_branch} (staged diff and existing commits), generate:

  • Branch name (only when on {default_branch}): follow the project's branch naming convention if one exists; otherwise use feature/{username}_topic or bugfix/{username}_topic ({username} = local git username, lowercase; obtain via git config user.name). When on a non-default branch, use the current branch name.
  • PR title: concise summary following project conventions, or a short English sentence if none found. Always based on all changes since {default_branch}, not the latest commit message.
  • PR description: plain text (no Markdown formatting) in the user's conversation language, briefly describing what changed and why.

Create branch, commit, and push

If on {default_branch}, create a new branch: git checkout -b {branch_name}.

If there is staged content, commit.

Push and create the PR:

git push -u origin {branch_name}
gh pr create --title "{title}" --body "$(cat <<'EOF'
{description}
EOF
)"

Output the PR URL to the user.

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

Accept screenshot baseline changes and commit the updated version.json.

中文简介正在准备中。当前显示原文说明。

Tencent/tgfx15952026年10月19日 更新

commit

免费

Commit local changes without pushing.

中文简介正在准备中。当前显示原文说明。

Tencent/tgfx15952026年10月19日 更新

cr

免费

Automated code review and fix for local branches, PRs, commits, and files. Supports single-agent interactive fix and multi-agent adversarial review with auto-fix.

中文简介正在准备中。当前显示原文说明。

Tencent/tgfx15952026年10月19日 更新

squash

免费

Analyze branch commits and consolidate iterative modifications.

中文简介正在准备中。当前显示原文说明。

Tencent/tgfx15952026年10月19日 更新

查看 Tencent 的全部技能

报告此技能的问题