基础工具与工作流 · daymade/claude-code-skills

tibo-reset-codex

查询 ChatGPT/Codex 重置公告及多个 Pro 账号的剩余额度、备用 Full reset;复用 Google 登录逐个核实并恢复网页账号,换算北京时间。区分 Tibo 官宣、未官宣的平台静默重置、banked reset 与账户级周期重置。Use when 用户问「什么时候重置」「额度什么时候恢复」「下次全员重置几点」 「banked reset 到了吗」「Tibo 说了什么」「usage limit when reset」,或说「额度突然回到 100%」「好像/肯定又重置了」,或问「几个账号都用完了吗」「哪个还满额」。必须用实时产品状态、独立用户实测与公告交叉核验;禁止因 Tibo Radar 没有新条目就否定已经发生的重置,并须把太平洋时间当场换算为北京时间。

风险提醒:橙色 · 评估后使用AI 侦查报告
作者 daymadeGitHub daymade/claude-code-skills ↗Stars 1392许可 MIT(仓库根 LICENSE,Copyright (c) 2025 daymade;GitHub API spdx MIT)commit d5c4678cb5
agent 宿主通常会约束 skill 执行权限;风险提醒为 AI 侦查观点,不构成质量或安全保证。第三方 skill 仅作拆解与展示,安装使用风险自负,版权归原作者。

1实现原理 · 为什么它能做到

它把「查重置」拆成三条互不替代的证据路径:①官方公告(Tibo 的 X 原帖 + 官方故障线)②本机第一手账户证据(~/.codex 的 rollout 快照)③产品页/实时 API 的账户事实。核心方法论是「公告 ≠ 落地」,任何一条单独都不足以定案。

tibo-reset-codex/SKILL.md
**先分清用户问的是哪种重置**:
注:紧随其后是四类重置的分型表(官宣广域 RESET / 静默平台重置 / BANKED reset / 账户级周重置),每行标注「谁触发 / 在哪看 / 性质」,这是整个 skill 的概念骨架。

Tibo Radar 被明确定位为「公告索引」而非产品状态来源,因为平台会在不发帖的情况下直接重置账户——这是该 skill 反直觉但最关键的判断规则。

tibo-reset-codex/SKILL.md
Tibo 官宣没有固定排期;但平台也会在限额 配置切换时**不发 reset 帖而直接重置账户**。所以「没有 Tibo 帖」只证明没有官宣,不能证明 没有重置。
注:配套的禁止条款(入口分流):『用户明确说「肯定又重置了」且聚合器无记录 → 立即走**静默重置路径**;禁止重复查询同一聚合器后再次用空结果驳回用户。』

本机取证的原理是 Codex 每轮都会把 rate_limits 快照写进 rollout jsonl,因此无需 GUI、可回溯、可把归零定位到分钟级区间——这是它能给出「第一手账户证据」的技术根因。

tibo-reset-codex/SKILL.md
`~/.codex/sessions/<YYYY>/<MM>/<DD>/rollout-*.jsonl` 每轮都写 `rate_limits` 快照。**这比引导 用户去看产品页更强**:可回溯历史、能把归零定位到分钟级区间、不需要 GUI,也不需要让用户替你 看屏幕
注:字段形状原文给出:{"limit_id":"codex","primary":{"used_percent":76.0,"window_minutes":10080,"resets_at":1788753995},"secondary":null,"credits":{"has_credits":false,"balance":"0"},"plan_type":"pro"};10080=周窗口、300=5h。

该 skill 的大部分篇幅不是「怎么做」,而是「怎么不被数据骗」:它列了四条会静默给出貌似合理错答案的陷阱(primary 槽位不固定、limit_id 有恒零诱饵桶、resets_at 每条秒级微漂、目录日期≠时间戳范围),并把修法写进脚本。

