关于 create-pr-from-spec
create-pr-from-spec 是将已定稿规格转换为 GitHub 拉取请求的技能,适用于使用仓库 PR 模板的团队。它会检查重复项、按模板填写标题和正文,并将 PR 分配给创建者。
主要功能
- 01创建草稿拉取请求
- 02检查是否存在重复拉取请求
- 03根据仓库模板填写标题和正文
- 04将 PR 标记为可供审查
- 05将 PR 分配给创建者
适用场景
- 01提交已定稿规格以供审查
- 02根据规格创建符合模板的 PR
- 03避免为同一分支重复创建 PR
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ giuseppe-trisciuoglio/ developer-kit --skill create-pr-from-spec安装后在 Claude Code 中输入/create-pr-from-spec确认已加载。
详细介绍
根据规范创建 Pull Request
使用位于 ${workspaceFolder}/.github/pull_request_template.md 的 pull_request_template.md 模板,为规范创建 GitHub Pull Request。
概述
此技能可根据规范自动创建 GitHub Pull Request。它遵循结构化流程:
- 分析规范模板要求
- 使用目标分支创建草稿 PR
- 确认不存在重复 PR
- 使用符合模板要求的内容更新 PR 正文和标题
- 将 PR 标记为可供审核
- 自动指派给创建者
- 向用户返回 PR URL
主要优势:
- ✅ 根据规范自动创建 PR
- ✅ PR 正文和标题符合模板要求
- ✅ 防止重复 PR
- ✅ 自动指派给创建者
- ✅ 简化从规范到 PR 的工作流
适用场景
在以下情况下使用此技能:
- 规范已准备好合并 - 将定稿的规范转换为 PR
- 需要自动创建 PR - 避免手动起草 PR
- 需要遵循模板 - 确保 PR 符合 pull_request_template.md 的要求
- 根据规范创建多个 PR - 批量处理规范并创建 PR
- 团队协作 - 将规范作为 PR 分享,以供审核
触发短语:
- “根据规范创建 pull request”
- “将规范转换为 PR”
- “为规范创建 PR”
- “以 pull request 的形式提交规范”
- “自动创建 PR”
说明
前提条件
使用此技能前,请确保:
- 规范文件已定稿并准备好审核
- 已指定目标分支(例如
main、develop) - 仓库中存在
.github/pull_request_template.md - 你拥有创建 PR 的写入权限
分步流程
1. 分析规范模板
- 从
${workspaceFolder}/.github/pull_request_template.md提取要求 - 使用搜索工具解析模板中的章节和占位符
2. 创建 pull request 草稿
- 使用
create_pull_request工具,为目标分支创建草稿 PR - 首先使用
get_pull_request确认不存在现有 PR,以防止重复 - 如果 PR 已存在,则停止操作并告知用户
3. 获取 pull request 更改
- 使用
get_pull_request_diff工具分析差异 - 更新前确认代码更改正确
4. 更新 pull request
- 使用
update_pull_request工具填写 PR 正文和标题 - 纳入第 1 步中的模板章节
- 确保所有必填字段均已填写
5. 标记为可供审核
- 使用
update_pull_request工具,将状态从草稿更改为可供审核 - 确认 PR 不再处于草稿模式
6. 指派 pull request
- 使用
get_me获取当前用户信息 - 使用
update_issue工具将 PR 指派给创建者
7. 返回 pull request URL
- 向用户提供可点击的 PR URL
- 附上 PR 内容摘要
示例
示例 1:创建基本 PR
Input: Create PR from spec to main branch
Process:
1. Analyze pull_request_template.md
2. Create draft PR to main
3. Check for existing PRs
4. Update PR title: "feat: [Feature Name from Spec]"
5. Update PR body with template sections
6. Mark as ready for review
7. Assign to creator
Output: https://github.com/user/repo/pull/123
示例 2:创建符合模板要求的 PR
PR Title: feat: Implement user authentication system
PR Body:
## Description
Implements JWT-based authentication with token refresh mechanism
## Related Issue
Closes #456
## Changes
- Added JWT middleware
- Implemented token validation
- Added refresh token endpoint
## Testing
- Unit tests for auth middleware
- Integration tests for token endpoints
## Checklist
- [x] Tests pass
- [x] Documentation updated
- [x] No breaking changes
示例 3:防止重复
Input: Create PR from spec
Check: PR for current branch already exists?
→ Yes: Report error, don't create duplicate
→ No: Proceed with PR creation
Output: "PR already exists at https://github.com/user/repo/pull/789"
要求
- 为完整规范创建单个 pull request
- 标题和正文清晰标明规范或功能
- Pull request 正文遵循 pull_request_template.md 的结构
- 确认不存在重复的 pull request
- PR 自动指派给创建者
- 不留下草稿 PR
成功标准
- ✅ PR 创建成功且无错误
- ✅ PR 正文遵循 pull_request_template.md 的结构
- ✅ PR 标题清晰标明规范或功能
- ✅ 分支不存在重复 PR
- ✅ PR 已指派给创建者
- ✅ 已向用户返回 PR URL
- ✅ PR 已准备好供审核(不处于草稿状态)
约束和警告
⚠️ 重要:
- 创建 PR 需要对仓库具有写入权限
- 创建 PR 前,目标分支必须已存在
- 模板文件必须位于
.github/pull_request_template.md - 没有有效的目标分支时,无法创建 PR
- 系统会检测并拒绝重复的 PR
- 分配 PR 时必须指定有效的 GitHub 用户
🚫 限制:
- 不会自动进行代码审查
- 不会触发 CI/CD 流水线
- 不会自动合并 PR
- 无法修改现有代码,只能修改 PR 元数据
最佳实践
- 创建前先核实 - 将规范转换为 PR 前,务必先审查规范
- 使用描述性标题 - PR 标题应清晰说明功能或修复的目的
- 填写完整模板 - 确保填写模板中的所有必填部分
- 关联相关问题 - 在 PR 正文中加入问题引用
- 先进行测试 - 创建 PR 前,确保所有测试通过
- 团队审查 - 将 PR 标记为准备好接受审查前,先取得团队批准
- 保持 Git 历史整洁 - 确保提交记录清晰且有完善的文档
使用的工具
search- 分析规范模板要求create_pull_request- 以草稿模式创建新的 PRget_pull_request- 创建前检查是否存在现有 PRget_pull_request_diff- 分析 PR 变更update_pull_request- 更新 PR 标题、正文和状态update_issue- 将 PR 分配给创建者get_me- 获取当前用户信息
评论
支持 Markdown