mcpField
P
prepare-artifacts

prepare-artifacts

github.com/shaishavmaisuria开发5790 次安装4 天前更新
代码仓库

关于 prepare-artifacts

prepare-artifacts 是面向研究者的技能,用于准备代码仓库以参加会议制品评审。它规划并检查打包、匿名化、文档和归档准备情况,但不会运行实验或声称结果可复现。

主要功能

  1. 01生成制品准备清单与打包计划
  2. 02检查文件完整性与整洁度
  3. 03提供双盲匿名化指导
  4. 04核实会议徽章与截止日期
  5. 05起草 README、附录和检查表

适用场景

  1. 01为已录用论文准备代码制品评审
  2. 02为双盲评审匿名化代码仓库
  3. 03按评审要求检查仓库文件
  4. 04规划最终归档提交

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/shaishavmaisuria/research-paper-lifecycle-skills --skill prepare-artifacts

安装后在 Claude Code 中输入/prepare-artifacts确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
archival-hosting.md
badging-standards.md
venue-artifact-rails.md
scripts/
badge_advisor.py
check_artifact.py
venue_profile.py

详细介绍

准备工件

将研究代码库整理成可提交、符合徽章要求的可复现工件。在大多数系统、编程语言与机器学习会议上,工件评审都是录用后的独立环节,有单独的截止日期、附录,以及每年每个会议都可能变化的徽章。本技能会构建提交包(README、附录、运行说明、匿名化仓库、归档存储指南),生成工件就绪检查清单和打包计划,并检查工件目录是否达到评审者实际核查的要求。

它不会运行作者的实验,也不会声称结果已成功复现;它只负责准备和检查提交包,并明确告知作者评审者会手动核查哪些内容。

适用场景

  • “我的论文已录用——如何参加工件评审/获得徽章?”
  • “为提交打包/清理代码。”/“为评审匿名化我的仓库。”
  • “什么是工件附录/Artifacts Available/Functional/Reusable?”
  • “需要 Zenodo DOI 吗?概念 DOI 和版本 DOI 有什么区别?”/“Software Heritage 呢?”
  • “填写 NeurIPS 代码/可复现性检查表或 ACL 复现检查表。”
  • “对于这个徽章,Reproduced 和 Replicated 有什么区别?”
  • 与 prepare-camera-ready 一起使用(去匿名化 + 最终归档存储有重叠)。

输入

  1. 工件目录——要打包的代码/数据仓库(路径)。
  2. 目标会议 + 赛道,最好还提供 venues/conferences/<v>-<year>.yml (提供评审的盲审级别;如果缺少该文件,可通过 parse-cfp 创建)。 会议资料不会记录工件赛道提供哪些徽章,也不会记录单独的截止日期——这些信息需要实时获取(步骤 1)。
  3. 论文的主要主张(用于制定逐项主张的复现计划),以及工件是用于评审阶段(通常采用双盲)还是用于最终 归档存储。这会改变所有安排(匿名 ZIP 与版本 DOI)。

流程

  1. 获取会议当前的工件征稿启事——必须实时获取。 徽章设置会随会议逐年变化(OSDI '26 仅评审 “Artifacts Available”;SOSP '26 则提供全部三种徽章)。记忆和去年的信息必然已经过时;请实时核实。根据当前征稿启事确认:本届提供哪些徽章、单独的工件截止日期、归档存储要求、附录模板/篇幅,以及盲审模式。可先参考以下快照(务必重新核实,不要直接采信): references/venue-artifact-rails.md。 将选定的徽章目标和工件截止日期记录到 .paper-memory/decisions.md。

  2. 确认徽章分类及年代陷阱。 使用 python3 scripts/badge_advisor.py --badge <name> 打印 ACM v1.1 的类别/等级,尤其要留意Reproduced/Replicated 的用词对调:ACM 于 2020-05-14 调换了这两个术语,因此 2020 年之前的徽章含义相反(使用 --era pre-2020)。复现绝非要求逐位完全一致——结果必须在不改变论文主张的容差范围内一致。背景说明见: references/badging-standards.md。

  3. 根据评审者核查的要求检查工件目录:

    python3 scripts/check_artifact.py <artifact_dir> \
        --venue venues/conferences/<v>-<year>.yml [--blind double]
    

    报告会列出文件路径,并检查:机器学习代码完整性的 5 项(依赖规范、训练代码、评估代码、预训练模型或获取模型的说明,以及包含结果表格 + 精确复现命令的 README);归档就绪情况(仅 GitHub 与 DOI/SWHID);双盲匿名化(作者姓名/电子邮件、可识别身份的 URL、.git 目录、PDF/附录元数据)——依据会议的盲审级别或 --blind;以及基本规范(LICENSE、上传大小上限)。选项:--json、--strict、--zip-cap-mb N、--venues-dir。退出码:0 表示通过,1 表示有错误,2 表示用法错误。该检查只覆盖文件——无法证明构建能够运行、结果能够复现,或 DOI 可以解析。

  4. 与作者一起构建投稿会议要求的材料包(而不是替作者构建):

    • README — 概述、确切的依赖安装说明、重现每项结果的精确命令、结果表、硬件和运行时要求,以及许可证。(ML Code Completeness 第 5 项。)
    • 工件附录 — 对于 USENIX 系列的 Phase 2,准备一份不超过 3 页的 PDF(使用其 LaTeX 模板),说明硬件/软件/配置、论文的主要论点,以及每项论点的重现步骤和结果比较方法(“偏差在 X% 以内即视为一致”)。对于 SIGMOD ARI,加入实验脚本和绘图脚本(要求“行为相似”,而非数字完全一致)。
    • 清单 — 准确填写 NeurIPS 论文清单/代码政策或 ACL 的“Responsible NLP Research”清单:诚实填写“否”/“不适用”并说明理由是安全的;缺失或误导性填写会导致桌面拒稿(ARR 自 2024 年 12 月起会因误导性填写而桌面拒稿)。不要为了填“是”而弄虚作假。
  5. 为双盲评审匿名化(如果处于评审阶段)。提供不含 .git 的匿名化 ZIP,或通过 Anonymous GitHub(anonymous.4open.science)提供代理,并列出所有需要清除的身份识别信息。检查 PDF/附录元数据、致谢、资助信息和自引措辞——规则与论文相同(anonymize-paper)。详情见: references/archival-hosting.md。

  6. 规划归档存放。 对于“Artifacts Available”,永久副本必须存放在归档托管平台上——USENIX 系列不接受 GitHub/个人网站。最终版本使用 Zenodo 版本 DOI(仅在评估期间可使用 concept DOI),和/或使用 Software Heritage SWHID(内在标识符,ISO/IEC 18670);两者可以互补。添加 CITATION.cff/codemeta,以便归档平台生成引文元数据。在最终定稿阶段取消匿名化,并存放最终版本(prepare-camera-ready)。

  7. 将工件就绪清单和打包计划写入 paper-workspace/submission/artifact-readiness.md,并在 paper-workspace/INDEX.md 中追加一行。按严重程度排序;注明每项发现的来源(lint、当前 CFA、徽章分类法)。反复运行 lint,直到文件级检查项全部通过。

