mcpField
I
implement-issue

implement-issue

github.com/oschina开发5106 次安装27 周前更新
代码仓库

关于 implement-issue

implement-issue 面向希望从 Gitee Issue 推进开发的开发者,涵盖需求分析、实现、创建 PR 和回写 Issue,并按完整开发流程组织各步骤。

主要功能

  1. 01获取 Issue 详情和评论
  2. 02分析需求与范围
  3. 03指导代码修改
  4. 04向 Issue 发布进度
  5. 05创建并关联 PR

适用场景

  1. 01从 Gitee Issue 开始开发
  2. 02编码前检查认领情况和讨论
  3. 03提交实现并关联 Issue

MCP 相关

通过 Gitee MCP 工具获取 Issue、创建 PR 和评论,并更新 Issue 状态。该技能还要求提供本地代码仓库,以便编码 Agent 读取和修改源文件。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/oschina/gitee-agent-skills --skill implement-issue

安装后在 Claude Code 中输入/implement-issue确认已加载。

详细介绍

注意:如果你已在本地安装 mcporter,应使用 mcporter 调用 MCP 工具,而不是直接调用 MCP 工具。mcporter CLI 提供了更便捷的接口和更好的错误处理。

通过 Gitee MCP 实现 Issue

从 Gitee Issue 开始,完成完整的开发流程:需求分析 → 编码 → 创建 PR → 关联回 Issue。

前提条件

  • 已配置 Gitee MCP 服务(工具:get_repo_issue_detail、list_repo_issues、create_pull、create_comment(resource_type: issue)、update_issue)
  • 用户必须提供:仓库所有者、仓库名称、Issue 编号(或从列表中选择)
  • 本地仓库路径:必须在 Issue 所属仓库的本地克隆目录中执行此技能,或者由用户提供该仓库克隆的本地路径。这是编码 Agent 读取和修改源文件的必要条件。

步骤

步骤 1:获取 Issue 详情

使用 get_repo_issue_detail 获取完整的 Issue 信息:

  • 标题和完整描述
  • 标签(功能 / Bug / 增强等)
  • 优先级和里程碑
  • 现有评论(以了解讨论背景)

同时使用 list_comments(resource_type: issue)查看评论,并检查:

  • 是否已有技术设计讨论
  • 相关背景信息
  • 是否已有其他人正在处理
步骤 2:需求分析

根据 Issue 内容,生成需求分析:

## Requirements Analysis: [Issue title]

**Type**: [Feature / Bug Fix / Performance / Other]

**Goal**:
[One sentence describing what needs to be implemented]

**Scope** (estimated):
- [Modules / files likely involved]
- [APIs / database tables likely involved]

**Implementation Plan**:
1. [Step 1]
2. [Step 2]
3. [Step 3]

**Potential Risks**:
- [Things to watch out for]

**Acceptance Criteria**:
- [ ] [Criterion 1]
- [ ] [Criterion 2]
步骤 3:协助实现

根据需求分析,通过以下方式协助用户:

  • 提供具体的代码实现方案
  • 为关键逻辑提供代码示例
  • 指出需要修改的文件

如果用户已完成编码,请继续下一步。

步骤 4:在 Issue 中记录进展

使用 create_comment(resource_type: issue)在 Issue 中发布进展更新:

Starting work on this issue. Expected changes:
- [Main change 1]

Implementation approach:
[Brief summary]

这样可以让其他贡献者了解进展,并避免重复工作。

步骤 5:创建关联的 PR

使用 create_pull 创建 PR。PR 描述应包含:

  • 更改摘要
  • 实现方案概述
  • 测试说明
  • closes #[issue number](在合并时自动关闭关联的 Issue)
步骤 6:更新 Issue

创建 PR 后:

  1. 使用 create_comment(resource_type: issue)在 Issue 中发布 PR 链接
  2. 如果需要更新 Issue 状态,请使用 update_issue 进行更改

评论模板:

PR #[PR number] has been created to address this issue.
Please review: [PR link]

注意事项

  • 开始前,确认 Issue 尚未被其他人认领(检查指派人)
  • 对于重要的设计决策,应在编码前通过 Issue 评论讨论并确认
  • PR 描述中的 closes #N 语法会在 PR 合并时自动关闭 Issue

评论

支持 Markdown