Skill v1.0.1
currentAutomated scan100/100+2 new
version: "1.0.1" name: atst-cli description: Use when operating, testing, documenting, or extending the ATST-Tools command-line interface for ASE workflows with ABACUS/abacuslite or DeePMD-kit backends.
ATST CLI Skill
Use this skill for ATST-Tools CLI work in this repository.
Environment
- Work from the repository root.
- Prefer the project environment:
conda activate atst-dev. - If the default Python cannot import
ase, run checks with
conda run -n atst-dev <command>.
- Do not modify
mainfor 2.x work; active CLI/refactor work belongs on
develop or a derived branch. main is the v1.5.x legacy line until merge.
First Checks
git branch --show-currentgit status --shortatst --versionatst banneratst --help
Before launching expensive calculations, validate YAML:
atst run --dry-run CONFIG.yamlatst config validate CONFIG.yaml --print-normalized
Workflow Commands
Use atst run CONFIG.yaml for calculator-backed workflows:
neb,autonebd2sdimer,sellarelaxvibrationircmd
ABACUS workflows use calculator.name: abacus and the active abacuslite backend. DP workflows use calculator.name: dp and deepmd.calculator.DP.
Lightweight Commands
These do not launch ABACUS or DP:
atst banneratst config validate CONFIG.yaml --print-normalizedatst abacus prepare CONFIG.yaml --structure STRUCTURE --output-dir DIRatst abacus collect RUN_DIR --output abacus_results.jsonatst neb make INIT FINAL N_IMAGES -o init_neb_chain.traj --method linearatst neb post neb.traj --n-max N --vib-analysisatst neb summary neb.traj --n-max N --tail 5atst md summary md.traj --tail 5atst md post md.traj --output-format extxyz --output-prefix md_postatst dimer make-from-neb neb.traj --n-max N --output-traj dimer_init.trajatst dimer summary dimer.traj --tail 5atst relax post relax.traj --output-format traj --output restart.trajatst relax summary relax.traj --tail 5atst vibration post config.yaml --output vibration_results.jsonatst vibration summary config.yamlatst d2s summary config.yaml --format json --output d2s_summary.jsonatst traj collect frames/*.xyz -o collection.traj --no-calcatst traj transform collection.traj --format extxyz --output-prefix collection
atst neb make --method accepts IDPP (default) or linear. summary commands are read-only monitors/post-summaries; they do not create calculators or launch ABACUS/DP.
ABACUS Wrapper Boundary
ATST-Tools is a layered wrapper:
- It owns YAML validation, workflow orchestration, restart helpers, examples,
and common ABACUS input/output helpers.
- It uses abacuslite as the ABACUS ASE calculator backend.
- It does not replace ABACUS, abacuslite, Slurm, or site-specific job launchers.
Read docs/user/ABACUSLITE_WRAPPER_GUIDE.md before changing this boundary.
Validation
For CLI changes, run targeted tests first:
conda run -n atst-dev pytest tests/unit/test_cli.py -q
Before reporting completion, run:
conda run -n atst-dev pytest tests -qatst --helpatst config validate examples/06_relax_H2-Au/config.yaml --print-normalized
Update docs when command behavior, config shape, or wrapper boundaries change:
README.mddocs/user/CLI_REFERENCE.mddocs/user/CONFIG_REFERENCE.mddocs/user/USER_GUIDE_CN.mdexamples/README.md