aihot
Skill0 starsChanged 2 months agoMITView on GitHub
查询 aihot.virxact.com 每天精选的 AI 模型 / 产品 / 行业 / 论文 / 技巧动态,整理成中文简报,免 API Key。当用户问「今天 AI 圈有什么」「AI 日报」「AI HOT」「AI 资讯」「最近 AI 热点」「OpenAI/Anthropic/Google 最近发布了什么」「最近一周的 AI 论文」「AI 模型发布」时使用。Curated daily AI models, products, industry news, and papers from aihot.virxact.com, formatted as a Chinese briefing with no API key. Use for AI news today, AI daily briefing, AI HOT, recent AI releases, or any AI industry update query.
- Pipes a download into a shell
12 other projects use a version of this, 7 of them edited.
Adopted by
Most recently taken up by
- xieqiyong/skillsedited, first seen Nov 8, 2026
- KKKKhazix/khazix-skillstheir own version, first seen Nov 3, 2026
- csfuwwc/md-skillstheir own version, first seen Nov 1, 2026
- xiebaiyuan/xiebaiyuan-skillstheir own version, first seen Oct 23, 2026
- wdhorizon/skillsedited, first seen Oct 13, 2026
- KKKKhazix/Khazix-Skillstheir own version, first seen Oct 8, 2026
Used with
Projects with it also use khazix-writer, hv-analysis and 3 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
skytiger6724Skillkhazix-writer
数字生命卡兹克(Khazix)的公众号长文写作skill。当用户需要撰写公众号文章、写稿子、续写文章、根据素材产出长文时使用。触发词包括但不限于:写文章、写稿子、帮我写、续写、扩写、公众号文章、长文、出稿、按我的风格写。即使用户只是说"帮我把这个写成文章"或"用我的风格写一下",只要上下文涉及内容创作和公众号输出,都应该触发。也适用于用户丢过来一个PDF、brief、新闻链接、语音转文字或任何素材说"帮我写篇文章"的场景。不要用于短内容(小红书帖子、推特、朋友圈)或纯标题摘要生成(那个用wechat-title skill)。
Also in 4 projects that use this
xiaolinVVSkillhv-analysis
横纵分析法(Horizontal-Vertical Analysis)深度研究Skill。由数字生命卡兹克提出,融合了索绪尔的历时-共时分析、社会科学的纵向-横截面研究设计、商学院案例研究法与竞争战略分析的核心思想。 当用户想要系统性研究一个产品、公司、概念、技术或人物时使用。核心是双轴分析:纵轴追踪从诞生到当下的完整生命历程(以叙事故事呈现),横轴在当下时间截面上与竞品/同类进行系统性横向对比,最后交叉两条轴产出独到洞察。最终产出一份排版精美的PDF研究报告。 触发词包括但不限于:横纵分析、研究一下、帮我分析、深度研究、做个研究、调研一下、竞品分析、帮我看看这个东西怎么样、这个产品/公司/概念是怎么回事、帮我摸清楚、帮我搞懂、帮我做个deep research。 即使用户只是说"帮我了解一下XX"或"XX是什么来头",只要上下文暗示需要系统性的深度研究(而非简单的概念解释),都应该触发。也适用于用户丢来一个产品名、公司名、技术名词说"帮我研究一下这个"的场景。 不要用于简单的名词解释(用户只是问"XX是什么")、不要用于公众号写作(那个用khazix-writer)、不要用于纯标题摘要生成(用wechat-title)。
Also in 3 projects that use this
xiaolinVVSkillstorage-analyzer
macOS / Windows 只读存储分析助手(自动识别系统)。扫描整机磁盘占用,找出 占空间大户,把每一项分成 🟢可自动清理 / 🟡需人工判断 / 🔴谨慎清理 三级并给出 可执行处置方案,生成排版精美、可折叠、命令可一键复制的交互式 HTML 报告,并可 起本地服务在网页上一键删除(移废纸篓/直接删)。扫描全程只读。务必在以下场景 使用:用户说"存储分析""磁盘满了""C盘/硬盘满了""空间不够""清理空间" "清理磁盘""占空间""哪些东西占地方""帮我看看存储""看一下电脑存储/空间" "存储空间""电脑空间不够""内存满了/不够/不足""看下内存/存储"(中文口语里 "内存"常指存储空间)"storage analysis""disk cleanup""清缓存""磁盘清理"; 或用户抱怨电脑没空间、想知道什么东西吃硬盘、想要清理建议时。注意:若用户明确 指运行内存/RAM(如"哪个进程吃内存""内存占用高"想看活动监视器),那是 RAM 不是存储,不属于本 skill。
Also in 4 projects that use this
baizhine999Skillleader
AI 扮演你的 Leader,用大厂管理思维审视你的方案、想法和工作,push 你成长。触发词:/leader, leader模式, 大厂模式, 帮我看看这个, 我有个方案, 我最近有点迷茫, 我不知道该怎么做。AI 是施压者,你是被 push 的那个人。
Also in 3 projects that use this
Wyx1105170322Skillneat-freak
End-of-session knowledge cleanup with OCD-level rigor — reconciles project docs (CLAUDE.md, README.md, docs/) and agent memory against the code so nothing rots. 会话结束后对项目文档和记忆进行洁癖级审查与同步。MUST trigger when the user says: "sync up", "tidy up docs", "update memory", "clean up docs", "/sync", "/neat", "同步一下", "整理文档", "整理一下", "更新记忆", "梳理一下", "收尾", "这个阶段做完了", "新人能直接上手", or any phrase suggesting a dev milestone where knowledge needs reconciliation. Also trigger when the user reports stale docs, conflicting memories, or wants a clean handoff to teammates or other agents. Bare "整理" / "tidy" with prior dev context counts — do not under-trigger. Cross-platform: works on Claude Code, OpenAI Codex, OpenCode, and OpenClaw.
Also in 3 projects that use this
Other versions12 projects use a version of this.
Word for word · 0
None found.
Edited · 7
- bozhouDev/bozhou-skills★ 7893% same
- HK-hub/AgentSkills★ 691% same
- xieqiyong/skills★ 491% same
- dqtx760/skills-manage★ 293% same
- ma2ong/claude-skills-collection★ 169% same
- wdhorizon/skills★ 193% same
- Nzettodess/Awesome-Agent-Skills★ 093% same
Wrote their own version · 5
- KKKKhazix/Khazix-Skills★ 22ksame name
- KKKKhazix/khazix-skills★ 22ksame name
- xiebaiyuan/xiebaiyuan-skills★ 6same name
- csfuwwc/md-skills★ 4same name
- Zhangs-11/zs-skills★ 2same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository45 other files it gives its agents.
- 3d-creationSkill
- 60fps-animationSkill
- arxivSkill
- awesome-design-mdSkill
- buildSkill
- canvas-designSkill
- cavemanSkill
- cli-anything-hubSkill
- data-analyticsSkill
- defineSkill
- design-blueprintSkill
- diagnoseSkill
- dsh-plugin-developmentSkill
- feishu-cliSkill
- find-skillsSkill
- flow-canvasSkill
- frontend-designSkill
- fun-code-reverseSkill
- github-cliSkill
- github-trending-cnSkill
- handoffSkill
- latex-compileSkill
- learn-everythingSkill
- metaSkill
- modern-python-toolchainSkill
- multi-search-engineSkill
- myagents-routerSkill
- office-docsSkill
- perplexitySkill
- planSkill
- product-designSkill
- research-paper-writingSkill
- reverse-proxySkill
- reverse-skill-routerSkill
- reviewSkill
- salesSkill
- shipSkill
- skill-auditSkill
- skill-createSkill
- super-researchSkill
- teachSkill
- verifySkill
- videoSkill
- visualizerSkill
- web-search-exaSkill
The file
Files
AI HOT Skill
让 Agent 用最自然的中文查询拿到 aihot.virxact.com 上每天的 AI HOT 日报和全部 AI 动态,不需要打开浏览器。
线上:https://aihot.virxact.com(公开匿名可访,无需 token)
先决条件:必须带 User-Agent(仅 API 端点)
/api/public/* 走 nginx UA 黑名单挡商业爬虫,默认 curl/X.Y UA 会被 403 Forbidden。调 API 时所有 curl 都必须带浏览器 UA:
UA="Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36"
# 之后所有调 API 的 curl 都加 -H "User-Agent: $UA",例如:
curl -sH "User-Agent: $UA" "https://aihot.virxact.com/api/public/daily"后面"工作流"章节的 curl 例子为了简洁默认你已经设了 $UA——实际调用必须加 -H "User-Agent: $UA",不要忘。漏掉这一步会让你以为接口挂了,实际只是被 403 挡了。
范围澄清:这条 UA 要求只针对
/api/public/*API 端点。/aihot-skill/{install.sh,SKILL.md,README.md}安装入口 nginx 上特意豁免 UA 黑名单(设计前提就是给curl -fsSL ... | bash一行装用),用 default curl UA 直通 200。不要把"先决条件"误推广到所有 aihot.virxact.com 路径。
Windows / PowerShell 适配
本机是 Windows,date -u -v-24H(BSD)和 date -u -d '24 hours ago'(GNU)都不可用。用 PowerShell 算时间窗 + curl.exe(不要用 curl,那是 Invoke-WebRequest 别名,参数语义不同):
$UA = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36"
$since = (Get-Date).ToUniversalTime().AddHours(-24).ToString("yyyy-MM-ddTHH:mm:ssZ")
curl.exe -s -H "User-Agent: $UA" "https://aihot.virxact.com/api/public/items?mode=selected&since=$since&take=30"时间窗换算:24 小时 .AddHours(-24)、3 天 .AddDays(-3)、7 天 .AddDays(-7)。JSON 用 ConvertFrom-Json 解析(或直接看原始输出)。
什么时候用
路由优先级(第一原则):默认走精选
items?mode=selected——它是 AI HOT 每天精挑细选的"主菜单",覆盖用户关心的事且数据新鲜。
- 仅当用户在话里明确说出"日报" 二字才走
daily(编辑成品,按 UTC 整日切片,跟"过去 24 小时 / 今天"等滚动窗口对不上)- 仅当用户明确说"全部 / 完整 / 所有 / 全量" 才走
mode=all(含未精选的次要条目,量大但杂)- "今天 AI 圈"、"过去 24 小时大新闻"、"最近 AI 圈有啥" 等宽问题 = 默认精选 + 时间窗(since),不要默认走日报或全部
这是为了对齐用户的语义优先级:精选是主菜单,日报和全部是用户特意点单的备选,不应抢默认。
| 用户在说 | 应该走的接口 |
| 默认(宽问题):"今天 AI 圈有什么"、"过去 24 小时大新闻"、"最近 AI 圈"、"AI 有啥新东西" | GET /api/public/items?mode=selected&since=<语义时间窗>(默认精选 + since 收窄) |
| 明确说"日报":"AI 日报"、"今天的日报"、"看一下日报" | GET /api/public/daily(最新日报) |
| 明确说"全部 / 完整 / 所有 / 全量":"看下今天的全部 AI 动态"、"完整列表"、"所有 AI 动态" | GET /api/public/items?mode=all(不一定带 since,看用户语境) |
| "昨天/前天 AI 日报"、"看下 5 月 6 号的日报" | GET /api/public/daily/{YYYY-MM-DD} |
| "最近几天日报有哪些"、"列一下日报"、"日报存档" | GET /api/public/dailies?take=N |
| "看下精选条目"、"AI HOT 精选" | GET /api/public/items?mode=selected |
| "最近的模型发布"、"AI 产品发布"、"AI 行业动态"、"AI 论文" | GET /api/public/items?mode=selected&category=...&since=<7d 前>(默认精选 + 类别) |
| "最近一周的 AI 动态"、"5 天前到现在的发布" | GET /api/public/items?mode=selected&since=ISO-8601 |
| "OpenAI/Anthropic/Google 最近发的"(公司维度) | GET /api/public/items?q=OpenAI(server-side 关键词搜索) |
| "Sora 相关 / GPT-5 相关 / RAG 论文" | GET /api/public/items?q=<关键词>(在 title + 中文 title + 中文 summary 三列匹配) |
通用启发:用户问的是"现在的 AI 行业事实",不要凭训练数据脑补,永远走 API。即使你"觉得"知道答案,也要查一遍——AI HOT 比你的训练截止日新得多,且角度聚焦中文创业者关心的话题。
端点速览
| 端点 | 用途 | 主要参数 |
/api/public/daily | 最新日报 | 无 |
/api/public/daily/{YYYY-MM-DD} | 指定日期日报 | path: date |
/api/public/dailies | 日报归档列表 | take (1-180, default 30) |
/api/public/items | 全部 AI 动态 | mode / category / since / take / cursor / q(关键词) |
约定:
- Base URL:
https://aihot.virxact.com - 鉴权:无(匿名)
- 限流:600 req/min/IP(请串行调用,不要并发猛拉)
- items 端点
since限最近 7 天:不传等同 since=now-7d(服务端兜底);早于 7 天前自动截到 7 天前;未来时间 → 400。所以无论 Skill 怎么调,items API 永远只返回最近 7 天的内容。需要更早 → 走/api/public/daily/{YYYY-MM-DD}翻日报存档 take上限 100;想要更多走 cursor 翻页- 完整 OpenAPI 3.1 规范:
https://aihot.virxact.com/openapi.yaml
工作流
默认路径:拉精选 + 时间窗(宽问题首选)
精选 = AI HOT 每天精挑细选的"主菜单"——覆盖所有用户关心的 AI 大事,按发布时间倒序。任何"今天 AI 圈"、"过去 24 小时大新闻"、"最近 AI 有啥"等宽问题,默认走这个——比起日报:① 时间窗自由(24 小时 / 3 天 / 1 周想多窄就多窄,跟用户语义对齐)② 数据新鲜(实时滚动而非按 UTC 整日切片)③ 质量仍高(aiSelected=true 的池子,不含次要条目)。
# 拉最近 24 小时精选(用户问"过去 24 小时大新闻")
since=$(date -u -v-24H +%Y-%m-%dT%H:%M:%SZ 2>/dev/null || date -u -d '24 hours ago' +%Y-%m-%dT%H:%M:%SZ)
curl -sH "User-Agent: $UA" "https://aihot.virxact.com/api/public/items?mode=selected&since=$since&take=50"
# 拉最近 50 条精选(用户问"看下精选" / 不带明确时间窗)
curl -sH "User-Agent: $UA" "https://aihot.virxact.com/api/public/items?mode=selected&take=50" \
| jq '.items[] | {title, source, publishedAt, url}'拉日报(用户明确说"日报"时)
触发关键词:句子里出现"日报"二字("AI 日报"、"今天的日报"、"看下日报"、"5 月 6 号的日报")。没有"日报"二字不要走这个——日报是 UTC 0 点切片的固定一日成品,跟"过去 24 小时 / 今天"等滚动时间窗对不上。
日报是 AI HOT 的"标题层"——每天北京时间 08:00 自动生成,按主题分版块(5 个固定版块)。已有"主编点评"导语段落,是按主题打包后的成品。
# 拉今日(或最新可用的)日报
curl -sH "User-Agent: $UA" "https://aihot.virxact.com/api/public/daily" \
| jq '{date, lead: .lead.title, sections: [.sections[] | {label, n: (.items | length)}]}'拉指定日期日报
# YYYY-MM-DD,UTC 0 点为基准
curl -sH "User-Agent: $UA" "https://aihot.virxact.com/api/public/daily/2026-05-07"列日报归档(discovery)
不知道有哪些日期可查时,先看归档:
# 最近 N 天日报索引(不含正文,只有日期 + 头条标题)
curl -sH "User-Agent: $UA" "https://aihot.virxact.com/api/public/dailies?take=14" \
| jq '.items[] | {date, leadTitle}'拉全部(用户明确说"全部 / 完整 / 所有 / 全量"时)
触发关键词:句子里出现"全部"、"完整"、"所有"、"全量"、"包括老的"——用户主动想看精选之外的次要条目(被精选筛掉但仍相关的内容)。没有这些关键词不要走 mode=all——精选已经覆盖大部分用户关心的事,全部池子量大但杂。
# 拉最近 24 小时全部 AI 动态(用户问"看下今天全部的 AI 动态")
since=$(date -u -v-24H +%Y-%m-%dT%H:%M:%SZ 2>/dev/null || date -u -d '24 hours ago' +%Y-%m-%dT%H:%M:%SZ)
curl -sH "User-Agent: $UA" "https://aihot.virxact.com/api/public/items?mode=all&since=$since&take=100"按分类拉条目
5 个 category(items API 用英文 slug,daily API 看到的 section label 是中文):
items?category= | daily.sections[].label |
ai-models | 模型发布/更新 |
ai-products | 产品发布/更新 |
industry | 行业动态 |
paper | 论文研究 |
tip | 技巧与观点 |
用户问"公众号最近发什么":items API 不含公众号(mp_hot 信源单独走前端 /mp 页),Skill 暂时无法回答这类问题,可以提示用户去 https://aihot.virxact.com/mp 看公众号爆文页。
# 例:拉最近 50 条 AI 论文(默认精选 + paper 类别)
curl -sH "User-Agent: $UA" "https://aihot.virxact.com/api/public/items?mode=selected&category=paper&take=50" \
| jq '.items[] | {title, source, publishedAt, url}'
# 例:精选里的模型发布
curl -sH "User-Agent: $UA" "https://aihot.virxact.com/api/public/items?mode=selected&category=ai-models&take=20"
# 例外:用户明确说"全部论文 / 所有模型发布"才走 mode=all
curl -sH "User-Agent: $UA" "https://aihot.virxact.com/api/public/items?mode=all&category=paper&take=100"按时间窗口拉条目(最近 N 天)
关键规则:用户问"最近 X"(最近的模型发布 / 最近 AI 论文 / 最近 OpenAI 等)时,需要带
since参数把窗口收窄到用户实际意图(说"最近 3 天"就 3d,"昨天"就 1d,"最近一周"就 7d)。服务端兜底:items API 服务端默认
since=now-7d(硬上限,保护服务器),所以即使 Skill 完全不带 since 也只会返回最近 7 天的内容,不会拉到几个月前的老条目。但仍建议显式带 since:① 用户问"最近 3 天"时显式 3d 比让服务端默认 7d 更精确 ② 输出元信息可以写人话级时间窗 ③ 跟用户公开宣传的"最长 7 天"对齐意图清晰。
# 拉最近 7 天的精选模型发布(用户问"最近的模型发布")
since=$(date -u -v-7d +%Y-%m-%dT%H:%M:%SZ 2>/dev/null || date -u -d '7 days ago' +%Y-%m-%dT%H:%M:%SZ)
curl -sH "User-Agent: $UA" "https://aihot.virxact.com/api/public/items?mode=selected&category=ai-models&since=$since&take=100"
# 拉最近 3 天的精选动态(用户明确说"最近 3 天")
since=$(date -u -v-3d +%Y-%m-%dT%H:%M:%SZ 2>/dev/null || date -u -d '3 days ago' +%Y-%m-%dT%H:%M:%SZ)
curl -sH "User-Agent: $UA" "https://aihot.virxact.com/api/public/items?mode=selected&since=$since&take=100"例外:用户明确说"全量 / 所有 / 完整列表 / 包括老的" → mode 切到 all,可以不带 since;用户问"看下精选"(看精选池而非时间窗)mode 保持 selected 也可以不带 since。但只要句子里有"最近 / 最新 / 这两天 / 这周",默认带 since + mode=selected。
翻页(cursor)
/api/public/items 响应里有 nextCursor(opaque token),下次请求把它原样塞进 cursor 参数即可。
# 第 1 页
resp1=$(curl -sH "User-Agent: $UA" "https://aihot.virxact.com/api/public/items?mode=all&take=100")
echo "$resp1" | jq '.items | length' # 100
# 第 2 页
cursor=$(echo "$resp1" | jq -r '.nextCursor')
curl -sH "User-Agent: $UA" "https://aihot.virxact.com/api/public/items?mode=all&take=100&cursor=$cursor"hasNext = false 或 nextCursor = null 时停止翻页。cursor 是不透明 token,视作黑盒,不要尝试解析、递增、或跨端点复用。
关键词搜索("OpenAI 最近发的" / "Sora 相关" / "RAG 论文")
API 直接支持 server-side 关键词搜索 — q 参数在 title + 中文 title + 中文 summary 三列上 ILIKE 匹配,走 PostgreSQL pg_trgm GIN 索引(2-6ms)。不要再走"拉一批 + 客户端 grep"模式 — 那只能看到前 100 条池子里的命中,关键词若在 100 条外完全找不到。
# 找 OpenAI 最近发的(覆盖全池,不仅前 100)
curl -sH "User-Agent: $UA" "https://aihot.virxact.com/api/public/items?q=OpenAI&take=30"
# 找 Sora 相关的所有 AI 动态(任何包含 Sora 的标题或摘要)
curl -sH "User-Agent: $UA" "https://aihot.virxact.com/api/public/items?q=Sora"
# 找 RAG 论文(category 限定 + 关键词)
curl -sH "User-Agent: $UA" "https://aihot.virxact.com/api/public/items?category=paper&q=RAG&take=30"
# 关键词 + 时间窗(Anthropic 最近 3 天的精选)
SINCE=$(date -u -v-3d +%Y-%m-%dT%H:%M:%SZ 2>/dev/null || date -u -d '3 days ago' +%Y-%m-%dT%H:%M:%SZ)
curl -sH "User-Agent: $UA" "https://aihot.virxact.com/api/public/items?mode=selected&q=Anthropic&since=$SINCE"q 约束:
- 至少 2 个字符(单字符 GIN trigram 退化为全表扫,服务端会视作不搜索)
- 最长 200 字(超出自动截断)
- 跟其它参数(mode/category/since/take/cursor)正交叠加,可以"按精选 + 论文 + 关键词 + 7 天内"组合
- 跟其它请求共享 600r/m 限流
返回数据形态
/api/public/daily 返回
{
"date": "2026-05-07",
"generatedAt": "2026-05-07T00:01:23.456Z",
"windowStart": "2026-05-06T00:00:00.000Z",
"windowEnd": "2026-05-07T00:00:00.000Z",
"lead": { "title": "...", "leadParagraph": "..." },
"sections": [
{
"label": "模型发布/更新",
"items": [
{
"title": "...",
"summary": "...",
"sourceUrl": "https://...",
"sourceName": "OpenAI Blog"
}
]
}
],
"flashes": [
{ "title": "...", "sourceName": "...", "sourceUrl": "...", "publishedAt": "..." }
]
}sections[].label 固定 5 个:"模型发布/更新" / "产品发布/更新" / "行业动态" / "论文研究" / "技巧与观点"。lead 极少数日报为 null。
/api/public/dailies 返回
{
"count": 14,
"items": [
{ "date": "2026-05-07", "generatedAt": "...", "leadTitle": "..." }
]
}/api/public/items 返回
{
"count": 50,
"hasNext": true,
"nextCursor": "eyJhIjoxNzE0OTk1MjAwMDAwLCJpIjoiY205eHl6MTIzIn0",
"items": [
{
"id": "cm9abc456def789ghi012jkl3",
"title": "中文标题(normalize 过)",
"title_en": "原英文标题(仅当与 title 不同时存在,否则 null)",
"url": "https://...",
"source": "OpenAI Blog",
"publishedAt": "2026-05-07T15:30:00.000Z",
"summary": "中文摘要(LLM 生成)",
"category": "ai-models"
}
]
}字段不变量:
- 必有:
id/title/url/source - 可空:
title_en/summary/publishedAt/category category取值集:ai-models/ai-products/industry/paper/tip/nullpublishedAt:ISO 8601 UTC(带Z)id:cuid 字符串(25 字符),不要假设是数字
给用户的输出格式
⚠️ 核心原则:这一节是直接展示给用户的最终内容——必须 markdown 格式 + 排版好 + 普通人能看得懂的人话。用户多数是非技术 AI 创业者 / 设计师 / 普通读者,看到的应该是中文资讯简报,不是 API 调试日志。
所有"端点路径 /
mode=selected这种 raw 参数 / 限流 / nginx 缓存 / cursor / hasNext"等基础设施细节都不能出现在用户看到的输出里。人话级元数据(时间窗 / 条数 / "按发布时间倒序")可以保留——判断标准:用户能直接看懂吗?能 → 保留;不能 → 删掉。
日报式输出(用 daily / daily/{date} 端点时)
**AI HOT 日报 · 2026-05-07**
## 模型发布/更新
1. **<title>** — <source>
<summary 简化版 50 字内>
<url>
## 产品发布/更新
2. ...
## 行业动态
3. ...
## 论文研究
4. ...
## 技巧与观点
5. ...
## 快讯(如果 flashes 有内容)
- <flash.title> — <flash.source>(<flash.publishedAt 转人话>)编号贯穿全文(1, 2, 3 ... N),不在每个 ## 内重新计数——这样用户能一眼数到"今天 27 条"。
列表式输出(用 items 端点时)
默认按 category 分组 + 全局编号——用户对"模型/产品/行业/论文/技巧"五版块结构已经形成预期(来自日报),混合 category 时这个结构最自然:
**AI HOT — 最近 30 条精选**
## 模型发布/更新
1. **<title>** — <source>
2 小时前
<summary>
<url>
## 产品发布/更新
2. **<title>** — <source>
...
3. ...
## 行业动态
4. ...只有 1 个 category 时(用户明确说"AI 论文"/"模型发布"等),用扁平编号列表:
**AI HOT — 最近一周 AI 论文**(2026-05-01 ~ 2026-05-08)
1. **<title>** — <source>
<summary>
<url>
2. ...副标题/元信息只写人话
OK(用户能直接懂的):
- "时间窗 2026-05-05 ~ 2026-05-07"
- "最近 3 天命中 OpenAI 关键词的全部条目"
- "按发布时间倒序"
- "共 50 条"
- "今天 5/8 日报北京时间 08:00 后才生成,先看 5/7 这期"
不 OK(基础设施泄漏,坚决不写):
- ❌
mode=selected/category=paper/take=30这种 raw 参数名 - ❌ 端点路径
/api/public/items?since=2026-04-30T18:39:31Z&take=50 - ❌ "限流 600 req/min" / "nginx 缓存 60s" / "x-nginx-cache: HIT"
- ❌ "cursor" / "hasNext=true" / "需 cursor 翻页或缩小 since 窗口"
- ❌ 任何 HTTP 状态码 / cache 状态 / 后端机制描述
数据源最多写一句:"数据来自 aihot.virxact.com",要么干脆不提(用户在用 skill 时已经知道源头)。
时间转人话
publishedAt 是 ISO 8601 UTC,展示时必须转成北京时间 + 用户能扫读的相对/绝对时间:
| 内部值 | 展示给用户 |
2026-05-08T01:48:00.000Z | "今天上午 09:48" / "2 小时前" |
2026-05-07T18:08:17.000Z | "今天凌晨 02:08" / "10 小时前" |
2026-05-06T16:43:00.000Z | "5/7 00:43" / "昨天" |
不要直接展示 2026-05-07T15:30:00.000Z 这种 ISO 字符串——用户看不懂。
title vs title_en
默认输出 title(中文 normalize 过的)。title_en 只在以下场景才用:
- 用户明确要求英文版("用英文给我看一下")
title为空(极少见)
不要两个都展示。
常见错误处理
{"error":"No daily report available yet."}(HTTP 404):当天日报还没生成(北京时间 08:00 之前)。建议给用户:拉昨天日报/api/public/daily/{昨天日期}{"error":"Invalid date format..."}(HTTP 400):date 必须是YYYY-MM-DD,UTC 基准- items 端点常见 400:
"invalid mode (must be 'selected' or 'all')""invalid category (must be one of: ai-models, ai-products, industry, paper, tip)""invalid since (must be ISO date, not in future)""invalid take (must be integer 1-100)"
- HTTP 429(限流):单 IP 超 600 req/min。串行调用 + 翻页加 200ms 间隔即可
不要做
- 不要把"今天 AI 圈"、"过去 24 小时大新闻"、"最近 AI 圈有啥"等宽问题路由到 daily — 这些是滚动时间窗,daily 是 UTC 0 点切片(5/6-5/7 一整天)的固定一日成品,时间精度对不上。默认走
mode=selected + since=<语义窗>。仅当用户在话里明确说"日报"二字才走daily - 不要在用户没说"全部 / 完整 / 所有 / 全量"时默认走
mode=all— 精选已经覆盖大部分用户关心的事,全部池子量大但杂含未精选次要条目。默认mode=selected,只有用户主动点单"全部"才切到mode=all - 不要试图猜测 / 编造内容 — 永远以 API 返回为准
- 不要把摘要(
summary)当原文引用 — 摘要由 LLM 生成,引用需要回url/sourceUrl核对 - 不要做高频轮询 — 日报每天 08:00 才更新一次,items 端点 5 分钟服务端缓存,用户问相同问题时不需要重新调 API
- 不要并发猛拉翻页 — 串行 + 自然间隔
- 不要尝试解析 / 递增 / 跨端点复用 cursor — 它是不透明 token,内部编码格式不稳定,改了不通知
- 公司维度 / 关键词查询用 server-side
?q=<词>,不要走"拉一批 + 客户端 grep"(那只能看到前 100 条池子,会漏) - 用户问"最近 N 天 X"时显式带
since=<N天前>(意图明确 + 元信息能写人话时间窗)。不带 since 服务端默认 7d 兜底,所以不会拉到老条目,但用户问"最近 3 天"时让服务端默认 7d 会多带 4 天的内容 - 不要在用户输出里暴露端点路径 / raw 参数 / 限流 / 缓存 TTL / cursor / hasNext 等基础设施细节 — 这些是给开发者看的,用户看不懂。详见上方"给用户的输出格式 → 副标题/元信息只写人话"
- 不要在压缩 / 跨日 / 跨版块合并输出时丢掉每条的 sourceUrl — 即使你为篇幅把 3 个日报合并成 5 类总结,每条 item 也必须保留 url(标题后或单独一行)。用户看到一条没 URL 就追溯不到原文,这条信息等于不可信
- 不要把"端点路径 / 调用细节"作为输出的引用源 — 引用源就写
<source>(OpenAI 官网 / Anthropic Newsroom / X:Berry Xia 这种),不是GET /api/public/items?...
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

