Automated summary
Generates and submits Quantum ESPRESSO (pw.x) DFT calculations as shell tasks inside the CatGo workflow engine, with SCF/relax input templates and parameter guidance.
Strengths
- Ships a complete, copy-ready pw.x input template covering CONTROL, SYSTEM, ELECTRONS, cell, positions and k-points
- Gives per-parameter reference values (ecutwfc, ecutrho, conv_thr, mixing_beta, smearing) together with the reasoning behind them
- Clearly separates relax from vc-relax and explains fixing surface atoms through if_pos flags
- Enumerates the usual failure modes: ecutrho ratio for ultrasoft pseudos, mixing divergence in metals, thin slab vacuum, k-points along the vacuum axis
Limitations
- Depends on CatGo MCP tools (catgo_view, catgo_workflow_engine); outside that environment only the input templates are usable
- No native QE engine exists yet, so runs go through a shell task with hand-generated input files
- Does not cover post-processing such as phonons, DOS or band structures beyond pointing to other skills
Use when the user explicitly asks for Quantum ESPRESSO / pw.x plane-wave calculations with norm-conserving or ultrasoft pseudopotentials.
Avoid it when the user targets VASP/PAW or an all-electron code, or when QE and a pseudopotential library are not installed on the target HPC system.
Security analysis
CautionThe skill does not contain destructive, exfiltrating, obfuscated, or safety-disabling instructions. It does, however, direct execution of a shell command on an HPC system and relies on undeclared tool permissions, so it is best treated as caution rather than fully safe.
- •Uses a shell task to invoke `pw.x` on an HPC target; execution is legitimate scientific computation but still depends on external binaries and pseudopotential files.
- •No allowed-tools are declared, so the agent's permission to use the referenced `catgo_*` workflow and shell tools is unspecified.
Examples
Set up a Quantum ESPRESSO pw.x relaxation for a TiO2 (110) slab with 20 Å of vacuum, fixing the bottom two atomic layers, using SSSP pseudopotentials in ./pseudo.Write a pw.x SCF input for bulk silicon with ecutwfc 60 Ry and a 8x8x8 k-point grid, then submit it as a shell task in my workflow.My QE SCF for a Pt surface keeps diverging — adjust mixing_beta and mixing_mode in the pw.x input and explain which ultrasoft ecutrho ratio I should use.name: quantum-espresso description: > Generate and manage Quantum ESPRESSO (pw.x) DFT calculations. Use when the user requests QE, Quantum ESPRESSO, pw.x, or plane-wave pseudopotential calculations outside VASP. compatibility: > Requires Quantum ESPRESSO installed on the HPC target. Pseudopotential files (UPF) must be available in the configured pseudo_dir.
Quantum ESPRESSO (pw.x)
When to Use
- User explicitly requests Quantum ESPRESSO / QE / pw.x
- User needs norm-conserving or ultrasoft pseudopotentials (not PAW-only like VASP)
- User wants open-source plane-wave DFT
- User needs ph.x phonon calculations (hand off to
analysis/phonopy/SKILL.mdfor post-processing)
Prerequisites
- QE binaries (
pw.x,pp.x) accessible on HPC - Pseudopotential library (SSSP or PseudoDojo recommended) in a known directory
- Structure loaded in viewer — verify with
catgo_view(action="get_state")
Workflow Steps
1. Verify structure
catgo_view(action="get_state")
2. Create workflow
catgo_workflow_engine(action="create", params={"name": "QE relaxation - TiO2"})
3. Add QE task
CatGo does not yet have a native QE engine. Use task_type: "shell" with input file generation.
catgo_workflow_engine(action="add_task", params={
"workflow_id": "wf_xxx",
"task_type": "shell",
"name": "qe_relax",
"command": "pw.x -in relax.in > relax.out",
"input_files": {
"relax.in": "<pw.x input content>"
},
"system_name": "TiO2_relax"
})
When a @register_engine("qe") is added to CatGo, use task_type: "geo_opt" with software: "qe" instead.
4. Submit
catgo_workflow_engine(action="submit", params={"workflow_id": "wf_xxx"})
Input File Template — SCF
&CONTROL
calculation = 'scf'
pseudo_dir = './pseudo/'
outdir = './tmp/'
tprnfor = .true.
tstress = .true.
/
&SYSTEM
ibrav = 0
nat = <natoms>
ntyp = <ntypes>
ecutwfc = 60.0
ecutrho = 480.0
occupations = 'smearing'
smearing = 'mv'
degauss = 0.02
/
&ELECTRONS
conv_thr = 1.0d-6
mixing_beta = 0.3
/
ATOMIC_SPECIES
<element> <mass> <element>.UPF
CELL_PARAMETERS angstrom
<a1x> <a1y> <a1z>
<a2x> <a2y> <a2z>
<a3x> <a3y> <a3z>
ATOMIC_POSITIONS angstrom
<element> <x> <y> <z>
K_POINTS automatic
<k1> <k2> <k3> 0 0 0
Parameter Guidance
| Parameter | Typical value | Notes | |---|---|---| | ecutwfc | 40-80 Ry | Depends on pseudopotential; SSSP suggests per-element values | | ecutrho | 4-12x ecutwfc | NC: 4x, US: 8-12x | | conv_thr | 1.0d-6 | SCF convergence; tighten to 1.0d-8 for phonons | | mixing_beta | 0.3-0.7 | Lower for metals/magnetic systems | | K_POINTS | auto from cell | ~0.03 A^-1 spacing, Gamma for molecules | | smearing | 'mv' | Marzari-Vanderbilt cold smearing; use 'gaussian' for insulators |
Relaxation-Specific Parameters
Add to input for geometry optimization:
&CONTROL
calculation = 'relax' ! ions only
! or 'vc-relax' ! ions + cell
/
&IONS
ion_dynamics = 'bfgs'
/
&CELL ! only for vc-relax
cell_dynamics = 'bfgs'
press = 0.0
/
- Use
relaxfor slabs (fixed cell),vc-relaxfor bulk - For slabs: constrain bottom atoms with
if_posflags (0 = fixed)
Common Pitfalls
- ecutrho too low for US pseudopotentials — NC needs 4x ecutwfc, US needs 8-12x. Check pseudopotential header.
- Mixing divergence for metals — reduce
mixing_betato 0.1-0.2 and trymixing_mode = 'local-TF' - Wrong ibrav — always use
ibrav = 0with explicit CELL_PARAMETERS to avoid ambiguity - Missing pseudo files — ensure UPF filenames match ATOMIC_SPECIES exactly (case-sensitive)
- Slab vacuum too thin — need at least 15 A vacuum; add
assume_isolated = '2D'for 2D corrections - K-points along vacuum direction — slabs must use k3=1 (single k-point in z)
From the file to a first result
The download contains exactly the content displayed on this page. This copy may differ from the latest version in the source repository.
View the source and supporting filesThis download contains SKILL.md only. Any scripts, references, templates and dependencies are not included. Get the required files from the source, preserving their directory structure, before continuing.
1. Download the file
Download SKILL.mdFrom the root of a test project, save the file as .skill-downloads/quantum-espresso-pw-x-mrwakd9o/SKILL.md, or use the command below. This folder is for inspecting the skill before installation.
Command for macOS/Linux or WSL: requires a POSIX shell and curl. On Windows without WSL, use the download button and create the folder manually.
mkdir -p '.skill-downloads/quantum-espresso-pw-x-mrwakd9o' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/quantum-espresso-pw-x-mrwakd9o/download' --output '.skill-downloads/quantum-espresso-pw-x-mrwakd9o/SKILL.md.part' && mv '.skill-downloads/quantum-espresso-pw-x-mrwakd9o/SKILL.md.part' '.skill-downloads/quantum-espresso-pw-x-mrwakd9o/SKILL.md'2. Check prerequisites
Read SKILL.md before using it. If it references scripts or external services, inspect them and prepare the required access in your test environment.
Environment declared by the author: Requires Quantum ESPRESSO installed on the HPC target. Pseudopotential files (UPF) must be available in the configured pseudo_dir.
Original excerpt: Prerequisites
- QE binaries (
pw.x,pp.x) accessible on HPC - Pseudopotential library (SSSP or PseudoDojo recommended) in a known directory
- Structure loaded in viewer — verify with
catgo_view(action="get_state")
The platforms on this page are catalog indications. The paths below follow tool documentation; they do not prove this skill has been run in those tools. No minimum tool version is confirmed for this listing.
3. Load the skill
After inspection, copy the complete folder into your project using one of the commands below, then open a new tool session. The command stops if a folder with the same name already exists: compare the files before replacing it.
Claude Code
test -f '.skill-downloads/quantum-espresso-pw-x-mrwakd9o/SKILL.md' && test -s '.skill-downloads/quantum-espresso-pw-x-mrwakd9o/SKILL.md' && mkdir -p '.claude/skills' && test ! -e '.claude/skills/quantum-espresso' && cp -R '.skill-downloads/quantum-espresso-pw-x-mrwakd9o' '.claude/skills/quantum-espresso'Cursor
test -f '.skill-downloads/quantum-espresso-pw-x-mrwakd9o/SKILL.md' && test -s '.skill-downloads/quantum-espresso-pw-x-mrwakd9o/SKILL.md' && mkdir -p '.cursor/skills' && test ! -e '.cursor/skills/quantum-espresso' && cp -R '.skill-downloads/quantum-espresso-pw-x-mrwakd9o' '.cursor/skills/quantum-espresso'Codex
test -f '.skill-downloads/quantum-espresso-pw-x-mrwakd9o/SKILL.md' && test -s '.skill-downloads/quantum-espresso-pw-x-mrwakd9o/SKILL.md' && mkdir -p '.agents/skills' && test ! -e '.agents/skills/quantum-espresso' && cp -R '.skill-downloads/quantum-espresso-pw-x-mrwakd9o' '.agents/skills/quantum-espresso'OpenSkills
OpenSkills must already be installed. The local install/read procedure is checked with OpenSkills 1.5.0, which requires Node.js ≥ 20.6.0. Catalog slugs are not resolved automatically.
Official OpenSkills installationopenskills install './.skill-downloads/quantum-espresso-pw-x-mrwakd9o'openskills read 'quantum-espresso-pw-x-mrwakd9o'Reading should display the installed file content and its base directory. It does not run the skill or install its dependencies.
For an agent that reads AGENTS.md, then sync the index. This command changes AGENTS.md: review the diff before using it.
openskills syncManual method or another tool: attach SKILL.md to a conversation, or open it in an agent that can read files. Include any required supporting resources. No universal folder is recognized by every tool.
4. Try a first task
Use a short, synthetic input: an API endpoint, a small document or an interface brief. In a new conversation, attach the file or give the agent its path, then adapt this request:
Read .skill-downloads/quantum-espresso-pw-x-mrwakd9o/SKILL.md and apply its instructions to this example: [describe a test input]. Identify any missing files, dependencies or access. Produce the result requested by the skill without inventing data or running unreviewed scripts.Expected result: output matching the skill instructions, or a precise list of missing prerequisites. A read confirmation alone does not validate a first use. If an external resource is unavailable, that path remains untested.
Create Interactive Maps with kepler.gl
Data & AI
Create interactive map visualizations and export standalone HTML using the keplergl Python package. Use to plot geospatial data from DataFrames, GeoJSON, or CSV.
Agent-Driven Parameter Optimization
Data & AI
Guide for optimizing configurable systems with a measurable objective, using bounded trials and evidence-based recommendations.
ICP Visitor Outreach
Data & AI
Identify signed-up users matching the ideal customer profile but stalled, and draft personalized outreach to re-engage them.