# trae-check **Repository Path**: nearwhere/trae-check ## Basic Information - **Project Name**: trae-check - **Description**: No description available - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-08-28 - **Last Updated**: 2026-08-28 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # TraeCheck TraeCheck 是一个 Windows 桌面应用,用于管理已登录的 TRAE 桌面账号,并执行每日签到。它从当前 TRAE 桌面客户端读取账号凭据,在本地保存后用于手动、批量和定时签到。 ## 功能 - 导入当前 TRAE 桌面账号,支持多个账号独立管理 - 编辑账号显示名称、启用或停用账号 - 单账号签到与一键签到全部已启用账号 - 自动识别当日签到状态,未签到时发起领取 - 每日定时签到,按失败重试次数和间隔执行 - 签到结果日志:可查看全部、成功或失败记录,也可清空日志 - 单账号签到成功后查询并更新该账号的总积分 - 定时签到的成功和失败桌面通知 ## 使用前提 - Windows 系统 - 已安装并登录 TRAE 桌面客户端 - 导入账号前,先在 TRAE 桌面客户端切换到需要导入的目标账号 开发环境还需要: - Node.js 18 或更高版本 - pnpm ## 本地开发 ```bash pnpm install pnpm dev ``` 构建 Windows 安装包: ```bash pnpm build ``` 构建产物输出到 `release` 目录。 ## 使用说明 ### 1. 导入账号 1. 在 TRAE 桌面客户端登录,并切换到要使用的账号。 2. 打开 TraeCheck,在“账号管理”页点击“添加账号”。 3. 点击“导入当前 TRAE 桌面账号”。 导入会读取当前桌面客户端的登录信息,并以该账号在 TRAE 中的名称创建或更新本地账号记录。若需添加其他账号,请先在 TRAE 桌面客户端切换账号,再重复导入操作。 ### 2. 手动签到 - 在账号卡片中点击“立即签到”,仅处理该账号。 - 在账号管理页点击“一键签到全部”,依次处理所有已启用账号。 每次签到会先读取当日签到状态;已经签到的账号会直接记录为“今日已签到”,否则会执行签到领取。批量签到会在账号之间短暂间隔,并按设置重试失败项。 单账号签到成功后,应用会查询该账号的总积分并刷新卡片显示。 ### 3. 定时签到 在“设置”页中: 1. 打开“启用自动签到”。 2. 选择每日执行时间。 3. 设置失败重试次数与重试间隔。 4. 按需开启成功或失败通知。 定时任务使用 `Asia/Shanghai` 时区,只处理已启用账号。应用必须保持运行;关闭应用后,定时任务不会继续执行。 ### 4. 账号凭据与失效处理 导入的 TRAE 桌面凭据使用 Electron `safeStorage` 加密保存。签到前如检测到短期凭据即将过期,应用会尝试刷新;若刷新失败或凭据已失效,请在 TRAE 桌面客户端重新登录目标账号后再次导入。 ## 日志与本地数据 每一次签到尝试都会写入本地日志,包含时间、账号、结果、详情和本次获得的积分(如有)。日志最多保留 500 条,可在“签到日志”页按结果筛选或清空。 账号信息、设置和日志均保存在本机;其中已导入的桌面凭据经过 Electron `safeStorage` 保护。请妥善保管本机和 TRAE 账号。 ## 注意事项与排查 - **无法导入账号**:确认 TRAE 桌面客户端已安装、已登录,并已切换到目标账号。 - **签到失败**:检查网络连接和凭据状态;必要时重新登录 TRAE 桌面客户端并重新导入账号,然后查看签到日志中的具体信息。 - **自动签到未执行**:确认自动签到开关已开启、时间设置正确、账号处于启用状态,并保持应用运行。 - **积分未更新**:签到结果与积分查询是两个步骤;若查询失败,可稍后再次执行单账号签到以刷新总积分。 TRAE 的服务接口或客户端存储格式发生变化时,账号导入、签到或积分查询可能受到影响。本工具仅供学习与个人使用,请遵守 TRAE 的服务条款。 ## 学习参考说明 本项目以**学习交流与技术研究**为目的开源,旨在分享 Electron + Vue 3 桌面应用的工程实践,包括: - 多账号凭据的安全存储与刷新方案(Electron `safeStorage` + 本地加密) - 定时任务调度与失败重试机制(`node-cron` + 重试策略) - 主进程与渲染进程的 IPC 通信边界设计 - 桌面客户端本地凭据的读取与解密思路(仅 Windows 平台) - `electron-updater` 在线更新流程的实现与坑点 代码可作为类似工具的参考实现,但**不鼓励、不支持**将其用于以下场景: - 批量注册账号、刷积分、薅羊毛等违反 TRAE 服务条款的行为 - 商业转售、捆绑推广或任何形式的盈利分发 - 对 TRAE 服务端发起超出个人正常使用范围的请求 请在合法、合规、尊重服务提供方条款的前提下使用本仓库。 ## 免责声明 1. **非官方工具**:本项目是独立开发的第三方工具,与 TRAE、字节跳动、火山引擎等官方主体无任何隶属、合作或代言关系。所有 TRAE 相关名称、商标、服务接口的所有权归其原始权利人所有。 2. **逆向声明**:为兼容 TRAE 桌面客户端的本地凭据格式,本项目对其在用户本机上的存储文件进行了解析。该解析仅用于读取当前登录用户自己的凭据,不涉及对 TRAE 服务端的攻击、绕过或破解,也不分发 TRAE 客户端本身的任何二进制代码。 3. **使用风险**:本工具按「现状」提供,使用本工具可能违反 TRAE 的服务条款,由此产生的任何账号封禁、积分清零、服务限制等后果由使用者自行承担,作者不承担任何责任。 4. **数据安全**:导入的凭据使用 Electron `safeStorage` 在本机加密保存,但作者不对本机数据安全作任何明示或暗示的担保,请使用者自行评估风险并妥善保管设备。 5. **服务变更**:TRAE 的接口、加密方式或客户端存储格式随时可能变更,届时本工具可能失效,作者无义务及时修复。 6. **法律边界**:使用本工具前,请阅读并遵守所在地区法律法规及 TRAE 的服务条款。若本项目的任何内容与当地法律或服务条款冲突,请停止使用。 ## 项目结构 ```text trae-check/ ├── electron/ │ ├── main.ts # Electron 主进程入口 │ ├── ipc.ts # 渲染进程与主进程通信 │ ├── checkin.ts # 桌面凭据签到与积分查询 │ ├── scheduler.ts # 定时签到任务 │ ├── store.ts # 本地账号、设置和日志存储 │ ├── trae-auth.cjs # TRAE 桌面凭据读取 │ └── desktop-credentials.cjs # 凭据加密与刷新 ├── src/ │ ├── components/ # 账号、设置和日志界面 │ ├── stores/app.ts # 前端状态管理 │ ├── App.vue # 根组件 │ └── main.ts # 渲染进程入口 ├── assets/ # 应用图标 ├── package.json └── pnpm-lock.yaml ``` ## 技术栈 - Electron - Vue 3 - Vite - TypeScript - Pinia - electron-store - node-cron ## 许可证 本项目基于 [MIT License](./LICENSE) 开源,版权所有 © 2026 trae-check。 在遵守 MIT 许可条款的前提下,可自由复制、修改、分发本仓库代码,但需保留原始版权与许可声明。