桥豆麻衣酱 App 近似源码提取说明
结论
已从安装包 /Applications/桥豆麻衣酱.app 的可执行文件中成功提取出前端静态资源。
这不是开发者原始仓库源码,而是:
- Tauri 桌面壳里的前端打包产物
- 可直接检索的 JS/CSS/worker/wasm 资源
- 足够用于做接口、权限、业务逻辑、模型支持范围的审计
当前共提取出 29 个资源,清单见:
manifest.json
目录
app.arm64- 从通用 Mach-O 中切出来的 arm64 可执行文件
extract_tauri_assets.js- 本次用于提取内嵌资源的脚本
manifest.json- 每个资源的偏移、压缩大小、解压大小、输出路径
extracted/assets/- 解压出的前端资源
最重要的文件
extracted/assets/index-m-NWkaV-.js- 主前端 bundle,约
4.0 MB - React + Vite 风格打包产物
- 绝大多数业务逻辑都在这里
- 主前端 bundle,约
extracted/assets/index-CgHmA0qR.css- 主样式文件,约
182 KB
- 主样式文件,约
extracted/assets/thumbnailWorker-Iu1AjlwR.js- 缩略图 worker,负责图片缩放和 JPEG 缩略图生成
extracted/assets/ort.bundle.min-OfoG_cy9.mjs- ONNX Runtime Web bundle
extracted/assets/ort.webgpu.bundle.min-CEayb2S6.mjs- ONNX Runtime WebGPU bundle
extracted/assets/ort-wasm-simd-threaded.jsep-D5Jk56-t.wasm- ONNX Runtime wasm 二进制,约
23.9 MB
- ONNX Runtime wasm 二进制,约
从 bundle 中确认到的内容
1. 这确实是 Tauri 桌面应用
在主 bundle 中能直接看到 Tauri 调用痕迹和桌面特有命令,比如:
download_file_bypass_corsproxy_fetchstart_local_server
可在主文件里直接搜这些关键字。
2. 它不是纯聊天壳,而是带图像/视频工作流能力
主 bundle 中能搜到很多工作流节点和媒体能力相关关键词,例如:
gen-imagegen-videostoryboard-nodeinpaint-cropmotion-controlcustom-agentlocal-save
这说明它有比较完整的图像、视频、分镜、局部重绘、本地保存等功能。
3. 默认端点和多供应商能力都在前端 bundle 里
主 bundle 中可见默认端点配置:
https://ai.comfly.chathttps://ai.t8star.cnhttps://api.midjourney.com
还可以看到对多个供应商和模型系的支持痕迹,例如:
openaigeminideepseekdoubaojimengklingviduzhipumoonshotqwenminimaxmidjourneysuno
4. 图片审核地址的默认值写在前端状态初始化里
主 bundle 内能直接看到默认审核地址:
http://118.196.112.236:3428/api/moderation/image
同时它还读取这几个本地存储键:
qiaodoumayi_seedance_moderation_urlqiaodoumayi_seedance_moderation_user_idqiaodoumayi_seedance_moderation_key_hex
这说明图片审核地址并不是仅服务端下发,也可能由本地配置覆盖。
5. 本地保存能力通过本地服务和文件落地配合实现
主 bundle 中可见:
start_local_serverqiaodoumayi_download_directory
这说明它支持启动本地接收器/本地服务,再结合用户设置的下载目录做文件保存。
建议优先看的位置
主 bundle
文件:
extracted/assets/index-m-NWkaV-.js
建议优先搜索这些词:
qiaodoumayi_seedancemoderationdownload_file_bypass_corsproxy_fetchstart_local_serverrunninghubapi.openai.comgenerativelanguage.googleapis.comdashscope.aliyuncs.com
缩略图 worker
文件:
extracted/assets/thumbnailWorker-Iu1AjlwR.js
这个文件很短,适合先看,能快速确认:
- 它会
fetch图片 - 用
createImageBitmap和OffscreenCanvas做缩放 - 最终转成 JPEG data URL 返回给主线程
已确认的几个关键定位点
以下行号来自提取后的 bundle,可作为检索起点:
index-m-NWkaV-.js:924qiaodoumayi_seedance_moderation_url
index-m-NWkaV-.js:1673download_file_bypass_cors
index-m-NWkaV-.js:2068start_local_server
注意:
- 这是打包文件,很多行非常长
- 行号只能作为“进入附近区域”的参考,不等于原始源码位置
局限
- 没找到 sourcemap
- 没恢复出原始 React/TypeScript 目录结构
- 变量名、模块边界、注释都已经过打包压缩处理
- 目前恢复的是“近似源码”,不是开发者仓库
怎么继续深挖
如果要继续做更细的审计,下一步建议按下面顺序:
- 以
index-m-NWkaV-.js为主,按qiaodoumayi_、seedance、proxy、download搜配置和命令入口 - 把出现的外连域名、接口路径、Tauri 命令整理成一张表
- 继续从本地存储和日志交叉验证哪些配置在这台机器上真正被启用
- 对最敏感的几条链路单独追踪:图片审核、本地代理、本地保存、文件下载绕过 CORS