Commit Graph

2 Commits

Author SHA1 Message Date
fe96e197d3 pi-ele Phase 2: token/API 基地址注入 —— web/src 零改动成为独立桌面客户端
- main.cjs: 从 env 读 AGENTMAIL_GATEWAY_URL / AGENTMAIL_TOKEN(USER_KEY),
  通过 additionalArguments 传给 preload;API_BASE = <gateway>/api/v1
- preload.cjs: 从 process.argv 读注入参数,contextBridge 暴露
  window.__AGENTMAIL_API_BASE__ / __AGENTMAIL_TOKEN__
  → web/src 的 config.ts 自动读取,client.ts/sse.ts 零改动
- 效果:Electron 启动后 api.me() 带 Bearer 返回用户,直接进入主界面
  (无登录页),收件箱等功能立即可用

验证(xvfb headless):
- 注入链路:渲染进程拿到 apiBase=192.168.2.60:8180 + token 
- 端到端:gui-lab key 注入 → 界面呈现 收件/授权/发件/日历/联系 导航 + 空收件箱,
  无登录表单(inputCount=0, hasLogin=false)
2026-09-07 07:49:30 +08:00
dc5b9e440f pi-ele Phase 1: Electron 骨架(主进程+托盘+preload,可复用 web/src)
- web/electron/main.cjs: BrowserWindow 加载 dist/index.html(prod)或 vite dev server
  托盘(进托盘/退出/单击恢复),关闭按钮隐藏到托盘而非退出(用户要求)
- web/electron/preload.cjs: contextBridge 暴露 gatewayUrl/versions/platform
- web/package.json: 加 main 指向 main.cjs、dev:electron / build:win / build:linux 脚本、
  electron 44.2.0 + electron-builder 26.15.3 依赖、build 配置(NSIS/AppImage/deb)
- .gitignore: /release/

验证(headless + xvfb):
- Electron 加载 Gateway WebUI 成功(title=AgentMail, body 渲染)
- Tray API 可用,BrowserWindow 正常
- prod 模式真实 main.cjs 无报错
2026-09-07 07:46:07 +08:00