legacy-code-expert

Identify safe modification paths in untested legacy codebases.

12|2|Updated Jan 27, 2026
One-click install
npx skills add https://github.com/jikig-ai/soleur --skill legacy-code-expert-jikig-ai
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: legacy-code-expert
Source: https://github.com/jikig-ai/soleur/tree/main/.openhands/skills/legacy-code-expert
Command: npx skills add https://github.com/jikig-ai/soleur --skill legacy-code-expert-jikig-ai

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Legacy codebases often lack tests, making safe modification risky. This skill provides a structured approach to identify seams, characterize current behavior with tests, and guide safe, incremental changes using dependency-breaking techniques.

Core Features & Use Cases

  • Identify change points and blast radius in untested legacy modules.
  • Map dependencies (global state, hidden inputs, external systems) to plan safe transformations.
  • Propose least-invasive Feathers' techniques and create a plan for characterization tests and incremental refactors.

Quick Start

Run initial characterization tests to lock current behavior, then apply the least-invasive dependency-breaking techniques to enable safe refactoring.

Frequently Asked Questions about legacy-code-expert

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I safely modify legacy code that lacks tests?

To safely modify legacy code without tests, identify seams to isolate changes, write characterization tests to lock current behavior, and apply incremental dependency-breaking techniques for risk-assessed refactoring.

What are characterization tests and when do I need them for refactoring?

Characterization tests capture and lock in the existing behavior of untested legacy modules before modification. You need them when refactoring tightly coupled components to ensure incremental changes do not alter current outputs.

How do I identify seams in a codebase to break dependencies?

Identify seams by mapping dependencies like global state, hidden inputs, and external systems. This pinpoints change points and blast radius, enabling least-invasive dependency-breaking techniques for safe transformations.

What's the best way to refactor tightly coupled legacy modules safely?

The best way to refactor tightly coupled legacy modules is applying least-invasive Feathers' techniques. Plan safe, incremental transformations by mapping dependencies first to reduce blast radius and assess modification risks.

Can I use dependency-breaking techniques on codebases with hidden global state?

Yes, you can use dependency-breaking techniques on codebases with hidden global state. Map the global state dependencies to plan safe transformations and apply incremental refactors using characterization tests to verify behavior.