论文抓取
- 作者仓库星标 0
- 作者更新于 实时读取
- 作者仓库 skills-registry
- 领域
- 数据
- 兼容 Agent
-
- Claude Code
- Cursor
- Cline
- Codex
- Windsurf
- Gemini CLI
- +20
- 信任分
- 88 / 100 · 社区维护
- 作者 / 版本 / 许可
- @tomevault-io · 未声明 license
- Token 消耗评级
- 低消耗
- 接入复杂程度
- 即装即用
- 是否需要外部 API Key
- 不需要
- 兼容的系统
- 未声明(默认跨平台)
- 底层运行要求
- Python
- 文件与系统权限
-
- 只读
- 允许写入 / 修改
- 网络行为
- 允许外网请求
- 安装命令数
- 26 条
档案由构建时根据 SKILL.md 与安装命令自动衍生,可能与作者实际意图存在差异。
需要注意: 未限定 allowed-tools,默认拥有全部工具权限。
---
name: hf-daily-papers
description: Fetch and organize Hugging Face Daily Papers for a specified date. Downloads raw HTML, extracts…
category: 数据
runtime: Python
---
# hf-daily-papers 输出预览
## PART A: 任务判断
- 适用问题:表格、CSV、数据集、指标或分析流程。
- 输入要求:目标材料、限制条件、期望输出和验收方式。
- 证据边界:围绕“When to use / Critical insight / Workflow”读取原文规则,不把推断写成作者承诺。
## PART B: 执行结果
- **01** 任务判断:确认你的需求是否属于表格、CSV、数据集、指标或分析流程,并标出输入、限制和预期结果。
- **02** 执行计划:优先按“When to use / Critical insight / Workflow”拆成步骤,说明每一步会读取什么、修改什么、产出什么。
- **03** 交付结果:给出可复制的命令、文件改动、检查清单或内容草稿,并说明如何继续迭代。
- **04** 风险边界:结合 读取文件、写入/修改文件、会按任务需要访问外部网络、通常不需要额外 API Key 给出执行前确认项。
## Running Rules
- 读取文件、写入/修改文件;会按任务需要访问外部网络;通常不需要额外 API Key。
- 先小样例验证,再放大到真实任务。
- 交付时同时给结果、检查口径和下一步迭代建议。 原文没有稳定的斜杠命令要求。安装验证后通常全局生效,直接在对话里点名这个 Skill 并描述任务即可。
告诉 Agent 目标文件或材料、期望结果、不可改范围、是否允许联网或执行命令。本 Skill 的权限画像是:读取文件、写入/修改文件。
先用一个小任务确认它会围绕“When to use / Critical insight / Workflow”工作;涉及文件或命令时,先看 diff、日志、预览或测试结果。
检查最终产物是否包含明确结果、必要证据和下一步动作;如果输出泛泛而谈,就补充输入、边界和验收标准后重跑。
---
name: hf-daily-papers
description: Fetch and organize Hugging Face Daily Papers for a specified date. Downloads raw HTML, extracts…
category: 数据
source: tomevault-io/skills-registry
---
# hf-daily-papers
## 什么时候使用
- 用于提炼长内容、变更或对话里的关键信息 适合处理表格、CSV、指标、数据集、分析和可视化报告,核心价值是把输入、判断、执行、验证和交付边界固定下来,避免 Agent 泛泛回答。 把任务拆成可执行、可检查、可继续迭代的步骤;通常不需要额外…
- 面向表格、CSV、数据集、指标或分析流程,优先处理能明确输入、步骤和验收标准的工作。
## 需要提供什么
- 目标材料、目录范围、期望结果和不可改动内容。
- 是否允许联网、执行命令、读写文件或调用外部服务。
## 执行规则
- 围绕「When to use / Critical insight / Workflow」组织步骤,不把推断写成作者事实。
- 读取文件、写入/修改文件;会按任务需要访问外部网络;通常不需要额外 API Key。
- 先跑小样例,确认结果可检查后再扩大任务范围。
## 输出要求
- 给出最终产物、关键证据、验证方式和下一步动作。
- 信息不足时标记 unknown,不编造命令、平台或依赖。 作者原文负责流程事实;仓库文件负责来源和命令;流狐只补充适用场景、限制和质量判断。
skill "hf-daily-papers" {
输入层 -> 用户目标 + 目标文件 + 禁止范围 + 验收标准
上下文层 -> When to use / Critical insight / Workflow
规则层 -> SKILL.md 触发条件 / 执行顺序 / 输出格式
运行层 -> Python | 读取文件、写入/修改文件 | 会按任务需要访问外部网络
安全层 -> 通常不需要额外 API Key + 小任务验证 + diff / 日志复核
输出层 -> 可复制结果 + 检查清单 + 下一步迭代
} Hugging Face Daily Papers
Fetch Hugging Face Daily Papers for a target date, extract per-paper full metadata from the embedded Svelte hydration JSON, classify papers by domain, and save the result as a Markdown + JSON report.
When to use
Use this skill when the user asks to:
- 抓取某天的 Hugging Face 每日论文列表
- 获取某天 Daily Papers 的标题、点赞量、arXiv ID、评论数、GitHub Star 等
- 按领域分类输出论文清单
- 将结果保存为 Markdown 文档
Critical insight
The HF Daily Papers page is a Svelte SPA. The server-rendered HTML does not contain human-readable paper data. Instead, all paper metadata lives in a single JSON blob inside a data-props attribute:
<div class="SVELTE_HYDRATER contents"
data-target="DailyPapers"
data-props='{"dailyPapers":[{...21 papers...}], ...}'>
Do NOT use web_fetch for this page. The Markdown/text conversion loses arXiv IDs, author links, and structured metadata. Instead, use download_file to get the raw HTML, then extract JSON with Python (see below).
Workflow
1) Determine the target date
- Default to yesterday if no date specified.
- The page uses format:
https://huggingface.co/papers/date/YYYY-MM-DD - Daily Papers are updated on workdays only. If the user requests a weekend date, warn that the list may not have been updated.
2) Download raw HTML
Use download_file (NOT web_fetch):
download_file(
url="https://huggingface.co/papers/date/YYYY-MM-DD",
dest="hf_papers_YYYY-MM-DD.html",
overwrite=true
)
This preserves the full DOM including the data-props JSON blob.
3) Extract JSON with Python
Use the bundled script or the following inline Python pattern:
import json, re
with open("hf_papers_YYYY-MM-DD.html", "r", encoding="utf-8") as f:
html = f.read()
# Locate the JSON blob inside data-props
dp_start = html.rfind('data-props="', 0, html.find('"dailyPapers"') + 50000)
json_start = dp_start + len('data-props="')
json_end = html.find('"><section', json_start)
json_str = html[json_start:json_end]
json_str = json_str.replace(""", '"').replace("&", "&")
data = json.loads(json_str)
papers = data["dailyPapers"]
4) Extract per-paper fields
From each entry in data.dailyPapers[i]:
| Field | Path | Example |
|---|---|---|
| arXiv ID | paper.id |
"2605.00658" |
| Title | title (or paper.title) |
"UniVidX: A Unified..." |
| Upvotes | paper.upvotes |
71 |
| Comments | numComments |
2 |
| GitHub Stars | paper.githubStars |
52 (may be absent) |
| Organization | organization.name |
"ByteDance" (may be absent) |
| HF URL | https://huggingface.co/papers/{paper.id} |
— |
| arXiv URL | https://arxiv.org/abs/{paper.id} |
— |
| AI Summary | paper.ai_summary |
Short one-liner |
| Keywords | paper.ai_keywords |
Array of strings |
| Authors | paper.authors[].name |
Array |
| Author participation | isAuthorParticipating |
true/false |
| Submitted by | submittedBy.fullname |
"taesiri" |
| Thumbnail | thumbnail |
Image URL |
5) Save output files
Save both a structured JSON and a polished Markdown report:
| File | Format | Purpose |
|---|---|---|
hf_daily_YYYY-MM-DD.json |
JSON | Machine-readable, full metadata |
hf_daily_YYYY-MM-DD.md |
Markdown | Human-readable report, domain-classified |
6) Classify by domain
Use the paper's primary contribution to assign one main domain. Common domains include:
- Agent / AI Systems / Tool Use / RAG
- Reinforcement Learning / Reward Modeling
- LLM Training / Distillation / Inference Efficiency / Safety
- Vision-Language / Multimodal / Robotics
- 3D / Graphics / World Models / Video Generation
- Memory / Cognitive Architectures
- Continual / Incremental Learning
- Healthcare / Biology
- Benchmarks / Evaluation
Each paper gets exactly one domain. Total entries must equal the total paper count.
Output structure (Markdown)
# 🤗 Hugging Face Daily Papers — YYYY-MM-DD
**共 N 篇论文** | 数据来源: https://huggingface.co/papers/date/YYYY-MM-DD
| # | 👍 | arXiv ID | 论文标题 | 💬 | ⭐ | 机构 |
|:--:|:--:|:--|------|:--:|:--:|------|
| 1 | 71 | `2605.00658` | [UniVidX: ...](https://arxiv.org/abs/2605.00658) | 2 | 52 | — |
---
## 论文速览
### 1. Paper Title
**arXiv:** `2605.xxxxx` | **👍 71** | **🏢 Organization**
> AI summary one-liner
**关键词:** kw1 · kw2 · kw3
---
Quality bar
- Do NOT invent arXiv IDs. Every ID must come from the JSON.
- Do NOT use
web_fetchfor this task — usedownload_file+ Python. - Verify the paper count:
len(papers)must equal 21 (or the day's actual count). - Keep each overview concise and factual.
- Preserve the original paper title verbatim.
- Cross-check: the total entries in the Markdown table must equal the paper count in the header.
Update cadence
- Hugging Face Daily Papers are typically updated on workdays only.
- If the user requests a weekend date, first check whether a date page exists. If not, report that the list may not have been updated that day and ask whether to use the previous workday.
Bundled resources
- Reference:
references/extraction-notes.md— detailed extraction method and edge cases
Read references/extraction-notes.md for the full Python extraction script and troubleshooting guide.
Source: ChangweiXu/PyClaego — distributed by TomeVault.
先判断是否适合
作者设计意图
作者的方法与取舍
边界和复核