cursey/regenny

GitHub: cursey/regenny

一款用于交互式重构结构并生成 C++ 头文件的逆向工程工具,弥补了结构分析与 SDK 生成之间的流程空白。

Stars: 275 | Forks: 44

# ReGenny [![GitHub Build Action](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/ab3d1b4510065250.svg)](https://github.com/cursey/regenny/actions/workflows/build.yml) [用法与脚本文档](https://praydog.github.io/regenny-book/) ReGenny 是一个用于交互式重构结构并生成可用 C++ 头文件的逆向工程工具。头文件的生成由姊妹项目 [SdkGenny](https://github.com/cursey/sdkgenny) 完成。 ![早期构建预览](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/9e8a90ab73065251.png) ## 状态 ReGenny 仍处于开发早期阶段,但已可使用。事情可能会意外变化。现有项目可能会中断并需要更新。计划中还有许多功能。会出现错误。 ## 下载 ReGenny 处于活跃开发中。任何已发布的构建(或缺失)都可能过时。如果你想在当前形式下使用 ReGenny,建议自行构建 ReGenny。不过,你可以从 GitHub 操作的[此处](https://github.com/cursey/regenny/actions)获取最新的构建产物。 ## 构建 ReGenny 通过 [cmkr](https://github.com/build-cpp/cmkr) 使用 [CMake](https://cmake.org/)。 从命令行: ``` cmake -B build cmake --build build ``` ## MCP 集成 ReGenny 在 `localhost:12025` 上暴露一个 HTTP API 用于工具集成。`mcp-server/` 中包含一个用于 AI 辅助逆向工程的 MCP 服务器。请参阅 `AGENT.md` 获取代理导航指南。 ## 设计决策 * ReGenny 使用明文项目文件而非二进制文件(`.genny` 和 `.json`)。明文格式更适合包含在 Git 仓库中,也便于在 ReGenny 项目上与他人协作,因为你可以对项目文件进行差异/合并。 * 类似 [ReClass.NET](https://github.com/ReClassNET/ReClass.NET) 的树状显示,但你可以通过 `.genny` 文件构建树。 * ReGenny 使用 [SdkGenny](https://github.com/cursey/sdkgenny) 进行输出。[SdkGenny](https://github.com/cursey/sdkgenny) 的主要目标之一是生成优质输出,ReGenny 借此获得全部收益。代替单一的大型头文件,ReGenny 使用 [SdkGenny](https://github.com/cursey/sdkgenny) 生成适合包含到项目中的头文件层次结构。如果你的项目已经在使用 [SdkGenny](https://github.com/cursey/sdkgenny),那么你甚至无需生成头文件,因为你可以直接使用 `.genny` 文件。 * 由于 ReGenny 使用 [SdkGenny](https://github.com/cursey/sdkgenny),它支持 `.genny` 文件的所有功能: * 命名空间 * 枚举 * 结构体 * 类 * 函数原型 * 静态函数原型 * 位域 * 数组 * 多维数组 * 指针 * 命名空间可以相互嵌套 * 结构体、枚举和类可以嵌套在其他结构体/类中 * 引入你自己的外部类型 * `.genny` 格式足够灵活,能够直接解析简单的 C/C++ 结构(几乎)无需修改即可导入现有结构到 ReGenny 中。
标签:AI辅助逆向, Bash脚本, CMake构建, C++ 头文件生成, HTTP API, MCP集成, Python脚本, SDK生成, URL提取, 云资产清单, 反编译, 可视化界面, 开源逆向工具, 树形结构显示, 版本控制友好, 结构重构, 跨平台开发, 逆向工程, 项目文件编辑