Install
openclaw skills install @elisabeth15501/ai-weekly把「本周 AI 行业动态」做成一个可搜索、可筛选、支持暗色模式的单文件 HTML 周报。 用户用日常说法就能触发,例如「这周 AI 有什么大事」「给我看个 AI 简报」「做个 AI 周报」。 数据来自 14 个公开 RSS 源(国内 7 + 国外 7,国内优先),默认不调用任何付费或商业 API。 适合:AI 周报 / AI 新闻汇总 / AI 行业动态速览 / 模型排行榜与市场融资数据整理。 不适合以下情形,请勿触发: - 用户要的是「即时单条新闻」或「回答一个 AI 领域问题」,而非一份成体系的周报/简报; - 用户指定了非AI 主题(时政、体育、财经等); - 用户只想要纯文本对话输出——此时直接在对话里回答,不要生成 HTML; - 用户要求部署、推送、改仓库设置等运维动作(见正文「能力边界」,这些不属本技能触发能力)。 典型触发:这周 AI 有什么大事。 典型不触发:帮我看下今天沪深300 多少点。 能力边界(重要):本技能默认触发的动作只是生成新闻内容——抓取、生成 HTML、校验、展示;报告生成流程本身不部署、不推送飞书、不改仓库设置、不 git push。 但本包确实随附部署 / 飞书推送 / 排行榜刷新 / 系统调度等工具(publish.py、deploy.py、deploy_ghpages.py、refresh_deploy.py、install_scheduler.py 等)。它们是独立的、需显式调用的能力——只有在你明确点名执行对应命令时才运行,绝不会在「生成周报」时被自动触发。各工具的默认安全边界: - 飞书推送(publish.py / feishu_connector.py,二者等价、二选一,切勿同跑两次):默认经 feishu_target.json 发一张卡片;不想要推送就别调用这俩命令。 - 部署(deploy_ghpages.py / deploy.py):需显式调用,默认只本地提交、不推送;需显式 --push 才推送(--no-push 保留作兼容)。deploy.py 是统一多后端分发入口(github-pages 后端内部调用 deploy_ghpages.py),其 deploy() 默认同样 no_push=True,publish.py --deploy 分发路径与此一致。 - 排行榜刷新(refresh_deploy.py):默认仅本地生成+提交、不推送,需显式 --push 才部署。 - 系统调度(install_scheduler.py):注册的定时任务默认仅本地刷新、永不自动推送;仅当你显式 --enable-push 才允许定时自动推送 gh-pages(需 GH 凭据)。
openclaw skills install @elisabeth15501/ai-weekly跨平台 Agent Skill(Claude Code · Codex · OpenCode · OpenClaw · Coze · WorkBuddy 通用)。
本文件是精简入口,采用渐进式披露:核心约束与流程在下方,按需深入再读 references/SKILL_full.md。
这一节不随任务阶段变化。任何情况下都适用,包括中途追问、续跑、以及上下文被压缩后重新载入。
[n天前],不要静默混入。git push 不会在「生成周报」流程中自动触发(详见 §四);这些动作仅在用户明确点名执行对应命令时进行,且各自有安全默认(deploy/refresh 默认不推送、scheduler 默认不推送)。gh CLI 凭据;不写入项目文件、不回显到日志、不传给子进程 argv。每步都有输入/输出/兜底,单轮内可闭环,不需要为了完成一步而重新读取本文件。 用户只要简报时走轻量模式:第 1 步抓完直接输出 Markdown 分组列表,跳过第 2~5 步。
REPORT_DATE(周期截止日,默认今天;用户指定历史期数时必须显式传 --date,否则内容会被改写成当期)bash run_report.sh scripts/fetch_ai_news.py --output news.jsonnews.json(与 AI HOT 兼容的归一化 schema,含 count / items[] / hf_models[] / feeds_ok)--region(默认 auto;国内优先用 --region cn)--market-data / --funding-data(国内加 --cn-* 变体)注入news.jsoninsights.json:3-5 条 {kicker, title, analysis, insight},加 keywords(3-6 个)与一句话 leadinsights.jsongenerate_site.py 会从本周新闻自动派生基线看点,区块不会消失。schema 与「去 AI 味」要求见 references/SKILL_full.md 第七节news.json + 可选 ranking.json / model_profiles.json / insights.jsonbash run_report.sh scripts/generate_site.py --api-json news.json \
--insights-json insights.json --lead "本周主线:……" \
--date ${REPORT_DATE} --data-snapshot ${REPORT_DATE} \
-o AI_News_YYYY-MM-DD.html
--external-news-json 提供,页脚会自动署名bash run_report.sh scripts/validate_report.py --html AI_News_YYYY-MM-DD.html</script>,全文无 javascript: / data: href)+ 25 项质量门禁present_files 展示,并在对话里给3-5 条核心发现轻量模式:用户只要对话内简报 → 执行步骤 1 后直接按 category 分组输出 Markdown(模型发布 / 产品发布 / 行业动态 / 论文研究 / 技巧观点),保留链接,不生成文件、不执行后续步骤。
| 你要做的事 | 去读 |
|---|---|
写 insights.json、去 AI 味、完整输出 schema | references/SKILL_full.md 第七节 |
| 查数据源清单、口径路由、译文三级取值 | references/SKILL_full.md 第五节 / references/data_sources.md |
| 代理与网络合规写法、排行榜兜底细节 | references/SKILL_full.md 第八节 |
| 改 HTML 结构 | assets/news_site_template.html |
| 完整随包文件清单 | references/SKILL_full.md 第十节 |
决策边界:本节动作全是高权限运维动作,不是本技能的默认行为。 仅当用户明确点名要求某一项时才执行对应那一条;未点名时一律不执行、不追问、不「顺手做掉」。 内容请求与运维动作是两件事:要内容就只生成内容。
| 动作 | 触发前提(须全部满足) | 凭据来源 | 默认安全边界 |
|---|---|---|---|
GitHub Pages 部署(deploy_ghpages.py / deploy.py) | 明确要求部署且指定期数 | 用户本次提供的凭据 | 默认仅本地提交、不推送;需显式 --push 才推送 |
多后端部署(deploy.py / publish.py --deploy) | 明确要求部署到非 GitHub 后端或显式 --deploy | 对应后端凭据(仅该后端需要) | 默认仅本地生成+提交、不推送;需显式 --push 才推送 |
飞书卡片推送(publish.py / feishu_connector.py,二选一) | 明确要求推送(feishu_target.json 已配置目标) | 飞书连接器已登录会话 | 调用即发一张卡片;两命令同跑会发两次 |
Pages 源切换(setup_pages_source.sh) | 明确要求切源 | 用户本次的 token 或已登录 gh | 仅改 Pages 源配置 |
模型排行榜刷新(refresh_deploy.py) | 明确要求刷新 | 复用抓取源,无需凭据 | 默认不推送,需显式 --push |
定时刷新调度(install_scheduler.py) | 明确要求安装调度且理解会注册系统任务 | 默认无需凭据;--enable-push 时需 GH 凭据 | 默认仅本地刷新、不推送;--enable-push 才允许定时自动推送 gh-pages |
--deploy-to 仅接受白名单后端(github-pages / tencent-cos / vercel / netlify / cloudflare-pages / local),非法取值直接报错,不接受任意外部地址。AIWEEKLY_DEPLOY_REPO_ALLOWLIST)。FREQ=WEEKLY;BYDAY=MO,prompt 复用 §二 流程。默认只走到交付为止,不含任何部署/推送步骤;确需定时部署的,由用户在创建时显式要求。
| 数据 | 口径 | 不可达时 |
|---|---|---|
| 新闻 | 14 个 RSS 实时抓取 | 国内源 + 离线快照降级,标来源 |
| 模型榜单 | 多源池实时(国内源优先) | 回退快照 + 标「缓存快照」与截止日 |
| 市场/融资 | 静态快照注入(WebSearch 取真实值) | 标「示例/估算数据」 |
| 英文翻译 | 本地缓存 → 远程源 → 本地Ollama | 标「未翻译·原文保留」,用 translations_offline.json |
| 项 | 取值 | 说明 |
|---|---|---|
context: fork | fork | 推断。本技能产出独立 HTML 报告文件、任务闭环后无需回填主对话,定位为子任务 Skill |
allowed-tools | Bash, Read, Write, Glob, Grep, WebSearch, WebFetch | 推断。按§二 流程实际用到的工具列出,未含 Edit(流程不改既有代码) |
disable-model-invocation | false | 推断。核心能力就是「用户说人话即生成」,须允许模型自主触发 |
when_to_use | 见frontmatter | 推断。原文只有 description 里的触发词列表,无独立字段 |
| 不适用情形 | 见 frontmatter | 推断。原文有能力边界但未列「何时不要用」,此处补齐以防误触发 |
| 权限声明 | 见 frontmatter | 推断。原文完全无权限相关字段 |