chore(skills): import DeePMD-kit agent skills#5437
Conversation
📝 WalkthroughWalkthroughThis pull request adds a comprehensive skill documentation library for the DeePMD-kit molecular dynamics and machine learning toolkit. Seven skill documents and supporting assets are introduced, covering model training (DPA3 and SE_E2_A), fine-tuning, Python inference, and LAMMPS integration, enabling AI agents to execute complete workflows end-to-end. ChangesDeePMD-kit Skill Documentation Library
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~5 minutes 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 3
🧹 Nitpick comments (1)
.github/skills/lammps-deepmd/references/commands-and-workflow.md (1)
9-11: 💤 Low valueConsider varying sentence structure for readability.
Three consecutive items begin with "If the user," which slightly reduces readability. Consider rephrasing one to improve flow.
♻️ Optional rephrasing
1. If the user asks to run a simulation, always confirm the structure file and DeePMD model file before execution. -1. If the user asks for offline execution, ask which exact LAMMPS command should be used instead of guessing. +1. For offline execution requests, ask which exact LAMMPS command should be used instead of guessing. 1. If the user only asks for a template, do not overcomplicate it with advanced computes or fixes unless they are needed.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In @.github/skills/lammps-deepmd/references/commands-and-workflow.md around lines 9 - 11, The three checklist items all start with "If the user..." which hurts flow; edit the three bullets (the lines beginning "If the user asks to run a simulation", "If the user asks for offline execution", and "If the user only asks for a template") so at least one uses a different sentence structure — for example: "Confirm the structure file and DeePMD model file before running a simulation" (replace the first), "For offline execution, ask which exact LAMMPS command should be used" (rephrase the second), or "Provide a simple template unless advanced computes or fixes are requested" (rephrase the third) — keep meaning identical and adjust punctuation/ordering for variety and readability.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In @.github/skills/deepmd-python-inference/SKILL.md:
- Around line 189-195: The fenced code block showing the "dp test" output is
missing a language tag causing markdownlint MD040; update the triple-backtick
fence that encloses the Energy/Force/Virial lines to include a language tag
(e.g., text) so it becomes ```text at the start of the block while leaving the
contents unchanged.
In @.github/skills/deepmd-train-dpa3/SKILL.md:
- Around line 42-52: The markdown has two fenced code blocks missing language
identifiers (MD040): the directory tree block starting with "system_dir/" and
the lcurve header block starting with "# step rmse_val rmse_trn rmse_e_val
..."; update those fences in SKILL.md by adding a language label (e.g., ```text)
to both blocks (including the similar block at lines ~201-203) so the opening
triple-backticks become ```text for each affected code block.
In @.github/skills/deepmd-train-se-e2-a/SKILL.md:
- Around line 42-51: The Markdown has unlabeled fenced code blocks that trigger
MD040; update the two plain ``` fences in SKILL.md to include a language tag
(e.g., change ``` to ```text) for the directory-tree block (the block showing
"system_dir/ ... box.npy") and the tabular/header block (the line starting with
"# step rmse_val..."); also update the additional occurrence around lines
167-169 to use ```text so all three fenced blocks are labeled.
---
Nitpick comments:
In @.github/skills/lammps-deepmd/references/commands-and-workflow.md:
- Around line 9-11: The three checklist items all start with "If the user..."
which hurts flow; edit the three bullets (the lines beginning "If the user asks
to run a simulation", "If the user asks for offline execution", and "If the user
only asks for a template") so at least one uses a different sentence structure —
for example: "Confirm the structure file and DeePMD model file before running a
simulation" (replace the first), "For offline execution, ask which exact LAMMPS
command should be used" (rephrase the second), or "Provide a simple template
unless advanced computes or fixes are requested" (rephrase the third) — keep
meaning identical and adjust punctuation/ordering for variety and readability.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Repository UI
Review profile: CHILL
Plan: Pro
Run ID: 60ee211d-e03e-4446-8bc5-04eaca547492
📒 Files selected for processing (7)
.github/skills/deepmd-finetune-dpa3/SKILL.md.github/skills/deepmd-python-inference/SKILL.md.github/skills/deepmd-train-dpa3/SKILL.md.github/skills/deepmd-train-se-e2-a/SKILL.md.github/skills/lammps-deepmd/SKILL.md.github/skills/lammps-deepmd/assets/input.nvt.lammps.github/skills/lammps-deepmd/references/commands-and-workflow.md
| ``` | ||
| Energy RMSE : 1.234e-03 eV | ||
| Energy RMSE/Natoms : 6.427e-06 eV | ||
| Force RMSE : 2.345e-02 eV/A | ||
| Virial RMSE : 5.678e-02 eV | ||
| Virial RMSE/Natoms : 2.957e-04 eV | ||
| ``` |
There was a problem hiding this comment.
Add a language tag to the fenced output block.
The code fence for dp test output is unlabeled; markdownlint MD040 will flag it.
Suggested fix
-```
+```text
Energy RMSE : 1.234e-03 eV
Energy RMSE/Natoms : 6.427e-06 eV
Force RMSE : 2.345e-02 eV/A
Virial RMSE : 5.678e-02 eV
Virial RMSE/Natoms : 2.957e-04 eV</details>
<!-- suggestion_start -->
<details>
<summary>📝 Committable suggestion</summary>
> ‼️ **IMPORTANT**
> Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
```suggestion
🧰 Tools
🪛 markdownlint-cli2 (0.22.1)
[warning] 189-189: Fenced code blocks should have a language specified
(MD040, fenced-code-language)
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In @.github/skills/deepmd-python-inference/SKILL.md around lines 189 - 195, The
fenced code block showing the "dp test" output is missing a language tag causing
markdownlint MD040; update the triple-backtick fence that encloses the
Energy/Force/Virial lines to include a language tag (e.g., text) so it becomes
```text at the start of the block while leaving the contents unchanged.
| ``` | ||
| system_dir/ | ||
| ├── type.raw | ||
| ├── type_map.raw | ||
| └── set.000/ | ||
| ├── coord.npy | ||
| ├── energy.npy | ||
| ├── force.npy | ||
| ├── box.npy | ||
| └── virial.npy | ||
| ``` |
There was a problem hiding this comment.
Label fenced blocks to satisfy markdownlint.
Two fenced blocks are missing language identifiers (directory tree and lcurve header), which triggers MD040.
Suggested fix
-```
+```text
system_dir/
├── type.raw
├── type_map.raw
└── set.000/
├── coord.npy
├── energy.npy
├── force.npy
├── box.npy
└── virial.npy...
- +text
step rmse_val rmse_trn rmse_e_val rmse_e_trn rmse_f_val rmse_f_trn rmse_v_val rmse_v_trn lr
Also applies to: 201-203
🧰 Tools
🪛 markdownlint-cli2 (0.22.1)
[warning] 42-42: Fenced code blocks should have a language specified
(MD040, fenced-code-language)
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In @.github/skills/deepmd-train-dpa3/SKILL.md around lines 42 - 52, The markdown
has two fenced code blocks missing language identifiers (MD040): the directory
tree block starting with "system_dir/" and the lcurve header block starting with
"# step rmse_val rmse_trn rmse_e_val ..."; update those fences in SKILL.md
by adding a language label (e.g., ```text) to both blocks (including the similar
block at lines ~201-203) so the opening triple-backticks become ```text for each
affected code block.
| ``` | ||
| system_dir/ | ||
| ├── type.raw # atom type indices, one integer per atom | ||
| ├── type_map.raw # element names, one per line | ||
| └── set.000/ | ||
| ├── coord.npy # coordinates (nframes, natoms*3) | ||
| ├── energy.npy # energies (nframes, 1) | ||
| ├── force.npy # forces (nframes, natoms*3) | ||
| └── box.npy # cell vectors (nframes, 9) | ||
| ``` |
There was a problem hiding this comment.
Add language tags to unlabeled fenced blocks.
The two plain fenced blocks should be tagged (e.g., text) to avoid MD040 lint warnings.
Suggested fix
-```
+```text
system_dir/
├── type.raw # atom type indices, one integer per atom
├── type_map.raw # element names, one per line
└── set.000/
├── coord.npy # coordinates (nframes, natoms*3)
├── energy.npy # energies (nframes, 1)
├── force.npy # forces (nframes, natoms*3)
└── box.npy # cell vectors (nframes, 9)...
- +text
step rmse_val rmse_trn rmse_e_val rmse_e_trn rmse_f_val rmse_f_trn rmse_v_val rmse_v_trn lr
Also applies to: 167-169
🧰 Tools
🪛 markdownlint-cli2 (0.22.1)
[warning] 42-42: Fenced code blocks should have a language specified
(MD040, fenced-code-language)
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In @.github/skills/deepmd-train-se-e2-a/SKILL.md around lines 42 - 51, The
Markdown has unlabeled fenced code blocks that trigger MD040; update the two
plain ``` fences in SKILL.md to include a language tag (e.g., change ``` to
```text) for the directory-tree block (the block showing "system_dir/ ...
box.npy") and the tabular/header block (the line starting with "# step
rmse_val..."); also update the additional occurrence around lines 167-169 to use
```text so all three fenced blocks are labeled.
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #5437 +/- ##
==========================================
- Coverage 82.47% 82.46% -0.01%
==========================================
Files 825 825
Lines 87721 87722 +1
Branches 4206 4206
==========================================
Hits 72344 72344
Misses 14094 14094
- Partials 1283 1284 +1 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
Imported from jinzhezenggroup/computational-chemistry-agent-skills. Upstream-Commit: jinzhezenggroup/computational-chemistry-agent-skills@155a675 Upstream-Paths: - machine-learning-potentials/deepmd-finetune-dpa3 - machine-learning-potentials/deepmd-python-inference - machine-learning-potentials/deepmd-train-dpa3 - machine-learning-potentials/deepmd-train-se-e2-a - molecular-dynamics/lammps-deepmd
Imported from jinzhezenggroup/computational-chemistry-agent-skills. Upstream-Commit: jinzhezenggroup/computational-chemistry-agent-skills@d8ff524 Upstream-Paths: - machine-learning-potentials/deepmd-finetune-dpa3 - machine-learning-potentials/deepmd-python-inference - machine-learning-potentials/deepmd-train-dpa3 - machine-learning-potentials/deepmd-train-se-e2-a - molecular-dynamics/lammps-deepmd
…deepmodeling#30) Imported from jinzhezenggroup/computational-chemistry-agent-skills. Upstream-Commit: jinzhezenggroup/computational-chemistry-agent-skills@3b9a0df Upstream-Paths: - machine-learning-potentials/deepmd-finetune-dpa3 - machine-learning-potentials/deepmd-python-inference - machine-learning-potentials/deepmd-train-dpa3 - machine-learning-potentials/deepmd-train-se-e2-a - molecular-dynamics/lammps-deepmd
…ng#37) Imported from jinzhezenggroup/computational-chemistry-agent-skills. Upstream-Commit: jinzhezenggroup/computational-chemistry-agent-skills@0fbe96d Upstream-Paths: - machine-learning-potentials/deepmd-finetune-dpa3 - machine-learning-potentials/deepmd-python-inference - machine-learning-potentials/deepmd-train-dpa3 - machine-learning-potentials/deepmd-train-se-e2-a - molecular-dynamics/lammps-deepmd
…modeling#35) Imported from jinzhezenggroup/computational-chemistry-agent-skills. Upstream-Commit: jinzhezenggroup/computational-chemistry-agent-skills@0a9651d Upstream-Paths: - machine-learning-potentials/deepmd-finetune-dpa3 - machine-learning-potentials/deepmd-python-inference - machine-learning-potentials/deepmd-train-dpa3 - machine-learning-potentials/deepmd-train-se-e2-a - molecular-dynamics/lammps-deepmd
…pmodeling#52) Imported from jinzhezenggroup/computational-chemistry-agent-skills. Upstream-Commit: jinzhezenggroup/computational-chemistry-agent-skills@622da72 Upstream-Paths: - machine-learning-potentials/deepmd-finetune-dpa3 - machine-learning-potentials/deepmd-python-inference - machine-learning-potentials/deepmd-train-dpa3 - machine-learning-potentials/deepmd-train-se-e2-a - molecular-dynamics/lammps-deepmd
Imported from jinzhezenggroup/computational-chemistry-agent-skills. Upstream-Commit: jinzhezenggroup/computational-chemistry-agent-skills@3f03f72 Upstream-Paths: - machine-learning-potentials/deepmd-finetune-dpa3 - machine-learning-potentials/deepmd-python-inference - machine-learning-potentials/deepmd-train-dpa3 - machine-learning-potentials/deepmd-train-se-e2-a - molecular-dynamics/lammps-deepmd
Imported from jinzhezenggroup/computational-chemistry-agent-skills. Upstream-Commit: jinzhezenggroup/computational-chemistry-agent-skills@37ed5a2 Upstream-Paths: - machine-learning-potentials/deepmd-finetune-dpa3 - machine-learning-potentials/deepmd-python-inference - machine-learning-potentials/deepmd-train-dpa3 - machine-learning-potentials/deepmd-train-se-e2-a - molecular-dynamics/lammps-deepmd
39ba8b9 to
5156c40
Compare
There was a problem hiding this comment.
♻️ Duplicate comments (3)
skills/deepmd-train-se-e2-a/SKILL.md (1)
42-51:⚠️ Potential issue | 🟡 Minor | ⚡ Quick winAdd
textlanguage tags to unlabeled fences (MD040).At Line 42 and Line 167, plain triple-backtick blocks are missing a language identifier.
Suggested fix
-``` +```text system_dir/ ├── type.raw # atom type indices, one integer per atom ├── type_map.raw # element names, one per line └── set.000/ ├── coord.npy # coordinates (nframes, natoms*3) ├── energy.npy # energies (nframes, 1) ├── force.npy # forces (nframes, natoms*3) └── box.npy # cell vectors (nframes, 9)...
-
+textstep rmse_val rmse_trn rmse_e_val rmse_e_trn rmse_f_val rmse_f_trn rmse_v_val rmse_v_trn lr
Also applies to: 167-169
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@skills/deepmd-train-se-e2-a/SKILL.md` around lines 42 - 51, The Markdown file SKILL.md contains unlabeled triple-backtick code fences (the directory-tree block starting with "system_dir/" and the stats/header block starting with "# step rmse_val...") which trigger MD040; update those fences to include a language tag (e.g., change ``` to ```text) so the blocks are labeled as plain text; locate the unlabeled fences by searching for the literal lines beginning with "system_dir/" and the stats header line "# step rmse_val" and replace their opening fences with ```text (and keep the closing ``` unchanged).skills/deepmd-python-inference/SKILL.md (1)
189-195:⚠️ Potential issue | 🟡 Minor | ⚡ Quick winLabel the
dp testoutput fence astext(MD040).At Line 189, the fenced block is unlabeled and will trigger markdownlint.
Suggested fix
-``` +```text Energy RMSE : 1.234e-03 eV Energy RMSE/Natoms : 6.427e-06 eV Force RMSE : 2.345e-02 eV/A Virial RMSE : 5.678e-02 eV Virial RMSE/Natoms : 2.957e-04 eV</details> <details> <summary>🤖 Prompt for AI Agents</summary>Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.In
@skills/deepmd-python-inference/SKILL.mdaround lines 189 - 195, The fenced
output block showing the "dp test" results is unlabeled and triggers
markdownlint MD040; update that fenced code block (the dp test output block
containing "Energy RMSE ... Virial RMSE/Natoms") by adding the language/label
"text" immediately after the opening triple backticks (i.e. change ``` toskills/deepmd-train-dpa3/SKILL.md (1)
42-52:⚠️ Potential issue | 🟡 Minor | ⚡ Quick winAdd language tags to plain fenced blocks (MD040).
At Line 42 and Line 201, the opening fences are unlabeled. Please mark them as
textto satisfy markdownlint consistently.Suggested fix
-``` +```text system_dir/ ├── type.raw ├── type_map.raw └── set.000/ ├── coord.npy ├── energy.npy ├── force.npy ├── box.npy └── virial.npy...
-
+textstep rmse_val rmse_trn rmse_e_val rmse_e_trn rmse_f_val rmse_f_trn rmse_v_val rmse_v_trn lr
Also applies to: 201-203
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@skills/deepmd-train-dpa3/SKILL.md` around lines 42 - 52, In SKILL.md, the two unlabeled fenced code blocks starting with "system_dir/" and the table header line starting with "# step rmse_val..." should have a language tag; change their opening fences from ``` to ```text so both code fences are labeled (i.e., replace the first ``` before the block that begins with "system_dir/" and the ``` before the block that begins with "# step rmse_val rmse_trn..." with ```text).
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Duplicate comments:
In `@skills/deepmd-python-inference/SKILL.md`:
- Around line 189-195: The fenced output block showing the "dp test" results is
unlabeled and triggers markdownlint MD040; update that fenced code block (the dp
test output block containing "Energy RMSE ... Virial RMSE/Natoms") by adding the
language/label "text" immediately after the opening triple backticks (i.e.
change ``` to ```text) so the block is explicitly labeled as text.
In `@skills/deepmd-train-dpa3/SKILL.md`:
- Around line 42-52: In SKILL.md, the two unlabeled fenced code blocks starting
with "system_dir/" and the table header line starting with "# step
rmse_val..." should have a language tag; change their opening fences from ``` to
```text so both code fences are labeled (i.e., replace the first ``` before the
block that begins with "system_dir/" and the ``` before the block that begins
with "# step rmse_val rmse_trn..." with ```text).
In `@skills/deepmd-train-se-e2-a/SKILL.md`:
- Around line 42-51: The Markdown file SKILL.md contains unlabeled
triple-backtick code fences (the directory-tree block starting with
"system_dir/" and the stats/header block starting with "# step rmse_val...")
which trigger MD040; update those fences to include a language tag (e.g., change
``` to ```text) so the blocks are labeled as plain text; locate the unlabeled
fences by searching for the literal lines beginning with "system_dir/" and the
stats header line "# step rmse_val" and replace their opening fences with
```text (and keep the closing ``` unchanged).
ℹ️ Review info
⚙️ Run configuration
Configuration used: Repository UI
Review profile: CHILL
Plan: Pro
Run ID: f6179bb2-babd-4ded-8a1e-47f5c7f392f3
📒 Files selected for processing (7)
skills/deepmd-finetune-dpa3/SKILL.mdskills/deepmd-python-inference/SKILL.mdskills/deepmd-train-dpa3/SKILL.mdskills/deepmd-train-se-e2-a/SKILL.mdskills/lammps-deepmd/SKILL.mdskills/lammps-deepmd/assets/input.nvt.lammpsskills/lammps-deepmd/references/commands-and-workflow.md
✅ Files skipped from review due to trivial changes (2)
- skills/lammps-deepmd/assets/input.nvt.lammps
- skills/lammps-deepmd/SKILL.md
Problem
Change
skills/.Notes
machine-learning-potentials/deepmd-*,molecular-dynamics/lammps-deepmd.skills/deepmd-*,skills/lammps-deepmd.git diff --check origin/master...HEAD.Authored by OpenClaw (model: gpt-5.5)
Summary by CodeRabbit