tibo-reset-codex/SKILL.md
**会给出貌似合理错答案的陷阱(每一条都不报错;1–3 于 2026-09-01 同一次会话里连踩,4 于 2026-09-03 补)**:
注:陷阱 2 原文:『实测同期存在 `codex`、`premium`、`codex_bengalfox`,而 `codex_bengalfox` 的两个窗口**恒为 0%**,混进序列会凭空造出几十次「重置」。**先 `limit_id == "codex"` 过滤再做任何判断。**』

「干净 +7d」被明确否证为重置证据:它同时是按钮式重置与「换到另一个有额度的账号」的形状,两者在该维度不可分——这是多账号归因方法论的起点。

tibo-reset-codex/SKILL.md
- **干净 +7d**:新 `resets_at` ≈ 归零时刻 + 窗口长度。这**只说明窗口从归零那刻重新起算**, 它同时是按钮式重置和「换到另一个有额度的账号」的形状——两者在这个维度上不可分。**单看 +7d 就叫重置是本节最贵的错误**
注:文中给出量化教训:『2026-09-03 实测的一台机器上,8 天内出现 **8 次**干净 +7d(按新锚点去重后;去重前 9 条),按这条读会得出「静默重置 8 次」,而真相是账号轮替。』

多账号归因被写成 A/B/C 三层检查,并显式声明「未命中不等于单账户」——该方法论自带失败模式边界。最硬的一点是 A/B 都源自当前快照,结构上不可能发现历史账号。

tibo-reset-codex/SKILL.md
**先说清楚一个结构性陷阱:直觉上的那个检查永远返回「只有一个」。** `~/.codex/auth.json` 只保存**当前登录的那一个**账号,切走的账号不留痕;`~/.cc-switch/cc-switch.db` 只记它自己 管过的条目,手工 `codex login` 换的账号它完全看不见。
注:文中记录该陷阱真实致错:『一台确有两个 Pro 账号在轮替的机器,这两个探针都报「只有一个」,导致整份归因写反。』

「用户原话绝对优先」被写成输出合同:必须先给唯一最强结论,不确定性只用于收窄结论的属性,禁止把分类责任交还用户;未来时间问题必须给预测判断。

tibo-reset-codex/SKILL.md
用户原话(2026-08-26):「**你必须给出结论而不是让我给结论。**」 - 第一段第一句必须给出当前证据支持的**唯一最强结论**,禁止用「可能是 A/B/C、请你再看」 把分类责任交还用户。
注:同节还写:『**未来时间问题要给预测判断。**…「未官宣 / 没有固定排期 / There is no schedule」只说明公告状态,不能独自结束回答。』

预测能力靠一个本地 append-only 日志闭环:每次调用先回看历史预测与结果,提出新预测时记录窗口/依据/改判条件,事后回填证据;判定规则由脚本执行但证据由调用方提供。

tibo-reset-codex/scripts/forecast_log.py
"""Keep an append-only local forecast/outcome journal (Python 3.10+, macOS/Linux). No network, account access, reset redemption, or background process. Classification uses supplied evidence; the caller must verify its scope and event identity. """
注:判定期逻辑在 make_review:用 forecast 窗口与事件区间比对得出 hit/early/late,且明确 'A completion post alone gives an upper bound, not an exact reset instant.'(confirmation_only 或未验证首事件时返回 outcome=unknown)。

2核心能力

01四类重置的分型与证据层级判定(官宣 / 静默平台 / banked / 账户级周期)
02公告抓取与消歧(Radar 索引 → fxtwitter 读原帖全文 → 用 replying_to 判断是否为回复型误标)
03官方故障线交叉核验(status.openai.com + @ChatGPT),补足 Radar 只索引 @thsottiaux 的结构性盲区
04本机 rollout 快照重建周额度曲线与归零区间(含四条陷阱的修法)
05多账号归因三层检查(当前身份与 last_refresh / cc-switch providers / 锚点回跳行为签名)
06单账号只读实时额度查询(自带脚本,拒绝跟随重定向、不改登录态)
07预测日志闭环(append-only + flock + 幂等重放 + hit/early/late 判定)
08太平洋时间 → 北京时间换算(含 PDT/PST 夏令时与 tomorrow 锚点规则)
09Tibo 时间写法解读规则(14pm 的读法、常年误写 PST 的时令判断、tomorrow 以发推时太平洋日期为锚)
10多账号网页核验与登录恢复 SOP(复用 Google 已登录账号、逐个切换、事后恢复原当前账号)

