agentsclimarketplace

Smiles string parsing

Skill HolobiomicsLab/asb-skill-collections/collections/metabolomics/v2/skills/smiles-string-parsing

Use when when you have a raw list of SMILES strings in a file and need to prepare them as input for CFM-ID in silico spectrum generation to create pseudo SMILES-spectrum training pairs.From its SKILL.md

Install
npx -y skills add HolobiomicsLab/asb-skill-collections --skill smiles-string-parsing

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 15 stars15 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its file declares

Copied from the file, not written here

The file declares its own license as CC-BY-4.0. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.

SKILL.md

4.9 KB, 815 tokens by cl100k_base, as published. Nobody here has run it

SMILES-string-parsing

Summary

Parse and load SMILES strings from input files to prepare molecular structure notations for downstream in silico spectrum generation and model training. This skill validates that raw SMILES lists are correctly formatted and ready for CFM-ID fragmentation prediction.

When to use

When you have a raw list of SMILES strings in a file and need to prepare them as input for CFM-ID in silico spectrum generation to create pseudo SMILES-spectrum training pairs. Use this skill as the first step in a pseudo-data generation pipeline where SMILES strings must be parsed before being paired with computationally predicted spectra.

When NOT to use

  • Input is already a set of spectrum-SMILES pairs; skip directly to training.
  • SMILES strings have already been validated and indexed in a prior workflow step.
  • Your input is already in a molecular graph or fingerprint format; this skill is for raw SMILES text only.

Inputs

  • Text file containing raw SMILES strings (one per line)
  • SMILES list file (format: plain text, one SMILES notation per line)

Outputs

  • Parsed SMILES string list (in-memory or serialized)
  • Indexed SMILES data structure ready for CFM-ID invocation
  • Count of valid SMILES strings (for validation)

How to apply

Load the SMILES strings from the input file using Python 3.7, ensuring each line contains a valid SMILES notation. Validate that each parsed SMILES string is well-formed and non-empty. Store the parsed SMILES strings in a data structure (e.g., list or array) indexed sequentially for correlation with CFM-ID outputs. The rationale is that CFM-ID requires valid SMILES input and will fail or produce spurious results if malformed strings are passed; pre-parsing catches errors early. After parsing, confirm the count of SMILES strings matches the input file line count as a sanity check.

Related tools

  • CFM-ID (Consumes parsed SMILES strings to generate in silico mass spectra with fragmentation patterns for each molecule)
  • Python 3.7 (Host language for loading and validating SMILES strings from input files)

Evaluation signals

  • All lines from the input file are successfully parsed without exceptions.
  • Each parsed SMILES string is non-empty and contains only valid SMILES characters (C, H, N, O, rings, bonds, branch notation, etc.).
  • The count of parsed SMILES strings matches the expected input file line count (or documented subset if filtering was applied).
  • The indexed SMILES list can be iterated sequentially and each entry is correctly mapped to its input line position for later pairing with CFM-ID spectra.
  • Downstream CFM-ID invocation completes without errors when passed the parsed SMILES list.

Limitations

  • The skill does not validate chemical feasibility or stereochemistry correctness; it only checks syntactic SMILES format validity.
  • If the input file contains duplicate SMILES strings, this skill will not deduplicate unless explicitly configured to do so; duplicates will be parsed and later generate redundant pseudo-pairs.
  • Large SMILES lists (e.g., >100k strings) may require streaming or chunking in memory-constrained environments.
  • The skill assumes SMILES strings are one per line in plaintext; other formats (e.g., CSV columns, JSON) require custom parsing logic not covered here.

Evidence

  • [other] Load a list of SMILES strings from the input file: "Load a list of SMILES strings from the input file."
  • [other] For each SMILES string, invoke CFM-ID to generate in silico mass spectra: "For each SMILES string, invoke CFM-ID to generate in silico mass spectra with fragmentation patterns."
  • [readme] For Training, we use 30k+ pseudo smiles-spectrum pairs generated by cfmid: "For Training, we use 30k+ pseudo smiles-specturm pairs generated by cfmid"

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.