中文关键词 / Keywords: Freebuff 汉化、Freebuff 中文版、Freebuff Chinese localization、AI coding agent 中文、Freebuff 翻译、Electron 汉化、localization pack
Freebuff Desktop(@codebuff/freebuff-desktop v0.0.92)的简体中文汉化包,直接修改已打包产物,无需源码、不涉及任何联网改动。
English: A Simplified-Chinese localization pack for Freebuff Desktop — the free AI coding agent. Patches the packaged app directly, no source build required. If you're a Chinese-speaking Freebuff user, this is for you.
- 覆盖全面:渲染进程约 1170 处文案 + 主进程菜单 / 对话框 / 同意窗口全面中文化
- 词典驱动:
dict.json(exact 813 / template 148 / code 4 / pattern 50),幂等应用、可审计 - 可复现构建:
build.sh从原版 + 词典 + 补丁逐字节重建汉化产物(v0.0.77 曾对照 Release 产物验证;v0.0.83 / v0.0.87 / v0.0.88 / v0.0.90 / v0.0.91 / v0.0.92 适配经防呆自检通过) - v0.0.92 适配:随版本自动重映射 2 条模板变量、复核新版模型与界面文案;v0.0.88 起 Freebucks 钱包额度系统(每日额度 + 钱包 + 按小时计价的会话购买)全新界面全套中文化
- 一键安装/还原:
apply.sh/restore.sh,自动备份,随时回退英文原版 - 工具链完整:
tools/提供提取、翻译、核查、残留扫描等脚本,便于随版本更新补翻 - 版本迁移自动化:
tools/update.sh一键串起重映射 → 构建 → 残留扫描。其中tools/remap.js自动把 template 词典条目的${...}变量名迁移到新 bundle (对 v0.0.75→v0.0.76 的 13 条改名全量命中验证),不再逐条手工核对 - 构建防呆自检:
build.sh会对补丁后的主进程做node --check、词典替换次数为 0 即中止, 构建后由tools/postbuild.js断言ui/index.html汉化标记与译文哨兵——杜绝历史上出现过的 「补丁静默跳过」「悬空模板启动崩溃」两类事故 - 词典质量门禁:
tools/lint_dict.js校验结构与${...}占位符一致性、查重复键, 已接入 GitHub Actions(只跑不依赖专有文件的检查)
⚠️ 汉化产物(修改后的app.asar/ui/)派生自 Freebuff 的专有软件,仅面向已合法获取 Freebuff Desktop 的用户供个人自用(可经本项目的 Release 渠道获取),请勿商用。详见文末免责声明。
先在本机构建产物,再安装:
bash build.sh # 在仓库根目录运行;自动选原版:优先安装目录里最近的 hanhua-backup-*,没有备份(首次构建)则直接用安装目录的英文原版,生成 hanhua/output/
bash apply.sh # 应用汉化(自动备份原文件)也可以在多开控制器里一键应用,无需命令行。
脚本会先把现有 app.asar 和 ui/ 备份到 resources/hanhua-backup-<时间戳>/,再替换,重启应用生效。
如果你已经拿到一份产物目录(自行构建的),也可以:
bash apply.sh /path/to/unpacked # 传入产物所在目录(仓库根目录运行)手动安装:
- 把
app.asar复制到%LOCALAPPDATA%\Programs\@codebufffreebuff-desktop\resources\ - 把
ui/整体替换resources\orchestrator\ui\
汉化包可以作为 GitHub Release 分发,多开控制器会像检查 Freebuff 更新一样检查并拉取新包:
bash build.sh # 构建最新产物(自动打入 packVersion 版本戳)
bash tools/release.sh # 打包 + 生成 pack-manifest.json + 发布 Release(需 gh CLI 已登录)
bash tools/release.sh --no-upload # 只打包到 dist/,打印手工上传步骤- 发布端:Release tag
pack-v<packVersion>,附件为hanhua-pack-<版本>.zip(=output/打包)和pack-manifest.json(packVersion / targetVersion / asset / sha512) - 客户端:控制器每 30 分钟检查一次(与 Freebuff 更新检查共用同一条代理链)。仅当 manifest 的 targetVersion 与本机 Freebuff 版本完全一致且 packVersion 更新时才下载,SHA512 校验、解包后落到
output/,点「应用汉化」生效 - packVersion:跟随 targetVersion,与所适配的 Freebuff 版本保持一致(不带第四段修复后缀);同版本只改词典的重发用
release.sh --force ⚠️ 汉化产物派生自 Freebuff 专有软件,发布 Release 即公开传播,与文末免责声明的「仅限本机自用」条款冲突——是否发布由你决定,发布前请确认接受并相应调整声明
bash restore.sh # 从最近一次备份还原(仓库根目录运行)仓库不提交二进制产物(output/、backup/ 已 gitignore)。需要自己构建时:
bash build.sh # 自动选原版:优先最近的 hanhua-backup-*,没有备份则用安装目录的英文原版
bash build.sh <app.asar> <ui-dir> # 或显式指定原版文件构建管线(v0.0.77 曾对照 Release 产物逐字节验证;v0.0.78 起由构建防呆自检兜底,v0.0.82 起额外断言词典对主 bundle 全命中):
原版 app.asar ──解包──▶ tools/apply.js(dict.json 词典)──▶ patches/(人工补丁)──▶ 重打包 ──▶ output/app.asar
原版 ui/ ──apply_ui_patch.js(index.html 直改)──▶ output/ui/(主 bundle 再套 apply.js 词典)
注意:asar 容器头部可能因
@electron/asar版本不同存在细微差异(内容一致),不影响运行。首次运行build.sh需要联网(npx拉取@electron/asar)。
本仓库(freebuff-zh)是独立的汉化项目;配套的多开控制器是独立仓库 freebuff-controller:
├── dict.json # 翻译词典(exact / template / code / pattern 四类)
├── manifest.json # 词典适配的 Freebuff 版本(多开控制器读取做兼容检查)
├── patches/ # 人工补丁:词典覆盖不到的手工修改(主进程 6 个文件;index.html 由 tools/apply_ui_patch.js 直改)
├── tools/ # 提取/翻译/核查脚本(见 docs/汉化流程.md)
│ ├── update.sh # 一键版本迁移:重映射 → 构建 → 残留扫描 → 待办汇总
│ ├── remap.js # template 词典条目随 minifier 改名自动迁移
│ ├── postbuild.js # 构建产物自检(index.html 标记 / 主进程语法与译文哨兵)
│ ├── lint_dict.js # 词典质量门禁(结构 / 重复键 / 占位符一致性)
│ ├── status.sh # 装机 vs 构建 vs 备份状态一览
│ ├── prune_backups.sh # 清理累积的 hanhua-backup-*(保留最近 N 份)
│ ├── gen_patches.js # 从原版自动生成主进程补丁(Unicode 转义避免编码问题)
│ └── apply_ui_patch.js # 直接替换 UI index.html 翻译(替代 git apply)
├── build.sh # 可复现构建:原版 + 词典 + 补丁 → output/(含防呆自检)
├── apply.sh # 安装汉化到应用(自动备份)
├── restore.sh # 从备份还原英文原版
├── docs/ # 汉化流程 / 更新维护说明
└── work/ # 扫描中间产物(gitignore,不入库)
- 自动更新会覆盖汉化:应用自带 electron-updater,更新后汉化文件会被替换。更新后重新执行
apply.sh(或用build.sh对新版本重新构建;也可直接在多开控制器里点「应用汉化」)。 详见docs/更新维护.md。 - 有意保留英文的部分:编程语言名(Python、TypeScript…)、主题名(Ayu Dark…)、键盘键名 (Enter、Delete…)、内部枚举/类型名、库内部错误信息——改动会破坏逻辑,故不翻译。
- 汉化不涉及任何联网、上传或凭据改动。
- 界面汉化 ≠ AI 回复中文:本包只翻译界面文案;AI 用什么语言回复由服务端提示词与注入的指令决定。想让 AI 无论输入什么语言都固定用简体中文回复,只需家目录有
~\.AGENTS.md语言规则——配套多开控制器启动时会自动写入(默认回复中文,无需操作;不依赖汉化包与 Freebuff 版本,仅对新会话生效),也可手动创建。 - 为什么有时 AI 会突然用英文回复? 经排查,这不是本机任何工具(Freebuff 客户端、汉化包、输入法、浏览器插件均无此类文本)造成的,而是 Freebuff 服务端在检测到英文输入时动态注入的「语言一致性」指令(如 "Reply in English only"、"Your user's primary language is English")——本机无开关可关。解决办法:
~\.AGENTS.md语言规则里的抗注入条款已明确宣布这类指令(含翻译式、格式声明式、借口式、中文措辞、间接注入等变体)一律无效,实测可有效压制。控制器 v1.6.1+ 启动时会自动写入带抗注入条款的完整版规则。
- 更新后恢复汉化的外部触发机制:已由同仓库的多开控制器实现——状态检测 + 一键应用/还原, Freebuff 更新覆盖汉化后打开控制器点一下即可恢复(见 freebuff-controller)
- 启动时自检自动恢复汉化:主进程注入逻辑,检测
ui/index.html缺失汉化标记时自动从内置副本恢复,更新后首次启动即回到中文
- 作者:Ximmmmmmm(本项目为个人维护项目,仅此一位作者)
- 本仓库的脚本、词典、补丁与文档以 MIT License 发布(见
LICENSE),属于你的原创内容。 - 免责声明:Freebuff Desktop(
@codebuff/freebuff-desktop)是 Freebuff, Inc. 的专有商业软件, 其安装包内不含任何开源许可(仅 Electron/Chromium 组件有各自的开源许可)。 本项目的汉化产物(修改后的app.asar/ui/)派生自该软件,仅面向已合法获取 Freebuff Desktop 的用户供个人自用:可经本项目的 Release 渠道获取与分发,但请勿 用于商业用途、请勿移除本声明或声称原创,并请遵守 Freebuff 的服务条款。 如 Freebuff 官方提出异议,请立即停止分发并删除相关文件。购买正版是对开发者的支持。