WorkBuddy 自动签到教程:不开电脑,每天 100 积分照样到账

WorkBuddy 自动签到:不开电脑每天 100 积分照样到账

WorkBuddy 的签到是个很讲原则的东西:每天 100 积分,只看一个条件——你开没开机。

假期出去玩几天,回来打开客户端,签到日历断成一截。它不会补,也不听解释。

对了,注册入口先放在这儿(含邀请性质):https://www.workbuddy.cn/events/invite?inviteCode=om6x7io29vnl 。官方活动页的条款是「好友注册即享 2,000 积分 新用户福利」,10 月 31 日截止,以页面为准。

这 100 积分,先算笔账

先说这 100 积分能干什么。整理一份会议纪要,消耗差不多就是 100 积分,刚好一天的签到量(这是流传教程作者实测的口径,我对照了自己 9 月写的 WorkBuddy 积分体系,对得上:国内版积分本来就是按任务链路扣的)。

这个折算不用猜:官网充值页明码标价,1,000 积分卖 50 块,还注明不可退款。一年满签 36500 积分,折下来 1,825 块——听听就好,积分不能提现,但它确实实打实抵任务消耗。

WorkBuddy 官网充值页:1,000 积分 50 元
官网充值页:1,000 积分 50 元

问题是:人不在电脑前,怎么让它照签?

三条老路,撑不过一个假期

常见路子我盘了一遍,都撑不过一个假期。

客户端开机自启加自动签到,前提是开机;WorkBuddy 自己的云端沙箱定时唤醒,稳定性看运气;租台云服务器挂客户端,最便宜的一个月几十块,比签到攒的东西还贵,倒挂。

真正的思路一句话就能说清:签到这个动作,本质不是「点按钮」,是带着你的合法令牌调一次官方接口。那把令牌搬到一个永远在线、不要钱的环境里,让它每天替你发一次请求,就行了。

金山文档的 AirScript 脚本,正好白送这个环境。

第一步:取出账号的「门禁卡」

必须用 Windows 或 Mac 的电脑客户端,小程序和手机 App 拿不到。打开 WorkBuddy,新建一个对话,把下面这段话原样发给它:

帮我提取 WorkBuddy 的 refreshToken。
读取客户端登录态文件,Windows 路径 %LOCALAPPDATA%\CodeBuddyExtension\Data\Public\auth\workbuddy-desktop.info,macOS 路径 ~/Library/Application Support/CodeBuddyExtension/Data/Public/auth/workbuddy-desktop.info。
只提取 auth.refreshToken 字段,完整输出约 700 字符,不要截断、不要加引号或代码块。

几秒钟后它会回一长串字符,700 个字符上下,一个都不能少。顺手说个细节:WorkBuddy 自己在返回结果时会提醒你——这串东西属于敏感凭据,能长期刷新你的登录态,别张贴到公开场合,不用了建议尽快让它失效。

连它自己都这么提醒,你就知道该多小心。

WorkBuddy 客户端对话提取 refreshToken
客户端对话提取 refreshToken,左下角就是「Buddy 加油站」每日入口

第二步:金山文档里放把钥匙

浏览器打开 kdocs.cn,微信扫码登录,网页版就够。新建一张空白表格:B1 粘贴刚才那串令牌;B2 空着,留给脚本写日志——哪天想起来了瞄一眼,就知道签没签成功。

这张表就是你的凭据箱,别共享给任何人,包括截图的时候。

第三步:把脚本装进表格

在表格里点「效率」→「高级开发」→「AirScript 脚本编辑器」,点左侧加号新建脚本。这里有个坑:必须选「文档共享脚本」,选成「我的脚本」,后面定时任务找不到它。

新建后把编辑区默认内容全删,粘进这段(流传版本逐行核对过,35 行):

var API = "https://copilot.tencent.com";

function postJSON(url, headers) {
    var resp = HTTP.post(url, "{}", { headers: headers, timeout: 15000 });
    return resp.json();
}

