jahro-migration
Analyzes existing debug systems (IMGUI menus, custom loggers, cheat frameworks, performance HUDs) and generates incremental migration plans to Jahro…
Skill by jahro-console
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/jahro-console-jahro-migration
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: design
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/jahro-migration
What's inside
- Skill name
jahro-migration- Description
- Analyzes existing debug systems (IMGUI menus, custom loggers, cheat frameworks, performance HUDs) and generates incremental migration plans to Jahro equivalents. Use when the user wants to replace a custom debug UI, migrate from an existing console or cheat system, switch to Jahro, or has OnGUI debug code they want to modernize.
- License
- MIT
- Instructions
- 270 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
# Jahro Migration
Help users migrate from custom debug tools to Jahro. Analyze existing code, classify what to replace/keep/adapt, and generate migrated code incrementally.
## Migration Decision Guide
When the user shares their existing debug code, classify each component:
| What are you migrating? | Jahro Replacement | Action |
|:------------------------|:-----------------|:-------|
| IMGUI debug buttons (`OnGUI` + `GUI.Button`) | `[JahroCommand]` + Visual Mode | Replace — Visual Mode provides a better button UI |
| Canvas-based debug UI | `[JahroCommand]` + Visual Mode | Replace — eliminates UI maintenance |
| Custom command parser (string → command) | `[JahroCommand]` + Text Mode | Replace — Jahro handles parsing and type conversion |
| Cheat code system (dictionary/registry) | `[JahroCommand]` with groups | Replace — typed parameters, auto-discovery |
| Custom Debug.Log wrapper | Remove or keep | Jahro intercepts `Debug.Log` automatically — wrapper often unnecessary |
| Performance HUD (FPS, memory overlay) | `[JahroWatch]` groups | Replace — Watcher provides organized monitoring |
| File-based logger | Keep | Jahro doesn't write to files — keep if file logging is needed |
| Custom Inspector/Editor tools | Evaluate | May complement Jahro — keep if Editor-only tools |
| Analytics-based logging | Keep | Different purpose — Jahro is for debugging, not analytics |
## Migration Workflow
1. **User shares existing debug code** — ask to see the files or point to the classes
2. **Classify each component** using the decision guide above
3. **Generate a migration plan**: what to replace, what to keep, what to adapt, effort estimate
4. **Generate migrated code** — file by file, side by side with original
5. **Support incremental migration** — old and new can coexist
6. **VERIFY at each step** — "Enter Play Mode, confirm migrated commands appear in Jahro"
## Pattern: IMGUI Debug Menu → Jahro Commands
### Before (IMGUI)
```csharp
public class DebugMenu : MonoBehaviour
{
private bool showMenu;
void OnGUI()
{
if (GUI.Button(new Rect(10, 10, 100, 30), "Toggle"))
showMenu = !showMenu;
if (!showMenu) return;
if (GUI.Button(new Rect(10, 50, 150, 30), "God Mode"))
Player.GodMode = true;
if (GUI.Button(new Rect(10, 90, 150, 30), "Add 1000 Gold"))
Player.Gold += 1000;
if (GUI.Button(new Rect(10, 130, 150, 30), "Skip Level"))
LevelManager.SkipToNext();
GUI.Label(new Rect(10, 170, 200, 30), $"FPS: {1f/Time.deltaTime:F0}");
GUI.Label(new Rect(10, 200, 200, 30), $"Health: {Player.Health}");
}
}
```
### After (Jahro)
```csharp
using JahroConsole;
using UnityEngine;
public class DebugCommands : MonoBehaviour
{
[JahroCommand("god-mode", "Cheats", "Enable god mode")]
public static void GodMode() => Player.GodMode = true;
[JahroCommand("add-gold", "Cheats", "Add 1000 gold")]
public static void AddGold() => Player.Gold += 1000;
[JahroCommand("skip-level", "Game", "Skip to next level")]
public static void SkipLevel() => LevelManager.SkipToNext();
[JahroWatch("FPS", "Performance")]
public static string FPS => (1f / Time.unscaledDeltaTime).ToString("F0");
[JahroWatch("Health", "Player")]
public static int Health => Player.Health;
}
```
**What changed:**
- `GUI.Button` actions → `[JahroCommand]` static methods
- `GUI.Label` monitors → `[JahroWatch]` static properties
- `OnGUI` class can be deleted after migration
- Visual Mode replaces the custom button UI — no IMGUI maintenance
- No `RegisterObject` needed since everything is static
### Parameterized version
If the original had user input (e.g., text field for gold amount):
```csharp
[JahroCommand("add-gold", "Cheats", "Add gold to player")]
public static void AddGold(int amount) => Player.Gold += amount;
```
Visual Mode auto-generates an input field; Text Mode accepts `add-gold 500`.
## Pattern: Custom Logger → Jahro (Usually Remove)
### Before
```csharp
public static class GameLogger
{
public static void Log(string category, string message)
=> Debug.Log($"[{category}] {message}");
public static void LogWarning(string category, string message)
=> Debug.LogWarning($"[{category}] {message}");
public static void LogError(string category, string message)
=> Debug.LogError($"[{category}] {message}");
}
```
### After
**No migration needed.** Jahro automatically intercepts all `Debug.Log`, `Debug.LogWarning`, and `Debug.LogError` calls. The logs appear in Jahro's console with filtering and search.From jahro-console/unity-agent-skills, MIT.
More from jahro-console/unity-agent-skills
- 0.486score
jahro-snapshots
jahro-console
Guides snapshot mode selection, capture workflows, QA sharing, and team setup for Jahro Snapshots.
SkillDFreshness: D★ 17Claude Code +9 - 0.486score
jahro-troubleshooting
jahro-console
Diagnoses common Jahro issues using decision trees: commands not appearing, watcher not updating, console not opening, snapshots failing, launch button missing.
SkillDFreshness: D★ 17Claude Code +9 - 0.486score
jahro-production
jahro-console
Configures Jahro lifecycle controls for safe production deployment including JAHRO_DISABLE, auto-disable, and build validation.
SkillDFreshness: D★ 17Claude Code +9 - 0.486score
jahro-logging
jahro-console
Reviews and improves Debug.Log usage in Unity C# projects following structured logging principles: context tags, severity contracts, boundary-based placement…
SkillDFreshness: D★ 17Claude Code +9 - 0.482score
jahro-setup
jahro-console
Detects Jahro in Unity projects and guides installation, API key configuration, and feature overview.
SkillDFreshness: D★ 17Claude Code +9 - 0.482score
jahro-commands
jahro-console
Analyzes C# classes and generates [JahroCommand] attributes with correct syntax, RegisterObject patterns, and group organization.
SkillDFreshness: D★ 17Claude Code +9 - 0.482score
jahro-watcher
jahro-console
Analyzes C# fields and properties and generates [JahroWatch] attributes with groups and performance-safe patterns.
SkillDFreshness: D★ 17Claude Code +9
Signals
- Stars
- 17
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Mar 19, 2026 (7 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Website
- jahro.io/
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from jahro-console
- 0.486score
jahro-snapshots
jahro-console
Guides snapshot mode selection, capture workflows, QA sharing, and team setup for Jahro Snapshots.
SkillDFreshness: D★ 17Claude Code +9 - 0.486score
jahro-troubleshooting
jahro-console
Diagnoses common Jahro issues using decision trees: commands not appearing, watcher not updating, console not opening, snapshots failing, launch button missing.
SkillDFreshness: D★ 17Claude Code +9 - 0.486score
jahro-production
jahro-console
Configures Jahro lifecycle controls for safe production deployment including JAHRO_DISABLE, auto-disable, and build validation.
SkillDFreshness: D★ 17Claude Code +9 - 0.486score
jahro-logging
jahro-console
Reviews and improves Debug.Log usage in Unity C# projects following structured logging principles: context tags, severity contracts, boundary-based placement…
SkillDFreshness: D★ 17Claude Code +9 - 0.482score
jahro-setup
jahro-console
Detects Jahro in Unity projects and guides installation, API key configuration, and feature overview.
SkillDFreshness: D★ 17Claude Code +9 - 0.482score
jahro-commands
jahro-console
Analyzes C# classes and generates [JahroCommand] attributes with correct syntax, RegisterObject patterns, and group organization.
SkillDFreshness: D★ 17Claude Code +9
Cite this page
jahro-migration skill. Agent Mart. https://agentmart.dev/skills/jahro-console-jahro-migration (last updated 2026-10-24)