ase

A guide to ASE, a Python toolkit for building and studying atomic structures and running atomistic simulations.

In plain words
What is it for?
It is for creating and editing molecules or materials, optimizing their geometry, running molecular dynamics, finding transition states, calculating vibrations, and reading or writing common structure files.
Why use it?
It lets you keep one workflow while changing the scientific calculator used to estimate energies and forces, such as ORCA, GPAW, xTB, or LAMMPS.

Skill for Claude CodeCodex

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/kdevos12/alkyl/ase
Any agent
npx skills add Kdevos12/ALKYL --skill ase
Clone the repo
git clone --depth 1 https://github.com/Kdevos12/ALKYL

Made for: Claude Code, Codex.

Per session 55 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,057 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00055 $0.01057
Opus 5 $0.00028 $0.00528
Sonnet 5 $0.00011 $0.00211
Haiku 4.5 $0.00006 $0.00106

Measured 2d ago against content hash d4f6b503c0a0, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

ase scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

skills/ase/SKILL.md · 97 lines

How it starts

The opening of the file, as written. The whole thing — 97 lines — stays where its author put it; the contents beside it link to each section on GitHub.

ASE — Atomic Simulation Environment

ASE 3.24.0 (December 2024). Central object: Atoms. Calculators are decoupled — swap between EMT, xTB, ORCA, GPAW without changing workflow.

When to Use This Skill

  • Building and manipulating atomic structures (molecules, surfaces, bulk, slabs)
  • Geometry optimization (DFT, semi-empirical, force fields)
  • Molecular dynamics: NVE, NVT (Langevin, Berendsen), NPT
  • Transition state search: NEB, climbing image, AutoNEB
  • Vibrational analysis, IR spectra, zero-point energy, thermochemistry
  • Interfacing with ORCA, GPAW, xTB, VASP, LAMMPS, Quantum ESPRESSO
  • Reading/writing structure files: CIF, XYZ, TRAJ, SDF, PDB, VASP POSCAR

Quick Start

from ase import Atoms
from ase.build import molecule
from ase.calculators.emt import EMT
from ase.optimize import BFGS

# Build water molecule
atoms = molecule('H2O')
atoms.calc = EMT()  # fast toy calculator

# Geometry optimization
opt = BFGS(atoms, trajectory='h2o.traj', logfile='opt.log')
opt.run(fmax=0.05)  # eV/Å convergence criterion

print(atoms.get_potential_energy())  # eV
print(atoms.get_forces())            # eV/Å

Router — What to Read

Task Reference
Atoms object, cell, PBC, building molecules/surfaces/bulk references/atoms-structures.md
Calculators: EMT, ORCA, xTB, GPAW, LAMMPS, config references/calculators.md
Geometry optimization, constraints, filters, unit cells references/optimization.md
Molecular dynamics: NVE/NVT/NPT, thermostats, trajectories references/molecular-dynamics.md
NEB, climbing image, IDPP, AutoNEB, barrier extraction references/neb-transitions.md
Vibrations, phonons, IR, ZPE, thermochemistry references/vibrations-analysis.md

Key Modules

Module Import Role
Atoms from ase import Atoms Core structure object
units from ase import units Unit conversions (eV, Å, fs…)
io from ase import io Read/write all formats
build from ase.build import … molecule, bulk, surface, slab
optimize from ase.optimize import BFGS, FIRE, LBFGS Geometry optimizers
md from ase.md.verlet import VelocityVerlet Molecular dynamics
mep from ase.mep import NEB, DyNEB Minimum energy paths
vibrations from ase.vibrations import Vibrations Normal modes
phonons from ase.phonons import Phonons Phonon dispersion
constraints from ase.constraints import FixAtoms, FixBondLength Constraints
filters from ase.filters import ExpCellFilter, FrechetCellFilter Cell optimization
db from ase.db import connect ASE database

Read the full file on GitHub · 97 lines

Files

What ships with it

6 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 2d ago First seen · 97 lines · 55 tokens per session scan A d4f6b503c0a0

Subscribe to this mod's changes

ase is a skill published in the GitHub repository Kdevos12/ALKYL (6 stars, last pushed 5mo ago), licensed MIT. It adds 55 tokens to every session and 1,057 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

add-tool

Scaffold a new MCP tool definition. Use when the user asks to add a tool, create a new tool, or implement a new capability for the server.

cyanheads/pubchem-mcp-server · 35 tokens

api-errors

McpError constructor, JsonRpcErrorCode reference, and error handling patterns for @cyanheads/mcp-ts-core. Use when looking up error codes, understanding where errors should be thrown vs. caught, or using ErrorHandler.tryCatch in services.

cyanheads/pubchem-mcp-server · 54 tokens

field-test

Exercise tools, resources, and prompts against a live HTTP server via MCP JSON-RPC over curl. Starts the server, surfaces the catalog, runs real and adversarial inputs, and produces a tight report with concrete findings and numbered follow-up options. Use after adding or modifying definitions, or when the user asks to…

cyanheads/pubchem-mcp-server · 76 tokens

tool-defs-analysis

Read-only audit of MCP definition language across an existing surface — tools, resources, prompts, server instructions. Walks every definition file and checks 16 categories the LLM reads to decide whether and how to call: voice & tense, internal leaks, audience leaks, defaults, recovery hints, field descriptions…

cyanheads/pubchem-mcp-server · 177 tokens

add-service

Scaffold a new service integration. Use when the user asks to add a service, integrate an external API, or create a reusable domain module with its own initialization and state.

cyanheads/pubchem-mcp-server · 38 tokens

release-and-publish

Ship a release end-to-end across every registry the project targets (npm, MCP Registry, GitHub Releases for .mcpb bundles, GHCR). Runs the final verification gate, pushes commits and tags, then publishes to each applicable destination. Assumes git wrapup (version bumps, changelog, commit, annotated tag) is already…

cyanheads/pubchem-mcp-server · 112 tokens