AI agent skills for working with legacy code
Legacy skills are for the situation where the code works, nobody knows why, and the tests do not exist. The method they encode — characterize current behaviour, change one thing, verify — is old and unglamorous and it is what keeps a migration from becoming a rewrite. Look for one that handles the archaeology explicitly: reading commit history and issue threads to recover the reason a strange branch is there.
People land here searching for “claude code legacy code skill”, “agent skill for migration”, “codemod skill”.
50 working with legacy code skills Refine in search →
-
assistant-ui-skills Bundle UpdateUpgrades an existing assistant-ui application and applies the migrations needed to reach the current AI SDK v7 and assistant-ui 0.15.x lines. Use when updating, bumping, or migrating @assistant-ui/react, @assistant-ui/ai-sdk, the older @assistant-ui/react-ai-sdk alias, ai, or @ai-sdk/react, or when an upgrade exposes removed hooks, scope accessor calls, provider configuration, registry paths, event names, legacy interactables, or tool registrations. Start here for an existing project, post-update type failures, package compatibility, CLI codemods, and version-specific migration order. For a first install or a new project use setup; for authoring a runtime without an upgrade use runtime.
-
jeffallan Bundle Legacy ModernizerDesigns incremental migration strategies, identifies service boundaries, produces dependency maps and migration roadmaps, and generates API facade designs for aging codebases.
10.4k -
tomevault-io Bundle CodemodUse Codemod CLI whenever the user wants to migrate, upgrade, update, or refactor a codebase in a repeatable way. This includes framework migrations, library upgrades, version bump migrations, API surface changes, deprecations, and large-scale mechanical edits. First search the Codemod Registry for an existing package, prefer deterministic codemods before open-ended AI rewrites, run dry-runs before apply, and create a codemod package only when no suitable package exists. Use when this capability is needed.
-
vinhnx Bundle CodemodUse Codemod CLI whenever the user wants to migrate, upgrade, update, or refactor a codebase in a repeatable way. This includes framework migrations, library upgrades, version bump migrations, API surface changes, deprecations, and large-scale mechanical edits. First search the Codemod Registry for an existing package, prefer deterministic codemods before open-ended AI rewrites, run dry-runs before apply, and create a codemod package only when no suitable package exists.
-
phmatray Bundle Migrate LegacyUse when upgrading, migrating, or modernizing a legacy application — outdated target framework, out-of-support runtime, obsolete APIs, old packages, or legacy idioms. Triggers on "upgrade this app", "migrate to .NET 10", "modernize this codebase", "this project targets an old framework", « mets à niveau cette app », « migre vers .NET 10 », « modernise ce code legacy », /migrate, /migrate-assess, /migrate-verify. Drives a seven-phase, gate-verified pipeline (assessment → verified production) in which RoselineMCP performs all C# analysis and transformation.
-
ferroxlabs Bundle Migrate Legacy CodebaseOrchestrates the systematic modernization of a legacy codebase by chaining four engineering skills into a structured migration pipeline. Covers technical debt assessment, incremental refactoring, integration testing, and safe deployment of modernized components. Use when the user needs to modernize a legacy system incrementally without breaking existing functionality. Do NOT use for greenfield rewrites, simple library upgrades, or projects where the legacy system can be replaced entirely.
37 -
afine907 Bundle Code Migration【代码迁移】框架迁移、语言升级、API 版本迁移的技术方案和执行指南。 触发时机: - 用户要求"迁移代码"、"升级框架"、"Python 2到3" - 需要从旧框架迁移到新框架 - API 版本需要升级 提供迁移策略、步骤和验证方法。
-
wedabro Skill Speckit MigrateLegacy Code Migrator - Reverse-engineer existing codebase to SDD standard.
-
codemod Bundle Name{description}
-
tomevault-io Bundle Jeremylongshore Claude Code Plugins Plus Skills Langfuse UpgLangfuse Upgrade & Migration
-
tomevault-io Bundle Migrate To Skills 2Migrate legacy rule/command files (Cursor .mdc rules, slash-command markdown, old-format skills) to Claude Code SKILL.md format. Use when consolidating cross-platform configs, importing Cursor or Antigravity workflows to Claude Code, or refactoring old rules into the skills/ directory. Use when this capability is needed.
-
thelobbi Skill MigrationMUI version migration guides — v4→v5 and v5→v6 with codemods and patterns
-
majiayu000 Bundle Migration Assistant 2Expert in code migrations, version upgrades, breaking change handling, automated codemods, deprecation warnings, and migration testing
567 -
georgeqle Skill Migrate 3Guide a structural migration or dependency upgrade with a step-by-step plan and verification
1 -
diegosouzapw Bundle Migration GuidesMigration guides - from other AI tools, version upgrades, config migration. Use when switching from Cursor, Copilot, or Cody, upgrading Claude Code versions, or migrating configurations and customizations.
54 -
eliferjunior Skill Code MigrationMigrate codebases between frameworks, languages, and API versions. Use when a user asks to convert JavaScript to TypeScript, migrate React class components to hooks, upgrade Vue 2 to Vue 3, migrate Python 2 to 3, update deprecated APIs, switch ORMs, convert Express to Fastify, or modernize legacy code. Handles incremental migration with backward compatibility.
0 -
dvcrn Skill Next UpgradeUpgrade Next.js to the latest version following official migration guides and codemods
32 -
tokenrollai Skill UpgradeExplicit V2 to V3 migration surface. Never suggest this command implicitly.
-
pproenca Bundle Nuqs Codemod RunnerMigrates a nuqs codebase off pre-v2.5 patterns — deprecated `throttleMs`, hand-rolled setTimeout/useState debounce around `useQueryState`, unchecked `parseAsJson` casts, unversioned `nuqs/adapters/react-router` imports, or `ParserBuilder<T>` type references. Scans the repo, produces a dry-run report, asks for confirmation, applies AST codemods, then runs `tsc --noEmit` + the user's lint as a gate. Trigger even if the user only mentions "upgrade nuqs" or "migrate to nuqs v2.5+" without naming the specific patterns — they almost always exist in pre-v2.5 codebases.
-
majiayu000 Bundle Code MigratorMigrate legacy code to modern frameworks, languages, and patterns with automated refactoring and testing
567 -
modbender Skill Next UpgradeUpgrade Next.js to the latest version following official migration guides and codemods
12 -
aibot88 Bundle Salesloft Upgrade MigrationMigrate between SalesLoft API versions and handle breaking changes. Use when SalesLoft announces API deprecations, upgrading OAuth flows, or transitioning from legacy endpoints. Trigger: "upgrade salesloft", "salesloft migration", "salesloft API version".
3 -
micsapp Skill Langchain Upgrade MigrationManage LangChain SDK upgrades and migrations. Use when upgrading LangChain versions, migrating from legacy patterns, or updating to new APIs after breaking changes. Trigger with phrases like "upgrade langchain", "langchain migration", "langchain breaking changes", "update langchain version", "langchain 0.3".
3 -
gabrielmoreira Skill Salesloft Upgrade MigrationMigrate between SalesLoft API versions and handle breaking changes. Use when SalesLoft announces API deprecations, upgrading OAuth flows, or transitioning from legacy endpoints. Trigger: "upgrade salesloft", "salesloft migration", "salesloft API version".
17
How to install a working with legacy code skill
- Compare the skills. Read the working with legacy code skills below — each page shows the full SKILL.md, its safety verdict, and the capabilities it declares.
- Install it. Run npx skillmds@latest add <owner>/<name>. The CLI writes the skill into every agent directory it detects, or use --agent to pin one.
- Use it. Restart your agent. It loads the skill on demand the next time you ask for something that matches — you do not have to name the skill.
What makes a good working with legacy code skill?
Legacy skills are for the situation where the code works, nobody knows why, and the tests do not exist. The method they encode — characterize current behaviour, change one thing, verify — is old and unglamorous and it is what keeps a migration from becoming a rewrite. Look for one that handles the archaeology explicitly: reading commit history and issue threads to recover the reason a strange branch is there.
Every skill listed here is a plain SKILL.md file in the format Anthropic documents for Agent Skills, read unchanged by Cursor, OpenAI Codex and 60+ agents. Each passes a safety review before it is publicly listed; the verdict and declared capabilities are on every skill's page.
Frequently asked questions
What is an agent skill for working with legacy code?
Legacy skills are for the situation where the code works, nobody knows why, and the tests do not exist. The method they encode — characterize current behaviour, change one thing, verify — is old and unglamorous and it is what keeps a migration from becoming a rewrite. Look for one that handles the archaeology explicitly: reading commit history and issue threads to recover the reason a strange branch is there.
Can an agent safely upgrade a major dependency version?
With a test suite and an incremental skill, often yes. Without tests, a major upgrade is an unverifiable change, and skills built for this will usually insist on characterization tests before touching the version.
Which agents can use these working with legacy code skills?
Any agent that reads SKILL.md files: Claude Code, Claude.ai, Cursor, OpenAI Codex, Windsurf, OpenCode and 60+ others. The format is not vendor-specific, so the same file works everywhere — each agent just keeps its skills in a different directory, listed at /agents.
Are these working with legacy code skills free?
Yes. Searching, reading and installing skills on SkillMD is free and needs no account. Individual skills carry their own licence, shown on each skill's page.