بنقرة واحدة
ghidra-rename-export
Export all current Ghidra renames to JSON backup in git repo. Run after every RE session.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Export all current Ghidra renames to JSON backup in git repo. Run after every RE session.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Reverse engineer and recreate the Hamsterball game (2000s Windows game by Raptisoft)
Start GhidraMCP headless server with the Hamsterball.exe project — always do this before any RE work
Restore all function renames from FUNCTION_MAP.md back into a fresh Ghidra project after DB loss or re-import
Complete guide to using and extending Hermes Agent — CLI usage, setup, configuration, spawning additional agents, gateway platforms, skills, voice, tools, profiles, and a concise contributor reference. Load this skill when helping users configure Hermes, troubleshoot issues, spawn agent instances, or make code contributions.
Create hand-drawn style diagrams using Excalidraw JSON format. Generate .excalidraw files for architecture diagrams, flowcharts, sequence diagrams, concept maps, and more. Files can be opened at excalidraw.com or uploaded for shareable links.
54 production-quality design systems extracted from real websites. Load a template to generate HTML/CSS that matches the visual identity of sites like Stripe, Linear, Vercel, Notion, Airbnb, and more. Each template includes colors, typography, components, layout rules, and ready-to-use CSS values.
| name | ghidra-rename-export |
| description | Export all current Ghidra renames to JSON backup in git repo. Run after every RE session. |
| version | "2026-04-14T00:00:00.000Z" |
MUST run after every RE session to persist renames outside the Ghidra project DB.
The HTTP API paginating through 3781 functions at 100/page times out even at 300s due to per-request latency. Do NOT rely on this as primary method.
FUNCTION_MAP.md is the source of truth. Always up to date. Parse it directly:
cd ~/hamsterball-re && python3 -c "
import json, re
renames = []
with open('docs/FUNCTION_MAP.md', 'r') as f:
for line in f:
m = re.match(r'\|\s*(0x[0-9a-fA-F]+)\s*\|\s*(\S+.*?)\s*\|', line.strip())
if m:
addr, name = m.group(1), m.group(2).strip()
if name not in ('Address', '---', '---------', 'Name'):
renames.append({'address': addr, 'name': name})
with open('analysis/ghidra/renames_backup.json', 'w') as f:
json.dump({'renames': renames, 'count': len(renames), 'timestamp': '2026-04-14', 'source': 'FUNCTION_MAP.md'}, f, indent=2)
print(f'Exported {len(renames)} function entries')
"
The list_functions_enhanced MCP tool works but is capped at 100/page and slow. Use for spot checks only:
list_functions_enhanced offset=0 limit=100 → save
list_functions_enhanced offset=100 limit=100 → append
...
run_script_inline fails with:
GhidraScriptLoadException: BundleHost.getBundleFiles() is null
The headless GhidraMCP server cannot execute JavaScript or Python inline scripts. Do not attempt inline scripts — they will not work.
run_script) also brokenGhidra was not started with PyGhidra. Python scripts (*.py) are not available.
Only *.java scripts can run, and only if the BundleHost issue is resolved.
Workaround: use list_functions_enhanced MCP tool instead.
After each RE session, update the function map docs:
docs/FUNCTION_MAP.mdcd ~/hamsterball-re
git add analysis/ghidra/renames_backup.json docs/FUNCTION_MAP.md
git commit -m "Session N: backup renames (X% documented)"
git push
The Ghidra project DB (.rep/ directory) is NOT version controlled. If it gets corrupted or re-imported, ALL renames are LOST unless exported to git. This happened in April 2026 and cost us ~14% documentation progress (75.5% -> 61%).