> Assemble and extract Gaussian .gjf input file sections (directives, route, title, molecule blocks, appendices) and build single- or multi-step Link1 jobs from modular component files. USE WHEN needed for generating, refactoring, templating, or scripting Gaussian job files.
npx skills add https://github.com/jinzhezenggroup/computational-chemistry-agent-skills --skill gjf-flux
gjf-flux is a command-line workflow for modular Gaussian .gjf files:
.gjf (including Link1 multi-step jobs)..gjf, or merge multiple tasks into a Link1 job.Use this skill when you need to:
.gjf jobs from smaller files (fragments, templates, parameterized directives)..gjf files by extracting specific sections.gjf-flux assumes a standard Gaussian input layout:
--Link1--, then a newline.# and continues through subsequent lines.(e.g., 0 1 or 0 1 0 1 0 1), representing charge/multiplicity pairs.
If a .gjf deviates from these conventions, extraction may fail or misclassify blocks.
When helping a user, clarify:
.gjf to read, or component files to assemble.job_index, 0-based), or how many steps to assemble..gjfuvx gjf-flux extract <section_name> <FILE.gjf> [--job_index N]
Where <section_name> is one of:
directivesroutetitlemolecule or molecule-<idx>appendix or appendix-<idx>Notes:
<idx> is 0-based.--job_index selects the Link1 step (0-based, default 0).Examples:
# Extract the route line from the first Link1 step
uvx gjf-flux extract route input.gjf
# Extract the second molecule block from step 0
uvx gjf-flux extract molecule-1 input.gjf
# Extract the first appendix block from Link1 step 2
uvx gjf-flux extract appendix-0 input.gjf --job_index 2
uvx gjf-flux assemble directives --chk FILE --mem SIZE --nprocshared N
This command accepts key/value pairs in the form --key value.
Examples:
uvx gjf-flux assemble directives --chk job.chk --mem 16GB --nprocshared 16
Tip: redirect to a file for later composition:
uvx gjf-flux assemble directives --chk job.chk --mem 16GB --nprocshared 16 > directives.txt
# line)uvx gjf-flux assemble route [-l p|n|t|""] <keywords...>
Examples:
#p Opt B3LYP/6-31G(d)
uvx gjf-flux assemble route -l p Opt B3LYP/6-31G(d)
# Use quotes for keywords with parentheses
uvx gjf-flux assemble route -l p "Opt(MaxCycle=100)" "Freq"
Tip:
uvx gjf-flux assemble route -l p "Opt(MaxCycle=100)" "Freq" > route.txt
uvx gjf-flux assemble molecules <frag1.txt> <frag2.txt> ... [--as-fragment] [--charge INT] [--multi INT]
Each fragment file must follow this format:
charge multiplicity (e.g., 0 1)Modes:
--as-fragment: assigns Fragment=1,2,... tags and expands the charge/multiplicity header.Examples:
# Merge two fragments into a single molecule block
uvx gjf-flux assemble molecules fragA.txt fragB.txt > molecule.txt
# Merge as fragments, overriding total charge/multiplicity
uvx gjf-flux assemble molecules fragA.txt fragB.txt --as-fragment --charge 0 --multi 1 > molecule.txt
uvx gjf-flux assemble appendices <app1.txt> <app2.txt> ...
Examples:
uvx gjf-flux assemble appendices basis.txt modredundant.txt > appendix.txt
.gjfuvx gjf-flux assemble job \
--directives directives.txt \
--route route.txt \
--title "Your title" \
--molecule molecule.txt [molecule2.txt ...] \
[--appendices appendix.txt ...]
uvx gjf-flux assemble tasks step1.gjf step2.gjf [step3.gjf ...] > link1.gjf
This example shows a single-step job assembled from:
assemble route.gjf, then re-merged (optionally overriding multiplicity).gjf files and concatenated> Note: This uses bash/zsh process substitution (<(...)). If you are on a shell that does not support it, redirect each block into a file first.
# 1) Build directives to a file (recommended; easier to audit)
uvx gjf-flux assemble directives --chk job.chk --mem 16GB --nprocshared 16 > directives.txt
# 2) Assemble a full .gjf using inline-generated route/molecule/appendix blocks
uvx gjf-flux assemble job \
--directives directives.txt \
--route <(uvx gjf-flux assemble route -l p "Opt(MaxCycle=100)" "Freq" B3LYP/6-31G(d)) \
--title "Opt+Freq from extracted building blocks" \
--molecule <( \
gjf-flux assemble molecules \
<(uvx gjf-flux extract molecule-0 reactant.gjf) \
fragment_extra.xyz \
--multi 1 \
) \
--appendices \
<(uvx gjf-flux extract appendix-1 reactant.gjf) \
<(uvx gjf-flux extract appendix-0 reference.gjf) \
app_manual.txt \
> job.gjf
Variants:
--molecule <(uvx gjf-flux extract molecule-0 input.gjf).gjf and then:uvx gjf-flux assemble tasks step1.gjf step2.gjf > link1.gjfdirectives.txt (from assemble directives or manual)route.txt (from assemble route)molecule.txt (from assemble molecules or extracted from a prior .gjf)appendix.txt (optional)assemble job..gjf and then merge using assemble tasks.job_index, molecule-<idx>, and appendix-<idx> are all 0-based..gjf formatting: unusual blank-line structure can break parsing.charge multiplicity: otherwise molecule merge will fail..gjf if parsing fails.This skill should be used when refactoring existing CSS from inline styles or utility classes to semantic patterns. Triggers on "refactor CSS", "extract styles", "consolidate CSS", "convert inline", "clean up styles", "migrate to semantic". Transforms to semantic classes with dark mode and tests.
Audit and improve SwiftUI runtime performance from code review and architecture. Use for requests to diagnose slow rendering, janky scrolling, high CPU/memory usage, excessive view updates, or layout thrash in SwiftUI apps, and to provide guidance for user-run Instruments profiling when code review alone is insufficient.
Run lint on affected packages, parse errors, and auto-fix common issues (design tokens, React.FC, SSR safety, import restrictions)
Read this before building a component or diagnosing a build failure; do not guess build flags or the inner loop. Explains how to build, iterate on, and debug an azldev component, covering comp build flags (local-repo, preserve-buildenv), the render/build/test inner loop, diff-sources, and disabling a failing %check via check.skip. Triggers include build component, build failed, build error, inner loop, preserve buildenv, local repo, disable check.
Load a sharded, on-disk dataset (sharded .npy, Parquet/Arrow, raw binary, sharded HDF5, custom layouts) into a distributed cuPyNumeric ndarray via a manual partition + leaf @task launch with CPU/OMP/GPU variants. Use when no single-call loader fits, including when per-shard row counts differ across files. Prefer cupynumeric.load or legate.io.hdf5.from_file when they apply.
Use when configuring, running, or fixing PHPStan static analysis in WordPress projects (plugins/themes/sites): phpstan.neon setup, baselines, WordPress-specific typing, and handling third-party plugin classes.
Create, read, and analyze C# scripts — create, read, replace, append, search, rename, move, and delete scripts, plus compile feedback. Use when authoring or editing C# code, searching across scripts, refactoring file layout, or checking compile errors, even if the user just says "写个脚本" or "改代码". 对 C# 脚本进行增删改查与分析(创建、读取、替换、追加、搜索、重命名、移动、删除脚本,以及编译反馈);当用户要编写或编辑 C# 代码、跨脚本搜索、重构文件布局、或检查编译错误时使用。
Quick automated lint — detects common design system violations in seconds
Take jinzhezenggroup/gjf-flux from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.
The instructions reference uvx.
Without those the skill loads but fails at the first command.