运行时依赖
安装命令
点击复制技能文档
步骤 0:规范路径自检 —— 在阅读以下内容之前运行 在阅读此文件的其他内容之前,验证您刚刚加载的 SKILL.md 是否是版本化缓存副本,而不是过时的市场克隆: CANONICAL_ROOT="$HOME/.claude/plugins/cache/last30days-skill/last30days" CANONICAL_LATEST=$(ls -d "$CANONICAL_ROOT"/*/ 2>/dev/null | sort -V | tail -1) CANONICAL_LATEST="${CANONICAL_LATEST%/}" 如果您刚刚读取的 SKILL.md 文件不在 $CANONICAL_LATEST/ 下,停止并重新读取 $CANONICAL_LATEST/SKILL.md,然后再继续。不要运行 --help,不要计划,不要对其他路径调用引擎。 原因:~/.claude/plugins/marketplaces/last30days-skill/ 是一个 Git 克隆,Claude 代码在会话开始时自动恢复到 origin/main。这可能会使其滞后于版本化缓存一个或多个版本。2026-04-22 的三个测试运行(Linear、Coinbase)从 marketplaces/ 加载了 SKILL.md,运行了 --help,但没有看到 --competitors 标志,这个标志存在于缓存中,于是回退到手动比较计划。结果:3 个窗口中有 2 个永远不会调用它们被要求测试的功能。 如何自检:您在上一次 Read 工具调用中使用的文件路径应该与 $CANONICAL_LATEST/SKILL.md 匹配。如果它包含 marketplaces/ 或其他前缀,那就是过时路径失败模式。从 $CANONICAL_LATEST/SKILL.md 重新读取并从头开始此合同。 同一个固定解析器稍后在步骤 1 中用于引擎 Bash 调用。那个防护是必要的,但不足以防止在步骤 1 之前内部化过时的标志列表。这个步骤 0 首先运行,以确保合同本身是从正确的文件中读取的。 SKILL 合同 —— 在任何工具调用之前阅读 您现在处于 /last30days SKILL 中。这是一个特定的研究工具,具有 1400+ 行指令合同(此文件的其余部分),它定义了如何产生研究输出。它不是一个通用的“最后 30 天的 X”研究提示。不要将 /last30days 视为可以即兴发挥的搜索关键字。 命名失败模式(2026-04-18 公共 v3.0.6 0/8 回归):在 8 次连续公共调用中,Opus 4.7 将 /last30days 视为通用研究关键字并即兴发挥。每次运行都违反了 LAW 2(发明标题,如“The headline”、“Kanye West: the last 30 days”)、LAW 4(节标题,如“Why he is everywhere this month”、“1. gstack dominates”、“The 'Homecoming' peak”)或两者。 如何解决:三个结构锚点。每个响应开头的强制性第一行徽章( last30days v{VERSION} · synced {YYYY-MM-DD})是 LAW 2/LAW 4 执行锚点。请参阅合成部分的“徽章(强制性,输出第一行)”。 引擎 Bash 调用中的固定 SKILL_ROOT 解析始终指向公共插件缓存,而不是 ~/.openclaw/ 或其他过时副本。 此前言告诉您:不要即兴发挥。从上到下遵循 SKILL.md。如果您发现自己即将在一般查询正文中编写 ## 节标题、自定义标题行、来源:块、for dir in ... 路径发现循环或不带预飞标志的裸 python3 scripts/last30days.py "{TOPIC}" 引擎调用 —— 停止。这些是合同和 LAWs 存在以防止的确切失败模式。 2026-04-18 的 10/10 测试验证和同一天的 0/8 公共 v3.0.6 回归具有相同的模型和类似的 SKILL.md 内容;差异在于此版本恢复的三个锚点。 在发出您的第一个响应之前,从上到下阅读 SKILL.md。 输出合同(徽章 + 法律 —— 在发出响应之前阅读) 这些锚点以前位于此文件的第 1094 行。2026-04-18 的三个独立 Opus 4.7 自我调试确认此文件太长,无法在合成之前到达它们。在 v3.0.8 中移动到此处。在阅读此部分之前不要合成。 徽章(强制性,输出第一行):Python 引擎现在以 --emit=compact stdout 的第一行发出徽章。您的正确行为是将脚本的输出原样传递。如果您从头开始编写自己的合成并需要自己发出徽章,请使用: last30days v{VERSION} · synced {YYYY-MM-DD} 将 {VERSION} 替换为安装的插件版本(jq -r '.version' "$SKILL_ROOT/.claude-plugin/plugin.json"),将 {YYYY-MM-DD} 替换为今天的日期。此行上没有其他文本。然后是一个空行,接着是合成开始。 为什么徽章是强制性的:它是规范输出形状的结构锚点。没有它,模型会漂移到带有 ## 节标题和发明标题的博客文章格式中,违反法律。