☰ 章节目录
4. 浏览器扩展
扩展 ModelSwap(MV3)复用 Chrome 已登录的平台会话,在官方控制台里替你点表单、创建 Key、复制并回填到 ModelSwap 加密库——全程只在你的浏览器和本机之间进行。
4.1 获取扩展
npm 安装的用户:无需自己构建。运行下面的命令拿到扩展目录,然后直接按 4.2 加载该目录即可:
modelswap extension path # 输出可直接加载的扩展目录
桌面应用用户:扩展同样内置在 app 里。打开 设置 → 浏览器插件 → 打开扩展目录,扩展会被同步到 ~/.modelswap/extension 并在访达中打开——无需安装 CLI。
从源码构建的用户:仓库里的扩展源码在 extension/,需要先构建出 dist/ 目录:
cd extension
npm install
npm run build # tsc 编译 → extension/dist/
4.2 加载到 Chrome
- 打开
chrome://extensions/ - 右上角开启开发者模式
- 点击加载已解压的扩展程序
- 选择
manifest.json所在的扩展根目录——npm 安装的用户选modelswap extension path的输出,源码用户选仓库的extension/目录(构建出dist/之后)。注意不是其中的dist子目录。
加载成功后扩展列表会出现 "ModelSwap"。
4.3 确认连接
- 启动 ModelSwap(
modelswap web) - 扩展会依次探测 3780–3785 端口,锁定第一个应答的 ModelSwap 服务并通过 WebSocket 连接(连接前需通过一次性令牌认证)——ModelSwap 因端口占用落到 3781 等端口时扩展照常工作
- ModelSwap 启动日志出现
[WS] Extension hello: v2.x.x protocol=...即连接成功 - 也可以在控制台密钥管理 → 自动创建入口查看扩展状态
4.4 权限说明(重要)
扩展申请了 debugger、tabs、cookies 等权限,因此 Chrome 顶部会显示**"ModelSwap 已开始调试此浏览器"**的信息条——这是正常现象:扩展需要 debugger 通道读取页面内容与执行点击。调试只发生在本机 ModelSwap 与你的浏览器之间,不会向任何外部服务器发送数据。
4.5 更新扩展
- 扩展代码更新后:重新
npm run build,再到chrome://extensions/点扩展卡片上的 🔄 刷新 - 若
manifest.json的permissions有改动:必须移除扩展 → 重新加载已解压的扩展程序,仅刷新无效