analyzing-proteomics-data

analyzing-proteomics-data is a skill for Claude Code from MannLabs/proteomics-agent-skills. It costs 106 tokens per session (1,488 once invoked), scanned A, original, Apache-2.0.

A guide for analysing proteomics data, which measures proteins in biological samples, with the Python package alphapepttools and AnnData, a format for structured scientific data.

In plain words
What is it for?
Importing proteomics results, quality control, preprocessing, principal-component analysis, differential-expression analysis, visualisation, and quality measurement.
Why use it?
It standardises data from several protein-search programs and encourages saving each processing step so results can be checked or reproduced.

Skill for Claude Code

Written for Claude Code: shipped in a Claude Code plugin.

Part of the proteomics plugin — 11 skills shipped together

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/mannlabs/proteomics-agent-skills/analyzing_proteomics_data
Any agent
npx skills add MannLabs/proteomics-agent-skills --skill analyzing_proteomics_data
Clone the repo
git clone --depth 1 https://github.com/MannLabs/proteomics-agent-skills

Made for: Claude Code.

Or install proteomics, the plugin that ships this one along with the rest of its 11 skills.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for analyzing-proteomics-data

README.md
[![agentmods](https://agentmods.dev/badge/skills/mannlabs/proteomics-agent-skills/analyzing_proteomics_data.svg)](https://agentmods.dev/skills/mannlabs/proteomics-agent-skills/analyzing_proteomics_data)
Your own site
<a href="https://agentmods.dev/skills/mannlabs/proteomics-agent-skills/analyzing_proteomics_data"><img src="https://agentmods.dev/badge/skills/mannlabs/proteomics-agent-skills/analyzing_proteomics_data.svg" alt="Measured on agentmods" height="20"></a>
Per session 106 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,488 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00106 $0.01488
Opus 5 $0.00053 $0.00744
Sonnet 5 $0.00021 $0.00298
Haiku 4.5 $0.00011 $0.00149

Measured 6d ago against content hash 3ced8ef389f5, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-06, from the pricing page.

Security

Grade A, and why

analyzing-proteomics-data scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 6d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

plugins/proteomics/skills/analyzing_proteomics_data/SKILL.md · 176 lines

How it starts

The opening of the file, as written. The whole thing — 176 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Analyzing Proteomics Data with alphapepttools

alphapepttools is a Python package that provides search engine-agnostic proteomics analysis compatible with the scverse ecosystem.

Structure

alphapepttools contains multiple subpackages:

.io: Read search engine outputs into standardized anndata format (see ./references/io-patterns.md) .pp: Quality control and preprocess proteomics data .tl: Statistical analysis of proteomics data (principal component analysis, differential expression) .pl: Plotting and visualization functionalities .metrics: Assess quality of analysis steps

Philosophy

alphapepttools formalizes best practices efforts. Function docstrings, contain recommended best practices, and code examples.

When considering using a method, ALWAYS check its docstring first. Carefully inspect the provided code snippets in the Examples section.

help(alphapepttools.tl.<function>)

Core Pattern: Layer Checkpointing

Every transformation should be checkpointed to a new layer for debugging, reproducibility, and rollback:

import alphapepttools as at

# Checkpoint raw data
adata.layers["raw"] = adata.X.copy()

# Transform and checkpoint each step
at.pp.nanlog(adata, base=2)  # Modifies X inplace
adata.layers["log2"] = adata.X.copy()

at.pp.normalize(adata, strategy="total_mean")
adata.layers["normalized"] = adata.X.copy()

Workflow

Iterative Workflow with Decision Checkpoints

1. Load Data

adata = at.io.read_pg_table(path, search_engine="diann")
adata = at.pp.add_metadata(adata, metadata_df, axis=0)

2. Subsetting AnnData objects

Sample-level
adata = at.pp.filter_by_metadata(adata, filter_dict={"continuous_column1_in_obs": (0, 0.5), "continuous_column2_in_obs": (0, None), "categorical_column_in_obs": "A"}, action="keep", logic="and", axis=0)
# Keep all samples whose
# Values in continuous_column1_in_obs are in the range (0, 0.5)
# Values in continuous_column2_in_obs are in the range (0, infinity)
# Values in categorical_column_in_obs are category A

Read the full file on GitHub · 176 lines

Files

What ships with it

3 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 6d ago First seen · 176 lines · 106 tokens per session scan A 3ced8ef389f5

Subscribe to this mod's changes

analyzing-proteomics-data is a skill published in the GitHub repository MannLabs/proteomics-agent-skills (14 stars, last pushed 1mo ago), licensed Apache-2.0. It adds 106 tokens to every session and 1,488 once invoked, about $0.0005 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other skills, from other repositories

proteomics-de

Load when computing two-group differential protein abundance (group2 vs group1, log2FC + p-value + BH-adjusted FDR) via Welch t-test, equal-variance t-test, or Mann-Whitney on a wide protein × sample CSV. Skip when you need multi-condition DE (run pairwise contrasts manually); label-based TMT linear-mixed models.

TianGzlab/OmicsClaw · 79 tokens

proteomics-enrichment

Load when running over-representation analysis (ORA) on a list of proteins via Fisher's exact test against a built-in 8-pathway DEMO dictionary, with BH-FDR correction. Skip when needing a real pathway database (this skill is demo-only) (use bulkrna-enrichment); rank-based GSEA.

TianGzlab/OmicsClaw · 70 tokens

proteomics-ptm

Load when summarising PTM sites (phosphorylation, acetylation, ubiquitination, etc.) from a per-site CSV — site-class assignment (Olsen et al. Class I/II/III by localizationprobability), per-PTM-type counts, amino-acid distribution, sites-per-protein. Skip when raw spectra are the input; you only need protein-level…

TianGzlab/OmicsClaw · 95 tokens

proteomics-quantification

Load when computing per-protein abundance from a peptide / PSM table via LFQ (intensity summation), iBAQ (intensity / tryptic peptide count), or spectral counting (PSMs per protein). Skip when the input is already protein-level (use proteomics-ms-qc); label-based TMT / iTRAQ workflows (search upstream first).

TianGzlab/OmicsClaw · 80 tokens

proteomics-structural

Load when summarising cross-linking MS (XL-MS) results — intra/inter-protein link split, optional FDR filtering, distance-constraint validation against a per-crosslinker (DSS / BS3 / EDC / DSSO / DSBU) max distance. Skip when raw spectra are the input (run XlinkX / pLink / xiSEARCH first); no XL-MS experiment was…

TianGzlab/OmicsClaw · 88 tokens

proteomics-data-import

Load when ingesting a MaxQuant proteinGroups.txt, FragPipe combinedprotein.tsv, DIA-NN report, or generic CSV / TSV protein-quantification table — normalises columns to a standard schema, emits tables/proteins.csv. Skip when raw spectra are the input (run the search engine first); the file is already OmicsClaw schema.

TianGzlab/OmicsClaw · 81 tokens