行业资讯
📅 2026/9/9 19:23:51
如何用 last30days-skill doctor 检查哪个数据源没在正常工作并拿到修复建议?
如何用 last30days-skill doctor 检查哪个数据源没在正常工作并拿到修复建议【免费下载链接】last30days-skillAI agent skill that researches any topic across Reddit, X, YouTube, HN, Polymarket, and the web - then synthesizes a grounded summary项目地址: https://gitcode.com/GitHub_Trending/la/last30days-skill当你跑完一次 last30days-skill 研究、发现某个平台比如 X 或 TikTok的内容明显偏少甚至完全没有时最直接的排查手段是引擎自带的doctor健康检查命令。它会逐源输出一份四状态审计并对每个没正常工作的数据源给出一行可执行的修复建议——文档把它总结为回答四个问题什么可以开、什么已经开了、什么在工作、什么不工作。适用前提已按项目说明安装 skillskills/last30days/目录可用且系统有 Python 3.12 解释器。完整命令说明见 CONFIGURATION.md 的 Health check (doctor) 章节agent 侧的使用约定见 SKILL.md。准备确认 Python 版本引擎要求 Python 3.12。执行任何last30days.py命令前先确认版本python3 -c import sys; raise SystemExit(0 if sys.version_info (3, 12) else 1) echo OK输出OK即可继续。如果报错说明系统 Python 低于 3.12需要安装 Python 3.12SKILL.md 给出的对应系统是macOS 用brew install python3.12Windows 用winget install Python.Python.3.12Linux 用sudo apt install python3.12。如果解释器不在python3可以把路径放到环境变量LAST30DAYS_PYTHON里下面的命令都遵循这个约定。运行基础审计一条命令列出每个数据源的状态在仓库根目录执行python3 skills/last30days/scripts/last30days.py doctor在支持斜杠命令的 agent 环境中也可以用/last30days doctor。输出是文本形式的四状态审计每个数据源一行另有两个辅助块四状态WORKING本次/上次运行已验证或免密钥常开源、TURNED ON - UNVERIFIED已配置/已选但还没有运行证据、NOT WORKING已配置但失败或上次运行出错、COULD BE ON可用但尚未配置CLI-health 块对需要下载二进制如 yt-dlp、digg-pp-cli的源检查其是否在 PATH 上backup/comment 缩进子行展示 Reddit、YouTube 等源的备用路径与评论区子通道状态。你要找的问题源就在NOT WORKING行上——文档明确说明每个未正常工作的源会附 an exact fix一条精确修复例如缺哪个 key、哪个 CLI 不在 PATH、cookie 过期等。找到对应行后按该行给出的 fix 操作即可不需要自己猜根因。几条重要的行为约定判断输出时有用报告问题也算成功运行退出码恒为 0不要因为退出码为 0 就以为全部正常要看审计状态本身不读浏览器 cookie不打印任何密钥值key 的存在性只以布尔值呈现输出可以直接分享带缓存的运行见下文在文本输出末尾有一行generated: … (cached|live)告诉你这份报告是缓存还是实时生成的。三种模式预测、实测、事后诊断doctor有三个按需模式对应排查的三个不同时机1. 实测确认doctor --probe基础doctor读的是配置和上次运行留下的证据如果你怀疑某个源配好了但实际不通用--probe跑一次有界实测python3 skills/last30days/scripts/last30days.py doctor --probe边界是明确划定的probe 只打免费 HTTP 端点Reddit、Hacker News、Polymarket、GitHub加免密钥 CLI从不探测按次计费的源X、TikTok、Instagram、Threads 等因此不消耗 ScrapeCreators 额度、不会触发鉴权限流。每个源并发探测并受每源截止时间约束LAST30DAYS_DOCTOR_PROBE_TIMEOUT默认 10 秒慢源不会卡住命令。一个值得记住的联动规则当没有新鲜运行可供参考时普通的doctor会自动触发同样的有界 probe——也就是说你平时裸跑doctor就已经在自动做这件事--probe是显式版本。2. 事后诊断doctor --postmortem跑完了但结果偏少是 troubleshooting 的高频场景。这时doctor --postmortem正是为此设计它读取上一次运行的last-report.json不限时间输出会标注逐源报告实际发生的事——Failed / Partial / Succeeded / Skipped带细节与修复提示python3 skills/last30days/scripts/last30days.py doctor --postmortem它不做任何网络调用纯离线读缓存报告所以可以放心在任何时候运行。SKILL.md 对两个方向的区分值得记一下普通doctor预测的是跑之前配置是否健康--postmortem报告的是上一次实际哪里坏了。运行报告里## Partial Coverage和Report.source_status字段状态包括partial、rate-limited、auth-failed、unreachable、timeout、schema-drift、skipped-unconfigured、error等也描述同一批事实——这些状态意味着这次运行没能证明该源是安静的而不是该源没内容。3. 机器可读doctor --json需要把结果接进脚本时用--json拿机器契约python3 skills/last30days/scripts/last30days.py doctor --json--json输出中每个源带tier、status、backends、active_backend、fix、requires等字段顶层还有from_cache和generated_at标明报告来源与生成时间。用缓存降低重复检查成本--cached与 TTL每次实时doctor都会把 JSON 结果写入~/.config/last30days/doctor-cache.json遵循LAST30DAYS_CONFIG_DIR。--cached在报告未过期时直接返回这份缓存python3 skills/last30days/scripts/last30days.py doctor --cached新鲜度窗口由LAST30DAYS_DOCTOR_TTL控制单位秒默认90015 分钟设为0则每次--cached都实时重跑。缓存过期、缺失或损坏时会自动回落为实时运行并重写缓存。还有一层自动失效机制缓存里带配置指纹哪些凭据存在、LAST30DAYS_X_BACKEND/LAST30DAYS_REDDIT_BACKEND的 pin 值、INCLUDE_SOURCES。因此你新增/删除一个 key、改一个 pin 或切换选开源之后下一次--cached调用会自动转实时运行不需要手动清缓存。裸跑不带--cached的doctor则永远实时运行并刷新缓存。排查时可以用--cached --json做低成本复查SKILL.md 建议依赖登录态源cookie 的 X、ScrapeCreators 的 Reddit 回补做研究前先查一次缓存报告只有缓存过期或上次报告了登录态源降级时才重跑实时doctor。读报告修复建议如何对应到你的配置审计中每个源的fix行来自统一的修复词表实现见 prescriptions.py。常见形态举例均来自项目文档实际给出的修复文案免密钥源之外的按次计费源未配 key → 提示补SCRAPECREATORS_API_KEY需要下载二进制的源 → CLI-health 块指出二进制缺失或不在 PATH例如digg-pp-cli需在 agent 子进程 PATH 上典型位置$HOME/.local/bin可选源未选开 → 提示 add {source} to INCLUDE_SOURCES (or request it via --search {source})X 后端未 pin 时的提示示例pin LAST30DAYS_X_BACKENDgrok to enable, then fix the store。与 doctor 直接相关的环境变量完整表格见 CONFIGURATION.md变量作用LAST30DAYS_DOCTOR_TTL--cached新鲜度窗口秒默认9000表示每次都实时跑LAST30DAYS_DOCTOR_PROBE_TIMEOUT每源 probe 截止时间秒默认10LAST30DAYS_X_BACKENDpin X 后端bird/xai/xurl/xquik/grokdoctor 会渲染 pin 并预测下次将使用哪个。未 pin 时的自动链是 bird → xai → xurl → xquikgrok 仅 opt-inSKILL.md 补充了一条与 X 相关的读法当 X 在可用源列表里时应把报告的sources.x.active_backend告知用户例如 X will use: bird若 doctor 报告 grok 后端degraded且带过期时间戳正确表述是 Grok 会话已于 {timestamp} 过期运行时会尝试刷新若刷新失败执行grok login --device-auth而不是简单说 Grok CLI 未登录——过期 access_token 不等于 refresh_token 已失效只有运行时报auth_revoked或invalid_grant才需要真正重新登录。边界与限制probe 不覆盖计费源X、TikTok、Instagram、Threads 等永远不会被 live 探测所以WORKING对这些源的判定依赖配置与上次运行证据不要指望 probe 给出它们的实时连通性--postmortem依赖上一次运行它只是读last-report.json如果从未跑过研究没有可诊断的对象此时应先用普通doctor查配置TURNED ON - UNVERIFIED不是故障它表示已配置但还没有运行证据下一步是跑一次真实研究让证据落地网络行为可预期带新鲜运行证据的普通doctor、--cached与--json均不发网络请求会发请求的只有--probe及无新鲜运行时自动触发的 probe且严格限定在免费端点与免密钥 CLI。修复完成后重新运行一次doctor或研究跑完后的doctor --postmortem确认该源从NOT WORKING变为WORKING、且末行generated: … (live)表明是实时结果排查即闭环。【免费下载链接】last30days-skillAI agent skill that researches any topic across Reddit, X, YouTube, HN, Polymarket, and the web - then synthesizes a grounded summary项目地址: https://gitcode.com/GitHub_Trending/la/last30days-skill创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考