mcpbeat

Reacnetgenerator

jinzhezenggroup/reacnetgenerator

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.

4k tokens
context cost
the whole folder, loaded on every use
4
files
instructions only
0
copies elsewhere
how many repositories repackaged it
118
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/jinzhezenggroup/computational-chemistry-agent-skills --skill reacnetgenerator

What comes with it

9 577 bytes besides the instruction
references/cli.md
references/examples.md
references/pbc-and-inputs.md

The instruction itself

17 sections, as written by the author

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:

  • If the user asks about official flags or default values: references/cli.md
  • If the user asks about PBC/cell/--nopbc or input-type choice: references/pbc-and-inputs.md
  • If the user wants copy-paste commands: references/examples.md

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.

Quick references

  • Official CLI coverage: references/cli.md
  • Common recipes: references/examples.md
  • PBC and input decisions: references/pbc-and-inputs.md

How to use it

Copy the folder

Take jinzhezenggroup/reacnetgenerator from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.

Install what it needs

The instructions reference uvx. Without those the skill loads but fails at the first command.