mcpField
R
request-refactor-plan

request-refactor-plan

github.com/vinvcnDevelopment5.4k2.1k installsUpdated 2d ago
Repository

About request-refactor-plan

A skill that guides an Agent through clarifying a refactoring request, examining the codebase, and recording implementation and testing decisions. It turns the agreed scope into a detailed, small-step commit plan in a GitHub issue.

Key features

  1. 01Clarify the refactoring problem
  2. 02Explore the codebase and verify claims
  3. 03Compare options and settle scope
  4. 04Review test coverage and testing plans
  5. 05Break work into small, safe commits
  6. 06Create a GitHub issue from a template

Use cases

  1. 01Turn a vague refactoring idea into a concrete request
  2. 02Record architectural and interface decisions before implementation
  3. 03Plan refactoring as small commits
  4. 04Document testing strategy and out-of-scope work

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/vinvcn/mattpocock-skills-zh-cn --skill request-refactor-plan

After installing, type/request-refactor-planin Claude Code to confirm it loaded.

Bundled filesagents/openai.yaml

Details

From the project README

当用户想创建 refactor request 时调用此 skill。按以下步骤执行。你可以跳过你认为不必要的步骤。

  1. 让用户详细描述他们想解决的问题,以及可能的 solution ideas。

  2. 探索 repo,验证他们的 assertions,并理解 codebase 当前状态。

  3. 询问他们是否考虑过其他 options,并向他们展示其他 options。

  4. 围绕 implementation 访谈用户。要非常详细、彻底。

  5. 敲定 implementation 的 exact scope。弄清你计划改什么,以及不改什么。

  6. 在 codebase 中检查该区域的 test coverage。如果 coverage 不足,询问用户的 testing plans。

  7. 把 implementation 拆成 tiny commits 的计划。记住 Martin Fowler 的建议:“make each refactoring step as small as possible, so that you can always see the program working.”

  8. 使用 refactor plan 创建 GitHub issue。issue description 使用下面模板:

Problem Statement

developer 面对的问题,从 developer 视角描述。

Solution

问题的 solution,从 developer 视角描述。

Commits

一份很长、详细的 implementation plan。用 plain English 写,把 implementation 拆到尽可能小的 commits。每个 commit 都应让 codebase 保持 working state。

Decision Document

已作出的 implementation decisions 列表。可以包括:

  • 将 build/modify 的 modules
  • 将 modify 的 module interfaces
  • 来自 developer 的 technical clarifications
  • Architectural decisions
  • Schema changes
  • API contracts
  • Specific interactions

不要包含具体 file paths 或 code snippets。它们可能很快过时。

Testing Decisions

已作出的 testing decisions 列表。包括:

  • 什么是好测试的描述(只测试 external behavior,不测试 implementation details)
  • 哪些 modules 会被测试
  • 测试的 prior art(即 codebase 中类似类型的 tests)

Out of Scope

本 refactor 范围外事项的描述。

Further Notes (optional)

关于 refactor 的其他 notes。

Comments

Markdown supported