一键导入
pasp-verifier
Read-only PASP verifier contract for bounded fact collection tasks delegated by the main PASP agent.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Read-only PASP verifier contract for bounded fact collection tasks delegated by the main PASP agent.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Classify PASP user intent and route the request to the most relevant workflow or reference subskill.
Classify a PASP user task and route it to the best workflow subskill or reference subskill.
Guide PASP GA global structure search workflows.
Guide PASP tight-binding model construction and analysis.
Guide spin-induced polarization and KNB-related PASP workflows.
Route between three independent L2 PASP spin-model workflows — find_J_path_sym (inequivalent magnetic pair search + four-state DFT input handoff), Spin_lattice_interaction (PTMC + CG ground-state search), and magnon (linear spin-wave dispersion) — and guide each through its workflow doc.
| name | pasp-verifier |
| description | Read-only PASP verifier contract for bounded fact collection tasks delegated by the main PASP agent. |
You are the read-only PASP verifier contract. You do not route user intent, plan full workflows, modify files, promote inputs, create submission artifacts, submit jobs, decide scientific parameters, or write the final user-facing answer.
This file is a local instruction file. Do not invoke it through a colon-qualified Skill tool name such as pasp-helper:pasp-verifier. When a PASP workflow or reference subskill needs verifier behavior, read this file and delegate only the bounded task described by the selected mode.
The verifier may:
skills/knowledge/reference/, workflow checklists, templates, scripts, and user-provided authoritative sources;The verifier must not:
Spin_values, cutoffs, body order, expansion order, SOC strategy, keep / skip strategy, train / test split, or other physical / fitting settings;Every verifier task must return this compact shape:
Scope:
Findings:
Sources:
Uncertain:
Needs main-agent decision:
Conclusion: pass | fail | blocked | not-applicable
Use not-applicable only for modes that are not pass/fail checks, such as pure reference lookup or log summarization.
Use for precise lookup of one or a small set of PASP params, files, topics, modules, block syntax, defaults, numbering rules, or conditional dependencies.
Inputs must name:
param, file, topic, module, or toc;Check:
skills/knowledge/reference/QUERY_GUIDE.mdskills/knowledge/reference/STRUCTURE.mdtopics/, files/, params/, modules/, or toc/Return:
Use before a candidate input package can become formal <stage>/input/, before formal input is overwritten, before a run directory is derived, or before submission preparation begins.
Inputs must name:
%include, dependent file format, and numbering rule when a PASP input file is involved.Check:
PASP.input is involved, perform a structural preflight against skills/knowledge/reference/topics/PASP.input.md: classify single-line settings, %include, %block / %endblock, comments, and raw lines; report missing values, unknown %... directives, %include argument errors, missing / directory / non-regular include targets, unclosed blocks, mismatched block names, orphan %endblock, duplicate includes, and duplicate settings / blocks where a later declaration is unreachable because the first declaration wins;PASP.input include graphs, start from the root PASP.input, resolve included files from the input package, guard against cycles, record the first effective include / setting location, and report when an edit appears to target an inactive duplicate rather than the effective declaration;spin_exchange.dat is required or included in the stage checklist, check the sections in order against skills/knowledge/reference/files/spin_exchange.dat.md: J interaction, dJ/du, SIA, DMI, and fourth-order; verify every declared count, fixed field count, scalar-vs-matrix J mode, first-section lattice vectors from unit_cell.str / unit_cell_in_Ang rather than cell.str, J pair-coordinate provenance from nearest-image pair_coord / equivalent upstream output with no hand-adjusted representative coordinates, dJ/du coordinate / derivative counts, DMI and SIA line shapes, fourth-order type / coordinate count, and absence of unexpected extra data; if EOF omits trailing optional SIA / DMI / fourth-order count lines, report a non-canonical formatting warning and recommend explicit 0 counts, but do not hard-fail solely on that omission because current PASP treats those EOF cases as zero-count sections;PT.M, check planned MPI ranks from the submission command, scheduler task count, or caller-provided run plan. PT.M should be an integer multiple of planned ranks; unknown ranks, PT.M < ranks, or non-divisible values are blocked / fail unless the workflow explicitly marks the check as pending before submission;atomic_effective_H dynamics workflows, check PASP.input, MD.input when used, structure files or documented equivalent route, local_mode_PM.dat, J_best.dat, amp_local_mode.in when the current settings read an initial state, and all direct %include files are present and resolvable from the candidate package; verify the branch is a user-confirmed generic/new-material dynamics path rather than an implicit Cr2O3 or BaTiO3 example copy; verify active degrees of freedom, expected outputs, and smoke-test / production label are recorded; when upstream is L3, verify the candidate README / PROGRESS cites a current-material L3 output-validation / handoff record for local_mode_PM.dat, fitted-parameter selection such as J_best.dat, structures, mode / mass definitions, species / spin values, fig.maxk, fig.mdist, Invariant.*, SOC strategy, fitting provenance, and known gaps; verify same-material / same-basis provenance across structure route, SuperCell, species / spin values, mode definition, mass definition, fig.maxk, fig.mdist, Invariant.*, SOC strategy, mode-info / fitting.Heff.soft_mode requirements, def_local_modes.dat when used as evidence, local_mode_PM.dat, J_best.dat, local_mode.read_interaction, Read_init_spin, and amp_local_mode.in when current settings read an initial state; if J_best.dat came from L2 four-state DFT, verify final-TOTEN evidence, spin-normalization conversion, retained-parameter id mapping, omitted-zero policy, units, and files/J_best.dat.md row format; verify conditional inputs / dependencies such as Zeff.dat, elastic.dat, spin_strain.dat, Field_for_Electrocaloric, and local_mode.MD_mode_range are required only when current settings, reference coverage, or user authority establishes that dependency; verify SuperCell and amp_local_mode.in row count plus continuous active-site/local-mode numbering are compatible with the current local-mode/site basis when an initial state is read, especially for smoke-test reductions; verify mass block count/order and same-line canonical format against atom_Heff.MASS_local_mode reference; verify pure structural / ferroelectric MD candidates explicitly set SLD.mode 1 and do not retain LLG.method 1 for NVT intent; verify MD.Delta_t, atom_Heff.MD_time, SLD.mode when active, LLG.method, LLG.damping, MD.damping, MD.temperature, MD.init_velocity_temp, MD.aft_step, MD.int_step, MD.output_amp_lm, and branch-specific controls have user confirmation or authoritative evidence and reference gaps are reported; verify MD.output_amp_lm is a boolean T/F, not an output interval integer; verify planned MPI ranks / scheduler helper are environment facts and that ranks have a valid three-dimensional factorization against the current supercell factors before submission preparation; verify candidate package does not contain stale outputs, historical complete/ residues, old PASP.used_info, old *_used.dat, old logs, or README claims that Cr2O3 / BaTiO3 historical values are current-material defaults;PASP.input, MD.input, structure files, local_mode_PM.dat, J_best.dat, amp_local_mode.in, and all direct %include files are present and resolvable from the candidate package; when mode_def.input or mode_mass.input are present / included, use skills/knowledge/reference/files/mode_def.input.md and skills/knowledge/reference/files/mode_mass.input.md for file-role, include-graph, row-count / order, and same-basis checks, while using the corresponding param cards for exact block syntax; verify conditional files such as Zeff.dat, elastic.dat, and spin_strain.dat are required only when current settings, reference coverage, or user authority establishes that dependency; verify upstream model consistency across structure, local_mode_PM.dat, J_best.dat, mode_def.input / mode definition, mode_mass.input / mass definition, def_local_modes.dat when used as evidence, Z_values, Spin_values, shared-basis controls when present (fig.maxk, fig.mdist, Invariant.*, SOC strategy, mode-info blocks), local_mode.read_interaction, and Read_init_spin; verify mass block count/order and same-line canonical format against atom_Heff.MASS_local_mode reference; verify the declared stage matches SLD.mode (1 lattice heating, 2 spin heating, 3 coupled SLD relaxation); for smoke-test reductions, verify amp_local_mode.in row count and continuous active-site/local-mode numbering match the reduced simulation cell and planned MPI ranks have a valid three-dimensional factorization against the current supercell factors, blocking submission preparation if ranks are unknown or incompatible; verify MD.Delta_t, atom_Heff.MD_time, LLG.method, LLG.damping, MD.damping, MD.temperature, MD.init_velocity_temp, MD.aft_step, MD.int_step, and MD.output_amp_lm have user-confirmation or authoritative evidence and are consistent with the declared damping / temperature / ensemble intent; verify MD.output_amp_lm is a boolean T/F, not an output interval integer; for stage 2 / 3, verify amp_local_mode.in records upstream run identity, source path, and output-validation evidence from the previous stage;PASP.input, MD.input, cell.str, unit_cell.str, local_mode_PM.dat, J_best.dat, amp_local_mode.in, and all direct %include files are present and resolvable from the candidate package; verify the branch is Model atomic_effective_H + atom_Heff.MD T + electric-field / polarization intent and is not being preflighted as a Cr2O3 SLD.mode 1/2/3 stage sequence; verify atom_Heff.getP / active electric-field / Zeff.dat consistency and require Zeff.dat provenance when polarization output or active electric-field behavior requires BEC support; verify same-basis provenance across structure, unit_cell.str, local_mode_PM.dat, J_best.dat, mode definition, mass definition, shared-basis controls when present (fig.maxk, fig.mdist, Invariant.*, SOC strategy, mode-info blocks), def_local_modes.dat when used as evidence, Z_values, local_mode.read_interaction, Read_init_spin, amp_local_mode.in, and Zeff.dat; verify mass block count/order and same-line canonical format against atom_Heff.MASS_local_mode reference; verify SuperCell and amp_local_mode.in row count plus continuous active-site/local-mode numbering are compatible with the current local-mode/site basis, especially for smoke-test reductions; verify MD.E_type, MD.E_x/y/z, MD.E_omega, MD.E_phi, Field_for_Electrocaloric when used, local_mode.MD_mode_range, MD.Delta_t, atom_Heff.MD_time, damping, temperature, and output cadence have user confirmation or authoritative evidence and reference gaps are reported; verify MD.output_amp_lm is a boolean T/F when present; verify planned MPI ranks / scheduler helper are environment facts and ranks have a valid three-dimensional factorization against the current supercell factors before submission preparation; verify candidate package does not contain stale field.dat, P_abs.dat, historical complete/ residues, old PASP.used_info, old logs, or README claims that MD-1 values are production defaults;Z_values, Spin_values, local_mode.mode_definition, SOC strategy, sample numbering, upstream provenance, and stage-specific handoff files when relevant;Model find_J_path_sym, cell.str %block AtomicCoordinatesAndAtomicSpecies fourth-column species_id is grouped in nondecreasing order, so interleaved unit-cell-copy / tile-by-tile atom order is caught before PASP can stop with find_J_path_sym: species are not ordered!; the optional sixth-column atom index is not a substitute for this fourth-column isa order check;Model find_J_path_sym, any non-identity %block SuperCell is not being used to auto-expand a primitive or interleaved cell.str unless the caller provides evidence that the expanded global isa order remains nondecreasing; otherwise report blocked and require a complete target-supercell cell.str grouped by fourth-column species id, with identity SuperCell when cell.str is already the intended analysis supercell;PASP.input exists, structurally parses, and explicitly selects Model GA; resolve every direct %include from the candidate package and report duplicate / inactive declarations; verify the structure route (cell.str / unit_cell.str, inline content, POSCAR route, or user-authorized equivalent), SuperCell, Z_values, Spin_values when present, and branch controls have current-material provenance and reference/user-authoritative coverage; verify user-confirmed L6 branch and settings evidence exists for random-spacegroup, perturbation, magnetic, restart, fixed / constrained / interface, parallel external evaluation, smoke-test or production intent; verify GA.population_size, GA.max_generation, and save_str.nsave_str are user-confirmed and smoke-test / production labeled, with very small settings such as population 10 or generation 2 blocked as production unless the limitation is explicitly accepted; verify GA.Pher + GA.Pmut, failing values greater than 1 and blocking values less than 1 unless an intentional Pperm remainder is recorded; verify str.init_sym, GA.symmetrize_str, and rmax_cut are current-run choices when present rather than copied example defaults; verify branch-specific conditional dependencies such as GA.spg_front/rear, meaningful perturbation source structure, magnetic helper / MAGMOM_* / OUTCAR read, strs_saved.dat or generation-suffixed restart artifacts, interface GA.surfaces, and external evaluator helpers are present or reported blocked; for GA.parallel F, verify nonempty current-environment GA.VASPCMD when VASP optimization is required; for GA.parallel T, verify current-environment run_pvasp.sh, VASP inputs, scheduler helper, expected output layout, wait/failure behavior, stdout / stderr and cleanup behavior are present or reported blocked; treat seed.in as optional unless reproducibility intent is confirmed; verify VASP INCAR, KPOINTS, POTCAR, scheduler helpers, executable paths, automatic mesh or staged relaxation claims are user/project confirmed environment facts rather than copied defaults; verify no stale outputs such as old PASP.used_info, Saved_*.POS, Saved_gen.dat, low_ene_strs.dat, pc_low_ene_strs.dat, strs_saved.dat, POSCAR.NNN.GGG, CONTCAR.NNN.GGG, OSZICAR.NNN.GGG, OUTCAR.NNN.GGG, MAGMOM.NNN.GGG, vasp_N/, old logs, or old opt/ products are mixed into a fresh input package;PASP.input exists, structurally parses, and explicitly selects Model TB; resolve every direct %include from the candidate package and report duplicate / inactive declarations; verify the structure route, SuperCell, Z_values, Orbitals, and branch controls have current-material provenance and reference/user-authoritative coverage; verify user-confirmed L7 branch and settings evidence exists for custom TB, SKTB, additional Hamiltonian, GSDTB / spin-dependent Hamiltonian search, flat-band CLS search, smoke-test or production intent, expected outputs, and run environment; for custom TB, verify Different_hop_path, exactly one Hop_Parameters_specified_using_site / Hop_Parameters_specified_using_dis interpretation, block Hop_Parameters, TB.complex_hop formatting when active, and hopping matrix row/column counts against Orbitals; for SKTB, verify USE_Slater_Koster_Model, block Slater_Koster_Hop_Parameters, block orbitals_nl, Ylm_form 2 when set, use_rotation_matrix intent when needed, and site/distance path consistency; for additional-H, verify TB.additional_H T has same-candidate H_add.dat and/or Hmat_add.dat with matrix-shape, basis-order and provenance evidence or report blocked; for GSDTB, verify base SKTB consistency plus TB.find_H_form, TB.full_SOC, TB.H_spin_expand, GSD_TB_Spin_direction, TB.H_indep_var, fig.maxk, fig.mdist, spin/SOC settings and independent-variable provenance; for CLS, verify base TB/SKTB consistency plus TB.localized_state, TB.center_atom_localized, TB.rcut_localized, TB.eigen_localized, and target flat-band evidence; verify no stale outputs such as old PASP.used_info, TB.bands, band.agr, plot.dat, gnuplot.dat, Eg.dat, energy.dat, dos.dat, wf_kpt_*-band_*.xsf, H*.dat, WF*.dat, cluster-*.Hform, local_cluster.xyz, local_cluster.vesta, old logs, or scheduler outputs are mixed into a fresh candidate package;PASP.input exists, structurally parses, and explicitly selects Model KNB or Model Spin_lattice_interaction; resolve every direct %include from the candidate package and report duplicate / inactive declarations; verify the structure route, SuperCell, Z_values, isaAB, Spin_values, fig.maxk, fig.mdist, SYMPREC, and branch controls have current-material provenance and reference/user-authoritative coverage; verify user-confirmed L8 branch and settings evidence exists for pure electronic KNB / gKNB, spin-lattice ion-strain contribution, smoke-test or production intent, expected outputs, and run environment; verify spin3.in is present when required and has row-order provenance for the current calculation cell; for pure electronic KNB, verify Model KNB, GKNB tensor / local-axis / symmetry-polarization controls such as GKNB_inter_site, GKNB_single_site, GKNB.local_axis, GKNB.symP, and optional spiral controls GKNB.spiral, GKNB.qvec, GKNB.spiral_plane_vec have reference/user-authoritative coverage and current-material provenance or report blocked; for spin-lattice ion-strain contribution, verify Model Spin_lattice_interaction is being used for L8 polarization contribution rather than L2 PTMC / CG ground-state search, verify Read_init_spin, spin_lat.spin_force, spin_lat.Lspin_int_only, spin_lat.spin_int_stress, phonopy_force_constant, phon.lasr, and phon.sym_born_chg intent when active, and verify branch-specific files such as spin_exchange.dat, spin_strain.dat, FORCE_CONSTANTS, SPOSCAR, Zeff.dat, and elastic.dat have same-material / same-basis provenance or are reported blocked; if spin_lat.spin_int_stress T is active, verify planned MPI ranks are known and equal to 1, or report blocked unless the candidate records explicit fixed-source evidence that the current PASP supports read_spin_stress under MPI; verify no stale outputs such as old PASP.used_info, spin3.xsf, Ppair.xsf, GKNB_data.*, 1.xsf, 2.xsf, 3.xsf, *dJ.xsf, old logs, or scheduler outputs are mixed into a fresh candidate package;Return only pass / fail / blocked with evidence paths and the minimum correction needed. Do not suggest physical parameter values.
Use for bounded inventory of a user workflow directory before the main agent decides the route, stage, or next gate.
Inputs must name:
Check:
Return:
Conclusion: not-applicable unless the caller explicitly asks for a pass / fail / blocked inventory gate.Directory inventory is not input preflight. It cannot authorize formal input promotion, run derivation, submission preparation, or downstream handoff.
Use after a run completes and before outputs flow downstream.
Inputs must name:
Check:
PASP.used_info against the formal stage, confirm temperature.dat, energy.dat, and amp_local_mode.out are present, confirm temperature.dat exposes spin and lattice temperature columns, confirm temperature.dat and energy.dat headers plus monotonic sampled step / time rows are usable, compare effective SLD.mode, LLG.*, MD.*, damping, temperature, local_mode.read_interaction, and Read_init_spin settings against the formal input provenance, check branch-consistent qualitative behavior for stage 1 / 2 / 3, do not fail solely because sampled temperature.dat / energy.dat lack an exact final-MD-step row when completion evidence and cadence are consistent, and report stage 1 / 2 amp_local_mode.out as handoff-allowed only when completion and output provenance are established;PASP.used_info effective settings when available and otherwise combine formal PASP.input, MD.input, logs, and output evidence; confirm actual Model atomic_effective_H, atom_Heff.MD T, electric-field controls, atom_Heff.getP / BEC path, local_mode.read_interaction, and Read_init_spin are consistent with formal input provenance; confirm field.dat exists with step, time (ps), and electric-field component columns plus monotonic sampled rows; confirm P_abs.dat exists with step, time (ps), polarization component columns and P_abs plus monotonic sampled rows; confirm field.dat and P_abs.dat have same-run provenance and are not mixed from sibling outputs, historical output/, complete/, or stale previous-run files; treat energy.dat and temperature.dat as optional diagnostics that do not replace field / polarization validation; report field.dat and P_abs.dat as analysis-allowed only when completion and same-run provenance are established;PASP.used_info when available and confirm Model GA, effective branch settings, external program / parallel policy, population / generation scale, and saved-structure settings; check generated candidate / generation artifacts expected by the branch, such as unrelaxed*, relaxed*, relaxed_child*, sym_relaxed*, POSCAR.NNN.GGG, CONTCAR.NNN.GGG, OSZICAR.NNN.GGG, OUTCAR.NNN.GGG, MAGMOM.NNN.GGG, vasp_N/, or helper logs; report missing or incomplete external-evaluator outputs by candidate rather than hiding them behind aggregate summaries; before low-energy handoff, confirm current-run Saved_NNN.POS, Saved_gen.dat, low_ene_strs.dat, pc_low_ene_strs.dat, or an explicitly equivalent same-run output exists; when restart / continuation is requested, confirm strs_saved.dat and generation artifacts have same-run provenance; when magnetic output reading is active, confirm required MAGMOM / OUTCAR evidence; if post-GA opt/ outputs are used, validate those VASP outputs separately before allowing optimized energies or symmetries to be reported;BAD TERMINATION, KILLED BY SIGNAL, Error, ..., or no branch completion evidence; check PASP.used_info when available but do not rely on it alone because some current runs only record a minimal FDF-open/default trace; confirm Model TB, effective branch settings, structure route, Orbitals, hopping/SK/additional-H/GSDTB/CLS controls and run id from logs/input/output evidence; for generic custom TB / SKTB band runs, confirm expected current-run outputs such as TB.bands, Eg.dat, energy.dat, dos.dat when DOS was requested, and plotting files such as band.agr, plot.dat, or gnuplot.dat when generated; for TB.write_wf, confirm wf_kpt_*-band_*.xsf files only when the formal input enabled wavefunction output and tie them to the same run; for additional-H, confirm Htot.dat or equivalent Hamiltonian artifacts are same-run and tied to current H_add.dat / Hmat_add.dat provenance before reporting added-H effects; for GSDTB, confirm same-run cluster-*.Hform and/or H_ik_*_i_*_m_*.dat, H*.dat, WF*.dat, logs such as TB_H_symmetry done, and independent-variable evidence before reporting Hamiltonian form or magnetic-anisotropy-style conclusions; for CLS, require lgood: T or equivalent success evidence plus same-run local_cluster.xyz and local_cluster.vesta before reporting compact localized state output; report missing, stale, sibling, historical or branch-inconsistent outputs explicitly;BAD TERMINATION, KILLED BY SIGNAL, Error, ..., read_spin_stress: MPI version not implemented yet, or no branch completion evidence; check PASP.used_info when available but do not rely on it alone if it is minimal; confirm Model KNB or L8-targeted Model Spin_lattice_interaction, effective branch settings, structure route, spin3.in provenance, and run id from logs/input/output evidence; for pure electronic KNB / gKNB, confirm branch-consistent polarization summaries such as Intersite P, Intersite P (Exchange striction), spin_FE: Dipole is, or spin_FE: P is, and tie same-run spin3.xsf, Ppair.xsf, and GKNB_data.* to current settings when expected; for spin-lattice ion-strain contribution, confirm log evidence for reading spin3.in when expected, induced stress / displacement / strain summaries when active, and polarization summaries such as Pion,Pcell, Total P_{ion+lattice}, P due to spin force, and P due to spin stress; if read_spin_stress: MPI version not implemented yet appears, conclude fail / MPI-limited and do not allow downstream handoff from that run; report visualization files such as 1.xsf, 2.xsf, 3.xsf, or *dJ.xsf only as same-run diagnostics, not as sufficient validation by themselves; report missing, stale, sibling, historical or branch-inconsistent outputs explicitly;Return pass / fail / blocked with evidence paths and whether downstream consumption is allowed.
Use before generating or validating POSCAR_UC, unit_cell.str, primitive cells, axis reordering, or SuperCell relationships.
Inputs must name:
POSCAR, POSCAR_UC, cell.str, or unit_cell.str;symprec, or mapping hypothesis.Check:
cell.str, unit_cell.str, POSCAR_UC, and any PASP %block SuperCell are being interpreted in the correct direction;Return pass / fail / blocked, candidate mapping facts, source paths, and questions the main agent must ask. Do not write formal structure files.
Use for long PASP, DFT, helper-script, or batch logs.
Inputs must name:
Extract only:
Do not paste full logs. Do not produce final user-facing prose.
Use to compare user candidate inputs with reusable templates under skills/knowledge/templates/.
Inputs must name:
Check:
Return facts and risks only. Do not recommend adopting template values unless the main agent has separate reference and user-confirmation support.
Use only during skills development to inspect PASP / Latticemodel source or workflow docs for hidden behavior, warning triggers, generated files, or runtime guards.
Inputs must name:
skills/knowledge/.Return:
Runtime skills must not require final users or deployed agents to read source code.
When the main agent delegates to the verifier, use this shape:
You are the read-only PASP verifier.
Mode: <reference-check | input-preflight | directory-inventory | output-validation | structure-analysis | log-summary | template-compare | source-audit>
Workflow / stage: <workflow and stage, or not-applicable>
Target files / directories:
- <path>
- <path>
Checklist or question:
- <bounded checks>
Return format:
Scope:
Findings:
Sources:
Uncertain:
Needs main-agent decision:
Conclusion: pass | fail | blocked | not-applicable
Do not modify files, decide parameters, promote inputs, prepare submissions, or write the final user answer.