pycdc-studio
pycdc-studio 是一个基于 Qt Widgets 的桌面图形界面,用来配合 pycdc / pycdas 浏览 Python 字节码、查看原生反编译结果,并在原生反编译不完整时使用 AI fallback 对指定函数、方法或类体进行重建。
为什么会做这个项目
做这个项目的一个很直接的原因是:
Python 更新太快了,尤其到了 Python 3.13 这类新版本,字节码变化更多,适配难度也明显更高。
这就导致市面上不少反编译工具,虽然能处理一部分旧版本,但面对新的 Python 版本时,往往会出现适配滞后。很多时候不是完全不能用,而是会卡在某些函数、某些类体、某些新版本特性上。
而我做这个项目时,最想解决的一个场景就是:
让它能更好地处理 Python 3.13 的字节码。
所以我就想,能不能换一种思路:
- 原生反编译工具继续负责它擅长的部分
- 当遇到不支持的字节码节点时
- 把当前函数、方法或者类体的上下文交给 AI 去做兜底重建
这样一来,就不需要一开始就把所有新字节码都硬适配到原生反编译器里,而是先通过一个更实用的混合方案,把结果做出来。
最后做出来的效果我自己觉得还不错,尤其在 Python 3.13 相关样例上,AI fallback 确实能补上一部分原生反编译不完整的地方。
目前我主要用的是 DeepSeek:
- 量大管饱
- 成本也比较低
- 实际反编译出来的效果也还蛮不错的
所以这个项目本质上不是想完全替代传统反编译器,而是想做一个:
面向 Python 3.13 等新版本字节码场景的,原生反编译 + AI fallback 混合工作台。
核心功能
- 直接打开
.pyc / .pyo - 支持拖入单个文件 或整个文件夹
- 自动解析并展示 code object 树
- module
- class
- function
- method
- lambda / comprehension
- 对比三种结果:
MergedNativeAI
- 查看每个节点对应的:
- 反汇编结果
- 元数据
- AI 提示词
- 日志
- 支持将当前文件的 合并结果导出
- 支持中英文界面切换
AI Fallback
程序默认不会把整个 .pyc 一次性发给 AI。
它会基于当前选中的 code object,组织出更小粒度的上下文,例如:
- qualified name
- object type
- names / locals / consts
- native error
- disassembly
这样可以让 AI 更聚焦当前失败节点,而不是整个文件。
当前 AI 配置方式是:
- 在
Settings / 设置中填写Base URLAPI KeyModel
- 接入的是 兼容 OpenAI 的 API
界面预览
主工作区

设置页

AI 重建效果

适合的场景
- 浏览
.pyc/.pyo结构 - 辅助分析 Python 字节码
- 查看
pycdc原生反编译结果 - 对不支持的 code object 做 AI 辅助重建
- 导出当前文件的 merged 结果继续整理
项目特点
- 原生桌面界面,轻量直接
- 不是一次性"全文件 AI 重建",而是节点级 fallback
- 能同时看到:
- 原生结果
- AI 结果
- 反汇编
- Prompt 上下文
- 更适合用来做"分析工具"而不是单纯黑盒反编译
项目地址
- GitHub: https://github.com/ddouworld/pycdc-studio
- Releases: https://github.com/ddouworld/pycdc-studio/releases
如果你觉得这个项目对你有帮助,欢迎给项目点个 Star ,非常感谢。
也非常欢迎任何 Issue 和 PR。