网关会替你的每个账号完成签到、保活、成长任务这些日常操作,积分自动入账,不需要安装官方客户端,也不需要人盯着。配置项见配置 · 定时任务。
每类任务各自排程、各有开关,互不影响。时刻按进程时区整点触发(Docker 部署记得设 TZ=Asia/Shanghai)。
| 任务 | 默认时刻 | 做什么 |
|---|---|---|
| 签到 | 09:00、21:00 | 签到并查余额,余额恢复的冷却账号自动解冻;末尾跑连登管家 |
| 成长任务 | 01:00 | 扫描全部账号的成长任务待办并排队执行(与任务中心「执行全部待办」同一套流程) |
| 活跃上报 | 10:00 | 上报一次对话活跃,点亮连登、解锁领养 |
| 猫猫旅行 | 09:00、21:00 | 领养 / 派出 / 领取到站奖励 |
| token 保活 | 22:00 | 刷新全部账号的 token |
| 夜猫子 | 23:00 | 先查进度,未达标才在 23:00–08:00 窗口内补一次短对话 |
| 余额刷新 | 每 5 分钟 | 查询全部账号余额,保持面板积分新鲜 |
成长任务排在 01:00,是因为部分连续任务每天零点解锁下一环,避开零点整防止和解锁撞车。
关闭某类任务用 schedule.<任务>_enabled: false。关掉签到会连带关掉「余额恢复即解冻」,因余额不足而冷却的账号只能等次日 04:00 自然到期。
官方「成长计划」的 18 个任务里,17 个可以在面板上一键完成:网关推进进度、等待异步计分落定,然后自动领奖,全程只走接口。
| 任务 | 奖励 | 完成方式 |
|---|---|---|
first_buddy |
+300 积分 +8 能量 | 解锁上报 → 同意协议 → 领养第一只 Buddy |
create_canvas |
+300 +5 | 设计画布创建事件 |
chat_5 |
+100 | 对话活跃上报 ×5(自动补足差额) |
Model_chat_GLM5.2 |
+100 +5 | 用 glm-5.2 真实对话一次 |
RichMeow_Chat |
+100 +5 +UR Buddy | 桌面端对话事件链 |
Buddy_App |
+100 +5 | Buddy 应用「发现 → 进入 → 授权」事件链 |
Buddy_App_QQ |
+50 +5 | 企鹅教师助手进入事件链 |
automation_1 |
+100 +5 | 定时任务创建事件 |
Library_read |
+100 +5 | 资料库阅读 |
template_5 |
+100 +5 | 模板使用 ×5 |
playbook_prompt |
+100 +5 | 灵感案例「做同款」 |
expert_5 |
+100 +5 | 召唤并使用真实专家 ×5 |
Expert_team_use_3 |
+100 +5 | 召唤并使用专家团 ×3 |
Hp_Appearance |
+100 +5 | 主题设置 |
Expert_lighthouse |
+100 +5 | 轻量云专家(可免费领一个月轻量服务器) |
skill_1 |
+100 +5 | 真实对话 + 技能加载 |
全新账号一键做完约 +1950 积分、+78 能量。 只有少数任务需要真实对话(Model_chat_GLM5.2 一条,expert_5、Expert_team_use_3、skill_1 各几条短对话),其余都是行为事件上报,不消耗对话额度。
唯一做不了的是 Expert_Philanthropy:需要真实捐款,领奖时服务端会校验捐赠回执。
行为事件按天幂等:重复点「一键完成」不会重复消耗,已达标的任务自动跳过。
实现原理
任务计分走行为上报接口,但不同任务认不同的客户端身份:CLI、桌面端、Web 端各有一套请求特征。网关为每类任务构造对应身份的事件链(internal/upstream/desktop.go);专家类任务另外要求真实的专家 id 和真实对话回执。
上报返回 200 不等于计分成功,所以面板执行后会轮询任务进度,达标再调用 Web 域的领奖接口。
面板「任务中心」把散落在各账号里的任务收拢到一处:
- 扫描待办:一次拉取全部账号还没完成、且能自动完成的成长任务(含小程序口径的任务),按账号列出。
- 执行全部待办:按账号排队执行。账号内串行,账号之间可选 1–3 个并发,进度实时刷新到每一条。
- 查询券码:查看活动发放的券码(含二维码)。
- 积分补偿:打开弹窗查询官方补偿活动,按账号查看是否可领、奖励和领取期限,支持单号领取和领取全部。
单个账号的任务也可以在账号池里点「任务」打开:查看全部任务的进度、奖励与操作指引,「全部接受」批量报名,「一键完成可自动任务」逐项列出结果。
在「任务中心」点右上角的「积分补偿」,弹窗会逐账号查询国内版个人账号的官方活动状态,再点「领取补偿」或「领取全部」。查询不会领取奖励;已领取、未开放的账号在执行时会重新核对并跳过,单个账号失败不影响其他账号。新领取成功后会刷新余额,余额刷新失败会单独提示。
补偿活动由官方不定期发放。面板使用官网的 compensation-status 与 claim-compensation 接口,额度、领取期限和能否领取都以官方实时返回为准,不写死某一次活动的数值。
签到排程末尾也会自动检查补偿,活动开放且尚未领取时自动领奖。关闭 schedule.checkin_enabled 后不会自动检查,仍可在任务中心手动领取。国际版、企业版账号没有补偿活动,不列出;已禁用账号照常列出,可以单独领取,但「领取全部」和签到排程都不替它们领;暂停选号的个人账号照常参与。
签到排程会顺带跑一遍连登管家(幂等,未解锁就静默跳过):
- 查询连续登录 7 / 14 / 28 天的档位,已解锁的自动兑换(积分、能量、补签卡、抽奖次数);
- 有抽奖次数就自动抽完,奖品记进日志。
每个可用账号每天上报一次对话活跃事件(不需要真实会话),用于点亮连登和解锁 first_buddy 领养。账号之间间隔 800ms。
上报成功后会回读连登天数自检,日志每个账号一行(activity <uid>: streak days=N)。days=0 会记警告,对应上游「返回成功但静默丢弃」的情况。手动诊断或补跑用 python3 scripts/probe_active.py。
每个可用账号每趟只推进一步,不轮询不等待。默认两趟形成闭环:09:00 领取昨日到站奖励并派出,21:00 领取当日到站奖励。
| 当前状态 | 动作 |
|---|---|
| 还没有猫 | 同意协议后尝试领养,成功 +300 积分 |
| 空闲且今天还没派出 | 派出旅行 |
| 已到站 | 领取到站奖励 |
| 旅行中 / 今日已达上限 | 跳过 |
领养门槛未达标时每个账号每天只尝试一次(门槛可通过活跃上报解除)。派出次数按北京时间自然日计算,与容器时区无关。单个账号失败只跳过它自己。
默认每 5 分钟并发查询全部账号余额并更新池内积分:两次签到之间积分保持新鲜,余额恢复的冷却账号也会自动解冻(不做签到,也不刷 token)。面板顶部的「刷新余额」按钮也是全量刷新,并会顺带同步上游昵称。面板自身每 5 秒的自动刷新只读内存,不打上游。
禁用是终态:账号 session 失效或你手动禁用后,不再参与选号,默认也不再执行签到等保号任务。把 schedule.include_disabled_in_tasks 设为 true,禁用账号也会照常签到、活跃上报、保活与刷新余额,但仍不参与选号;猫猫旅行、夜猫子、连登管家和成长任务队列仍会跳过禁用账号。
暂停选号是临时态,适合「多个账号共用一个出口 IP,一次只放开一个」的轮换用法。在账号行点「暂停选号」:
- 账号退出选号(包括全池冷却时的兜底),点「恢复选号」立即回池,不用解冻或重新登录;
- 签到、活跃上报、保活、余额刷新照跑,猫猫旅行、连登管家、成长任务也照常;
- 唯一跳过的是夜猫子,因为它整个任务都是真实模型对话;
- 状态写进
state.json,重启不丢;禁用或复活账号会一并清除暂停标记。
企业版账号(凭证里带 enterpriseId)会被自动识别,账号名旁显示「企业版」。企业版没有个人成长体系,上游会拒绝签到、成长、旅行等接口,所以网关不对它发起签到、活跃上报、猫猫旅行、夜猫子与连登管家,面板也不显示「签到」「任务」按钮。选号、保活、额度查询照常。
企业版额度走单独的接口:上游返回的是本周期已用量和分配给该账号的额度,网关换算成剩余额度显示;额度为 -1 时显示「不限」。企业额度按周期重置、过期作废,所以周期末会参与快过期加权。成员账号查不到企业池总额度,面板显示的只是该账号被分配的部分。
企业版模型:企业号能用的模型因企业而异,可能多出企业开通的模型(比如 Claude),也可能少几个个人号才有的模型;上游要求拉目录时带齐企业身份,否则给的是个人号的名单。网关每 5 分钟检查一次,给每个国内版企业号单独拉一份它自己的目录(30 分钟内拉过的不重拉):
- 只在企业号目录里出现的模型叫「企业专属」,只派给目录里有它的企业号,
/v1/models和面板「模型与档位」里都会列出并标明; - 别的号目录里有、企业号自己目录里没有的模型,企业号不接,交给其他账号;哪份目录都没有的模型照常发给上游,由上游报错;
- 新加的企业号最迟 5 分钟内拉到目录,拉到之前它照常接请求。
国际版企业号对话时会带上企业 ID;它的模型目录还没有实测数据,暂不单独拉。