function main() {
    var rt = Application.Range("B1").Text;
    if (!rt) {
        Application.Range("B2").Value2 = "失败:B1 没有 refresh_token";
        return;
    }
    var r = postJSON(API + "/v2/plugin/auth/token/refresh", {
        "Content-Type": "application/json",
        "X-Refresh-Token": rt,
        "X-Auth-Refresh-Source": "plugin",
        "X-Domain": "copilot.tencent.com"
    });
    if (r.code !== 0 || !r.data) {
        Application.Range("B2").Value2 = "刷新失败:" + r.msg;
        return;
    }
    var at = r.data.accessToken;
    Application.Range("B1").Value2 = r.data.refreshToken;
    var c = postJSON(API + "/v2/billing/meter/daily-checkin", {
        "Content-Type": "application/json",
        "Authorization": "Bearer " + at
    });
    var msg = c.code === 0 ? "签到成功 +100 积分"
        : (c.code === 10001 ? "今日已签(自动跳过)"
        : "签到异常 code=" + c.code);
    var now = new Date();
    Application.Range("B2").Value2 = (now.getMonth()+1) + "月"
        + now.getDate() + "日 " + msg;
}

main();

粘完先点保存,再点「服务授权」→「添加服务」→把「网络 API」加上——不加这个,脚本的 HTTP.post 发不出去请求。然后点调试按钮跑一次,弹授权窗点允许。

回表格看 B2,显示「签到成功 +100 积分」,这条链路就通了。

金山文档 AirScript 脚本编辑器,左侧选文档共享脚本
AirScript 编辑器:左侧须选「文档共享脚本」

这段脚本有三个设计值得点名,尤其是第二个:

一,先刷新再签到。用 refreshToken 换一次性的 accessToken,拿去调签到接口,不把长期凭据裸奔。

二,新令牌回写 B1。官方每次刷新会轮换 refreshToken,旧的随时可能作废——脚本把新令牌写回 B1,下次接着用。这是它能一个月不看的自愈设计,也是它跟「一次性脚本」的区别。

三,code 10001 判成「今日已签」。你哪天手动签过了,它不会重复提交。

第四步:定个闹钟

表格里「效率」→「高级开发」→「定时任务」→创建任务:每天上午 9 点,「跳过周末」不勾(积分天天都有),绑定刚才那个共享脚本。

从这一步起,电脑关一个月、送修、扔柜子里,它每天到点替你领。

金山文档表格 B2 单元格显示签到成功 +100 积分
调试跑通后,B2 单元格写入当天签到结果

三个坑提前说

我把这套流程能核验的都核验了一遍,坑和丑话都放这儿。

一,接口域名别照抄了事。我拿假令牌敲了一下 copilot.tencent.com 的刷新接口,端点是活的——它回「token format error」,说明门真在那儿,只是不认假卡。但流传教程里也有写成 codebuddy.cn 的版本,客户端版本不同域名会变。脚本报 404,先打开 auth 文件看里面记的 domain 字段,照那个改。

二,提示令牌失效别慌。大概率是你后来在别处取过新令牌,旧的被顶掉了。重做第一步,换掉 B1 里的内容就行。

三,别买二手「代签脚本」「8 块 8 五千积分」。令牌交出去,等于对方能以你的身份刷新登录态——你的对话、你写的文档,人家后台都看得见。省 8 块 8,卖的是你全部记录。

丑话也说在前面:这是非官方路子,接口一改就失效,官方条款上灰色地带始终存在。介意这些的,就老老实实点客户端左下角的「Buddy 加油站」手动签,一天也就十秒钟。

写在最后

这方案说穿了不值钱:把「人肉点按钮」换成「云端代发请求」,五分钟配置。

但那个念头值钱——任何「每天必须我亲手做一次」的小事,都值得先问一句:能不能交给一个永远在线的环境。

开头那笔账再算一遍:一天 100 积分,一年 36500——按官方充值价折,是 1,825 块。你的会议纪要、周报、文档初稿,都能少花点积分。

这笔账,怎么算都不亏。

这类小路子我隔三差五就拆一个,关注别错过。

要是你也有自己的自动签到方案,评论区聊聊,顺手点个赞、点个在看。

几个常见问题

WorkBuddy 签到在哪领?

电脑客户端左下角「Buddy 加油站」,每天 100 积分。

refreshToken 是什么?

客户端登录态里的长期令牌,谁拿到谁能以你的身份刷新登录态,等同钥匙。

脚本报 404 怎么办?

接口域名与客户端版本有关,打开 auth 文件看 domain 字段,替换脚本里的两处域名。

手机能配吗?

取令牌必须电脑客户端;金山文档侧网页版就行,配脚本建议在电脑上一次配完。