A tool for generating initial packed molecular configurations (XYZ format) from single-molecule structures by calculating box dimensions, writing input scripts, and executing Packmol.

LGPL-3.0-or-laterAuto-check passedResearch & Science

Install Packmol Generate Mixture

skills CLI
$ npx skills add jinzhezenggroup/computational-chemistry-agent-skills --skill packmol-generate-mixture -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install jinzhezenggroup/computational-chemistry-agent-skills packmol-generate-mixture --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/jinzhezenggroup/computational-chemistry-agent-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/data-processing/packmol-generate-mixture .claude/skills/packmol-generate-mixture && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
packmol-generate-mixture
GitHub stars
148
Token cost
~1.4k tokens
SKILL.md length
568 words
Files
1
Skills in repo
62
Repo updated
First seen
Licence
LGPL-3.0-or-later

At a glance

A tool for generating initial packed molecular configurations (XYZ format) from single-molecule structures by calculating box dimensions, writing input scripts, and executing Packmol.

  • Works in 8 steps: Collect inputs (ask if missing; do not… → Validate inputs → Decide box size → …
  • You need to randomly pack a specific number of molecules into a simulation box (defined by target density
  • SKILL.md covers Agent responsibilities (do…, What to ask the user (plain…, Input schema (recommended) and Density → cubic box length (Å), plus 2 more sections
  • Calls uvx

What it does

Packmol Generate Mixture is an agent skill from jinzhezenggroup/computational-chemistry-agent-skills. A tool for generating initial packed molecular configurations (XYZ format) from single-molecule structures by calculating box dimensions, writing input scripts, and executing Packmol. USE WHEN you need to randomly pack a specific number of molecules into a simulation box (defined by target density or fixed lengths) to create starting geometries for molecular dynamics or related computational chemistry workflows.

Its SKILL.md is about 1.4k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts. Compatibility notes: Requires uv and internet access (uses uvx packmol ...).

It sits in Research & Science, covering Physical and earth sciences. The repository describes itself as: Agent skills to run computational-chemistry tasks, used in OpenClaw. The licence is LGPL-3.0-or-later.

When your agent uses it

  • You need to randomly pack a specific number of molecules into a simulation box (defined by target density
  • Fixed lengths) to create starting geometries for molecular dynamics
  • Related computational chemistry workflows

Example prompts

  • “/packmol-generate-mixture”

Requirements

  • Compatibility (from SKILL.md): Requires uv and internet access (uses `uvx packmol ...`).

Workflow steps

8 steps, taken from the first numbered list in SKILL.md.

  1. Collect inputs (ask if missing; do not guess)
  2. Validate inputs
  3. Decide box size
  4. Create a working folder at the requested output location
  5. Write Packmol input ${system_name}.inp
  6. Run Packmol locally
  7. Report results
  8. (Optional) Post-process for LAMMPS

What it can do on your machine

Read from SKILL.md and the folder at commit 5c19e75. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • uvx

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use uvx, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

  • Compatibility

    Requires uv and internet access (uses `uvx packmol ...`).

    From compatibility in the SKILL.md frontmatter.

Context cost

Packmol Generate Mixture loads about 1.4k tokens when it runs. Until then it costs about 110 tokens; SKILL.md has 568 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~110
When it runs · the whole SKILL.md, loaded when a task matches
~1.4k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from jinzhezenggroup/computational-chemistry-agent-skills at commit 5c19e75, republished under its LGPL-3.0-or-later licence (© jinzhezenggroup). 568 words, ~1,359 tokens.

Download SKILL.mdSave it as .claude/skills/packmol-generate-mixture/SKILL.md (or your agent's skills folder).
name
packmol-generate-mixture
description
A tool for generating initial packed molecular configurations (XYZ format) from single-molecule structures by calculating box dimensions, writing input scripts, and executing Packmol. USE WHEN you need to randomly pack a specific number of molecules into a simulation box (defined by target density or fixed lengths) to create starting geometries for molecular dynamics or related computational chemistry workflows.
compatibility
Requires uv and internet access (uses `uvx packmol ...`).
license
LGPL-3.0-or-later
metadata.author
hcustc-bot
metadata.version
1.0
metadata.repository
https://github.com/m3g/packmol
metadata.repositories
https://github.com/m3g/packmol, https://pypi.org/project/lammps-md-tools/

packmol-generate-mixture

Use Packmol to generate an initial packed configuration for a molecular mixture.

Agent responsibilities (do these in order)

  1. Collect inputs (ask if missing; do not guess):

    • component structure files (XYZ), one per species (e.g. species1.xyz, species2.xyz)
    • molecule counts for each species (e.g. species1: 100, species2: 650)
    • either target density (g/cm^3) or a fixed cubic box length (Å)
    • Packmol tolerance (Å)
    • output location: output directory + output filename prefix (system name)
  2. Validate inputs:

    • confirm XYZ files exist and are readable
    • confirm the first line (atom count) matches the number of coordinate lines
    • if density-based box estimation is requested: confirm each molecule’s elemental composition can be inferred from the XYZ symbols
  3. Decide box size:

    • If user provides box_length_A: use it.
    • Else compute box_length_A from density (see formula below).
  4. Create a working folder at the requested output location:

    • copy the component XYZ files into it (or reference them with absolute paths)
  5. Write Packmol input ${system_name}.inp:

    • one structure ... end structure block per component
    • all components share the same inside box 0 0 0 L L L
  6. Run Packmol locally:

    • Prefer: uvx packmol -i ${system_name}.inp
    • If you need to force the source package: uvx --from packmol packmol -i ${system_name}.inp
  7. Report results:

    • exact output paths (inp, xyz, log)
    • final box length (Å) and the parameters used (counts, density or fixed L, tolerance)
    • basic sanity checks (total molecules, total atoms)
  8. (Optional) Post-process for LAMMPS

If the user plans to run LAMMPS (especially ReaxFF), they often need a LAMMPS data file with correct box bounds.

  • If you convert XYZ -> LAMMPS data with dpdata, dpdata may write default box bounds (e.g., 0..100 Å).
  • Fix the bounds to match the Packmol cubic box length using lammps-md-tools from PyPI:
bash
uvx --from lammps-md-tools lammps-fix-box \
    --in  input.data \
    --out output.boxfix.data \
    --L 60.690 \
    --wrap

This rewrites xlo/xhi, ylo/yhi, zlo/zhi to 0..L, zeroes tilt factors, and optionally wraps atoms into the box.

Show full SKILL.md (265 more words)Show less

What to ask the user (plain language)

If the user didn’t specify them, ask at minimum:

  • Packing counts: how many molecules of each species? (e.g., species1=100, species2=650)
  • Box definition: do you want to estimate a cubic box from a target density (g/cm^3), or do you want to provide a fixed cubic box length L (Å)?
  • Tolerance: what Packmol tolerance (Å) should be used? (common starting point: 2.0 Å)
  • Output location: which directory should receive the results, and what system name / filename prefix should be used?

If the user says “use defaults”, propose defaults:

  • tolerance = 2.0 Å
  • output dir: a packed/ subfolder under the folder containing the input XYZ
  • (density) do not assume; ask for it, but you may suggest a starting value the user can confirm.

Example (replace with your own species/files):

yaml
system_name: mixture_pack
output_dir: /path/to/output/packed
# Choose ONE of the following:
density_g_cm3: 0.25
# box_length_A: 60.69

tolerance_A: 2.0
components:
  - name: species1
    structure_file: /path/to/species1.xyz
    number: 100
  - name: species2
    structure_file: /path/to/species2.xyz
    number: 650

Density → cubic box length (Å)

When density_g_cm3 is provided and box_length_A is not, estimate L from total mass:

  • infer each molecule’s elemental composition from its XYZ symbols
  • use standard atomic masses (g/mol)
  • compute total molar mass of the whole configuration (g/mol)
  • convert to mass per configuration: m_cfg = M_total / N_A (g)
  • compute volume in cm^3: V_cm3 = m_cfg / density_g_cm3
  • convert to Å^3: V_A3 = V_cm3 * 1e24
  • cubic length: L_A = V_A3 ** (1/3)

This is an initial packing estimate (geometry construction), not an equilibrated density.

Output contract

The run should produce (within output_dir):

  • ${system_name}.inp (Packmol input)
  • ${system_name}.xyz (packed XYZ output; name may include _packed suffix)
  • packmol.out (stdout log; capture with tee)

Limitations (be explicit)

  • Packed XYZ has coordinates only; no topology, no force-field types, no LAMMPS data.
  • Packing success ≠ physically valid structure; minimization/equilibration still required.

© jinzhezenggroup, LGPL-3.0-or-later. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in data-processing/packmol-generate-mixture of jinzhezenggroup/computational-chemistry-agent-skills.

Open the folder on GitHubat commit 5c19e75

Compare with similar skills

Packmol Generate Mixture next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Packmol Generate Mixture compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Packmol Generate Mixture this skilljinzhezenggroup/computational-chemistry-agent-skills148—~1.4kAutomated safety check: PassLGPL-3.0-or-later
AstropyzLanqing/codex-claude-academic-skills4.7k13 repos~2.9kAutomated safety check: PassBSD-3-Clause
PymatgenzLanqing/codex-claude-academic-skills4.7k11 repos~5kAutomated safety check: PassMIT
Cantera Ignition DelayK-Dense-AI/scientific-agent-skills48k1 repos~2.2kAutomated safety check: PassMIT
Weathertrpc-group/trpc-agent-go1.9k8 repos~591Automated safety check: PassApache-2.0
Pymol VisualizationChatMol/ChatMol373—~1.2kAutomated safety check: PassMIT

Similar skills

  • Astropy

    zLanqing/codex-claude-academic-skills

    Comprehensive Python library for astronomy and astrophysics.

    4.7k GitHub starsUsed in 13 repos~2.9k tokens
    Research & ScienceAuto-check passed
  • Pymatgen

    zLanqing/codex-claude-academic-skills

    Materials science toolkit. An agent skill from zLanqing/codex-claude-academic-skills.

    4.7k GitHub starsUsed in 11 repos~5k tokens
    Research & ScienceAuto-check passed
  • Cantera Ignition Delay

    K-Dense-AI/scientific-agent-skills

    Runs Cantera constant-volume or constant-pressure ignition simulations and reports temperature-based ignition delay with mechanism provenance and checks.

    48k GitHub starsUsed in 1 repo~2.2k tokens
    Research & ScienceAuto-check passed
  • Weather

    trpc-group/trpc-agent-go

    Get current weather and forecasts via wttr.in or Open-Meteo.

    1.9k GitHub starsUsed in 8 repos~591 tokens
    Research & ScienceAuto-check passed
  • Pymol Visualization

    ChatMol/ChatMol

    Generate publication-quality molecular visualization images using PyMOL.

    373 GitHub stars~1.2k tokensUpdated 6 mo ago
    Research & ScienceAuto-check passed
  • Review

    Muuuun/luxas

    Write domain-authentic review articles that synthesize rather than stack.

    1.2k GitHub stars~2.1k tokensUpdated 1 mo ago
    Research & ScienceAuto-check passed

More from jinzhezenggroup/computational-chemistry-agent-skills

All 62 skills in this repo
  • Quantum ESPRESSO DFT Task Builder

    jinzhezenggroup/computational-chemistry-agent-skills

    Turns a user-supplied atomic structure and DFT settings into a runnable Quantum ESPRESSO input file, stopping short of submitting the job.

    148 GitHub stars~1.8k tokensUpdated 2 days ago
    Auto-check passed
  • DP-GEN Simplify Workflow

    jinzhezenggroup/computational-chemistry-agent-skills

    Prepares, validates and runs DP-GEN simplify jobs that thin out repeated or redundant DeepMD datasets, generating param.json and machine.json for local or scheduler runs.

    148 GitHub stars~2.7k tokensUpdated 2 days ago
    Auto-check passed
  • LAMMPS with DeePMD-kit

    jinzhezenggroup/computational-chemistry-agent-skills

    Prepares and runs molecular dynamics simulations in LAMMPS with a DeePMD machine-learning potential, writing the input script and choosing NVE, NVT or NPT.

    148 GitHub stars~2.8k tokensUpdated 2 days ago
    Auto-check passed
  • LAMMPS ReaxFF Setup

    jinzhezenggroup/computational-chemistry-agent-skills

    Prepares and explains LAMMPS input scripts for reactive molecular dynamics with the ReaxFF potential, including charge equilibration and ensemble choice.

    148 GitHub stars~1.8k tokensUpdated 2 days ago
    Auto-check passed
  • RDKit Conformer Generator

    jinzhezenggroup/computational-chemistry-agent-skills

    Generates 3D molecular conformers from SMILES strings or files with RDKit, keeps the lowest-energy one per molecule, and falls back to 2D coordinates when embedding fails.

    148 GitHub stars~2.4k tokensUpdated 2 days ago
    Auto-check passed
  • RDKit Descriptors and Fingerprints

    jinzhezenggroup/computational-chemistry-agent-skills

    Computes RDKit physicochemical descriptors and molecular fingerprints from SMILES through a uv-run CLI script that skips and logs invalid molecules.

    148 GitHub stars~2.3k tokensUpdated 2 days ago
    Auto-check passed

Questions about Packmol Generate Mixture

What does Packmol Generate Mixture do?

A tool for generating initial packed molecular configurations (XYZ format) from single-molecule structures by calculating box dimensions, writing input scripts, and executing Packmol. Packmol Generate Mixture is an agent skill from jinzhezenggroup/computational-chemistry-agent-skills. A tool for generating initial packed molecular configurations (XYZ format) from single-molecule structures by calculating box dimensions, writing input scripts, and executing Packmol.

When should I use Packmol Generate Mixture?

Packmol Generate Mixture fits situations like: you need to randomly pack a specific number of molecules into a simulation box (defined by target density; fixed lengths) to create starting geometries for molecular dynamics; related computational chemistry workflows.

How do I install Packmol Generate Mixture in Claude Code?

Run `npx skills add jinzhezenggroup/computational-chemistry-agent-skills --skill packmol-generate-mixture -a claude-code`. Or copy the skill folder (data-processing/packmol-generate-mixture in jinzhezenggroup/computational-chemistry-agent-skills) into .claude/skills/packmol-generate-mixture in your project. Claude Code loads it when a task matches its description.

How do I install Packmol Generate Mixture in Codex?

Run `npx skills add jinzhezenggroup/computational-chemistry-agent-skills --skill packmol-generate-mixture -a codex`. Or copy the skill folder (data-processing/packmol-generate-mixture in jinzhezenggroup/computational-chemistry-agent-skills) into .agents/skills/packmol-generate-mixture in your project. Codex loads it when a task matches its description.

Can I use Packmol Generate Mixture in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add jinzhezenggroup/computational-chemistry-agent-skills --skill packmol-generate-mixture -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/packmol-generate-mixture, .gemini/skills/packmol-generate-mixture, .github/skills/packmol-generate-mixture and .opencode/skills/packmol-generate-mixture in your project.

What does Packmol Generate Mixture need to run?

Going by SKILL.md and its folder, Packmol Generate Mixture needs the command-line tools its instructions call (uvx). Compatibility (from SKILL.md): Requires uv and internet access (uses `uvx packmol ...`)..

Does Packmol Generate Mixture access the network?

SKILL.md contains no URLs. Its commands use uvx, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Packmol Generate Mixture safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Packmol Generate Mixture use?

Packmol Generate Mixture is published under the LGPL-3.0-or-later licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Packmol Generate Mixture use?

About 1.4k tokens (SKILL.md is roughly 5.4k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Packmol Generate Mixture?

Skills that share tags, products or a category with Packmol Generate Mixture: Astropy (zLanqing/codex-claude-academic-skills, 4.7k stars), Pymatgen (zLanqing/codex-claude-academic-skills, 4.7k stars), Cantera Ignition Delay (K-Dense-AI/scientific-agent-skills, 48k stars) and Weather (trpc-group/trpc-agent-go, 1.9k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Packmol Generate Mixture?

jinzhezenggroup (a GitHub organization) maintains it in jinzhezenggroup/computational-chemistry-agent-skills, which has 148 GitHub stars. The repository holds 62 skills in this directory. The repository was last updated on October 9, 2026.

Source: jinzhezenggroup/computational-chemistry-agent-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.