关于 parse-cfp
parse-cfp 面向需要核实特定会议及年份要求的论文作者。它逐页获取 CFP 内容,生成带来源记录且通过结构校验的 YAML 会议信息,并整理要求摘要。
主要功能
- 01逐页获取 CFP 内容
- 02提取截止日期与分轨要求
- 03生成带来源记录的 YAML
- 04按结构定义验证配置
- 05整理投稿要求摘要
适用场景
- 01创建新会议年份的配置
- 02根据当前 CFP 复核已有配置
- 03投稿前查找截止日期和页数限制
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ shaishavmaisuria/ research-paper-lifecycle-skills --skill parse-cfp安装后在 Claude Code 中输入/parse-cfp确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/extraction-guide.mdtemplates-and-systems.mdscripts/fetch_cfp.py详细介绍
解析 CFP
将实时征稿启事转换为机器可读的会议信息配置文件,供本仓库其余部分使用。输出文件为符合 venues/schema.yml 的 venues/conferences/<venue>-<year>.yml,以及一张便于阅读的要求卡片。
下游使用者:preflight-check、tailor-to-venue、write-rebuttal、prepare-camera-ready、select-venue。
适用场景
- 用户粘贴了征稿启事、作者指南或投稿说明的网址。
- “VENUE YEAR 有哪些要求/截止日期/页数限制?”
venues/conferences/中缺少某个配置文件,或其中的年份已过期。
输入
- 征稿启事 URL。如果用户只提到会议信息,请先检查
venues/conferences/<venue>-<year>.yml中的cfp_url;较早年份的配置文件通常会链接到发布新征稿启事的会议网站。 venues/schema.yml——编写配置文件前先阅读;它定义了所有字段以及必需的verified:来源信息块。- 对应的
venues/families/<family>.yml,用于获取系列级默认值。 CONTACT_EMAIL环境变量(用于礼貌抓取时设置 User-Agent;若未设置,脚本会提示输入)。
流程
-
限定一个会议和一个年份。 阅读
venues/schema.yml。如果该会议年份的档案已存在,将其视为需要重新核验的提示,绝不能视为事实依据。 -
获取征稿页面。 运行:
python3 scripts/fetch_cfp.py "<cfp-url>"此脚本每次调用只获取一个页面;对每个主机将请求频率限制为每秒 1 次;遇到 HTTP 429 时采用指数退避;将内容缓存到
.cache/(已加入 gitignore),缓存有效期为 24 小时;并输出易读文本,链接目标以[url]的形式显示。失败时会以非零状态码退出,并显示明确的错误消息。之后只获取你确实需要的少量后续页面——各分会场的投稿页面、截止日期页面、终稿/作者工具包页面——每个页面各调用一次,绝不抓取整个网站。- 退出码 3 = 非 HTML 内容(PDF 征稿启事、JSON API 响应);正文会保存到
.cache/下,请直接读取该文件。 - 出现“提取到的文本极少”警告 = 页面由 JavaScript 渲染;请让用户粘贴页面文本,并将档案标记为
needs-verification。绝不要凭记忆填补缺失内容。
- 退出码 3 = 非 HTML 内容(PDF 征稿启事、JSON API 响应);正文会保存到
-
核实年份。 提取信息前,确认页面标题和日期与指定年份一致;过时的征稿启事常会保留在几乎相同的 URL 上。年份不符:告知用户并查找当前页面。
-
按照 references/extraction-guide.md 提取每个架构字段。 以下要求不可妥协:
- 数字(页数限制、字符数限制、日期)只能取自已获取的文本;缺失的信息 =
null+ 说明性备注。绝不推断,绝不凭记忆补充。 - 页数限制必须注明哪些内容不计入(参考文献?附录?清单?),并在分会场的
notes中逐字引用征稿启事的相关句子。 - 截止日期:记录注明的时区——AoE 很常见,但并非通用(SIGSPATIAL 使用 Pacific Time)。在大多数会议中,摘要注册的截止日期是单独设定的,且更早。
llm_policy和dual_submission:必须逐字引用,绝不能改述。
- 数字(页数限制、字符数限制、日期)只能取自已获取的文本;缺失的信息 =
-
根据 references/templates-and-systems.md 规范化模板调用、投稿系统、rebuttal 格式和终稿要求。 根据系列会议表推导
\documentclass选项(仅双盲/三盲会议添加review,anonymous),并在调用方式是根据系列会议推导、而非征稿启事中明确列出时添加注释。 -
将 YAML 写入
venues/conferences/<venue>-<year>.yml:id与文件名(不含扩展名)相同;family引用现有的系列会议文件。- 填写必填的
verified:块——使用今天的日期、列出所有已获取的 URL(并注释各 URL 提供了哪些信息),以及如实填写confidence:(仅当所有关键信息均来自今天获取的实时页面时,才能标记为verified-live)。
-
验证。 在仓库根目录运行
python3 tools/validate_venues.py(需要 PyYAML;如果无法使用,请根据venues/schema.yml逐字段手动检查文件)。 -
向用户展示要求摘要表:截止日期(含时区)、各分会场的页数限制及不计入的内容、盲审级别、模板调用、投稿 URL、rebuttal 格式和 LLM 政策。最后附上核验声明:"档案提取自 <cfp_url>,日期为 。投稿前请对照实时征稿启事重新核实截止日期和页数限制——征稿启事可能在周期中途变更,过时的页数限制可能导致论文被直接拒稿。"
操作示例
用户粘贴 https://sigspatial2026.sigspatial.org/research-submission.html。
抓取后,Research 赛道部分写道:“论文限 10
页(不含参考文献),参考文献后最多可额外增加 2 页用于附录”,截止时间写明为 “太平洋时间晚上 11:59”,投稿链接指向 easychair.org/conferences/?conf=acmsigspatial2026。
提取结果如下:
id: sigspatial-2026
deadlines:
abstract: 2026-05-29
paper: 2026-06-05
timezone: PT # CFP says "Pacific Time", NOT AoE — recorded verbatim
tracks:
- name: Research
page_limit: 10
page_limit_excludes: [references, appendix]
notes: >
CFP verbatim: "papers are limited to 10 pages (excluding references),
with up to 2 additional pages after the references ... for appendices."
review:
blind: single # CFP lists author names — single, not double
submission_system: easychair
verified:
date: 2026-06-21
source_urls:
- https://sigspatial2026.sigspatial.org/research-submission.html # limits, deadlines, blind
confidence: verified-live
这个示例揭示了两个容易踩的坑,指南也会处理这两点:时区是太平洋时间,
而非默认的 AoE;页数限制不包括参考文献和附录——明确记录这一点,以便
preflight-check 强制检查。在提取任何信息之前,先确认页面标题中的年份为 2026。
输出
venues/conferences/<venue>-<year>.yml— 符合架构、按年份版本化, 并附有来源信息。- 行内要求卡摘要,并附上重新核验警告。
防护措施
- 绝不编造截止时间、页数限制或政策。宁可使用
null并备注,也不要猜测。 - 逐字引用大模型使用和双重投稿政策;改写可能会颠倒合规含义。
- 仅允许 GET。绝不代表用户登录、注册或向任何投稿系统提交内容。
- 绝不编造引用。本技能仅生成会议信息;如果下游需要论文参考文献,应交由
verify-citations处理。 - 每次脚本调用只处理一个页面;不得批量抓取。缓存位于
.cache/,且不纳入 git——不要将抓取的 CFP 文本提交到仓库。 - 最终答复中始终包含根据当前 CFP 重新核验的提示。
来源核验(强制)
本技能会生成会议信息,因此来源核验无一例外地必须执行:
- 会议信息由用户选择;按需构建其规则,绝不依赖记忆或往年信息。
- 搜索网络,找到当前的 CFP/作者须知页面并阅读一手来源——绝不陈述未打开查看的搜索摘要中的事实,也绝不在未通过官方网站确认前引用截止日期汇总网站的信息。
- 针对每项可能导致编辑部直接拒稿的事实(截止时间、页数限制及排除项、匿名级别、模板、投稿系统)与第二个来源进行核对;如果来源不一致,应明确指出冲突,不要自行选择其中一个。
- 在资料配置的
verified.source_urls中,为每项事实记录可点击的参考链接和日期;只有在有来源支持时,才能将confidence设为verified-live/corroborated,否则设为needs-verification。没有链接的事实应标记为未经核验,绝不可作为确定信息陈述。
随附文件
- references/extraction-guide.md — 逐字段提取规则、提示短语和陷阱清单。
- references/templates-and-systems.md — 按类别整理的模板调用方式、投稿系统 URL 模式、答辩分类法和终稿规范。
scripts/fetch_cfp.py— 礼貌抓取单页的工具(运行此脚本;不要手动重新实现抓取功能)。