candidate-generator
Generate inorganic crystal structure candidates for computational materials discovery workflows. Use this skill whenever the user wants to build, explore, or diversify a pool of inorganic structures for DFT screening, high-throughput calculations, machine learning dataset construction, or property-guided search. This skill covers the full candidate generation pipeline - seed structure creation -> chemical space exploration -> configurational ordering -> defect generation -> ensemble augmentation.
npx skills add majiayu000/claude-skill-registry --skill candidate-generator --agent claude-code
Same command for any agent — swap --agent for codex, cursor, copilot.
Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.
What it does
Guides the systematic generation of inorganic crystal structure candidates using a suite of seven pymatgen-based tools. It defines a funnel: prototype → explore chemistry → resolve disorder → add defects → augment, selecting branches to fit discovery goals. It also emphasizes tracking structures in the ASE database to avoid recomputation.
How it works
The skill enumerates concrete tools and their roles:
pymatgen_prototype_builderto seed a structure from spacegroup, species, and lattice parameters, returningstructures[i].structurefor downstream tools.pymatgen_substitution_generatorto explore chemical space by substituting elements with parameters likesubstitutions,n_structures,max_attempts, andenforce_charge_neutrality.pymatgen_ion_exchange_generatorto perform charge-neutral substitutions withreplace_ion,with_ions,exchange_fraction, andmax_structures.pymatgen_enumeration_generatorto enumerate ordered configurations from disordered inputs, requiringmin_cell_size,max_cell_size,n_structures,sort_by, andadd_oxidation_states.pymatgen_sqs_generatorto generate a single best quasirandom structure per input withsupercell_size,supercell_matrix,n_structures,n_mc_steps, andn_shells.pymatgen_defect_generatorto create symmetry-inequivalent defects from a host withvacancy_species,substitution_species,interstitial_species,charge_states, andsupercell_min_atoms.pymatgen_perturbation_generatorto create ensembles via random displacements and/or strain withdisplacement_max,strain_percent,n_structures, andseed.
Additionally, it provides downstream guidance for saving results with ase_store_result, including required output_format='ase', and cautions about reserved ASE key names. It describes workflow phases (seed, chemical space exploration, disorder resolution, defect generation, perturbation) and connecting steps (MP filtering, ASE storage, etc.).
When to use it
Use when building, exploring, or diversifying a pool of inorganic structures for DFT screening, high-throughput calculations, ML dataset construction, or property-guided search. Choose branches based on goals: exploratory isostructural screening, charge-neutral substitutions for ionic materials, complete enumeration for ordered phases, SQS for disorder modeling, and perturbations for ensemble generation.
What it can touch
- Tools:
pymatgen_prototype_builder,pymatgen_substitution_generator,pymatgen_ion_exchange_generator,pymatgen_enumeration_generator,pymatgen_sqs_generator,pymatgen_defect_generator,pymatgen_perturbation_generator. - Output routing and storage:
ase_store_result,ase_query_db,mp_search_materials. - Requires:
enumlibfor enumeration phase (via PATH).
Caveats
- Requires careful parameter tuning (e.g.,
max_attempts,n_structures) to avoid excessive outputs or duplicates. - Proximity warnings when using Wyckoff-based seeds; prefer explicit
species/coordswithvalidate_proximity=Falsefor debugging. - Output formatting decisions influence downstream tools; ensure
output_formataligns with target (e.g.,'ase'for ASE,'poscar'/'cif'for VASP-like tools). - The workflow emphasizes tracking and avoiding recomputation by storing structures in ASE DB.
# Inorganic Candidate Generation This skill guides the systematic generation of inorganic crystal structure candidates using a suite of seven pymatgen-based tools. The methodology is: **prototype → explore chemistry → resolve disorder → add defects → augment**, selecting the appropriate branch(es) for the discovery goal. The core philosophy: candidate generation is a funnel. Start broad (many chemistries, many configurations), then narrow using physical filters (charge neutrality, Ewald energy, thermodynamic stability from MP). Always track structures in the ASE database using `ase_store_result` so nothing is recomputed. --- ## Tool Catalogue ### 1. `pymatgen_prototype_builder` — Seed Structure Builds an ideal crystal from a spacegroup number/symbol, species list, and lattice parameters. This is the **entry point** for any workflow that starts from scratch rather than an existing structure. **Key parameters:** - `spacegroup`: int (1–230) or Hermann-Mauguin symbol, e.g. `225` or `"Fm-3m"` - `species`: list of element symbols (`['La', 'Mn', 'O', 'O', 'O']`) or Wyckoff dict - `lattice_parameters`: `[a, b, c, alpha, beta, gamma]` in Å and degrees; `[a]` works for cubic - `wyckoff_posit
- Tool Catalogue
- 1. pymatgenprototypebuilder — Seed Structure
- 2. pymatgensubstitutiongenerator — Chemical Space Exploration
- 3. pymatgenionexchangegenerator — Charge-Neutral Substitution
- 4. pymatgenenumerationgenerator — Exhaustive Ordering of Disordered Structures
- 5. pymatgensqsgenerator — Special Quasirandom Structures
- 6. pymatgendefectgenerator — Point Defect Supercells
- 7. pymatgenperturbationgenerator — Structural Ensemble / Augmentation
- Workflow Phases
- Phase 1: Seed Structure
- Phase 2: Chemical Space Exploration
- Phase 3: Resolve Disorder (if structures have partial occupancies)
- Phase 4: Defect Generation (optional branch)
- Phase 5: Perturbation / Augmentation
What does the candidate-generator skill do?
Generate inorganic crystal structure candidates for computational materials discovery workflows. Use this skill whenever the user wants to build, explore, or diversify a pool of inorganic structures for DFT screening, high-throughput calculations, machine learning dataset construction, or property-guided search. This skill covers the full candidate generation pipeline - seed structure creation -> chemical space exploration -> configurational ordering -> defect generation -> ensemble augmentation.
How do I install it?
Run `npx skills add majiayu000/claude-skill-registry --skill candidate-generator --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.
Where does this skill come from?
From majiayu000/claude-skill-registry, a repository with 534 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.
Is a popular skill a good skill?
Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.
