Repository navigation
v0.4.0 — 独占会话与可配置刷新 · Windows/Ubuntu预发布
Pre-releasev0.4.0 — 独占会话与可配置刷新(Windows / Ubuntu 预发布)
本版交付默认独占聊天、全局本机审批、持久化轮换刷新令牌和用户可填写的有效期。发布流程要求同一源码、同一工作流中的双平台完整回归,以及 Windows NSIS 和 Ubuntu 22.04/24.04 DEB/AppImage 五种安装组合各十二个原生验收阶段通过;原始记录和具体计数见随包 Release-scope_v0.4.0.json、Exclusive-evidence_v0.4.0.zip。不是所有环境无缺陷的稳定版声明。
**验收边界:**原生测试操作真实安装程序、WebView、HTTP OAuth/PKCE/刷新和本机审批,使用明确标记的合成 OAuth 凭据及会话元数据。真实 ChatGPT 账号的会话元数据投递、长时间自动刷新和操作系统通知横幅的实际显示仍需本地联调;不把它们记为 CI 已通过。没有关闭沙箱,没有 Windows 延期验收路径。
安装与升级
安装前在原程序中停止或取消运行任务,确认不再写入工作区,然后退出程序并备份应用配置及工作区。保留密钥存储,勿删除配置目录来“修复”授权;不要把密钥、令牌、完整配置或真实工作区上传到 issue。
Windows x64:运行 MCP_0.4.0_x64-setup.exe。安装包未配置商业代码签名,可能提示未知发布者;核对仓库来源与 SHA-256 后再决定是否运行,勿关闭系统安全策略。已验证普通用户原生审批,不要求把日常应用提升为管理员。
Ubuntu 22.04/24.04 amd64 推荐 DEB:
sudo apt install ./MCP_0.4.0_amd64.deb或使用 AppImage:
chmod +x MCP_0.4.0_amd64.AppImage
./MCP_0.4.0_amd64.AppImage桌面程序应以普通用户启动,不使用 sudo。AppImage 保留现有受限兼容入口,不应通过禁用 WebKit 沙箱解决运行问题。
将全部七个发布附件放在同一目录,Ubuntu 用 sha256sum -c SHA256SUMS_v0.4.0.txt 核验清单所列六个文件;Windows 用 Get-FileHash .\MCP_0.4.0_x64-setup.exe -Algorithm SHA256 对照清单。校验和文件不自校验。GitHub 公开附件摘要还会由发布流程匿名下载复核。
如何使用独占授权
打开对应工作区,启用 OAuth 并启动 MCP。仅在需要远程操作的 ChatGPT 聊天中明确申请 request_chat_authorization。选择插件本身并不是服务端可观察到的授权动作;收到带有效身份及会话信息的申请后才预留独占权。
前台应用显示全局审批框;在其他设置页面也能查看。核对聊天返回的指纹,取消不需要的权限,勾选指纹确认,然后点击“批准并独占”。后台可通过托盘及待审批收件箱进入,系统通知受系统设置影响;没有通知横幅时不要等待它,直接打开程序的待审批入口。
A 获准后,B/C 请求会被拒绝,不创建新待审批记录,不触发新审批提示,也不替换 A。服务器不能移除 ChatGPT 其他窗口的插件菜单。更换聊天必须在本机主动撤销当前授权,待旧任务结束后,再从新聊天申请。
撤销或租约到期只阻止后续调用,不回滚已发生的操作。存在运行中任务或交互进程时保留 draining 状态,直至任务结束或本机取消;程序异常退出后发现未确认的任务,会保留恢复锁,必须在本机检查并处理,不能直接清除文件强行转交工作区。
可填写的时长
对应工作区的“远程会话安全”中保存设置:
| 设置 | 默认值 | 范围 |
|---|---|---|
| 默认独占聊天 | 开启 | 可在本机更改 |
| 访问令牌有效期 | 60 分钟 | 5–480 分钟 |
| 刷新会话有效期 | 30 天 | 1–90 天 |
| 独占聊天授权有效期 | 24 小时 | 1–720 小时 |
| 空闲自动释放 | 0(关闭) | 关闭或 30–1440 分钟 |
| 待审批请求 | 90 秒 | 固定 |
访问令牌有效期不是“ChatGPT 必定刷新一次的间隔”;何时发起刷新由客户端决定。刷新不延长独占租约、不产生审批、不改变会话归属。保存策略可能使现有授权失效并应用运行配置,界面确认后再保存;新时长用于新签发令牌和新批准租约,既有 refresh family 的绝对期限不自动延长。
刷新令牌强制轮换,旧令牌重用会撤销所属 family 及关联访问令牌。并发刷新或响应丢失可能因此要求重新登录;没有不安全的旧令牌宽限重放通道。桌面重启后刷新身份可恢复,但本地聊天批准必须重新进行。
从 v0.3.2 重新建立长期连接
旧版 access-only 授权不会凭空变成 refresh session。升级后让客户端重新获取 OAuth metadata 并完成一次新的授权。发现文档声明 authorization_code / refresh_token;长期连接的授权请求需要包含 mcp offline_access,并在服务端授权页面明确允许离线刷新。offline_access 不是文件或执行命令权限;本地 scopes 仍单独审批。
服务器 URL 保持 https://research-system.eswlnk.com/mcp;Client ID、Secret 和精确 Callback URL 必须与本机配置一致。注册 URL 留空;这不是 OIDC 服务,不开启 OIDC、不加 openid profile email。应用已有缓存 metadata 时可能需要重新创建连接,让它读取新 metadata。不要在聊天中传递 Client Secret 或密码。
先确认三个公网 /.well-known/oauth-... 地址都返回 JSON,再测试真实 ChatGPT 的 A 授权/B 拒绝/刷新后继续 A。Nginx 和隧道仍由现有部署配置负责;本版安装程序不会自动修改公网 Nginx。PR #11 的额外公网诊断修复保持独立,不冒称已包含。
OpenAI 的刷新与 metadata 配置说明(外部参考,不是本项目真实账号验收证据):https://help.openai.com/en/articles/12584461
回滚与已知边界
回滚前停止本版、撤销本版授权和刷新会话,恢复备份配置并安装原版本。旧版本不认识的新存储不要删除或覆盖,保留用于诊断。工作区和历史归档不应为回滚授权而被清空。
单一会话授权不是操作系统容器:真实工作区文件仍然共享,获准执行命令可能访问共享文件。MCP/后台任务也不会让 ChatGPT 网页自动无限执行开发循环;任务持续时间、客户端运行限制与会话租约是独立条件。
本次构建身份
源码:5b1265f6905e2953e32000797a62cfd2f16baa48
文件树:552088e4f965361da6135f3edf1c3ab8a84aa068
工作流:34763767073