Skip to main content
NEW · APP STORE Now on iOS · macOS · iPad Android & Windows soon GET IT
Prompts Refactor Plan Interviewer and GitHub Issue Creator

agent coding skill risk: low

Refactor Plan Interviewer and GitHub Issue Creator

Interviews the user about a desired refactor, explores the repository, defines scope and tiny commits, checks test coverage, and files a detailed GitHub issue using the provided te…

  • External action: high

SKILL 1 file

SKILL.md
---
name: request-refactor-plan
description: "Create a detailed refactor plan with tiny commits via user interview, then file it as a GitHub issue. Use when user wants to plan a refactor, create a refactoring RFC, or break a refactor into safe incremental steps."
---
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:

<refactor-plan-template>

## 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.

</refactor-plan-template>

REQUIRED CONTEXT

  • user description of the problem and solution ideas
  • access to explore the codebase

ROLES & RULES

  1. You may skip steps if you don't consider them necessary.
  2. Be extremely detailed and thorough.
  3. Each commit should leave the codebase in a working state.
  4. Do NOT include specific file paths or code snippets.

EXPECTED OUTPUT

Format
markdown
Schema
markdown_sections · Problem Statement, Solution, Commits, Decision Document, Testing Decisions, Out of Scope, Further Notes (optional)
Constraints
  • follow the exact refactor-plan-template structure for the final GitHub issue
  • break implementation into tiniest possible working commits
  • exclude specific file paths and code snippets from Decision Document

SUCCESS CRITERIA

  • Follow the 8 steps in order
  • Produce a GitHub issue using the exact template
  • Break implementation into tiny commits that keep the codebase working

CAVEATS

Dependencies
  • Requires access to the repository codebase
  • Requires interactive user responses
Ambiguities
  • "You may skip steps if you don't consider them necessary" does not specify criteria for skipping.
  • "Be extremely detailed and thorough" is subjective without measurable criteria.

QUALITY

OVERALL
0.80
CLARITY
0.85
SPECIFICITY
0.78
REUSABILITY
0.88
COMPLETENESS
0.72

IMPROVEMENT SUGGESTIONS

  • Add explicit criteria or examples for when steps may be skipped.
  • Specify the exact mechanism or tool for creating the GitHub issue (e.g., API call format).

USAGE

Copy the prompt above and paste it into your AI of choice — Claude, ChatGPT, Gemini, or anywhere else you're working. Replace any placeholder sections with your own context, then ask for the output.

MORE FOR AGENT