Refactoring Audit Workflow
SKILL.md
Refactoring Audit Workflow
This skill guides the agent through the process of auditing the codebase for refactoring opportunities, validating findings, drafting implementation plans, and creating GitHub issues.
1. Analyze Codebase
Goal: Identify high-value refactoring targets by looking for specific code smells.
- God Classes: Look for files > 1000 lines or classes with too many responsibilities (e.g.,
App.axaml.cshandling UI, Startup, and Logic). - Low Cohesion: Look for "Utils" or "Helpers" classes that contain unrelated methods (e.g., String manipulation mixed with API calls).
- OCP Violations: Look for giant
switchstatements or massive configuration classes that require modification for every new feature type (e.g.,UploadersConfig).
Actions:
- Use
list_dirto exploresrcand subdirectories. - Use
view_fileto inspect largest files. - Use
grep_searchto find "Helper" or "Manager" classes.
2. Verify Findings
Goal: Ensure the identified "pain point" isn't already solved or constrained by design.
- Check for existing solutions: Search for terms like "Bootstrapper", "Factory", "Service" to see if a better pattern already exists but isn't used.
- Check for constraints: Ensure the potential refactor doesn't violate specific project architectures (e.g., Avalonia specific patterns).
3. Draft Implementation Plans
Goal: Create a structured plan for each refactoring before creating issues.
Format: For each identified issue, draft a markdown section with:
- Title:
[Refactor] <Title> - Goal Description: What is the problem and why fix it?
- Proposed Changes: Specific classes/interfaces to create or modify.
- Implementation Plan: Checklist of steps.
- Verification Plan: How to verify the refactor (Manual/Automated).
Action:
- Save these drafts to a temporary file (e.g.,
refactoring_plans.md) or thetask.mdartifact for user review.
4. Create GitHub Issues
Goal: proper tracking of the work.
Action:
- Use
gh issue createto submit the vetted plans. - Use the
--titleand--body-filearguments. - Clean up: Delete temporary body files after creation.
Example Command:
gh issue create --title "[Refactor] Split GeneralHelpers.cs" --body-file "c:/path/to/body.md"