CodeMerger 是一个简单的工程结构互转工具。它可以将整个项目目录(包含文件结构和代码内容)合并为一个 Markdown 文件,方便发送给 ChatGPT、Claude 等大语言模型进行全局分析;也可以将 AI 修改后的 Markdown 内容一键还原回本地文件结构。
- 智能防截断:采用动态栅栏技术(Dynamic Fencing),自动检测代码中连续反引号的数量并生成
N+1层包裹,完美解决 Python/Markdown 文件中包含```导致 AI 解析截断的问题。 - 双向转换:
- 提取 (Extract):目录树 + 源码 -> 单个 Markdown 文件。
- 还原 (Restore):Markdown -> 自动创建目录并写入文件。
- Windows 免安装:提供封装好的
.exe,无需 Python 环境即可在 Windows 上直接运行。 - 双模式:提供图形界面 (GUI) 和 命令行工具 (CLI)。
无需配置 Python 环境,直接下载使用:
- 前往 Releases 下载最新版的
CodeMerger.exe。 - 双击即可运行。
如果你安装了 Python 环境:
# 安装依赖 (标准库无需安装,Tkinter 通常内置)
python app.py适合 Linux/macOS 用户或集成到自动化脚本中:
# 导出项目到 Markdown
python code_merger_cli.py -e -i ./my_project -o project.md
# 从 Markdown 还原项目
python code_merger_cli.py -r -i project.md -o ./restored_dir- 打开软件,左侧会自动加载当前目录树(支持复选框过滤)。
- 在“目标路径”选择你要提取的项目根目录。
- 在右侧勾选需要提取的文件类型(如
.py,.md,.js等)。 - 点击 [提取: 生成 Markdown]。
- 点击 [复制全部内容],将其粘贴给 AI。
- 将 AI 回复的代码块(需符合下述格式)粘贴到软件的文本框中。
- 确认“目标路径”是你想要写入的文件夹。
- 点击 [还原: 写入文件]。
本项目包含完整的 PyInstaller 打包配置,如果你修改了源码,可以自行生成 .exe 文件。
前提:安装 PyInstaller (pip install pyinstaller)
步骤:
- 在项目根目录双击运行
wrap.bat。 - 等待脚本执行完毕。
- 在生成的
dist/目录下找到CodeMerger.exe。
(注:wrap.bat 实际上执行了 pyinstaller CodeMerger.spec)
为了确保工具能正确还原文件,Markdown 内容需遵循以下简单规则(工具生成的内容默认符合此规则,建议将 prompt.md 的内容发给 AI 以要求其遵循):
- 代码块必须注明路径:第一行需为
# path/filename注释。 - 代码块包裹:使用 Markdown 代码块包裹内容。
示例:
```python
# src/utils.py
def hello():
print("Hello World")
```CodeMerger.exe: Windows 可执行程序 (Release)app.py: GUI 主程序源码 (Tkinter)code_merger_cli.py: 命令行核心逻辑wrap.bat: Windows 一键打包脚本CodeMerger.spec: PyInstaller 配置文件prompt.md: 推荐发给 AI 的提示词文件