输出

  • 工件就绪清单(PASS / PASS-WITH-WARNINGS / FAIL,注明文件路径)以及打包计划:目标徽章(依据当前 CFA)、托管方式(匿名评审副本 + 最终版本 DOI/SWHID)、需要弥补的完整性缺口、需要填写的附录/清单,以及单独的工件截止日期。写入 paper-workspace/submission/。
  • README/附录/清单的草稿内容,由作者编辑并负责。

根据学科调整

此处的徽章分类法针对 ACM/USENIX/SIGMOD/ETAPS/ML 会议。其他领域应采用本领域会议的工件/数据可用性规则(例如期刊的“数据可用性声明”、FAIR 数据存储库)——完整性和匿名化 lint 会检查目录而非学科,因此仍然适用。

防护原则

  • 实时重新核实举办方当前的 artifact 规则(步骤 1 不可省略)。 各举办方每年的徽章选项都会变化;切勿凭记忆或去年的信息作假设。刚获取信息后最容易过度自信——请重新核对主要的 CFA。
  • 切勿声称结果可复现,也切勿要求逐位精确复现。 ACM/SIGMOD/ETAPS 要求结果在不改变论文主张的容差范围内达成一致。这项技能用于准备和检查材料包;它不会运行实验,也不会评判科学性。
  • Reproduced/Replicated 这两个术语在 2020 年对调了——解读它们之前,请通过 badge_advisor.py --era 检查徽章所属时期。
  • 归档托管有具体要求: 对 USENIX 系列而言,GitHub URL 不算“Available”——请引导作者提供 Zenodo 版本 DOI / SWHID。
  • 注意匿名化: 对于双盲评审,在任何评审阶段上传之前,清除 .git、姓名、电子邮件、URL 和元数据。
  • 清单要准确,不能弄虚作假: 诚实填写“否”/“不适用”并说明理由是安全的;误导性申报会被编辑部直接拒绝。
  • 协助,不代办: 切勿存入材料、切勿提交至 artifact 评估系统,也切勿代作者填写清单表格。负责准备、检查并解释——由作者点击提交。
  • 引用时最多展示被标记的问题行/路径;切勿将作者的 artifact 打包进此仓库。

记忆

使用共享的 .paper-memory/ 约定(完整规范: paper-memory-convention.md)。

  • 开始时: 阅读 lessons.md(不要重复标记已修复的问题;优先指出任何 recurring 打包习惯,例如“你经常会提交 .git 目录”),并阅读 decisions.md(选定的举办方/徽章目标和 artifact 截止日期)。
  • 结束时: 将目标徽章和 artifact 截止日期追加到 decisions.md,并在 lessons.md 中为每项值得记住的发现添加一条带日期的记录,采用共享格式 - [YYYY-MM-DD] (prepare-artifacts | <scope>) issue -> recommendation(使用 reflect-and-improve 的 reflect_log.py append,它会去重并添加日期)。
  • 按需创建 .paper-memory/,并提出将其添加到项目的 .gitignore。仅保留在本地;切勿上传它或将其复制到此仓库。

评论

支持 Markdown