Api migration
Claude Agent for automated API migration using Anthropic Skills & Subagents. Migrates Python/JS code from deprecated APIs with parallel subagents, progressive disclosure, and structured outputs.
npx -y skills add davideferigato/MigraAPI --skill api-migrationAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Migrates deprecated API calls to a new API version in Python and JavaScript codebases. Use this skill when the user asks to migrate code from an old API to a new API, upgrade API endpoints, or replace deprecated function calls.
SKILL.md
2.4 KB, as published. Nobody here has run it
API Migration Skill
This skill enables Claude to automatically migrate code from a deprecated API to a new API. It works with Python and JavaScript/Node.js projects.
How to use this skill
- Understand the migration scope – ask the user for old/new API names or use default mapping from
migration-rules.json. - Scan the codebase – run
python scripts/scanner.py <path>to get a JSON report of deprecated calls. - Apply migrations (via subagents) – replace old calls with new ones, preserving formatting and comments.
- Validate – run tests or linters; report obstacles.
Files
migration-rules.json– core mapping old → new.regex-patterns.md– regex patterns for detection.scripts/scanner.py– executable scanner that outputs JSON.
Example migration
Before (Python):
from old_api import Client
client = Client(api_key="test")
user = client.get_user(user_id=123)
After:
from new_api import Client
client = Client(api_key="test")
user = client.fetch_user_by_id(user_id=123)
Allowed tools
Only read tools plus scanner.py execution. Writing is delegated to subagents with explicit write permissions.
Troubleshooting
- Skill not activating? Check
name/descriptionmatch user request. - Scanner fails? Ensure Python 3.9+ and
remodule (built-in). - No occurrences? Verify regex patterns against actual code.
Progressive Disclosure – Level 3 (Lazy Loading)
This skill supports on-demand loading of additional context to minimize token usage:
migration-rules.json: Load ONLY when processing a new language or when patterns are unclear.regex-patterns.md: Load ONLY ifscanner.pyreturns unexpected results (e.g., false negatives).scripts/scanner.py: Executed via Bash – does NOT consume context window.
Loading strategy
if task.language not in cached_rules:
load("migration-rules.json")
cache.append(language)
if scanner_results are suspicious or incomplete:
load("regex-patterns.md")
re-run scanner with updated patterns