Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add phanghonghao/THU-Awesome-Skills --skill paper-reprogit clone --depth 1 https://github.com/phanghonghao/THU-Awesome-SkillsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/phanghonghao/thu-awesome-skills/paper-repro)<a href="https://agentmods.dev/skills/phanghonghao/thu-awesome-skills/paper-repro"><img src="https://agentmods.dev/badge/skills/phanghonghao/thu-awesome-skills/paper-repro/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/phanghonghao/thu-awesome-skills/paper-repro"><img src="https://agentmods.dev/badge/skills/phanghonghao/thu-awesome-skills/paper-repro.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00146 | $0.02180 |
| Opus 5 | $0.00073 | $0.01090 |
| Sonnet 5 | $0.00029 | $0.00436 |
| Haiku 4.5 | $0.00015 | $0.00218 |
Grade B, and why
paper-repro scanned grade B with 2 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 11d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Asks for rootmediumPrivilege escalation
A mod that escalates privileges can change anything on the machine, not only the project.
- **禁止 sudo / 管理员权限**,禁止改系统环境变量、禁止写用户主目录之外。 Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
所有脚本网络层均为 **requests → curl → 警告退出**,对齐 `/web-search-fallback`,MCP 限流时仍可用。 How it starts
The opening of the file, as written. The whole thing — 138 lines — stays where its author put it; the contents beside it link to each section on GitHub.
paper-repro — 论文「总结 + 最小复现」
把一篇论文变成:一页可读总结 + 一个能在本机跑通的最小复现 + 完整复现成本估算。
编排 /paper-html-onepage(读懂)+ 本 skill 的复现脚本(跑通)。
⚠️ 安全约束(自动运行模式必备,优先于一切)
- 只跑最小规模:限定步数/epoch(默认 ≤ 几百步)、限定时长(默认 ≤ 几分钟)。
- 隔离运行:所有复现代码、数据、日志放进单独子目录,不污染其他项目。
- 禁止 sudo / 管理员权限,禁止改系统环境变量、禁止写用户主目录之外。
- 网络三思:允许浅克隆(
git clone --depth 1)和小数据下载;超过 ~200MB 的下载、需登录/付费的数据集、需 Kaggle/HF token 的资源,先问用户,不要自动拉取。 - 不确定就不跑:如果生成的代码看不清在干嘛、或需重型依赖(CUDA 专版、编译、root),只产出方案+脚本,不自动执行,把决定权交给用户。
输入解析(Stage 0)
接受四种输入,统一抽出 arXiv ID + 标题 + 输出目录:
- arXiv URL:
https://arxiv.org/abs/1706.03762或/pdf/...→ 抽 ID - arXiv ID:
1706.03762 - 关键词/标题:如
Attention Is All You Need - 本地 PDF:
--pdf <path>(复现阶段需要标题,从文件名/首页推断)
输出目录默认 <用户当前工作目录>/<论文短名>_repro/。
6 阶段编排流程
本 skill 是 agent 驱动 的:脚本(
scripts/)只做查找/分析/解析等机械活, 论文级的代码改写由你(agent)按方法论完成——因为每篇论文不同,无法写成单一固定脚本。 这与/web-search-fallback「指令 + 可复用片段」的设计哲学一致。
Stage A — 读懂论文(委派 /paper-html-onepage,不改它)
python "<SKILL_ROOT>\paper-html-onepage\scripts\paper_to_onepage_html.py" \
--url "<arxiv_url>" --out "<outdir>/<name>_summary.html"
(关键词搜用 --query;本地 PDF 用 --pdf。)得到 <name>_summary.html。
Stage B — 找代码(scripts/find_repo.py)
python "<SKILL_ROOT>\scripts\find_repo.py" "1706.03762" --top 6
# 加 --json 拿结构化结果
arXiv ID → 自动取标题 → GitHub 按标题搜(比搜裸 ID 召回高)。多个候选时让用户确认用哪个。 (PapersWithCode 公开 API 已废弃返回 HTML,故不用;GitHub+arXiv 已覆盖常见情况。)
Stage C — 分析完整复现要求(scripts/analyze_repo.py)
python "<SKILL_ROOT>\scripts\analyze_repo.py" "<repo_url>" --json > analyze_report.json
免克隆(走 GitHub tree API + raw)读 README/依赖/训练入口/配置,grep 资源信号(n_gpu、deepspeed、 batch_size、epochs、数据集路径),产出 JSON 可行性报告:入口、依赖、GPU 需求、阻断项、建议的最小化覆盖项。
Stage D — 制定最小复现方案(agent 推理)
综合 analyze_report + 本机硬件(CPU/单卡)制定降维裁剪方案。常见手段:
- 换小模型:d_model/layer/head 全砍(如 512→64、6→2、8→2)
- 砍步数:几百 epoch → 几百步
- 关多卡:
num_processes=1、关 DeepSpeed/accelerate、必要时上 LoRA 省 VRAM - 去重型数据依赖:WMT/私有数据集 → 合成任务(序列复制/反转/排序),0 下载
- 明确要验证的核心论点:不追求复现原始 SOTA 数字,只验证论文核心主张是否成立
What ships with it
8 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
- scripts/analyze_repo.py 8.5 KB runs code
- scripts/cost_estimate.py 4.6 KB runs code
- scripts/find_repo.py 4.5 KB runs code
- scripts/summarize_eval.py 4.4 KB runs code
- templates/reference/data.py 1.5 KB runs code
- templates/reference/model.py 5.5 KB runs code
- templates/reference/train.py 4.3 KB runs code
- templates/run.sh.template 754 B
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 11d ago First seen · 138 lines · 146 tokens per session scan B f7ba6ca38270
paper-repro is a skill published in the GitHub repository phanghonghao/THU-Awesome-Skills (8 stars, last pushed 1mo ago), licensed MIT. It adds 146 tokens to every session and 2,180 once invoked, about $0.0007 per session on Opus 5. A static security scan graded it B with 2 findings (asks for root, makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
instrument-data-to-allotrope
Convert laboratory instrument output files (PDF, CSV, Excel, TXT) to Allotrope Simple Model (ASM) JSON format or flattened 2D CSV. Use this skill when scientists need to standardize instrument data for LIMS systems, data lakes, or downstream analysis. Supports auto-detection of instrument types. Outputs include full…
exploratory-data-analysis
Perform bounded, local exploratory analysis of explicitly supported scientific files. Use for redacted CSV/TSV/JSON profiles; optional NumPy, HDF5, FASTA/FASTQ, and basic image metadata inspection; missingness/leakage audits; outlier and transformation sensitivity; and rigorous EDA report scaffolds. Other domain…
matlab
Build, review, migrate, and safely plan MATLAB or GNU Octave numerical workflows, including arrays, tabular/time data, tests, projects, graphics, MAT files, and explicit Python interoperability.
phylogenetics
Build and analyze phylogenetic trees using MAFFT (multiple alignment), IQ-TREE 2 (maximum likelihood), and FastTree (fast NJ/ML). Visualize with ETE3 or FigTree. For evolutionary analysis, microbial genomics, viral phylodynamics, protein family analysis, and molecular clock studies.
research-engineer
An uncompromising Academic Research Engineer. Operates with absolute scientific rigor, objective criticism, and zero flair. Focuses on theoretical correctness, formal verification, and optimal implementation across any required technology.
mapping-to-snomed
Maps clinical concept spans extracted by OpenMed to SNOMED CT concepts through a USER-SUPPLIED terminology server (the user's own Ontoserver, Snowstorm, or UMLS/UTS), never a bundled vocabulary. Use when the user wants to code findings, disorders, procedures, body structures, or substances to SNOMED CT, run an ECL…