3外部依赖

类型依赖
apiTibo Radar 时间线 API(第三方社区站点,作公告索引)
apifxtwitter 公开镜像(取 X 原帖完整正文与回复关系,主通道)
apiOpenAI 官方状态页 API(故障线,要求每次回答前都查)
apiChatGPT/Codex 官方用量端点(脚本唯一外发目标;客户端内部接口,非稳定公共契约)
networkX 官方 syndication 端点(备胎,正文截断 276 字符)
networkTwitter/X publish oEmbed 端点(同档备胎,文本同样截断)
network同族第三方追踪站(仅作转录/解读交叉验证,不构成独立观测源)
network官方帮助文档与产品用量页(banked reset 语义、账号切换上限、网页用量卡)
network原始公告来源账号(经 fxtwitter 读取,不直连 X)
clicurl(所有外部抓取的执行工具)
clipython3(解析 JSON、重建快照曲线、运行自带脚本)
climacOS BSD date(时区换算;SKILL.md 标注 macOS only,GNU date 无 -j/-f 语义)
packageuv(references 推荐的脚本运行方式;有符合要求的 Python 时可省略)

4风险提醒 风险提醒:橙色 · 评估后使用

风险提醒:橙色 · 评估后使用
  • 读取并外发真实账号令牌 — query_usage.py 读 ~/.codex/auth.json 的 access_token 并作为 Bearer 发往 chatgpt.com。目标虽为官方端点,但这仍是「本地令牌被程序读取并使用」的行为;在他人机器或共享环境上运行前应确认授权范围。
  • 会操作用户浏览器的 ChatGPT 登录态 — account-usage.md 要求在浏览器里逐账号切换登录、必要时登出。文档假设『临时退出不影响进行中的工作』并给了红线,但这些是文字约束——真实执行时若判断失误,可能打断用户正在进行的会话或丢失草稿。
  • 结论会被用户当真并据此安排工作,而证据源多为社区第三方 — Radar / codexlimitwatch / LunarWerx / codexrunway 均为社区站点,Radar 的 type 字段已被该 skill 自己证实会因跨平台互动而误标 reset。若某站点被投毒或解析变更,agent 可能把错误结论包装成「已核实」。文档用「同源/独立源」纪律防御,但无程序化校验。
  • 端点脆弱性被文档承认,误判会直接落到结论里 — 文档自述 Radar/fxtwitter/状态页『都会间歇抖动』、端点『不是稳定的公共 API 契约』,要求失败先重试 2–3 次。这意味着「真的没有重置」与「终端点挂了」需要人工区分。
  • 平台覆盖不均 — 时区换算仅实测 macOS(BSD date);Windows 未实测;预测日志声明 macOS/Linux。跨平台使用者需自行改写换算命令。
  • 篇幅与复杂度本身是使用门槛 — SKILL.md 45KB / 620 行 + 3 份 reference。若 agent 只读片段(尤其漏掉「四条陷阱」或「多账号闸门」),会稳定复现文档自己记录过的错误结论——该 skill 的可靠性依赖被完整阅读,而非被摘要。
风险提醒:橙色,评估后使用。判橙的两条硬依据:①【凭证读取与外发】scripts/query_usage.py 读 ~/.codex/auth.json 的 access_token / account_id / id_token,并把 access_token 作为 Bearer、account_id 作为请求头发往 https://chatgpt.com/backend-api/wham/usage,即对真实订阅账号令牌的读取与使用。②【高影响账户操作】references/account-usage.md 指导用浏览器逐个切换 ChatGPT 账号登录(Add another account → Continue with Google),必要时先登出再登录,并处理「每会话最多两个账号」的上限,这会直接改变用户浏览器的登录态。为什么不是红:无安全降级(不开 TLS 校验、不绕反爬、不批量采集),凭据只发往其归属的官方端点,脚本明确「只读、不刷新、不兑换、不改登录态」,且错误文案不回显凭据值、响应身份不匹配即拒答。为什么不是黄:涉及真实令牌的读取与出站使用,并且会操作用户的网页登录会话,影响面超出「常规公开 API 调用」。使用建议:只在用户明确授权并指定账号时运行查询;避免在共享机器上使用;第三方站点调用保持无凭据;账号切换后按文档恢复原登录态。

