一键导入
paperharness
Use this skill to generate an agent-operable reproduce kit from a research paper and its GitHub repository using PaperHarness.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Use this skill to generate an agent-operable reproduce kit from a research paper and its GitHub repository using PaperHarness.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
| name | paperharness |
| description | Use this skill to generate an agent-operable reproduce kit from a research paper and its GitHub repository using PaperHarness. |
Use this skill when the user provides a research paper and a repository and asks to reproduce, audit, inspect, plan, or evaluate experiments.
PaperHarness does not reproduce papers. PaperHarness generates the harness that lets agents reproduce papers responsibly.
This skill teaches the agent how to use the PaperHarness generator.
PaperHarness takes:
and generates:
reprokit.yamlskill/SKILL.mdrepro CLIexperiment_plan.mdreport_template.mdmissing_info.mdCheck whether PaperHarness is installed:
paperharness --help
From a source checkout the equivalent is PYTHONPATH=src python -m paperharness.cli --help.
If the user gave a remote GitHub URL and remote cloning is not yet available in the installed version, clone the repository into a local working directory first.
Extract paper facts (preferred for PDFs). Run the deterministic prep step:
paperharness extract-text <paper-path> --out paper-extract
This produces in paper-extract/:
paper.md — markdown via Marker if paperharness[parse] is installed, otherwise raw PyMuPDF text. For .txt / .md inputs the original text is copied through.paper.sections.json — GROBID-detected title/abstract/authors/sections, only if --grobid-url or $GROBID_URL is set.extraction_prompt.md — a prompt instructing you (the calling agent) to emit a strict JSON object describing the paper's facts.extraction_schema.json — the JSON schema the output must validate against.Fill the extraction JSON yourself, using your own model. Read paper-extract/extraction_prompt.md, then emit one JSON object conforming to extraction_schema.json. Save it as paper-extract/extraction.json. Rules:
results[*].source_span must be a verbatim quote from paper.md.confidence <= 0.4 for results you infer rather than read directly.null for fields the paper does not state; never invent values.Build the reproduce kit with the extraction:
paperharness build \
--paper <paper-path> \
--repo <repo-path> \
--extraction paper-extract/extraction.json
If you skip the extraction step, paperharness build falls back to its regex extractor; the generated kit will mark extraction_method: regex and may report No paper result candidates found. as missing info. That is the correct behavior — uncertainty is preferable to fabrication.
Validate the generated kit:
paperharness validate paperharness-output
Inspect the generated paper/repo-specific skill:
cd paperharness-output/skill
python scripts/repro.py inspect
python scripts/repro.py list
Run smoke tests before any full experiment:
python scripts/repro.py smoke
Do not run full training unless the user explicitly asks for it.
symbol_mappings as hypotheses, not proof.implementation_status: partial_candidate as a warning that the released repository may only implement part of the paper experiment.implementation_status: missing as a blocker for full reproduction.Every report must include:
After generating a kit, the generated paperharness-output/skill/SKILL.md becomes the source of truth for operating that specific paper/repository reproduction workflow.