a4agent 面向 Windows 10/11 64 位桌面环境分发,普通用户通过安装包图形化安装即可;开发者也可以从源码直接运行。本文章覆盖下载安装、首次运行注意事项、覆盖升级、卸载与数据清理,以及面向开发者的源码运行与打包构建方法。

1. 下载安装

从项目的发行版(Release)页面下载最新安装包 a4agent-setup-<版本>.exe:

事项 说明
系统要求 Windows 10 / 11,64 位
安装方式 每用户安装(免管理员权限),双击按向导完成
快捷方式 自动创建开始菜单与桌面快捷方式
完整性 建议核对发布页提供的 SHA256 校验值后再运行

安装包采用每用户模式,全程不需要 UAC 提权;应用本体、前端资源与运行时依赖全部随包内置,安装后可离线使用。

2. 首次运行

  1. 从开始菜单或桌面快捷方式启动 a4agent;
  2. 若出现 Windows SmartScreen 提示,点击「更多信息 → 仍要运行」——应用未做商业代码签名,属正常现象,不影响功能;
  3. 打开界面后选择预置服务商模板,填入 API Key 即可创建配置方案并一键切换,快速路径见项目总览与快速开始。

两个常见提示的处理:

  • 杀毒软件报毒:PyInstaller 打包的程序偶被安全软件误报,添加信任或排除即可,也可将样本提交厂商申诉;
  • 单实例限制:应用通过系统互斥体保证同时只有一个实例在运行,重复启动不会开出第二个窗口。

此外,运行安装包或卸载程序时若检测到应用正在运行(主界面或后台翻译代理),会弹出中文确认框(自 0.3.1 起):确认后一键刹停全部相关服务再继续——优雅终止 3 秒、强制结束、最多再等 10 秒,杀不掉会明确报错中止,绝不留下半装状态;拒绝则中止安装。应用内更新触发的静默安装自动按确认处理,不会卡在弹框。

3. 覆盖升级

升级就是用新版安装包再装一遍:

下载新版 a4agent-setup-*.exe → 双击运行 → 向导覆盖安装 → 启动即新版
  • 升级前应用会自动停止后台翻译代理并清理旧文件,避免文件占用导致覆盖失败;
  • 运行数据(数据库、配置备份)保存在 %APPDATA%\a4agent\,覆盖安装完整保留,无需重新配置;
  • 更省事的方式是等应用内更新提醒,点几下完成同样的事,机制见自动更新。

3.1 从 a4api 升级(v0.3.x 及更早 → 0.4.0+)

产品自 0.4.0 起由 a4api 更名为 a4agent,老版本用户直接安装新版即可,全部迁移自动完成:

迁移项 行为
数据目录 首次启动把 %APPDATA%\a4api\ 整体迁入 %APPDATA%\a4agent\(含本地模型引擎等大文件),目录被占用时退化为逐项拷贝,数据不丢
程序目录 安装器把程序目录从 Programs\a4api 迁到 Programs\a4agent,安装后清理旧目录与旧快捷方式
托管条目前缀 此前写入各工具配置的 a4api_p* 条目在下次切换时自动替换为 a4a_p*,不留孤儿配置
环境变量 A4API_* 旧名仍可识别,脚本与 CI 无需立即改名

两点保障:安装器检测到新旧两个版本同时安装会刹停确认,避免双版本并存;v0.3.x 的「检查更新」也能直接发现并升级到新版(Release 同时提供兼容旧更新链的 a4api-setup-*.exe 文件名资产,字节与新版一致)。

4. 卸载与数据清理

动作 方法 结果
卸载程序 Windows「设置 → 应用」中卸载 a4agent 程序文件被移除
数据保留 卸载默认不动 %APPDATA%\a4agent\ 配置方案、密钥库、备份保留,重装后原样恢复
彻底清除 手动删除 %APPDATA%\a4agent\ 目录 所有本地数据(含加密密钥库)一并清除

日志位于 ~/.a4agent/logs/,卸载后如需彻底清痕可一并删除,目录结构详见数据目录与日志说明。

5. 从源码运行(开发者)

环境要求:Windows 10 以上、Python 3.10、uv 包管理器。

uv sync                     # 安装依赖
uv run python desktop.py    # 启动桌面应用
# 或后端单独调试
uv run uvicorn backend.app.main:app --port 8000
# 浏览器调试入口:与已安装版共享同一份数据,先在浏览器验证再打包
uv run python dev_server.py

开发模式下运行时数据写入项目内 backend/database/,与安装版数据目录互不干扰;测试体系运行 uv run pytest 即可。dev_server.py(自 0.3.0 起)是给界面开发用的浏览器调试入口:不弹桌面窗口,与已安装版共享同一份数据目录,适合先在浏览器里验证界面改动再打包。

6. 打包构建(开发者)

前置条件:编译安装包需要 Inno Setup 6:

winget install --id JRSoftware.InnoSetup -e --accept-source-agreements

三种产物形态:

uv run python build.py                 # 文件夹版(onedir),输出 dist/a4agent/
uv run python build.py --installer     # 文件夹版 + Inno Setup 安装包 dist/a4agent-setup-<版本>.exe
uv run python build.py --onefile       # 单 exe(临时分发用)
构建细节 说明
版本号 默认读取 pyproject.toml 的 [project].version,可用 --version 覆盖
图标 由 Pillow 从源图自动生成多尺寸 ico(缺 Pillow 时跳过图标并提示)
前端资源 LayUI 等静态资源整体打入包内,运行时由 FastAPI 托管,离线可用
ISCC 定位 自动探测 Inno Setup 编译器,也可用 --iscc 显式指定路径

源码仓库与目录结构见项目总览与快速开始;安装包脚本 installer.iss 定义了每用户安装、快捷方式与卸载入口。

7. 常见问题

问:安装需要管理员权限吗?

答:不需要。采用每用户安装模式,写入范围限于当前用户目录,没有 UAC 弹窗;公司受限环境下通常也能正常安装。

问:升级后界面还是旧版本?

答:确认旧实例已完全退出(含后台翻译代理),重新启动即是新版;若通过应用内更新走完流程会自动完成退出与拉起,手动覆盖安装时请先关闭正在运行的窗口。

问:卸载后重装,之前的配置方案还在吗?

答:在。只要没手动删除 %APPDATA%\a4agent\,重装后所有方案、服务商与加密密钥原样可用;这也是「先卸载再装新版」能当升级用的原因。

问:能同时在开发模式与安装版之间切换使用吗?

答:可以,两者数据库相互独立(开发模式在项目 backend/database/,安装版在 %APPDATA%\a4agent\);但同一时刻只会有一份生效配置写入 ~/.claude 等目标文件,切换时以最后操作为准。

问:遇到问题怎么反馈最有效?

答:推荐用应用内入口——页脚「问题反馈」直接提交(自 0.3.2 起),支持截图(最多 10 张、单张不超过 1MB)、自动附带版本 / 系统等环境信息与可选日志尾部,直达开发者邮箱;网络不通时反馈会先落本地库留档,不会丢失。也可附上 ~/.a4agent/logs/a4agent.log 日志片段到 GitHub 提 Issue(已配置 Bug 报告 / 功能需求结构化模板)。

问:从 a4api 升级后旧的数据还在吗?

答:在。首次启动新版时数据目录自动迁入 %APPDATA%\a4agent\,配置方案、加密密钥与备份原样可用,详见第 3.1 节与数据目录与日志说明的迁移章节。