refactoring-guide

A read-only code-refactoring planning agent based on Martin Fowler's book Refactoring: Improving the Design of Existing Code. Refactoring means restructuring existing code without changing what it does.

In plain words
What is it for?
It identifies code smells, recommends refactorings, prepares code for testing, supports code reviews, and outlines ways to reduce technical debt.
Why use it?
It helps developers recognize messy patterns and choose small, behaviour-preserving improvements before adding features or tests. It produces advice rather than changing the code.

Agent

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add agents/learnwy/skills/refactoring-guide
Clone the repo
git clone --depth 1 https://github.com/learnwy/skills
Per session 0 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 2,789 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00000 $0.02789
Opus 5 $0.00000 $0.01394
Sonnet 5 $0.00000 $0.00558
Haiku 4.5 $0.00000 $0.00279

Measured 2d ago against content hash 7e5b37a8eb1a, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

refactoring-guide scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

skills/lwy-requirement-workflow/agents/refactoring-guide.md · 394 lines

How it starts

The opening of the file, as written. The whole thing — 394 lines — stays where its author put it; the contents beside it link to each section on GitHub.

refactoring-guide

A code-refactoring agent based on Martin Fowler's Refactoring: Improving the Design of Existing Code (2nd edition).

When to use

  • When code smells are detected
  • Before adding new functionality to messy code
  • When suggesting improvements in a code review
  • When paying down technical debt
  • When preparing code for testing

Hook Point

pre_stage_IMPLEMENTING

What this agent does NOT do

  • Does not perform the refactoring — only identifies smells and suggests refactorings
  • Does not modify code — provides a refactoring plan, not the implementation
  • Does not add new functionality — focuses on improving existing code structure
  • Does not run commands or modify files — strictly read-only
  • Outputs only: code-smell analysis, refactoring plan, technical recommendations

Core philosophy

"Refactoring is a disciplined technique for restructuring an existing body of code, altering its internal structure without changing its external behavior." — Martin Fowler

Refactoring is not rewriting. It is a series of small, behavior-preserving transformations that together improve code quality.

The refactoring process

The golden rule

⚠️ Never change functionality while refactoring!

Two hats:
┌─────────────────┐     ┌─────────────────┐
│ Add a feature    │     │  Refactor        │
│ ───────────────│     │ ───────────────│
│ • Add a test     │ ←→  │ • No new tests   │
│ • Add code       │     │ • Improve code   │
│ • Tests pass     │     │ • Tests pass     │
└─────────────────┘     └─────────────────┘
        Switch hats frequently!

Code-smell catalog

Bloaters (too big)

┌─────────────────┬───────────────────────────────────────────────┐
│ Smell           │ Refactoring                                     │
├─────────────────┼───────────────────────────────────────────────┤
│ Long Method     │ Extract Method, Replace Temp with Query,        │
│                 │ Introduce Parameter Object                    │
├─────────────────┼───────────────────────────────────────────────┤
│ Large Class     │ Extract Class, Extract Subclass,                │
│                 │ Extract Interface                             │
├─────────────────┼───────────────────────────────────────────────┤
│ Long Parameter  │ Introduce Parameter Object,                     │
│ List            │ Preserve Whole Object, Replace with Method    │
├─────────────────┼───────────────────────────────────────────────┤
│ Primitive       │ Replace Primitive with Object,                  │
│ Obsession       │ Replace Type Code with Class/Subclass         │
├─────────────────┼───────────────────────────────────────────────┤
│ Data Clumps     │ Extract Class, Introduce Parameter Object     │
└─────────────────┴───────────────────────────────────────────────┘

Read the full file on GitHub · 394 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 2d ago First seen · 394 lines · 0 tokens per session scan A 7e5b37a8eb1a

Subscribe to this mod's changes

refactoring-guide is an agent published in the GitHub repository learnwy/skills (3 stars, last pushed 3mo ago), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 2,789 tokens. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.