Code Review Skill
Rain-kl/OpenFlare
Provides comprehensive code review guidance for React 19, Vue 3, Angular 17+, Svelte 5, Rust, TypeScript, Java, PHP, Python, Django, Go, C/.NET, Kotlin, Swift, NestJS, C/C++, and more.
Automatically updates a codebase to a new language version, framework version, or library update while ensuring all tests still pass.
$ npx skills add ArabelaTso/Skills-4-SE --skill test-guided-migration-assistant -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install ArabelaTso/Skills-4-SE test-guided-migration-assistant --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/ArabelaTso/Skills-4-SE.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/test-guided-migration-assistant .claude/skills/test-guided-migration-assistant && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "test-guided-migration-assistant" agent skill from https://github.com/ArabelaTso/Skills-4-SE/tree/main/skills/test-guided-migration-assistant into .claude/skills/test-guided-migration-assistant/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "test-guided-migration-assistant", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/ArabelaTso/Skills-4-SE/tree/main/skills/test-guided-migration-assistantType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add ArabelaTso/Skills-4-SE --skill test-guided-migration-assistant -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install ArabelaTso/Skills-4-SE test-guided-migration-assistant --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/ArabelaTso/Skills-4-SE.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/test-guided-migration-assistant .agents/skills/test-guided-migration-assistant && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "test-guided-migration-assistant" agent skill from https://github.com/ArabelaTso/Skills-4-SE/tree/main/skills/test-guided-migration-assistant into .agents/skills/test-guided-migration-assistant/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "test-guided-migration-assistant", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add ArabelaTso/Skills-4-SE --skill test-guided-migration-assistant -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install ArabelaTso/Skills-4-SE test-guided-migration-assistant --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/ArabelaTso/Skills-4-SE.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/test-guided-migration-assistant .cursor/skills/test-guided-migration-assistant && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "test-guided-migration-assistant" agent skill from https://github.com/ArabelaTso/Skills-4-SE/tree/main/skills/test-guided-migration-assistant into .cursor/skills/test-guided-migration-assistant/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "test-guided-migration-assistant", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/ArabelaTso/Skills-4-SE.git --path skills/test-guided-migration-assistant--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add ArabelaTso/Skills-4-SE --skill test-guided-migration-assistant -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install ArabelaTso/Skills-4-SE test-guided-migration-assistant --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/ArabelaTso/Skills-4-SE.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/test-guided-migration-assistant .gemini/skills/test-guided-migration-assistant && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "test-guided-migration-assistant" agent skill from https://github.com/ArabelaTso/Skills-4-SE/tree/main/skills/test-guided-migration-assistant into .gemini/skills/test-guided-migration-assistant/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "test-guided-migration-assistant", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install ArabelaTso/Skills-4-SE test-guided-migration-assistantInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add ArabelaTso/Skills-4-SE --skill test-guided-migration-assistant -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/ArabelaTso/Skills-4-SE.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/test-guided-migration-assistant .github/skills/test-guided-migration-assistant && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "test-guided-migration-assistant" agent skill from https://github.com/ArabelaTso/Skills-4-SE/tree/main/skills/test-guided-migration-assistant into .github/skills/test-guided-migration-assistant/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "test-guided-migration-assistant", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add ArabelaTso/Skills-4-SE --skill test-guided-migration-assistant -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install ArabelaTso/Skills-4-SE test-guided-migration-assistant --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/ArabelaTso/Skills-4-SE.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/test-guided-migration-assistant .opencode/skills/test-guided-migration-assistant && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "test-guided-migration-assistant" agent skill from https://github.com/ArabelaTso/Skills-4-SE/tree/main/skills/test-guided-migration-assistant into .opencode/skills/test-guided-migration-assistant/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "test-guided-migration-assistant", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
test-guided-migration-assistantAutomatically updates a codebase to a new language version, framework version, or library update while ensuring all tests still pass.
Test Guided Migration Assistant is an agent skill from ArabelaTso/Skills-4-SE. Automatically updates a codebase to a new language version, framework version, or library update while ensuring all tests still pass. Use this skill when migrating Python 2→3, upgrading framework versions (React, Django, Angular), updating dependencies, or performing any version migration where tests define correct behavior. The skill analyzes failing tests caused by migration, categorizes errors (import errors, API changes, type errors, behavior changes), proposes systematic fixes, and verifies that…
Its SKILL.md is about 1.8k tokens, which your agent loads only when the skill is triggered. The skill folder holds 5 other files, including scripts and reference files (for example `references/migration_scenarios.md`, `references/migration_strategy.md` and `scripts/analyze_test_failures.py`).
It sits in Backend & APIs, covering Backend development and Failing and flaky tests. It works with Django, React, Python and Angular. The repository describes itself as: A curated list of 180+ useful Claude Skills for Software Engineering and resources for customizing AI for SE workflows. The licence is Apache-2.0.
7 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 4f38503. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships 1 file in scripts/ (Python), which the agent can run.
Shell commands in SKILL.md call:
pythonnpmgitpippytestnodeFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use npm, git and pip, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Test Guided Migration Assistant loads about 1.8k tokens when it runs, and up to ~5.3k if it reads all its reference files. Until then it costs about 188 tokens; SKILL.md has 425 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.
The full file from ArabelaTso/Skills-4-SE at commit 4f38503, republished under its Apache-2.0 licence (© ArabelaTso). 425 words, ~1,820 tokens.
.claude/skills/test-guided-migration-assistant/SKILL.md (or your agent's skills folder). This skill also uses 3 other files; get the full folder from GitHub.Automatically update a codebase to a new language version, framework version, or library update while ensuring all tests continue to pass.
Before starting migration, establish the current state:
# Run full test suite
<test_command>
# Record baseline
# - Total tests: X
# - Passing: Y
# - Failing: Z (should be 0 or known failures)
# - Coverage: N%Document current state:
Gather information:
Consult migration guides:
Identify risks:
Update dependencies:
Incremental approach (recommended):
# Update one dependency at a time
npm install package@new-version
# or
pip install package==new-version
# Run tests immediately
<test_command>Batch approach (for experienced migrations):
# Update all dependencies
npm update
# or
pip install -U -r requirements.txt
# Run tests
<test_command>Update configuration:
Run tests and capture output:
# Pytest
pytest -v > test_output.txt 2>&1
# Jest
npm test > test_output.txt 2>&1
# Other frameworks
<test_command> > test_output.txt 2>&1Use analysis script:
python scripts/analyze_test_failures.py test_output.txtThe script categorizes failures into:
Follow priority order from analysis. See migration_strategy.md for detailed strategies.
Fix import errors first:
# Example: Module moved
# Old
from collections import Mapping
# New
from collections.abc import MappingFix API signature errors:
# Example: Parameter renamed
# Old
result = function(arg1, old_param=value)
# New
result = function(arg1, new_param=value)Fix type errors:
// Example: Stricter types
// Old
function process(value: string) { }
// New (handle undefined)
function process(value: string | undefined) {
if (value === undefined) return;
// ...
}Handle behavior changes:
# Example: Changed defaults
# Old behavior: returns None on error
# New behavior: raises exception
# Add error handling
try:
result = function()
except NewException:
result = None # Preserve old behaviorAfter each fix category:
# Run tests
<test_command>
# Commit if tests pass
git add .
git commit -m "Fix: migration import errors"Run full test suite multiple times:
# Catch flaky tests
for i in {1..3}; do
echo "Run $i"
<test_command>
doneVerify coverage unchanged:
# Generate coverage report
<coverage_command>
# Compare to baseline
# Should be same or betterCheck for warnings:
# Python
python -W all -m pytest
# Node.js
node --trace-warnings test
# Look for deprecation warningsSuccess criteria:
Create migration summary:
MIGRATION SUMMARY
=================
Migration: Python 3.8 → Python 3.12
Changes Made:
- Updated collections imports (Mapping → collections.abc.Mapping)
- Fixed asyncio.coroutine → async def
- Updated type hints for stricter checking
- Removed distutils usage
Test Results:
- Before: 156/156 passing
- After: 156/156 passing
- Coverage: 87% (unchanged)
Breaking Changes Addressed:
1. Collections ABC moved
2. asyncio.coroutine removed
3. Type checking stricter
Deprecation Warnings:
- None remainingTests Define Correctness: If tests pass, behavior is preserved.
Fix by Priority: Import errors block everything - fix first. Then API errors, then types, then behavior.
Incremental Changes: Fix one category, test, commit. Don't accumulate many changes.
Never Modify Tests: Fix the code to make tests pass. Don't change tests to match new behavior (unless behavior change is intentional and documented).
Fail Fast: Run tests immediately after migration attempt. Don't wait.
print statement → print() functionxrange() → range().iteritems() → .items()except Exception, e: → except Exception as e:ReactDOM.render() → ReactDOM.createRoot().render()django.conf.urls.url() → django.urls.re_path()ugettext → gettextUSE_L10N settingThe analyze_test_failures.py script automates failure categorization:
# Analyze pytest output
python scripts/analyze_test_failures.py test_output.txt
# Analyze Jest output
python scripts/analyze_test_failures.py test_output.txt --format jest
# Auto-detect format
python scripts/analyze_test_failures.py test_output.txt --format autoOutput provides:
If migration has too many failures (>20% of tests):
# Revert dependency changes
git checkout HEAD -- package.json package-lock.json
npm install
# Or revert commits
git revert <commit-hash>
# Verify tests pass
<test_command>Then plan incremental migration or allocate more time.
© ArabelaTso, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 3 other files (scripts, references) in skills/test-guided-migration-assistant of ArabelaTso/Skills-4-SE.
Open the folder on GitHubat commit 4f38503
Test Guided Migration Assistant next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Test Guided Migration Assistant this skillArabelaTso/Skills-4-SE | 253 | — | ~1.8k | Automated safety check: Pass | Apache-2.0 | |
| Code Review SkillRain-kl/OpenFlare | 288 | — | ~2.3k | Automated safety check: Notes | MIT | |
| Fullstack Devinfometa/workbuddyskills | 344 | — | ~1k | Automated safety check: Pass | MIT | |
| Code Review Skillawesome-skills/code-review-skill | 2.1k | — | ~2.8k | Automated safety check: Notes | MIT | |
| Maintaining Python TestsPostHog/posthog | 40k | — | ~2.5k | Automated safety check: Pass | Custom licence | |
| Design Patternswaybarrios/opencode-power-pack | 533 | — | ~2.2k | Automated safety check: Pass | MIT |
Rain-kl/OpenFlare
Provides comprehensive code review guidance for React 19, Vue 3, Angular 17+, Svelte 5, Rust, TypeScript, Java, PHP, Python, Django, Go, C/.NET, Kotlin, Swift, NestJS, C/C++, and more.
infometa/workbuddyskills
Full-stack backend architecture and frontend-backend integration guide.
awesome-skills/code-review-skill
Provides comprehensive code review guidance for React 19, Vue 3, Angular 17+, Svelte 5, Rust, TypeScript, Java, Java 8, PHP, Ruby, Rails, Python, Django, FastAPI, Go, C/.NET, Kotlin, Swift, Dart…
PostHog/posthog
Maintains existing pytest and Django test suites without weakening correctness.
waybarrios/opencode-power-pack
Agents should invoke this skill when choosing patterns, designing traits/interfaces/components, deciding abstraction boundaries, evaluating dependency injection/callbacks, or comparing…
getsentry/skills
Django access control and IDOR security review. An agent skill from getsentry/skills.
ArabelaTso/Skills-4-SE
Generate prioritized CVE watchlists and actionable security recommendations for repositories.
ArabelaTso/Skills-4-SE
Automatically migrate Python web applications between frameworks (Flask → FastAPI, Django → FastAPI).
ArabelaTso/Skills-4-SE
Generate test cases using metamorphic testing by applying transformations based on metamorphic properties.
ArabelaTso/Skills-4-SE
Instruments programs to capture execution traces specifically for reproducing reported bugs, enabling consistent replay and diagnosis of failures.
ArabelaTso/Skills-4-SE
Automatically migrate Spring MVC applications to Spring Boot.
ArabelaTso/Skills-4-SE
Instrument programs (Python, C/C++, Java) to capture snapshots of key program states at runtime, including variables, memory, and call stacks.
Categories
Automatically updates a codebase to a new language version, framework version, or library update while ensuring all tests still pass. Test Guided Migration Assistant is an agent skill from ArabelaTso/Skills-4-SE. Automatically updates a codebase to a new language version, framework version, or library update while ensuring all tests still pass.
Test Guided Migration Assistant fits situations like: migrating Python 2→3; upgrading framework versions (React; updating dependencies; performing any version migration where tests define correct behavior.
Run `npx skills add ArabelaTso/Skills-4-SE --skill test-guided-migration-assistant -a claude-code`. Or copy the skill folder (skills/test-guided-migration-assistant in ArabelaTso/Skills-4-SE) into .claude/skills/test-guided-migration-assistant in your project. Claude Code loads it when a task matches its description.
Run `npx skills add ArabelaTso/Skills-4-SE --skill test-guided-migration-assistant -a codex`. Or copy the skill folder (skills/test-guided-migration-assistant in ArabelaTso/Skills-4-SE) into .agents/skills/test-guided-migration-assistant in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add ArabelaTso/Skills-4-SE --skill test-guided-migration-assistant -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/test-guided-migration-assistant, .gemini/skills/test-guided-migration-assistant, .github/skills/test-guided-migration-assistant and .opencode/skills/test-guided-migration-assistant in your project.
Going by SKILL.md and its folder, Test Guided Migration Assistant needs Python for the scripts in its folder and the command-line tools its instructions call (python, npm, git, pip, pytest and node). Our summary lists: Python 3; Node.js; Docker.
SKILL.md contains no URLs. Its commands use npm, git and pip, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Test Guided Migration Assistant is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.8k tokens (SKILL.md is roughly 7.3k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 3.5k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Test Guided Migration Assistant: Code Review Skill (Rain-kl/OpenFlare, 288 stars), Fullstack Dev (infometa/workbuddyskills, 344 stars), Code Review Skill (awesome-skills/code-review-skill, 2.1k stars) and Maintaining Python Tests (PostHog/posthog, 40k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
ArabelaTso (a GitHub user) maintains it in ArabelaTso/Skills-4-SE, which has 253 GitHub stars. The repository holds 150 skills in this directory. The repository was last updated on August 21, 2026.
Source: ArabelaTso/Skills-4-SE on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.