Getting it into your agent
It runs from inside its repository, so the clone comes first — what it calls does not travel with the file alone.
git clone --depth 1 https://github.com/InternScience/ChemClawnpx agentmods add skills/internscience/chemclaw/reaction-data-extractionWrote 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/internscience/chemclaw/reaction-data-extraction)<a href="https://agentmods.dev/skills/internscience/chemclaw/reaction-data-extraction"><img src="https://agentmods.dev/badge/skills/internscience/chemclaw/reaction-data-extraction/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/internscience/chemclaw/reaction-data-extraction"><img src="https://agentmods.dev/badge/skills/internscience/chemclaw/reaction-data-extraction.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.00075 | $0.04554 |
| Opus 5.5 | $0.00030 | $0.01822 |
| Sonnet 5.5 | $0.00015 | $0.00911 |
| Haiku 4.5 | $0.00007 | $0.00455 |
Grade A, and why
reaction-data-extraction scanned grade A with 1 finding 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 1mo 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.
Runs shell commandslowCapability
Expected in a hook, worth knowing in a rule or an instructions file.
result = subprocess.run(cmd, capture_output=True, text=True, timeout=600) How it starts
The opening of the file, as written. The whole thing — 476 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Reaction Data Extraction
从化学文献 PDF 中精确提取化学反应数据,特别是反应条件优化信息。支持提取反应物、产物、催化剂、溶剂、温度、时间、产率等关键信息,并输出结构化的 CSV/JSON 文件。
触发条件
- 用户提供 PDF 文献并要求提取反应数据
- 提到"提取反应条件"、"反应优化数据"
- 说"extract reaction conditions"、"reaction data from PDF"
- 需要从文献中整理反应表格
- 需要批量提取多篇文献的反应数据
功能特性
- ✅ 反应物/产物识别 - 自动提取反应物和产物的 SMILES/名称
- ✅ 反应条件提取 - 催化剂、配体、溶剂、添加剂
- ✅ 参数提取 - 温度、时间、压力、浓度
- ✅ 产率提取 - 分离产率、GC 产率、NMR 产率
- ✅ 反应类型识别 - 偶联、氧化、还原、环化等
- ✅ 表格数据提取 - 从反应条件优化表格中提取数据
- ✅ 支持体内容 - 从正文段落中提取反应描述
- ✅ 结构化输出 - CSV/JSON 格式,便于后续分析
- ✅ 批量处理 - 支持多篇文献批量提取
- ✅ 置信度评分 - 每个提取结果附带置信度
核心技术
| 组件 | 用途 |
|---|---|
| MinerU | PDF 解析和文本提取 (命令行调用) |
| 正则表达式 | 反应条件模式匹配 |
| Rule-based Parser | 反应句子解析 |
| 表格解析器 | Markdown 表格→反应数据 |
提取的数据字段
| 字段 | 说明 | 示例 |
|---|---|---|
reaction_id |
反应唯一标识 | RXN_001 |
entry |
表格中的条目号 | 1, 2, 3 |
reactants |
反应物 (SMILES 或名称) | c1ccccc1Br |
products |
产物 (SMILES 或名称) | c1ccccc1-c2ccccc2 |
catalyst |
催化剂 | Pd(PPh3)4 |
ligand |
配体 | PPh3 |
base |
碱 | K2CO3 |
solvent |
溶剂 | DMF, Toluene |
temperature |
温度 | 80 °C, rt, reflux |
time |
反应时间 | 12 h, 30 min |
pressure |
压力 (如有) | 1 atm, 10 bar |
concentration |
浓度 | 0.1 M |
yield_value |
产率数值 | 85 |
yield_type |
产率类型 | isolated, GC, NMR |
ee_value |
对映选择性 | 99%, >99% |
reaction_type |
反应类型 | Suzuki coupling |
scheme_number |
反应式编号 | Scheme 1, Table 2 |
page_number |
页码 | 5 |
confidence |
提取置信度 | 0.95 |
notes |
备注 | optimized condition |
使用方法
对话框中使用
从这篇 PDF 提取所有反应条件
提取反应优化数据并生成 CSV
extract reaction data from this paper
把文献中的反应表格整理成 Excel
提取 Suzuki 偶联反应的条件
命令行使用
# 基本提取(自动模式)
python3 scripts/reaction_data_extraction.py -i paper.pdf -o ./output
# 只提取表格数据
python3 scripts/reaction_data_extraction.py -i paper.pdf -o ./output --tables-only
# 只提取体内容反应
python3 scripts/reaction_data_extraction.py -i paper.pdf -o ./output --text-only
# 批量处理
python3 scripts/reaction_data_extraction.py -i ./papers/ -o ./output --batch
# JSON 输出
python3 scripts/reaction_data_extraction.py -i paper.pdf -o ./output --output-format json
# 详细模式
python3 scripts/reaction_data_extraction.py -i paper.pdf -o ./output -v
# 使用 OCR 处理扫描版
python3 scripts/reaction_data_extraction.py -i scanned.pdf -o ./output --method ocr
What ships with it
5 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.
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.
- 1mo ago First seen · 476 lines · 75 tokens per session scan A f0c4aa1b9d71
reaction-data-extraction is a skill published in the GitHub repository InternScience/ChemClaw (53 stars, last pushed 6mo ago), licensed MIT. It adds 75 tokens to every session and 4,554 once invoked, about $0.0003 per session on Opus 5.5. A static security scan graded it A with 1 finding (runs shell commands). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
nature-paper-trans
A workflow for translating selected pages or a complete English research-paper PDF into a simplified-Chinese, image-based PDF. bioRxiv is not mentioned in the provided details; the workflow applies to research-paper PDFs generally.
pydicom
Reads, inspects, writes, transforms, and preflights local DICOM datasets and pixel data. Applies to DICOM metadata, transfer syntaxes, compression plugins, frames, private elements, JSON, and bounded de-identification review.
pptx-posters
Creates and audits editable scientific posters in macro-free PowerPoint (.pptx) from author-approved local content and assets. Used when the requested deliverable is a PowerPoint research/conference poster and exact physical, printer, accessibility, provenance, and package-security checks are required.
extracting-lab-tables
Detects and extracts tabular laboratory panels from PDFs, scans, and images into structured rows ready for OpenMed and FHIR. Use when the user has a CBC, CMP, lipid panel, or other lab report as a scanned image / PDF / spreadsheet and needs the test name, value, unit, reference range, and abnormal flag as clean rows.…
figures
Makes publication-quality plots from data with matplotlib, learning curves, scaling laws, benchmark and ablation comparisons, Pareto trade-offs, heatmaps and confusion matrices, sized for the page, vector, with uncertainty shown. Use whenever results are plotted, charted or visualized for a paper, report or answer, or…
paper-compile
A build workflow that turns LaTeX source files into a PDF and checks whether the paper compiles correctly. LaTeX is a text-based system commonly used for academic papers.