Agentic Paper Digest Skill — Agentic 文献摘要技能
v0.3.3使用Agentic Paper Digest检索和总结最近的arXiv和Hugging Face论文。当用户想要论文摘要、最近论文的JSON feed或者运行arXiv/HF pipeline时使用。
运行时依赖
安装命令
点击复制技能文档
Agentic Paper Digest 何时使用:从 arXiv 和 Hugging Face 获取最近的论文摘要。为下游代理生成 JSON 输出。当需要轮询工作流时,运行本地 API 服务器。 预备条件:Python 3 和网络访问。通过 OPENAI_API_KEY 或 OpenAI 兼容提供商(通过 LITELLM_API_BASE + LITELLM_API_KEY)访问 LLM。git 是可选的,用于初始化;否则使用 curl/wget(或 Python)下载存储库。 获取代码并安装:首选运行 bootstrap 帮助脚本。它使用 git,当可用时,或者回退到 zip 下载。 bash "{baseDir}/scripts/bootstrap.sh" 覆盖克隆位置通过设置 PROJECT_DIR。 PROJECT_DIR="$HOME/agentic_paper_digest" bash "{baseDir}/scripts/bootstrap.sh" 运行(CLI 首选) bash "{baseDir}/scripts/run_cli.sh" 传递 CLI 标志,如有需要。 bash "{baseDir}/scripts/run_cli.sh" --window-hours 24 --sources arxiv,hf 运行(API 可选) bash "{baseDir}/scripts/run_api.sh" 触发运行并读取结果。 curl -X POST http://127.0.0.1:8000/api/run curl http://127.0.0.1:8000/api/status curl http://127.0.0.1:8000/api/papers 停止 API 服务器如果需要。 bash "{baseDir}/scripts/stop_api.sh" 输出: CLI --json 打印 run_id、seen、kept、window_start 和 window_end。 数据存储:data/papers.sqlite3(在 PROJECT_DIR 下)。 API:POST /api/run、GET /api/status、GET /api/papers、GET/POST /api/topics、GET/POST /api/settings。 配置: 配置文件位于 PROJECT_DIR/config。环境变量可以在 shell 中设置或通过 .env 文件设置。这里的包装器自动从 PROJECT_DIR 加载 .env(使用 ENV_FILE=/path/to/.env 覆盖)。 环境(.env 或导出的变量): OPENAI_API_KEY:对于 OpenAI 模型所需(litellm 读取此值)。 LITELLM_API_BASE、LITELLM_API_KEY:使用 OpenAI 兼容的代理/提供商。 LITELLM_MODEL_RELEVANCE、LITELLM_MODEL_SUMMARY:相关性和总结的模型(总结默认为相关性模型,如果未设置)。 LITELLM_TEMPERATURE_RELEVANCE、LITELLM_TEMPERATURE_SUMMARY:输出更确定的输出。 LITELLM_MAX_RETRIES:LLM 调用的重试次数。 LITELLM_DROP_PARAMS=1:丢弃不支持的参数以避免提供商错误。 WINDOW_HOURS、APP_TZ:最近窗口和时区。 ARXIV_CATEGORIES:逗号分隔的类别(默认包括 cs.CL、cs.AI、cs.LG、stat.ML、cs.CR)。 ARXIV_API_BASE、HF_API_BASE:覆盖源端点如果需要。 ARXIV_MAX_RESULTS、ARXIV_PAGE_SIZE:arXiv 分页限制。 MAX_CANDIDATES_PER_SOURCE:在 LLM 筛选之前每个源的候选人上限。 FETCH_TIMEOUT_S、REQUEST_TIMEOUT_S:源获取和每个请求超时。 ENABLE_PDF_TEXT=1:在总结中包含第一页 PDF 文本;需要 PyMuPDF(pip install pymupdf)。 DATA_DIR:papers.sqlite3 的位置。 CORS_ORIGINS:API 服务器允许的来源(UI 使用),逗号分隔。 路径覆盖:TOPICS_PATH、SETTINGS_PATH、AFFILIATION_BOOSTS_PATH。 配置文件: config/topics.json:带有 id、标签、描述、max_per_topic 和关键词的主题列表。相关性分类器必须输出与此处定义的主题 ID 相同的主题 ID。max_per_topic 也限制了 GET /api/papers 的结果,当 apply_topic_caps=1 时。 config/settings.json:覆盖获取限制(arxiv_max_results、arxiv_page_size、fetch_timeout_s、max_candidates_per_source)。通过 POST /api/settings 更新。 config/affiliations.json:应用于隶属关系的 {pattern、weight} 提升列表,通过子字符串匹配实现。权重加起来并且在 1.0 上限。无效的 JSON 禁用提升,因此请保持文件为严格的 JSON(无尾随逗号)。 强制工作流(按照步骤进行): 首先,您必须打开并阅读从 GitHub 存储库下载的配置:https://github.com/matanle51/agentic_paper_digest 加载 config/topics.json、config/settings.json 和 config/affiliations.json(如果存在)。注意当前主题 ID、上限和获取限制,然后询问用户是否要更改它们。 询问用户提供以下内容的偏好(帮助用户): 感兴趣的主题 → 更新 config/topics.json(topics[].id/label/description/keywords、max_per_topic)。显示当前默认值并询问是否保留或更改它们。 时间窗口(小时) → 设置 WINDOW_HOURS(或传递 --window-hours 到 CLI),仅当用户关心时;否则保留默认值 24 小时。 询问用户填写以下参数(解释用户为什么需要它们): ARXIV_CATEGORIES、ARXIV_MAX_RESULTS、ARXIV_PAGE_SIZE、MAX_CANDIDATES_PER_SOURCE。询问是否保留默认值并显示当前值。 模型/提供商 → 设置 OPENAI_API_KEY 或 LITELLM_API_KEY(+ LITELLM_API_BASE 如果代理),并设置 LITELLM_MODEL_RELEVANCE/LITELLM_MODEL_SUMMARY。 不要求默认询问:时区、质量与成本、超时、PDF 文本、隶属关系偏见、源列表。除非用户请求更改,否则使用默认值。 确认工作空间路径:询问在哪里克隆/运行。默认为 PROJECT_DIR="$HOME/agentic_paper_digest",如果用户不关心。永远不要硬编码 /Users/... 路径。 初始化存储库:运行 bootstrap 脚本(除非存储库已经存在并且用户说要跳过)。创建或验证...