Skip to content

macOS: 新增菜单栏版 TraeBar(Swift 原生实现多账号自动签到) - #35

Merged
star620 merged 1 commit into
star620:mainfrom
245678000000:feat/macos-traebar
Sep 24, 2026
Merged

star620 merged 1 commit into
star620:mainfrom
245678000000:feat/macos-traebar

Conversation

@245678000000

Copy link
Copy Markdown
Contributor

概述

新增 macos/ 目录:TraeBar,macOS 菜单栏常驻版,Swift/AppKit 原生实现,零第三方依赖,接口、参数与风控处理完全移植自本仓库的 Services/Checkin/TraeApiClient.cs、checkin.py 与 LoginHostForm.cs,与 Windows 版核心能力对齐。

功能

  • 多账号每日签到:每 10 分钟轮询,漏签自动补;先查 checkin_credits/status 再 claim,不重复请求
  • 9074 风控重试:命中「参与用户太多」自动更换 16 位数字设备号重试(最多 5 次),与 checkin.py 同策略
  • 一键登录添加账号(移植 LoginHostForm 思路):内嵌 WKWebView 登录 trae.cn,自动抓取 X-Cloudide-Session,无需 F12;非持久化会话保证多账号互不串号,同会话自动去重
  • 积分总览:菜单栏直显各账号剩余积分总和(user_current_entitlement_list 聚合),会话过期转 ⚠︎ 并支持一键更新
  • 开机自启:LaunchAgent 一键开关 + flock 单实例锁
  • 凭证文件权限 600(~/Library/Application Support/TraeBar/state.json)

编译

cd macos && swift build --configuration release

要求 macOS 13+ / Swift 5.9+,详见 macos/README.md。

实测

macOS 26 / Apple Silicon:编译零警告;双账号真实签到(各 +150 基础 +50 连签)、积分聚合、登录窗抓 Cookie、单实例锁、LaunchAgent 均验证通过。

其他

  • 仅适配国内版(api.trae.cn);国际版(api.trae.ai)为订阅制、无签到接口(已实测全部 404),README 中有说明
  • 许可与主仓库保持一致(GPL-3.0)

Swift/AppKit 原生实现,无第三方依赖,接口与风控逻辑移植自
TraeApiClient.cs / checkin.py / LoginHostForm.cs:

- 多账号每日自动签到(10 分钟轮询,status 先行避免重复 claim)
- 9074 风控自动换 16 位设备号重试
- WKWebView 一键登录自动抓取 X-Cloudide-Session(非持久化会话,多账号去重)
- 菜单栏积分总览、会话过期提醒(约 14 天)与一键更新
- LaunchAgent 开机自启 + flock 单实例锁
- 凭证文件权限 600

macOS 13+,swift build 即可编译,详见 macos/README.md
@star620
star620 merged commit bb30a29 into star620:main Sep 24, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants