Migration Skill — AI-Assisted Debug System Migration
Most Unity projects have some form of homegrown debugging: OnGUI() menus, custom logger wrappers, IMGUI-based cheat panels, or performance HUDs. The migration skill teaches your AI to analyze these systems and produce an incremental migration plan — replacing them with Jahro features without breaking existing workflows.
What the skill does
When you ask your AI to migrate an existing debug system, it:
- Identifies what type of system it is (IMGUI menu, custom logger, cheat framework, performance HUD)
- Maps each existing capability to a Jahro equivalent
- Generates a step-by-step migration plan that runs both systems in parallel during transition
- Produces the replacement code (commands, watchers, logging)
- Provides a cleanup checklist for removing the old system
Example prompts
"Migrate our OnGUI debug menu to Jahro commands"
"Replace our custom logger with structured logging and Jahro"
"We use SRDebugger — what's the migration path to Jahro?"
"Convert our IMGUI performance HUD to Jahro watchers"
"We have a cheat menu built with UI Toolkit — migrate it to Jahro"
Systems the AI can migrate
| Existing system | Jahro replacement | Skill used |
|---|---|---|
OnGUI() debug buttons | [JahroCommand] methods | Commands |
Custom Debug.Log wrapper | Structured [Tag] Action — key=value format | Logging |
| IMGUI variable displays | [JahroWatch] attributes | Watcher |
| Custom cheat menus (UI Toolkit, UGUI) | Visual Mode command browser | Commands |
| Performance HUDs | Watcher with cached patterns | Watcher |
| SRDebugger commands | [JahroCommand] + [JahroWatch] | Commands + Watcher |
| Custom screenshot capture | Snapshot sessions | Snapshots |
Migration approach
The skill follows an incremental strategy — it never recommends ripping out your existing system in one step.
Phase 1: Run both systems in parallel. Add Jahro equivalents alongside the existing code. Verify they produce the same results.
Phase 2: Redirect usage. Point your team to the Jahro console instead of the old system. Keep the old code in place as a fallback.
Phase 3: Remove the old system. Once the team is comfortable, delete the old debug code and its dependencies.
Example: OnGUI menu to Jahro commands
Before — scattered OnGUI() debug buttons:
void OnGUI()
{
if (GUI.Button(new Rect(10, 10, 150, 30), "Reset Game"))
ResetGame();
if (GUI.Button(new Rect(10, 50, 150, 30), "God Mode"))
ToggleGodMode();
if (GUI.Button(new Rect(10, 90, 150, 30), "Skip Level"))
SkipLevel();
}After — Jahro commands (OnGUI code still present during Phase 1):
[JahroCommand("reset-game", "Debug", "Reset the current game state")]
public static void ResetGame() { /* existing logic */ }
[JahroCommand("god-mode", "Cheats", "Toggle invincibility")]
public static void ToggleGodMode() { /* existing logic */ }
[JahroCommand("skip-level", "Debug", "Jump to next level")]
public static void SkipLevel() { /* existing logic */ }The existing OnGUI() block stays until your team confirms the Jahro commands work identically. Then remove it.
Contextual awareness
The migration skill has proactive pattern recognition. If the AI sees any of these in your code, it suggests migration without being asked:
OnGUI()with debug buttons → suggests Jahro commandsDebug.LoginsideUpdate()→ suggests[JahroWatch]instead- Custom
DebugMenuorCheatManagerclasses → suggests reviewing for migration - SRDebugger imports or attributes → suggests Jahro equivalents
Verification
After migrating a system:
- Run the game and verify all migrated features work through the Jahro console
- Compare behavior between old and new implementations
- Check that no
OnGUI()draw calls remain in builds where they're not needed (verify with the Profiler) - Confirm the old system can be disabled without breaking gameplay
Frequently Asked Questions
Can the AI migrate from SRDebugger specifically?
Yes. The skill maps SRDebugger's option containers to [JahroCommand] and [JahroWatch] attributes. The AI generates equivalent code using Jahro's API. Since SRDebugger is an Asset Store package, removal is straightforward once the migration is verified.
How long does a typical migration take? For a small project (10-20 debug functions), the AI generates the replacement code in a single session. For larger codebases, the incremental approach means you can migrate one system at a time over multiple sessions.
Will the migration break my existing build? No. The incremental approach runs both systems in parallel. Nothing is removed until you explicitly delete the old code after verifying the Jahro equivalents.
Can I migrate only part of my debug system? Yes. Each Jahro feature is independent. You can migrate your cheat menu to commands while keeping your custom logger, or migrate your performance HUD to watchers while keeping your OnGUI menu.
Related
- Commands Skill — AI-generated runtime commands
- Watcher Skill — AI-generated variable monitoring
- Logging Skill — structured logging practices
- Agent Skills Overview — all 8 skills
- Install Agent Skills — setup instructions