在 GitHub 上看到个 WorkBuddy 自动签到脚本,纯 Python 零依赖,分享一下

最近天天用 WorkBuddy,发现桌面端每天都能领签到积分,连续签还有额外奖励。但人嘛,总忘点。今天在 GitHub 上逛到这么个脚本,自己试了下觉得挺香,分享给有需要的朋友。

仓库在这:https://github.com/88lin/workbuddy-auto-signin

它能干啥

说白了就是:每天自动帮你把那点签到积分领了。我挑它主要是因为它做得"干净":

  • 纯标准库,不用装任何第三方包,有 Python3 就能跑;
  • 单文件,两百多行,看一眼就知道它干了啥;
  • 幂等,先查今天领没领,领过了就跳过,重复跑不会多扣多给;
  • 只会读你自己本机的登录态,仓库里不含任何密钥,也没有把 token 打出来到处传。

最省事的使用方式

作者写它的时候就冲着"丢给 AI 跑"去的。你直接把下面这句话发给 WorkBuddy(或者任何能碰你本机的 AI 助手)就行:

帮我把这个仓库的签到脚本跑起来,并设置每天 00:05 自动签到:
https://github.com/88lin/workbuddy-auto-signin

剩下的拉代码、检查登录态、跑一次验证、配好每天早上 0 点 5 分的定时,它全包了。我就是这样用上的。

想自己动手也行

git clone https://github.com/88lin/workbuddy-auto-signin.git
cd workbuddy-auto-signin
python signin.py auto

就一条命令的事。auto 是日常模式(查状态→没领才领→吐一行汇报);想调试还有 status / claim / all 几个子命令。看到"成功领取 N 积分"或者"今日已签过"就说明通了。

大概怎么实现的

登录后 WorkBuddy 桌面端会在本机写一个会话文件(里面有个 accessToken),脚本就是读这个、然后调官方客户端同一个签到接口:先查今天领没领,没领就领。所有请求都打到 copilot.tencent.com,跟客户端用的是一套。

定时我用的是 WorkBuddy 自己的自动化(每天 00:05),你也可以换 Windows 任务计划 / macOS 的 cron。注意这玩意儿依赖本机登录态,扔到 GitHub Actions 那种云端 CI 上是跑不了的。

一点说明

  • 登录态会过期,失效时脚本会直接告诉你"重新登录一下桌面端",登完啥都不用改就自动好了。
  • 这是别人写的非官方小工具,跟腾讯 / WorkBuddy 没啥关系,接口是作者从桌面端 app.asar 逆向出来的,哪天官方改了可能就挂,用不用随缘,风险自担哈。
  • 原仓库 MIT 协议,有兴趣自己拿去玩。