aihotlisted
Install: claude install-skill Zhangs-11/zs-skills
# AI HOT Skill
让 Agent 用最自然的中文查询拿到 aihot.virxact.com 上每天的 AI HOT 日报和全部 AI 动态,不需要打开浏览器。SKILL.md 标准格式,跨 Claude Code / Codex CLI / Cursor / Gemini CLI / OpenCode / 任何兼容平台可用。
线上:https://aihot.virxact.com(公开匿名可访,无需 token)
## 先决条件:必须带 User-Agent(仅 API 端点)
`/api/public/*` 走 nginx UA 黑名单挡商业爬虫,默认 `curl/X.Y` UA 会被 403 Forbidden。**调 API 时所有 curl 都必须带浏览器 UA**:
```bash
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 路径。
## 什么时候用
> **路由优先级(第一原则)**:**默认走精选** `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 收窄) |
| **明确说"日报"**