agentsclimarketplace

Proteomics data structure design

Skill HolobiomicsLab/asb-skill-collections/packs/metabolomics/ms-generic/skills/proteomics-data-structure-design

Use when when building a mass-spectrometry analysis pipeline that must support multiple vendor and open formats (mzML, mzXML, Thermo, Agilent, Bruker, etc.) and you need to shield downstream tools from format-specific parsing logic.From its SKILL.md

Install
npx -y skills add HolobiomicsLab/asb-skill-collections --skill proteomics-data-structure-design

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

  • 14 stars14 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

6.7 KB, ~1.1k tokens by cl100k_base, as published. Nobody here has run it

proteomics-data-structure-design

Summary

Design and implement a unified, vendor-agnostic spectrum data structure that normalizes mass-spectrometry data from heterogeneous file formats (mzML, mzXML, vendor binary) into a single in-memory representation. This skill enables a single API to transparently read and expose normalized spectra regardless of input format.

When to use

When building a mass-spectrometry analysis pipeline that must support multiple vendor and open formats (mzML, mzXML, Thermo, Agilent, Bruker, etc.) and you need to shield downstream tools from format-specific parsing logic. Specifically when you have raw or vendor-specific mass-spec files and must expose them through a uniform data interface.

When NOT to use

  • Input is already in a standardized format (mzML) and downstream tools natively support it without needing a unified layer.
  • You require format-specific features or vendor-proprietary metadata that would be lost during normalization.
  • Performance is critical and the overhead of abstraction and normalization exceeds the benefit of format transparency.

Inputs

  • Raw mass-spectrometry data files (mzML, mzXML, vendor binary formats)
  • Format metadata and schema definitions
  • Format-specific parser libraries or bindings

Outputs

  • Unified spectrum data structure (in-memory representation)
  • Normalized spectrum metadata (scan ID, retention time, m/z, intensity, precursor m/z, charge state)
  • Single API interface for spectrum access (iterator or query methods)

How to apply

First, design a unified spectrum data structure schema that captures essential metadata: scan ID, retention time, m/z array, intensity array, precursor m/z, and charge state. Implement file format detection and routing logic to identify the input file type. Integrate or wrap existing format-specific parsers (e.g., ProteoWizard libraries or vendor-provided readers) to read raw spectra. Normalize parsed spectra into the unified in-memory representation, handling format-specific conventions and metadata extraction rules. Finally, expose normalized spectra through a single API interface (iterator, random-access getter, or query methods) that hides format details from the caller. Use the pluggable framework approach to allow new format support without modifying core normalization logic.

Related tools

Evaluation signals

  • All input spectra from different formats (mzML, mzXML, vendor binary) can be read and produce identical normalized output when the same raw data is used.
  • Unified data structure contains all required fields (scan ID, retention time, m/z array, intensity array, precursor m/z, charge state) with no null or missing values for valid spectra.
  • Single API interface successfully returns spectra without caller needing to know or specify the input format.
  • Format-specific metadata is correctly preserved or mapped into the normalized schema without loss of essential information.
  • Performance overhead of normalization layer is acceptable relative to the benefit of format abstraction (typically < 10–20% overhead).

Limitations

  • Vendor binary format support on Windows only; cross-platform pipelines may be limited to mzML/mzXML or require format conversion on non-Windows systems.
  • Normalization may lose vendor-specific or proprietary metadata that is not part of the HUPO-PSI mzML standard.
  • Pluggable framework requires maintenance when vendor formats change or new formats are introduced.
  • No changelog or versioning information is available for tracking API or schema changes over time.

Evidence

  • [other] Design a unified spectrum data structure that captures essential metadata (scan ID, retention time, m/z values, intensity values, precursor m/z, charge state) and supports multiple vendor and open formats.: "Design a unified spectrum data structure that captures essential metadata (scan ID, retention time, m/z values, intensity values, precursor m/z, charge state) and supports multiple vendor and open"
  • [other] Normalize parsed spectra into the unified in-memory representation, handling format-specific conventions and metadata extraction.: "Normalize parsed spectra into the unified in-memory representation, handling format-specific conventions and metadata extraction."
  • [other] Expose the normalized spectra through a single API interface (e.g., iterator, random-access getter, or query methods) that hides format-specific details from the caller.: "Expose the normalized spectra through a single API interface (e.g., iterator, random-access getter, or query methods) that hides format-specific details from the caller."
  • [readme] The libraries provide a robust, pluggable development framework that simplifies and unifies data file access: "provide a robust, pluggable development framework that simplifies and unifies data file access"
  • [readme] supports reading directly from many vendor raw data formats (on Windows): "supports reading directly from many vendor raw data formats (on Windows)"

What ships with it

Read from the repository

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

Keep looking

Skills are one crate of 326,835. 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.