with one click
git-commit-pr
// 用于安全提交、推送或创建 PR/MR:提交代码、推送分支、创建 PR、创建 MR、提交PR、提交MR、发MR、commit and PR、commit and push。
// 用于安全提交、推送或创建 PR/MR:提交代码、推送分支、创建 PR、创建 MR、提交PR、提交MR、发MR、commit and PR、commit and push。
SummerSec personal Agent Skills collection — writing-zh, media-tools, dev-tools, agents-dev.
管理 submodule skill 与插件同步:添加/删除映射、运行同步脚本。sync skills、sync plugins、skill-map.json、--add-plugin、从 submodule 导入
用于优化、审查或诊断 Agent Skills(SKILL.md):优化 skill、skill 质量、重构技能、/optimize-skill、/skill-audit、optimize skills、analyze skills、check my skills、skills 不触发、skill 没生效。
当用户要求创建流程编排类 Skill、管线 Skill、工作流 Skill、多步骤分析 Skill,或提及流程编排、pipeline skill、workflow skill、步骤框架、进度文件、任务编排、审计流程、分析管线、复杂任务 skill时,应使用此技能。提取自 biz-vul-security 的六大架构模式(进度文件驱动、步骤框架分离、三阶段执行、脚本自动化、资源分层、路径一致性),提供从需求梳理到交付自检的完整方法论。
用于维护 SumSec-Skills 多平台插件元数据与发布清单:package.json、plugin.json、Claude/Cursor/Codex manifest、marketplace JSON、版本号、描述、关键词、安装文档。
SummerSec personal Agent Skills collection. Contains reusable SKILL.md files organized by category. Use when you need to leverage skills from writing-zh, media-tools, dev-tools, or agents-dev plugins.
| name | git-commit-pr |
| description | 用于安全提交、推送或创建 PR/MR:提交代码、推送分支、创建 PR、创建 MR、提交PR、提交MR、发MR、commit and PR、commit and push。 |
| disable-model-invocation | true |
用于在真实仓库里安全地完成 commit、push、PR/MR。
目标不是“机械跑命令”,而是先识别仓库状态、分支状态、远程状态和平台能力,再选择合适路径执行。
仅提交、仅创建 PR/MR、提交并创建 PR/MRgh CLI 自动创建 PR,失败时降级为平台链接git add .;先列出变更,再确认是“全部提交”还是“指定文件提交”。.env、密钥、凭证、tokens、私钥导出文件;若用户坚持,先明确提醒风险。git config。--force / --force-with-lease / --amend / --no-verify;只有用户明确同意后才能使用。master / main 且要新增本地提交,优先新建分支,不要直接在主干上开发式提交。先确认用户属于哪一种目标,再走对应路径:
若用户描述不清,先问一句:
“你是要我只提交 commit,还是要连 push 和 PR 一起做?”
开始前至少检查以下信息:
git status --short --branchgit diff --statgit diff --cached --statgit log --pretty=format:"%s" -n 20git branch --show-currentgit remote -v若要创建 PR,再补:
git remote show origin 或等价命令,确认默认基线分支gh auth statusgit diff <base-branch>...HEAD --stat,确认确实有 PR 内容git status,确保当前目录是 git 仓库。git remote -v,确认至少存在一个远程。origin、upstream),在推送和建 PR 前确认使用哪个远程。gh auth status;未登录则提示用户先登录,或降级为创建链接。unstagedstageduntrackedpush / PR。git add <files>git branch --show-current。master 或 main:
feat/<description>fix/<description>docs/<description>refactor/<description>chore/<description>git log --pretty=format:"%s" -n 30docs(skill-name): ...、fix(skill-name): ...。git commit -m "<subject>" -m "<body>"
git status 确认结果。git pushgit push -u <remote> <branch>master/main 且准备直接推送主干,先再次确认是否真的要这样做。pull --rebase,或经用户确认后 --force-with-leasegh CLIgh 是否已安装并登录:gh auth status。git diff <base-branch>...HEAD --stat 非空gh 能力匹配.github/pull_request_template.md## Summary
- ...
- ...
## Test Plan
- [ ] ...
- [ ] ...
## Risks
- ...
base_branch 默认取远程默认分支;当前仓库通常为 mastergh pr create --title "<title>" --body "<body>" --base <base_branch>
若 gh 不可用,解析远程仓库 URL 并生成对应平台的创建链接:
| 平台 | 链接格式 |
|---|---|
| GitHub | https://github.com/<owner>/<repo>/pull/new/<branch> |
| GitLab | https://<host>/<owner>/<repo>/-/merge_requests/new?merge_request[source_branch]=<branch> |
| Gitee | https://gitee.com/<owner>/<repo>/pull/new/<branch> |
| Codeup | https://codeup.aliyun.com/<owner>/<repo>/merge_requests/new?source_branch=<branch> |
注意:部分平台支持 URL 参数预填标题和描述,可根据情况生成带参数的链接。
gh 成功,可提供 gh pr view --web 作为后续操作。用户:帮我提交 PR
Skill:
master,工作区有 2 个改动文件。emoji + 简短主题。feat/optimize-git-commit-pr-skill🛠️Refine git commit and PR workflow skillgh pr create 基于 master 创建 PR,标题默认取最近 commit subject,正文使用 Summary/Test Plan 模板。用户:帮我发 PR
Skill:
master。git push -u origin <branch>。git diff master...HEAD --stat 非空。用户:帮我提交一下这些改动
Skill:
master/main,先询问是否需要新建功能分支。git checkout -b feat/some-change
git add <files>
git commit -m "🎨Refine some UI or content change"
| 场景 | 处理方式 |
|---|---|
| 不是 git 仓库 | 提示用户 git init 或切换到正确目录 |
| 没有远程仓库 | 提示添加 remote,例如 git remote add origin <url> |
| 工作区干净且无新增提交 | 不创建空 commit,也不创建空 PR |
当前在 master/main 且要新增提交 | 优先建议新建分支 |
| 暂存区包含无关文件 | 重新确认范围,只暂存目标文件 |
| 疑似敏感文件被纳入提交 | 先提醒风险,再等待用户确认 |
| pre-commit hook 失败 | 显示错误信息,优先修复后重试;只有用户明确要求才跳过 hook |
| 推送被拒绝(远程有新提交) | 提示先 git pull --rebase,或询问是否 --force-with-lease |
| 分支名冲突(本地) | 提示覆盖或切换到已有分支 |
| 分支名冲突(远程) | 提示使用不同名称或确认强制推送 |
gh 未登录 | 提示执行 gh auth login 后重试 |
| 当前分支尚未 push 就要建 PR | 先推送,再创建 PR |
| 基线分支选择错误风险 | 通过远程默认分支或用户指定值确认 |
| 分支相对基线无差异 | 停止创建 PR,并说明“没有可合并内容” |
| 平台不支持自动链接生成 | 输出手动创建的指导步骤 |
<type>/<description>,如 feat/login。type(scope): summary,例如 docs(skill-optimizer): ...。origin、upstream),询问推送到哪个。.github/pull_request_template.md 读取并填充。Closes #123。git 基础环境,gh CLI 为可选。