技能创建器
skill-creator
创建、改进和评估自定义技能,把专业流程转化为可重复使用的 AI 能力。
topology-and-systems【数据与研究】Assemble OpenFF Topology objects, load PDB/biopolymer systems, manage hierarchy metadata, constraints, OpenMM/MDTraj conversion, PDB export, and hand off to Interchange/OpenMM system creation.
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
Use this sub-skill when the task is about OpenFF Topology objects rather than single-molecule construction or SMIRNOFF parameter editing.
references/api-reference.md for verified Topology method signatures, return shapes, and behavior details.references/pdb-and-biopolymers.md for PDB loading requirements, unique_molecules, proteins, HETATM small molecules, metadata, and hierarchy differences.references/workflows.md for common recipes: molecule lists, PDB load, OpenMM/MDTraj conversion, constraints, PDB export, and Interchange/OpenMM handoff.references/troubleshooting.md for common diagnostics and fixes around missing unique molecules, PDB chemistry assignment, atom names, optional packages, and metadata surprises.scripts/smoke_topology_workflow.py for a small self-contained smoke helper that builds a multi-copy topology and optionally writes a PDB.Handle requests involving:
Topology.from_molecules, add_molecule, add_molecules, unique_molecules, and identical_molecule_groups.Topology.from_pdb, from_openmm, from_mdtraj, to_openmm, and to_file.CONECT, standard residue/atom names, waters, supported ions, and custom substructure caveats.add_constraint, environment matching with chemical_environment_matches, graph distance queries with nth_degree_neighbors, and visualization with visualize.Topology, ForceField.create_interchange, ForceField.create_openmm_system, and downstream engine exporters.Molecule objects, read ../molecules-and-io/SKILL.md.../smirnoff-force-fields/SKILL.md.../toolkit-backends/SKILL.md.Molecule objects, start with Topology.from_molecules(molecules) or an empty Topology() plus add_molecules.Molecule objects and pass them through unique_molecules; require explicit elements and CONECT records for those molecules.unique_molecules; the topology can contain zero, one, or many copies of each species.ensure_unique_atom_names="residues" unless the task specifically needs molecule-wide uniqueness (True) or original names (False).Topology here, then hand off to the force field or Interchange sub-skill boundary.