5第二遍独立确认

  • [ok] query_usage.py 的『只读、不改登录态、不外发到别处』声明是否有反例 — 反例检索失败:全文只有一处 urllib.request.Request/opener.open,method="GET",URL 为常量 USAGE_URL,且被 NoRedirect 拦截跳转(redirect_request 直接 raise 'redirect_refused: open the official Usage page instead');无写文件、无 subprocess、无 os.remove/chmod;凭据只出现在两个请求头里。docstring 'No refresh or redemption occurs.' 与代码一致。
  • [ok] 凭据是否可能通过输出或错误信息泄漏 — 专门核对:UsageError 的 docstring 即声明 'A public error message which never contains credential values.';实际 raise 的字符串全部是固定短语(auth_incomplete / identity_mismatch / authentication_failed / usage_unavailable / redirect_refused),无格式化拼接令牌;main 只 print(json.dumps(result)),而 result 由 normalize_usage 构造,字段为 email/plan_type/windows/计数/notes,不含 token。结论成立。
  • [ok] forecast_log.py 是否真的无网络,且写盘路径与权限与文档一致 — import 段无 urllib/socket/requests;唯一文件操作是 locked_journal 的 os.open(..., 0o600) 与 makedirs(mode=0o700),路径 root = ${XDG_STATE_HOME:-~/.local/state}/tibo-reset-codex/forecasts.jsonl,与 references/forecast-feedback.md 所述『默认文件是 ${XDG_STATE_HOME:-~/.local/state}/tibo-reset-codex/forecasts.jsonl』一致。docstring 'No network, account access, reset redemption, or background process.' 与代码一致。
  • [ok] 是否漏记外发目标(把每个出现的域名回查调用点) — 全目录域名提取结果为:codex-reset.com、api.fxtwitter.com、status.openai.com、api.openai.com、chatgpt.com、cdn.syndication.twimg.com、publish.twitter.com、publish.x.com、x.com、codexlimitwatch.com、codex.lunarwerx.com、codexrunway.com、help.openai.com、otexts.com、example.com/example.invalid(占位)。逐条已归入 external_deps 的 13 个条目(x.com 与 api.openai.com 作为原始来源/端点宿主被 fxtwitter 通道覆盖,chatgpt.com 同时是产品页与用量端点,otexts.com 为文档参考读物)。无未记载的隐蔽外发。
  • [discrepancy] 『时区换算 / 平台支持』声明是否自洽 — SKILL.md 明确标注时区换算命令为 **macOS only**(依赖 BSD date -j/-f,'GNU date 无此参数'),references/account-usage.md 也写『Windows 未实测』;但同仓库的 scripts/forecast_log.py 自述平台为『Python 3.10+, macOS/Linux』,query_usage.py 未声明平台限制。即脚本层覆盖 macOS/Linux,文档层把时区换算限定在 macOS。两者非矛盾(不同组件不同约束),但使用者在 Linux 上直接照抄 SKILL.md 的 date 命令会报错——文档已用『macOS only』披露,属已知限制而非隐藏缺陷。
  • [ok] 脚本与文档对『重定向』的处理是否一致(安全相关,看是否有代码比文档更松的地方) — SKILL.md 未特别强调重定向;脚本却主动以 NoRedirect 拒绝任何跳转并把用户导向官方 Usage 页面。这是代码比文档更严(有利方向),不构成夸大,已记入 verdict.strengths。
  • [unlocatable] 文档中的端点『实测 200 / 字段形状』类声明能否在本次侦查中复核 — SKILL.md 含大量带日期的端点实测声明(如『用 Tibo Radar JSON API 找最新公开公告(2026-08-26 实测 200)』、fxtwitter『2026-08-30 实测:免登录、直连即可』、以及『完整正文在 `tweet.text` 字段——不是 `full_text`』)。本次为离线源码侦查,未发起任何外部请求,因此这些『当前是否仍可用/字段形状是否仍成立』无法在源码内定位验证。文档自身亦声明端点『都会间歇抖动』『不是稳定的公共 API 契约』并把重试写成必须步骤。故记为待补,不作为推翻第一遍结论的依据。
  • [ok] pin commit 与 skill.path 是否与任务书表格一致 — git rev-parse HEAD = d5c4678cb5d4fd6acc9c922690df035dbd33d247,与任务书表格『库内 HEAD』一致;目录位于仓库根,相对路径 tibo-reset-codex;本目录最后一次提交 49ddcdae(2026-09-08 22:13)。GitHub API 复核 MIT / stars 1392 / pushed 2026-09-15T09:30:04Z。

