| name | reacnetgenerator |
| description | Run ReacNetGenerator on reactive MD trajectories to generate reaction networks and reports. Use when the user wants to analyze LAMMPS dump/xyz/bond trajectories with ReacNetGenerator. Handles LAMMPS dump quirks like x/y/z vs xs/ys/zs by converting to x/y/z (orthorhombic + triclinic supported via reacnet-md-tools). Can infer atomname order from a LAMMPS data file. Runs via local reacnetgenerator if available or via `uvx --from reacnetgenerator ...`. Writes outputs into `out/<input_basename>/` with logs and a summary. |
| compatibility | Requires `uv` and `python3`. Usually requires internet access for `uvx --from ...` resolution unless packages are already cached. |
| license | GPL-3.0-only |
| metadata | {"author":"hcustc-bot","version":"2.3","repository":"https://github.com/tongzhugroup/ReacNetGenerator","repositories":["https://github.com/tongzhugroup/ReacNetGenerator","https://github.com/hcustc/reacnet-md-tools"],"openclaw":{"emoji":"🧪","requires":{"bins":["uv","python3"]},"os":["linux","darwin"]}} |
ReacNetGenerator
10-second quickstart
- Run a standard LAMMPS dump workflow:
uvx --refresh --from reacnet-md-tools rng-pipeline ...
- Analyze existing outputs (no rerun):
uvx --refresh --from reacnet-md-tools rng-query ...
If you need full official flags (e.g. --cell, --nopbc, --use-ase, --miso, HMM matrices), use native:
uvx --refresh --from reacnetgenerator reacnetgenerator ...
What this skill is for
Use this skill for reactive MD post-processing when the user wants to:
- run ReacNetGenerator on
bond, dump, xyz, or extxyz trajectories
- handle common LAMMPS trajectory issues before running analysis
- choose between a high-level wrapper (
reacnet-md-tools) and the native reacnetgenerator CLI
- inspect generated
.reactionabcd / .species outputs after a run
References (read only when needed)
Read only what is relevant:
Tool-selection rule
Choose the narrowest tool that solves the user’s request:
- Use
rng-pipeline by default for standard LAMMPS dump workflows.
- Use native
reacnetgenerator when the user needs official low-level flags not exposed by the wrapper.
- Use
rng-query when the user already has .reactionabcd / .species outputs and wants analysis rather than rerunning.
- Use
rng-webapp only when the user explicitly wants an interactive local browser UI.
Ask only for the missing inputs
Usually you only need:
- trajectory path(s)
- input type:
bond | dump | xyz | extxyz if not obvious
- atom names for
-a/--atomname unless they can be inferred from a LAMMPS data file
- whether the run should be treated as periodic, only if cell information is missing or ambiguous
Do not ask unnecessary questions when the trajectory already contains enough information.
Default execution policy
Preferred default: wrapper CLIs (reacnet-md-tools)
Use reacnet-md-tools for routine runs because it is safer and more agent-friendly:
- handles standard LAMMPS dump workflows
- can infer atom names from nearby
.data files
- writes outputs into a predictable
out/<basename>/ directory
- reduces manual CLI assembly errors
When running the wrapper from an agent, prefer uvx so the latest published version is resolved automatically:
uvx --refresh --from reacnet-md-tools rng-pipeline --help
uvx --refresh --from reacnet-md-tools rng-query --help
Fallback: native reacnetgenerator
Use native reacnetgenerator when the user explicitly needs official flags such as:
--miso
--use-ase
--ase-cutoff-mult
--ase-pair-cutoffs
--nopbc
--cell
-n/--nproc
-s/--selectatoms
--matrixa
--matrixb
--urls
If using native CLI, follow the official flag semantics in references/cli.md.
Decision rules
Input type
- If the file clearly looks like a LAMMPS dump (
ITEM: blocks), treat it as dump.
- If the input is a bond trajectory such as
bonds.reaxc, treat it as bond / lammpsbondfile.
- If the input is
.xyz, treat it as xyz unless it is explicitly extxyz.
PBC / cell
Read references/pbc-and-inputs.md when choosing --cell or --nopbc.
Short version:
- For LAMMPS dump/lammpstrj with valid
BOX BOUNDS, do not ask for --cell.
- For XYZ without cell info, ask whether the system should be treated as periodic.
- Use
--nopbc only when the run is truly non-periodic, already unwrapped/reconstructed, or lacks meaningful periodic cell semantics.
HMM
- For a quick first pass, use
--nohmm unless the user explicitly wants HMM behavior.
- If the user asks for more faithful / publication-style treatment and knows what HMM means here, allow HMM by omitting
--nohmm.
Post-analysis rule
If the user already has outputs such as:
.reactionabcd
.species
- generated HTML / SVG / JSON reports
prefer post-analysis over rerunning. Use rng-query first unless the user specifically wants the raw files opened or a browser UI.
Output expectations
For normal runs, make outputs predictable and easy to inspect:
run.log
- generated
*.html, *.svg, *.json, *.species, *.reaction*
summary.md if using the wrapper workflow
Working style
- Prefer non-interactive commands unless you truly have a TTY.
- Prefer explicit paths over implicit discovery when multiple candidate files exist.
- Stop and ask if atom-type inference is ambiguous.
- Do not invent unsupported flags; use the official CLI definitions from references/cli.md.
GPUMD integration
GPUMD reactive MD trajectories can be analyzed with ReacNetGenerator by
first converting movie.xyz (GPUMD dump output) to a format
ReacNetGenerator accepts:
- GPUMD
movie.xyz is standard extxyz and can be used directly as
extxyz input type.
- For NEP-driven reactive simulations (e.g. combustion, pyrolysis),
ensure the NEP potential was trained with
zbl 1 or zbl 2 so that
close-range encounters are physically meaningful.
Quick references