Agent skill

Vasp Router

by Hello-QM in Hello-QM/catgo-LRG

Route VASP calculation requests to the correct task type. An agent skill from Hello-QM/catgo-LRG.

AGPL-3.0Auto-check passed

Install Vasp Router

skills CLI
$ npx skills add Hello-QM/catgo-LRG --skill vasp-router -a claude-code

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

GitHub CLI
$ gh skill install Hello-QM/catgo-LRG vasp-router --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/Hello-QM/catgo-LRG.git skills-src && mkdir -p .claude/skills && cp -r skills-src/server/catgo/workflow/skills/vasp .claude/skills/vasp-router && 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
vasp-router
GitHub stars
205
Token cost
~1.2k tokens
SKILL.md length
364 words
Files
1
Skills in repo
75
Repo updated
First seen
Licence
AGPL-3.0

At a glance

Route VASP calculation requests to the correct task type. An agent skill from Hello-QM/catgo-LRG.

  • Works in 6 steps: POTCAR selection → ENCUT selection → K-points → …
  • SKILL.md covers Routing Table, VASP-Specific Policies —…, Config Defaults (from… and Quick Examples, plus 2 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Vasp Router is an agent skill from Hello-QM/catgo-LRG. Route VASP calculation requests to the correct task type. Enforces VASP-specific policies for POTCAR, ENCUT, k-points, and slab handling.

Its SKILL.md is about 1.2k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

The repository describes itself as: AI-driven workbench for computational materials science — interactive 3D structure viewer, natural-language CatBot assistant, visual DAG workflow engine, HPC job submission… The licence is AGPL-3.0.

Example prompts

  • “/vasp-router”

Requirements

  • Python 3

Workflow steps

6 steps, taken from the step headings in SKILL.md.

  1. POTCAR selection
  2. ENCUT selection
  3. K-points
  4. ISPIN for magnetic systems
  5. Slab calculations — frozen layers
  6. Dispersion corrections

What it can do on your machine

Read from SKILL.md and the folder at commit fd6291b. 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

    No scripts in the folder and no shell commands in SKILL.md (its code samples are python and yaml).

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

  • Network

    No URLs in SKILL.md.

    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.

Context cost

Vasp Router loads about 1.2k tokens when it runs. Until then it costs about 37 tokens; SKILL.md has 364 words of instructions outside code blocks.

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

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 Hello-QM/catgo-LRG at commit fd6291b, republished under its AGPL-3.0 licence (© Hello-QM). 364 words, ~1,195 tokens.

Download SKILL.mdSave it as .claude/skills/vasp-router/SKILL.md (or your agent's skills folder).
name
vasp-router
description
Route VASP calculation requests to the correct task type. Enforces VASP-specific policies for POTCAR, ENCUT, k-points, and slab handling.

VASP Router

Route VASP requests to the appropriate sub-skill based on the calculation type.

Routing Table

User intentRoute to
Geometry optimization, relaxation, structural optimizationrelax/SKILL.md
Single point energy, SCF calculationstatic/SKILL.md
Density of states (DOS, PDOS, d-band center)dos/SKILL.md
Band structure, electronic bandsband/SKILL.md
Vibrational frequencies, ZPE, thermodynamicsfreq/SKILL.md
Ab initio molecular dynamics (AIMD)md/SKILL.md

VASP-Specific Policies — ALWAYS enforce these

1. POTCAR selection

POTCAR is handled automatically by the HPC engine based on the structure's elements. You do NOT need to specify POTCAR files. The engine uses the recommended POTCARs (e.g., Ti_pv, O, Ru_pv).

If the user requests specific POTCARs (e.g., _sv variants), pass them via:

python
wf.add_task(geo_opt, structure=s, POTCAR_MAP={"Ti": "Ti_sv", "O": "O"})
2. ENCUT selection

Default: 520 eV (suitable for most oxide catalysts).

Guidelines:

  • Bulk metals: 400-520 eV usually sufficient
  • Oxides and surfaces: 520 eV recommended
  • Convergence tests: test 400, 450, 500, 550, 600 eV
  • If user specifies ENCUT, respect it without question
3. K-points

K-points are auto-generated from the structure's cell dimensions. Override with:

python
wf.add_task(geo_opt, structure=s, KPOINTS=[4, 4, 1])  # Gamma-centered

Slab guideline: use [N, N, 1] where N gives ~0.03 A^-1 spacing in-plane.

4. ISPIN for magnetic systems

Default: ISPIN=1 (non-spin-polarized).

Set ISPIN=2 for:

  • Transition metals: Fe, Co, Ni, Mn, Cr
  • Their oxides: Fe2O3, CoO, NiO, MnO2
  • Any system where user mentions magnetism or spin
python
wf.add_task(geo_opt, structure=s, ISPIN=2, MAGMOM="5*4.0 10*0.6")
Show full SKILL.md (159 more words)Show less
5. Slab calculations — frozen layers

For surface slabs, ALWAYS freeze bottom layers:

python
# Typical 4-layer slab: freeze bottom 2 layers
wf.add_task(geo_opt, structure=slab,
            ISIF=2,           # Fix cell shape (mandatory for slabs)
            selective_dynamics=True,
            freeze_layers=2)  # Freeze bottom 2 layers

Rules:

  • ISIF must be 2 for slabs (never 3 — that allows cell shape change)
  • Freeze at least the bottom half of slab layers
  • Adsorbate atoms are always free to move
6. Dispersion corrections

For adsorption studies, consider DFT-D3:

python
wf.add_task(geo_opt, structure=s, IVDW=11, LDAU=False)

Only add if user requests it or the system involves weak interactions (physisorption, vdW heterostructures).

Config Defaults (from ~/.catgo/config.yaml)

These are the system defaults. Only specify parameters that differ:

yaml
defaults.vasp:
  ENCUT: 520
  EDIFF: 1e-5
  PREC: Accurate
  ALGO: Fast
  ISMEAR: 0
  SIGMA: 0.05
  LREAL: Auto
  NELM: 200
  ISPIN: 1
  LORBIT: 11
  LWAVE: False
  LCHARG: False
  NCORE: 4

Quick Examples

Bulk relaxation
python
wf.add_task(geo_opt, structure=bulk_json, ISIF=3, system_name="bulk_TiO2")
Slab relaxation with frozen layers
python
wf.add_task(geo_opt, structure=slab_json, ISIF=2,
            freeze_layers=2, system_name="TiO2_110_slab")
Single point after relaxation
python
opt = wf.add_task(geo_opt, structure=s, system_name="opt")
sp = wf.add_task("single_point", structure=opt.output.structure, system_name="SP")
Full OER chain (per adsorbate)
python
opt = wf.add_task(geo_opt, structure=s, ISIF=2, freeze_layers=2, system_name="*OH")
frq = wf.add_task(freq, structure=opt.output.structure,
                  freeze_mode="layers", freeze_layers=4, system_name="*OH")
gib = wf.add_task(gibbs_energy, energy=opt.output.energy,
                  frequencies=frq.output.frequencies, system_name="*OH")

MCP Workflow Creation

catgo_workflow_engine(action="create", params={"name": "VASP relaxation"})
# → {"workflow_id": "wf_xxx"}

catgo_workflow_engine(action="add_task", params={
  "workflow_id": "wf_xxx",
  "task_type": "geo_opt",
  "software": "vasp",
  "structure": "<json>",
  "ISIF": 2,
  "system_name": "slab_relax"
})

catgo_workflow_engine(action="submit", params={"workflow_id": "wf_xxx"})

Common Mistakes to Avoid

  1. Using ISIF=3 for slabs (allows cell to change shape — unphysical for surfaces)
  2. Forgetting to freeze bottom slab layers (all atoms relax toward vacuum)
  3. Using ISMEAR=0 for metals (should use ISMEAR=1, SIGMA=0.2 for metals)
  4. Setting LREAL=.FALSE. for large cells >200 atoms (use LREAL=Auto)
  5. Not setting ISPIN=2 for magnetic systems (wrong energetics)

© Hello-QM, AGPL-3.0. 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 server/catgo/workflow/skills/vasp of Hello-QM/catgo-LRG.

Open the folder on GitHubat commit fd6291b

Compare with similar skills

Vasp Router 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.

Vasp Router compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Vasp Router this skillHello-QM/catgo-LRG205—~1.2kAutomated safety check: PassAGPL-3.0
Router Onweave-os/router5.6k—~169Automated safety check: PassApache-2.0
Acp Routeropenclaw/openclaw392k—~2.4kAutomated safety check: PassMIT
Router Offweave-os/router5.6k—~183Automated safety check: PassApache-2.0
OmniRoute Routing CLIdiegosouzapw/OmniRoute75k—~342Automated safety check: PassMIT
OmniRoute Combo Routingdiegosouzapw/OmniRoute75k—~2.1kAutomated safety check: PassMIT

Similar skills

  • Router On

    weave-os/router

    Route Codex through the Weave Router again (turn it back on).

    5.6k GitHub stars~169 tokensUpdated today
    Auto-check passed
  • Acp Router

    openclaw/openclaw

    Route plain-language requests for Claude Code, Cursor, Copilot, OpenClaw ACP, OpenCode, Gemini CLI, Qwen, Kiro, Kimi, iFlow, Factory Droid, Kilocode, or explicit ACP harness work into either…

    392k GitHub stars~2.4k tokensUpdated today
    Writing & ContentAuto-check passed
  • Router Off

    weave-os/router

    Route Codex to its default provider again (turn the Weave Router off).

    5.6k GitHub stars~183 tokensUpdated today
    Auto-check passed
  • OmniRoute Routing CLI

    diegosouzapw/OmniRoute

    Creates, switches, and inspects OmniRoute model-routing combos, plus a suggestion command with cost and latency constraints.

    75k GitHub stars~342 tokensUpdated today
    AI & LLM EngineeringAuto-check passed
  • OmniRoute Combo Routing

    diegosouzapw/OmniRoute

    Manages OmniRoute routing combos through its REST API: create and update combos, choose from 19 strategies, set fallback chains, test outcomes and read metrics.

    75k GitHub stars~2.1k tokensUpdated today
    Backend & APIsAuto-check passed
  • Explains LobeHub's split between src/routes page segments and src/features domain code, and where router config, redirects and platform adapters belong.

    83k GitHub stars~3.2k tokensUpdated today
    Frontend & DesignAuto-check passed

More from Hello-QM/catgo-LRG

All 75 skills in this repo
  • Campaign Md Orchestration

    Hello-QM/catgo-LRG

    Drive a file-first, agent-in-the-loop computational campaign via a folder + markdown tree (no DB).

    205 GitHub stars~1.6k tokensUpdated 18 days ago
    Auto-check passed
  • Catgo Gibbs Pipeline

    Hello-QM/catgo-LRG

    Compute adsorption/reaction Gibbs free energies, free-energy diagrams, and electrochemical overpotentials (HER/ORR/OER/CO2RR/NRR) with VASP.

    205 GitHub stars~669 tokensUpdated 18 days ago
    Auto-check passed
  • Abinit

    Hello-QM/catgo-LRG

    Generate and manage ABINIT DFT calculations. An agent skill from Hello-QM/catgo-LRG.

    205 GitHub stars~963 tokensUpdated 18 days ago
    Auto-check passed
  • Adsorbate Placement

    Hello-QM/catgo-LRG

    A skill your agent uses when the user asks to place an adsorbate molecule on a surface, find adsorption sites, or set up a surface+adsorbate model for DFT.

    205 GitHub stars~3k tokensUpdated 18 days ago
    Auto-check passed
  • Adsorption Energy

    Hello-QM/catgo-LRG

    A skill your agent uses when the user asks for adsorption energy, binding energy, or wants to compare how strongly a molecule binds to a surface.

    205 GitHub stars~1.4k tokensUpdated 18 days ago
    Auto-check passed
  • Analysis Router

    Hello-QM/catgo-LRG

    A skill your agent uses when the user asks to analyze computational results: Gibbs free energy, OER/HER/CO2RR overpotentials, adsorption energy, convergence tests, DOS/d-band analysis, or Bader…

    205 GitHub stars~869 tokensUpdated 18 days ago
    Auto-check passed

Questions about Vasp Router

What does Vasp Router do?

Route VASP calculation requests to the correct task type. An agent skill from Hello-QM/catgo-LRG. Vasp Router is an agent skill from Hello-QM/catgo-LRG. Route VASP calculation requests to the correct task type.

How do I install Vasp Router in Claude Code?

Run `npx skills add Hello-QM/catgo-LRG --skill vasp-router -a claude-code`. Or copy the skill folder (server/catgo/workflow/skills/vasp in Hello-QM/catgo-LRG) into .claude/skills/vasp-router in your project. Claude Code loads it when a task matches its description.

How do I install Vasp Router in Codex?

Run `npx skills add Hello-QM/catgo-LRG --skill vasp-router -a codex`. Or copy the skill folder (server/catgo/workflow/skills/vasp in Hello-QM/catgo-LRG) into .agents/skills/vasp-router in your project. Codex loads it when a task matches its description.

Can I use Vasp Router 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 Hello-QM/catgo-LRG --skill vasp-router -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/vasp-router, .gemini/skills/vasp-router, .github/skills/vasp-router and .opencode/skills/vasp-router in your project.

What does Vasp Router need to run?

SKILL.md names no scripts, command-line tools or credentials: Vasp Router is instructions for the agent only. Our summary lists: Python 3.

Does Vasp Router access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Vasp Router 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 Vasp Router use?

Vasp Router is published under the AGPL-3.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Vasp Router use?

About 1.2k tokens (SKILL.md is roughly 4.8k 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 Vasp Router?

Skills that share tags, products or a category with Vasp Router: Router On (weave-os/router, 5.6k stars), Acp Router (openclaw/openclaw, 392k stars), Router Off (weave-os/router, 5.6k stars) and OmniRoute Routing CLI (diegosouzapw/OmniRoute, 75k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Vasp Router?

Hello-QM (a GitHub user) maintains it in Hello-QM/catgo-LRG, which has 205 GitHub stars. The repository holds 75 skills in this directory. The repository was last updated on September 22, 2026.

Source: Hello-QM/catgo-LRG on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.