6结论

  • 把「公告 ≠ 落地」写成可执行的分层判定法,并明确禁止用聚合器空结果否定已发生的重置——这是该领域最容易出错、也最容易被用户直接感知的地方。
  • 本机取证路径(rollout 快照)比让用户看产品页更强:可回溯、可定位到分钟级区间、不需 GUI,且给出了四条会静默致错的陷阱及修法。
  • 多账号归因方法自带失败模式边界(未命中不等于单账户),并记录了真实写反结论的教训与自我推翻过程。
  • 脚本的安全边界比文档更严:额度查询拒绝跟随重定向、错误文案不回显凭据、响应身份不匹配即拒答;预测日志无网络、权限 0600。
  • 对信息源独立性有明确定义(把两个 tracker 判为同源、只允许 LunarWerx 作解读交叉验证),避免把同源当双证。
  • 输出合同直接引用用户原话并要求先给结论,避免 agent 把判断责任推回用户;未来时间问题被要求必须给预测而非以『没有固定排期』收尾。
  • 适合:适合:把 ChatGPT/Codex 额度当生产资源管理的重度用户——需要在「什么时候重置 / 额度为什么突然回来了 / 几个账号里哪个还能用」这类问题上得到有依据而非道听途说的结论;也适合愿意长期维护本地预测日志以跟踪重置规律的人。对已经有两个以上 Pro 账号在轮替、需要区分「平台重置」与「自己切了号」的用户,其多账号归因章节几乎是必需的。
    不适合:不适合:只用单账号、偶尔看一眼额度的轻量用户(成本远大于收益,直接看产品页即可);不接受在授权机器上运行令牌查询、不愿授权浏览器账号切换、或不接受「结论建立在社区第三方站点之上」的人。Windows 用户也不宜照抄其中的时区换算命令(未实测,需自行改写)。
    安装 agent 直装可复制
    ① 本站镜像 更新 2026-09-15
    方式 A · 人下载镜像包下载 tibo-reset-codex.tar.gz
    sha256: f36131d1c8019312…
    方式 B · JSON 格式安装指南,复制给 agent
    安装指南
    agent 读 JSON 指南后会自动从本站下载安装,无需更多说明。
    ② 上游 GitHub · 原始来源
    能访问 GitHub?直接去上游安装(实时版,可能已更新)GitHub 原始 ↗
    本页镜像锁定 commit d5c4678cb5;上游为实时仓库。
    来源信息 GitHub 原始
    作者 / 仓库daymade / daymade/claude-code-skills
    Stars1392
    最近推送2026-09-15
    本 skill commitd5c4678cb5
    许可MIT(仓库根 LICENSE,Copyright (c) 2025 daymade;GitHub API spdx MIT)
    本站信息
    收录日期2026-09-06
    分类基础工具与工作流
    侦查报告AI 侦查 · 2 遍 · 2026-09-06
    本站镜像与 GitHub 原始是不同来源:本站锁定 commit 快照经 /r2 分发;GitHub 为实时上游,内容可能已更新。
    同分类邻近