/daily-arxiv
运行或管理每日论文推荐 feed。裸
/daily-arxiv表示“现在跑一次今天的推荐”;GitHub Actions 只是同一条 pipeline 的无人值守调度器。
按需读取 reference:
references/recommendation-and-ingest-policy.md— evidence、LLM 决策 schema、置信度门控和 auto-ingest 约束references/automation-scaffold.md— GitHub Actions setup/status、secrets、artifacts 与失败行为
Commands
/daily-arxiv:现在跑一次推荐。如果缺少config/daily-arxiv.yml,从 wiki 推断默认值后继续。/daily-arxiv setup:从config/daily-arxiv.yml.example创建或修复配置,检查.github/workflows/daily-arxiv.yml,并说明需要的 secrets。/daily-arxiv status:检查 config、workflow、schedule、mode、API/e-mail secrets 可用性,以及最近 artifacts。/daily-arxiv disable:把 config 中的schedule.enabled设为false,或告诉用户需要怎样修改;手动/daily-arxiv仍可使用。
Inputs
--mode inform|auto-ingest:默认inform。不要从 repo 状态推断auto-ingest。--hours N:拉取最近 N 小时论文;config/default 为 24。--categories <cat...>:覆盖配置中的 arXiv 分类。--max-recommendations N:digest 中最多展示的论文数;config/default 为 10。--max-auto-ingest N:高置信 auto-ingest 上限;config/default 为 1。--send-email true|false:workflow/setup 用的 SMTP 发送偏好。
Setup Workflow
由 /daily-arxiv setup 触发。幂等 —— 在健康的 repo 上重跑是 no-op。
Config:如果缺少
config/daily-arxiv.yml,从config/daily-arxiv.yml.example拷贝。如果已存在,则保持不动(用户的偏好是持久的)。Workflow 文件:确认
.github/workflows/daily-arxiv.yml存在。如果缺失,引导用户查阅docs/daily-arxiv-deployment.md并停止 —— 从零重建该 workflow 超出 setup 的范围。Workflow env 暴露(自动补丁):在
.github/workflows/daily-arxiv.yml中,定位daily-arxiv:job 的env:块。用 Edit 工具确保下面两行作为HAS_CLAUDE_CODE_AUTH的同级存在:SEMANTIC_SCHOLAR_API_KEY: ${{ secrets.SEMANTIC_SCHOLAR_API_KEY }} DEEPXIV_TOKEN: ${{ secrets.DEEPXIV_TOKEN }}- 如果两行都已存在,什么都不做。
- 如果只缺一行,追加缺失的那一行。
- 如果
env:块根本不存在(较旧的 workflow),在该 job 下插入它,包含这两行以及已有的HAS_CLAUDE_CODE_AUTH/HAS_REVIEW_LLM标志。不要改动任何其他 step。 - 任何补丁之后,告诉用户改了什么,并提醒他们 commit。
Secrets 检查:列出用户已配置了哪些 ——
ANTHROPIC_API_KEY或CLAUDE_CODE_OAUTH_TOKEN、SEMANTIC_SCHOLAR_API_KEY、DEEPXIV_TOKEN,以及可选的 SMTP secrets。可用时用gh secret list;否则指导用户自己运行。对任何缺失但必需的 secret,给出他们需要的确切gh secret set命令。Summary:汇报创建了什么、打了什么补丁,以及用户还需要做什么(安装 GitHub App、设置缺失的 secrets、用一次
gh workflow run daily-arxiv.yml验证)。
Run Workflow
解析 Python 解释器并准备 deterministic context:
python3 tools/daily_arxiv.py prepare --wiki-root wiki --out .daily-arxiv/run/recommendation-context.json --out-feed .daily-arxiv/run/feed.json读取
.daily-arxiv/run/recommendation-context.json。基于 arXiv、wiki、Semantic Scholar、DeepXiv evidence,用 LLM 判断推荐质量。写出.daily-arxiv/run/llm-decisions.json,字段包括decision、confidence、score、rationale、wiki_connections、signals_used。在 CI 的 inform mode 中,可用 OpenAI-compatible review LLM 执行:python3 tools/daily_arxiv.py recommend-llm --context .daily-arxiv/run/recommendation-context.json --out .daily-arxiv/run/llm-decisions.json如果 mode 是
auto-ingest,只能使用 Claude Code runtime:选择decision: ingest且confidence: high的论文,遵守max_auto_ingest,并按顺序调用/ingest <arxiv-url>。不要手写 wiki 或 graph 文件。第三方 LLM 只用于推荐,不能 auto-ingest。生成 digest:
python3 tools/daily_arxiv.py finalize --context .daily-arxiv/run/recommendation-context.json --decisions .daily-arxiv/run/llm-decisions.json --out-md .daily-arxiv/run/digest.md --out-json .daily-arxiv/run/digest.json汇报 strong recommendations、maybe interesting、重复跳过项、degraded signals、auto-ingest 结果,以及 setup/status 提示。
Wiki Interaction
读取 wiki/index.md、wiki/papers/、wiki/topics/、wiki/concepts/、wiki/methods/、wiki/ideas/、wiki/log.md 来构建兴趣 profile 和去重。
inform 运行只写 .daily-arxiv/ 下的 scratch 文件。auto-ingest 中所有持久 wiki/raw 变更都必须来自 /ingest。
Relationships
/discover回答用户主动提出的 next-read 请求,可来自 anchors、topic 或 wiki 状态;它永不 ingest。/daily-arxiv监听 fresh arXiv stream,可手动或每日通知。/ingest是唯一论文纳入路径。/daily-arxiv只能在显式auto-ingestmode 下调用它。