# ToCode 面向智能体的二进制类源码导出工具

> 一个 Python 命令行工具，可把二进制、IDA 数据库、Android APK、.NET 程序集或整个应用目录导出为供编码智能体阅读的类源码项目树：还原的 C 代码（APK 为 Java，.NET 为 C# 和 IL）及对应汇编与函数摘要、还原的头文件和类型、节区数据转储，函数、字符串、导入、导出、可达性和调用图聚类的 JSON 索引，以及生成的 AGENTS.md 和 CLAUDE.md。它可调用 IDA、Binary Ninja、配合 r2ghidra 的 radare2 或 angr；处理目录时按各平台加载器规则，把每个导入项链接到定义它的文件中的函数。其 tocode mcp 服务会保持反编译器打开，让智能体记录名称、类型和注释，并只重新生成受影响的文件。

- 类型：集成
- 目标：应用 · 二进制
- 类别：独立智能体工作流
- 关联：独立智能体集成
- 来源复核于：2026-10-27
- 收录于：2026-11-03
- 原始资源：<https://github.com/buzzer-re/ToCode>
- 一手来源：<https://github.com/buzzer-re/ToCode/blob/216f1f9d808f0c125ef5edb5652021e9c3c96f51/README.md>
- 目录页面：<https://awesomerea.org/zh/resources/tocode/>
- 记录 JSON：<https://awesomerea.org/resources/tocode/record.json>
- 英文版：[English](https://awesomerea.org/resources/tocode/index.md)

## 使用条件与局限

- 审阅时的 PyPI 版本为 tocode-cli 0.3.2，于 2026-10-16 上传；所审阅的 main 分支提交是 v0.3.2 标签之后的一次合并提交。仓库创建于 2026-05-20。需要 Windows、Linux 或 macOS 上的 Python 3.10+，可用 pip 或 uv 安装，也可在克隆仓库后运行 install.sh 或 install.ps1。
- 不附带反编译后端：可通过 ida-domain 和 idapro 库使用 IDA；在许可证允许时以无界面方式使用 Binary Ninja，或通过其内置 MCP 服务器或运行中界面里的 RPC 桥接使用；也可使用配合 r2ghidra 的 radare2，或约 450 MB 的可选 angr 扩展，README 称后者生成的伪 C 代码质量较低。导出 .NET 需要 .NET 9+ 运行时，并会在提示后从 nuget.org 下载 dnlib 和 ICSharpCode.Decompiler，按固定的 SHA-256 哈希校验；APK 使用 droidasc 包。
- 需自行提供二进制或应用目录。导出结果会复制输入中的节区数据、APK 非代码条目和原生库，因此其敏感程度与被分析文件相同。README 警告 Binary Ninja RPC 桥接会在无认证的情况下暴露整个 Python 虚拟机，必须只绑定到 127.0.0.1。
- eval 目录定义了一项盲源码还原基准：九个小型 C 程序分别带调试信息和去符号构建，一个只能使用 ToCode MCP 服务器和文件工具的无界面 Claude Code 智能体处理去符号版本，再由评判程序对名称、类型、逐函数的 LLM 评分、测试输入上的行为以及信息泄漏打分。仓库未提交基准结果；测试使用生成的样本和模拟的 Binary Ninja 模块，仓库未提交任何二进制。
- MIT 许可证（LICENSE、pyproject.toml）。tocode skill install 会为 Claude Code 和 Codex 安装工作流技能。

## 一手来源

1. <https://github.com/buzzer-re/ToCode/blob/216f1f9d808f0c125ef5edb5652021e9c3c96f51/README.md>
2. <https://github.com/buzzer-re/ToCode/blob/216f1f9d808f0c125ef5edb5652021e9c3c96f51/eval/README.md>
3. <https://github.com/buzzer-re/ToCode/blob/216f1f9d808f0c125ef5edb5652021e9c3c96f51/pyproject.toml>
4. <https://github.com/buzzer-re/ToCode/blob/216f1f9d808f0c125ef5edb5652021e9c3c96f51/DEVELOPMENT.md>
5. <https://github.com/buzzer-re/ToCode/tree/216f1f9d808f0c125ef5edb5652021e9c3c96f51/src/tocode/backends>
6. <https://github.com/buzzer-re/ToCode/blob/216f1f9d808f0c125ef5edb5652021e9c3c96f51/src/tocode/skill/SKILL.md>
7. <https://github.com/buzzer-re/ToCode/blob/216f1f9d808f0c125ef5edb5652021e9c3c96f51/LICENSE>
8. <https://pypi.org/project/tocode-cli/0.3.2/>

## 同分区更多条目：智能体与 MCP

- [Reverse API Engineer 网站 API 客户端生成智能体](https://awesomerea.org/zh/resources/reverse-api-engineer/index.md) · 集成
- [OpenBaud 串口设备 MCP 服务器](https://awesomerea.org/zh/resources/openbaud-serial-device-mcp/index.md) · 集成
- [JADX MCP Server（Qtty）](https://awesomerea.org/zh/resources/qtty-jadx-mcp-server/index.md) · 集成
- [usb-rea：USB 设备协议推断命令行工具与 MCP 服务器](https://awesomerea.org/zh/resources/usb-rea/index.md) · 集成
- [IDA NO MCP：面向 AI 编程工具的 IDA 反编译导出工具](https://awesomerea.org/zh/resources/ida-no-mcp/index.md) · 集成
- [ida-mcp-rs 无界面 IDA Pro MCP 服务器](https://awesomerea.org/zh/resources/ida-mcp-rs/index.md) · 集成

## 关于此条目

说明已依据一手来源复核。
原创说明采用 MIT 许可；外部项目、论文与素材保留各自的权利和许可。
