skills/dpdata-cli/SKILL.md
Convert and manipulate atomic simulation data formats using dpdata CLI. Use when converting between DFT/MD output formats (VASP, LAMMPS, QE, CP2K, Gaussian, ABACUS, etc.), preparing training data for DeePMD-kit, or working with DeePMD formats. Supports 50+ formats including deepmd/raw, deepmd/comp, deepmd/npy, deepmd/hdf5.
npx skillsauth add deepmodeling/dpdata dpdata-cliInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
dpdata is a tool for manipulating multiple atomic simulation data formats. This skill enables format conversion between various DFT/MD software outputs via command line.
Run dpdata via uvx:
uvx dpdata <from_file> [options]
dpdata: Manipulating multiple atomic simulation data formats
usage: dpdata [-h] [--to_file TO_FILE] [--from_format FROM_FORMAT]
[--to_format TO_FORMAT] [--no-labeled] [--multi]
[--type-map TYPE_MAP [TYPE_MAP ...]] [--version]
from_file
| Argument | Description |
| --------------------- | ----------------------------------------------------- |
| from_file | Read data from a file (positional) |
| --to_file, -O | Dump data to a file |
| --from_format, -i | Format of from_file (default: "auto") |
| --to_format, -o | Format of to_file |
| --no-labeled, -n | Labels aren't provided (default: False) |
| --multi, -m | System contains multiple directories (default: False) |
| --type-map, -t | Type map for atom types |
| --version | Show dpdata version and exit |
uvx dpdata OUTCAR -i vasp/outcar -O deepmd_data -o deepmd/raw
uvx dpdata dump.lammps -i lammps/dump -O POSCAR -o vasp/poscar
uvx dpdata OUTCAR -i vasp/outcar -O deepmd_data -o deepmd/raw -t C H O N
uvx dpdata data_dir -i vasp/outcar -O output_dir -o deepmd/comp --multi
uvx dpdata OUTCAR -i vasp/outcar -O deepmd_npy -o deepmd/npy
uvx dpdata OUTCAR -i vasp/outcar -O data.h5 -o deepmd/hdf5
Formats may be updated. For the complete and latest list, see:
| Format Name | Description |
| ---------------------------- | ---------------------------------- |
| deepmd/raw | DeePMD-kit raw text format |
| deepmd/comp / deepmd/npy | DeePMD-kit compressed numpy format |
| deepmd/npy/mixed | DeePMD-kit mixed type format |
| deepmd/hdf5 | DeePMD-kit HDF5 format |
| Format Name | Description |
| ----------------------------------------------------- | -------------------- |
| vasp/poscar / vasp/contcar / poscar / contcar | VASP structure files |
| vasp/outcar / outcar | VASP OUTCAR output |
| vasp/xml / xml | VASP XML output |
| vasp/string | VASP string format |
| Format Name | Description |
| ---------------------- | ---------------- |
| lammps/lmp / lmp | LAMMPS data file |
| lammps/dump / dump | LAMMPS dump file |
| Format Name | Description |
| -------------------------------------------------------- | --------------------- |
| stru / abacus/stru | ABACUS structure file |
| abacus/lcao/scf / abacus/pw/scf / abacus/scf | ABACUS SCF output |
| abacus/lcao/md / abacus/pw/md / abacus/md | ABACUS MD output |
| abacus/lcao/relax / abacus/pw/relax / abacus/relax | ABACUS relax output |
| Format Name | Description |
| ------------ | ---------------- |
| qe/cp/traj | QE CP trajectory |
| qe/pw/scf | QE PWscf output |
| Format Name | Description |
| ------------------ | ---------------- |
| cp2k/output | CP2K output |
| cp2k/aimd_output | CP2K AIMD output |
| Format Name | Description |
| --------------- | ----------------------------- |
| gaussian/log | Gaussian log file |
| gaussian/fchk | Gaussian formatted checkpoint |
| gaussian/md | Gaussian MD output |
| gaussian/gjf | Gaussian input file |
| Format Name | Description |
| ------------------------------------------------------------------- | --------------------- |
| xyz | XYZ format |
| mace/xyz / nequip/xyz / gpumd/xyz / extxyz / quip/gap/xyz | Extended XYZ variants |
| ase/structure | ASE structure format |
| ase/traj | ASE trajectory |
| pymatgen/structure | pymatgen structure |
| pymatgen/molecule | pymatgen molecule |
| gromacs/gro / gro | GROMACS gro file |
| siesta/output | SIESTA output |
| siesta/aimd_output | SIESTA AIMD output |
| pwmat/output / pwmat/mlmd / pwmat/movement | PWmat output |
| pwmat/final.config / pwmat/atom.config | PWmat config |
| orca/spout | ORCA output |
| psi4/out | PSI4 output |
| dftbplus | DFTB+ output |
| fhi_aims/output / fhi_aims/md | FHI-aims output |
| amber/md | AMBER MD |
| n2p2 | n2p2 format |
| mol_file / mol | MOL file |
| sdf_file / sdf | SDF file |
| openmx/md | OpenMX MD |
| sqm/out | SQM output |
| sqm/in | SQM input |
| list | List format |
| 3dmol | 3Dmol visualization |
-i auto (default) to let dpdata detect format automatically-t to specify atom type order for deepmd formats--multi for directories containing multiple systemsdeepmd/npy or deepmd/hdf5 for smaller file sizestools
Create and install dpdata plugins (especially custom Format readers/writers) using Format.register(...) and pyproject.toml entry_points under 'dpdata.plugins'. Use when extending dpdata with new formats or distributing plugins as separate Python packages.
tools
Minimize geometries with dpdata minimizer plugins via System.minimize(), including how minimizers relate to drivers (ASEMinimizer needs a dpdata Driver) and how to list supported minimizers (ase/sqm). Use when doing geometry optimization/minimization through dpdata Python API.
tools
Use dpdata Python Driver plugins to label systems (energies/forces/virials) via System.predict(), list available drivers, and build Driver objects (ase/deepmd/gaussian/sqm/hybrid). Use when working with dpdata Python API (not CLI) and you need driver-based energy/force prediction, plugin registration keys, or examples of using dpdata with ASE calculators or DeePMD models.
tools
Use when work should span one or more detached tasks but still behave like one job with a single owner context. TaskFlow is the durable flow substrate under authoring layers like Lobster, ACPX, plugins, or plain code. Keep conditional logic in the caller; use TaskFlow for flow identity, child-task linkage, waiting state, revision-checked mutations, and user-facing emergence.