refactor

A coding workflow for restructuring existing code while preserving its intended behavior. It is triggered by requests such as cleanup, simplification, extraction, or modernization.

In plain words
What is it for?
Use it when you need to clean up code, split out reusable parts, simplify structure, or modernize an implementation.
Why use it?
It helps organize code changes around a clear refactoring task instead of leaving the requested restructuring implicit.

Skill for Claude CodeCodex

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 skills/code-yeongyu/lazyclaudecode/refactor
Any agent
npx skills add code-yeongyu/lazyclaudecode --skill refactor
Clone the repo
git clone --depth 1 https://github.com/code-yeongyu/lazyclaudecode

Made for: Claude Code, Codex.

Per session 29 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 6,823 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin 86% copy Near-identical to another mod 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.00029 $0.06823
Opus 5 $0.00015 $0.03411
Sonnet 5 $0.00006 $0.01365
Haiku 4.5 $0.00003 $0.00682

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

Security

Grade A, and why

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

Origin

This is a copy

86% identical to refactor — 67 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.

plugins/omo/skills/refactor/SKILL.md · 778 lines

How it starts

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

Claude Code Harness Tool Compatibility

This skill may include examples copied from the OpenCode or Codex harness. In Claude Code, do not call OpenCode/Codex-only tools such as task(...), call_omo_agent(...), spawn_agent(...), background_output(...), wait_agent(...), team_*(...), send_message(...), followup_task(...), or close_agent(...) literally. Translate those examples to Claude Code native tools:

OpenCode / Codex example Claude Code tool to use
task(subagent_type="explore", ...) / call_omo_agent(...) / spawn_agent(agent_type="explorer", ...) the Task tool (spawn a subagent of the matching type)
task(subagent_type="plan"/"oracle", ...) / spawn_agent(agent_type="plan"/"reviewer", ...) the Task tool with the planner/reviewer subagent, or the Skill tool
task(category="...", ...) the Task tool (general-purpose subagent) or run the work inline
background_output(...) / wait_agent(...) await the subagent's return value / the system completion notification
team_*(...) / send_message/followup_task/close_agent run multiple Task subagents and synthesize their results

When translating load_skills=[...], invoke the requested skills with the Skill tool or pass their names in the spawned subagent's prompt. If a code block below conflicts with this section, this section wins.

export const REFACTOR_TEMPLATE = `# Intelligent Refactor Command

Usage

``` /refactor [--scope=<file|module|project>] [--strategy=<safe|aggressive>]

Arguments: refactoring-target: What to refactor. Can be: - File path: src/auth/handler.ts - Symbol name: "AuthService class" - Pattern: "all functions using deprecated API" - Description: "extract validation logic into separate module"

Options: --scope: Refactoring scope (default: module) - file: Single file only - module: Module/directory scope - project: Entire codebase

--strategy: Risk tolerance (default: safe) - safe: Conservative, maximum test coverage required - aggressive: Allow broader changes with adequate coverage ```

Read the full file on GitHub · 778 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 · 778 lines · 29 tokens per session scan A 771d85bef06a

Subscribe to this mod's changes

refactor is a skill published in the GitHub repository code-yeongyu/lazyclaudecode (18 stars, last pushed 3mo ago), licensed MIT. It adds 29 tokens to every session and 6,823 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 0 findings. It is 86% identical to refactor, differing in 67 lines, and is treated as a copy.

Related

Other skills, from other repositories

lsp-format-code

Format a file or selection using the language server's formatter. Use before committing to apply consistent style, or after generating code to clean up indentation and spacing. Supports full-file and range-based formatting.

blackwell-systems/agent-lsp · 44 tokens

lsp-edit-symbol

Edit a named symbol without knowing its file or position. Use when you want to change a function, type, or variable by name and don't have exact coordinates. Resolves the symbol to its definition, retrieves its full range, and applies the edit.

blackwell-systems/agent-lsp · 55 tokens

lsp-implement

Find all concrete implementations of an interface or abstract type. Use when you need to know what types satisfy an interface, or what subtypes exist before changing a base type.

blackwell-systems/agent-lsp · 39 tokens

decision-ledger

Maintain an append-only decision ledger (DECISIONS.md). Use when the user confirms a decision, reverses or changes a past decision, asks what was decided and why, or at session start to load standing decisions.

svy04/ballast · 48 tokens

package-release

Prepare, publish, repair, or verify package releases and changelogs. Always use for package/version release, publish, ship, tag, changelog, release notes, registry publication, documentation publication, or GitHub Release work. Distinguish package releases from application deployments before acting.

dannote/dot-pi · 60 tokens

twitter-thread-style

Write or revise X/Twitter developer announcement threads in the user's preferred style. Use for technical launch threads, project announcements, release threads, and threads with code screenshots/snippets.

dannote/dot-pi · 39 tokens