Back to skills

Agent Skill

Request Refactor Plan

request-refactor-plan

This skill will be invoked when the user wants to create a refactor request. You should go through the steps below. You may skip steps if you don't consider them necessary.

MattpocockBackendShell

207K installs

mphinance/alpha-skills

by Mattpocock

Score

9.0

/ 10

Installs

207K

Repo Stars

215.5K

Last Updated

5d ago

Fresh

Quality Ratio

93%

Description

Verified

Language

Shell

First Published

Feb 2026

Summary

The Request Refactor Plan agent skill systematically guides developers through a detailed interview process to generate an incremental refactor plan, broken down into tiny, safe commits, and then formalizes this plan as a structured GitHub issue. This agent skill is invaluable for developers, teams, or tech leads who need to meticulously plan significant code refactors, create formal Refactoring Request for Comments (RFCs), or break down complex changes into manageable, low-risk steps. It is a niche skill with a smaller but dedicated user base. This agent skill operates by first asking the user for a detailed problem description and exploring the repository to understand the current codebase. It then conducts a thorough interview, asks about alternative solutions, and explicitly scopes the implementation, including checking for sufficient test coverage. A key feature is its guidance in breaking down the refactor into the tiniest possible commits, each leaving the codebase in a working state, before generating a comprehensive GitHub issue using a predefined template that includes sections like problem statement, solution, decision document, and testing decisions.

Skill Definition

This skill will be invoked when the user wants to create a refactor request. You should go through the steps below. You may skip steps if you don't consider them necessary.

  1. Ask the user for a long, detailed description of the problem they want to solve and any potential ideas for solutions.

  2. Explore the repo to verify their assertions and understand the current state of the codebase.

  3. Ask whether they have considered other options, and present other options to them.

  4. Interview the user about the implementation. Be extremely detailed and thorough.

  5. Hammer out the exact scope of the implementation. Work out what you plan to change and what you plan not to change.

  6. Look in the codebase to check for test coverage of this area of the codebase. If there is insufficient test coverage, ask the user what their plans for testing are.

  7. Break the implementation into a plan of tiny commits. Remember Martin Fowler's advice to "make each refactoring step as small as possible, so that you can always see the program working."

  8. Create a GitHub issue with the refactor plan. Use the following template for the issue description:

Problem Statement

The problem that the developer is facing, from the developer's perspective.

Solution

The solution to the problem, from the developer's perspective.

Commits

A LONG, detailed implementation plan. Write the plan in plain English, breaking down the implementation into the tiniest commits possible. Each commit should leave the codebase in a working state.

Decision Document

A list of implementation decisions that were made. This can include:

  • The modules that will be built/modified
  • The interfaces of those modules that will be modified
  • Technical clarifications from the developer
  • Architectural decisions
  • Schema changes
  • API contracts
  • Specific interactions

Do NOT include specific file paths or code snippets. They may end up being outdated very quickly.

Testing Decisions

A list of testing decisions that were made. Include:

  • A description of what makes a good test (only test external behavior, not implementation details)
  • Which modules will be tested
  • Prior art for the tests (i.e. similar types of tests in the codebase)

Out of Scope

A description of the things that are out of scope for this refactor.

Further Notes (optional)

Any further notes about the refactor.

How to Use

Use in O-mega

Claude Code

npx skills add mphinance/alpha-skills request-refactor-plan