domains / science / mass-spectrometry-analysis / pyopenms
The K-Dense-AI copy is a distinct, high-fidelity implementation that ships a suite of parameterized CLI scripts (e.g., `detect_features_metabo.py`, `align_link_quantify.py`) and provides specific installation constraints (Python 3.11+, pyOpenMS 3.6.0). The other three copies (Vibe-Skills, medical-research-skills, and OpenClaw-Medical-Skills) are largely identical or near-identical generic API guides that lack these scripts and instead point to `references/` files. Because the K-Dense copy provides a different, more operational procedure (running scripts vs. writing API code) and the others provide a different, more conceptual procedure (API exploration), crowning one would hide the alternative approach. The Vibe-Skills and OpenClaw copies are effectively duplicates of each other, while the medical-research-skills copy is a simplified variant of the same API-focused approach.
| Repository | Path |
|---|---|
| K-Dense-AI/scientific-agent-skills | skills/pyopenms/SKILL.md |
| foryourhealth111-pixel/Vibe-Skills | bundled/skills/pyopenms/SKILL.md |
| aipoch/medical-research-skills | scientific-skills/Data Analysis/pyopenms-skill/SKILL.md |
| FreedomIntelligence/OpenClaw-Medical-Skills | skills/pyopenms/SKILL.md |
| Role | Repository | Path |
|---|---|---|
| peer | K-Dense-AI/scientific-agent-skills | skills/pyopenms/SKILL.md |
| peer | foryourhealth111-pixel/Vibe-Skills | bundled/skills/pyopenms/SKILL.md |
| peer | aipoch/medical-research-skills | scientific-skills/Data Analysis/pyopenms-skill/SKILL.md |
| peer | FreedomIntelligence/OpenClaw-Medical-Skills | skills/pyopenms/SKILL.md |
# PyOpenMS
## Overview
PyOpenMS provides Python bindings to the OpenMS library for computational mass spectrometry. It supports proteomics and metabolomics workflows including file handling, signal processing, feature detection, and identification.
## Installation
Use `uv` to manage the environment. Ensure Python 3.11+ is available.
```bash
uv venv --python 3.13
uv pip install "pyopenms==3.6.0" pandas numpy matplotlib
```
Verify installation:
```python
import pyopenms as ms
print(ms.__version__)
```
## Workflow Options
### Option A: Script-Based (Recommended for Standard Pipelines)
If the skill directory contains a `scripts/` folder, prefer running these parameterized CLI tools over writing new code.
1. **Inspect & Convert**:
- `python scripts/inspect_ms_data.py <input.mzML>`: Summarize data.
- `python scripts/convert_format.py <input.mzML> --out <output.mzXML>`: Convert formats.
2. **Feature Detection & Quantification**:
- `python scripts/detect_features_metabo.py <input.mzML> --out-csv features.csv`: Untargeted metabolomics.
- `python scripts/align_link_quantify.py <s1.mzML> <s2.mzML> --out-prefix study`: Multi-sample quantification.
3. **Identification**:
- `python scripts/process_identifications.py <search.idXML> --fasta db.fasta --fdr 0.01`: Post-process search results.
### Option B: API-Based (For Custom Workflows)
Use the Python API when no script fits the specific requirement.
1. **File I/O**:
```python
import pyopenms as ms
exp = ms.MSExperiment()
ms.MzMLFile().load("data.mzML", exp)
```
2. **Signal Processing**:
```python
gaussian = ms.GaussFilter()
params = gaussian.getParameters()
params.setValue("gaussian_width", 0.1)
gaussian.setParameters(params)
gaussian.filterExperiment(exp)
```
3. **Feature Detection**:
```python
ff = ms.FeatureFinder()
# Configure parameters and run
```
4. **Data Structures**:
- `MSExperiment`: Collection of spectra.
- `FeatureMap`: Collection of detected features.
- `PeptideIdentification`: Search results.
## Conflicts
- **Installation**: K-Dense-AI specifies `pyopenms==3.6.0` and Python 3.13; Vibe-Skills uses `uv uv pip install pyopenms` (typo) without version pinning. Use the K-Dense-AI version for stability.
- **Execution**: K-Dense-AI prioritizes CLI scripts; Vibe-Skills prioritizes API code. Use scripts for standard tasks and API for custom logic.