proteomics-ptm

proteomics-ptm is a skill for Claude Code, Codex from TianGzlab/OmicsClaw. It costs 95 tokens per session (1,348 once invoked), scanned A, original, Apache-2.0.

A tool for summarising post-translational modification sites from a CSV. Post-translational modifications are chemical changes to proteins, such as phosphorylation, acetylation, or ubiquitination.

In plain words
What is it for?
Use it to classify modification sites, count sites by type, review amino-acid distributions, and list high-confidence sites.
Why use it?
It organises site-level results by modification type, amino acid, protein, and localisation confidence instead of requiring manual counting.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one.

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/tiangzlab/omicsclaw/proteomics-ptm
Any agent
npx skills add TianGzlab/OmicsClaw --skill proteomics-ptm
Clone the repo
git clone --depth 1 https://github.com/TianGzlab/OmicsClaw

Made for: Claude Code, Codex.

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 proteomics-ptm

README.md
[![agentmods](https://agentmods.dev/badge/skills/tiangzlab/omicsclaw/proteomics-ptm.svg)](https://agentmods.dev/skills/tiangzlab/omicsclaw/proteomics-ptm)
Your own site
<a href="https://agentmods.dev/skills/tiangzlab/omicsclaw/proteomics-ptm"><img src="https://agentmods.dev/badge/skills/tiangzlab/omicsclaw/proteomics-ptm.svg" alt="Measured on agentmods" height="20"></a>
Per session 95 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,348 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.00095 $0.01348
Opus 5 $0.00048 $0.00674
Sonnet 5 $0.00019 $0.00270
Haiku 4.5 $0.00010 $0.00135

Measured 2d ago against content hash a7343205b6de, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-05, from the pricing page.

Security

Grade A, and why

proteomics-ptm 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 2d ago.

The scan reads SKILL.md. This mod also ships 1 executable file (proteomics_ptm.py), listed below but not scanned — reading those needs a real analyzer, not pattern matching.

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.

skills/proteomics/proteomics-ptm/SKILL.md · 99 lines

How it starts

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

proteomics-ptm

When to use

The user has a PTM-site CSV (columns include protein and ptm_type, optionally localization_probability, amino_acid) and wants per-PTM summary: site-class assignment using Olsen et al. (2006) thresholds (Class I ≥ --loc-threshold, Class II ≥ 0.50, Class III < 0.50, Unknown if no probability), per-PTM-type counts, amino-acid distribution, sites-per-protein.

--loc-threshold controls the Class I cutoff (default 0.75).

For protein-level abundance (no PTM split) use proteomics-quantification. For DE between conditions use proteomics-de.

Inputs & Outputs

Inputs

  • File types: .csv

Outputs

  • tables/ptm_class_I_sites.csv
  • tables/ptm_sites.csv
  • report.md
  • result.json

Flow

  1. Load CSV (--input <ptm_sites.csv>) or generate a demo (--demo).
  2. Validate required columns protein, ptm_type (proteomics_ptm.py:148-152 raises ValueError("Missing required column: '{col}'")).
  3. If localization_probability column exists, classify each site (proteomics_ptm.py:154-161):
    • Class I: prob ≥ --loc-threshold (default 0.75)
    • Class II: prob ≥ 0.50
    • Class III: < 0.50 (default branch)
    • If column missing → Unknown
  4. Aggregate per-PTM-type counts (:166), amino-acid distribution (:171, optional), sites-per-protein (:177).
  5. Write tables/ptm_sites.csv (proteomics_ptm.py:292) + tables/ptm_class_I_sites.csv (:297) + report.md + result.json.

Gotchas

  • Required CSV columns are LOWERCASE: protein, ptm_type. proteomics_ptm.py:149-152 raises ValueError("Missing required column: '{col}'") on first missing column. MaxQuant Phospho (STY)Sites.txt uses Proteins / Modification; rename to lowercase protein / ptm_type first.
  • Without localization_probability, EVERY site is Unknown. proteomics_ptm.py:163 falls back to df["site_class"] = "Unknown". The tables/ptm_class_I_sites.csv output will then be empty (no Class I sites). For unprocessed search-engine output that lacks the localization-probability column, run a localization tool (e.g. PhosphoRS / Andromeda) upstream.
  • --input REQUIRED unless --demo. proteomics_ptm.py:284 raises ValueError("--input required when not using --demo").
  • Class II cutoff is HARD-CODED at 0.50. Only --loc-threshold (Class I cutoff) is configurable. The 0.50 boundary at proteomics_ptm.py:158 cannot be tuned via CLI.
  • amino_acid distribution is optional and key-absent when empty. Without the amino_acid column, the script omits summary["amino_acid_distribution"] entirely (the if aa_counts: guard at proteomics_ptm.py:204 skips the assignment). Downstream consumers should check key presence ("amino_acid_distribution" in summary), not just length. Note the actual key name is amino_acid_distribution — NOT aa_counts.
  • ptm_type values are case-sensitive. Phospho and phospho are counted as distinct PTM types. Pre-normalise casing if your search engine emits mixed values.

Read the full file on GitHub · 99 lines

Files

What ships with it

5 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. 2d ago First seen · 99 lines · 95 tokens per session scan A a7343205b6de

Subscribe to this mod's changes

proteomics-ptm is a skill published in the GitHub repository TianGzlab/OmicsClaw (160 stars, last pushed 1mo ago), licensed Apache-2.0. It adds 95 tokens to every session and 1,348 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-09-03.

Related

Other skills, from other repositories

bio-agent-skills-hub

Discover and invoke 1,676 deduplicated biomedical AI agent skills from the Awesome Bio Agent Skills repository (20 source repos, 15 categories). Use this skill as a router whenever a user needs a bioinformatics/biomedical task (genomics, transcriptomics, single-cell, proteomics, protein design, clinical, epigenomics…

BioTender-max/awesome-bio-agent-skills · 114 tokens

scanpy

Standard single-cell RNA-seq analysis pipeline. Use for QC, normalization, dimensionality reduction (PCA/UMAP/t-SNE), clustering, differential expression, and visualization. Best for exploratory scRNA-seq analysis with established workflows. For deep learning models use scvi-tools; for data format questions use…

synthetic-sciences/openscience · 68 tokens

cellxgene-census-query

Query CZ CELLxGENE Census (61M+ cells). Filter by cell type/tissue/disease, retrieve expression data, and integrate with scanpy/PyTorch for population-scale single-cell analysis. Use this skill when: (1) Querying single-cell expression data by cell type, tissue, or disease, (2) Exploring available single-cell datasets…

PharMolix/OpenBioMed · 105 tokens

single-cell-scrna-seq-analysis-scanpy

Complete single-cell RNA-seq analysis workflow built on Scanpy and AnnData. Use this skill when: (1) Loading diverse single-cell data formats (10X, h5ad, CSV), (2) Performing quality control and filtering, (3) Normalization, dimensionality reduction, and clustering, (4) Marker gene identification and cell type…

PharMolix/OpenBioMed · 85 tokens

single-cell-multi-omics-analysis-scvi

Probabilistic deep learning framework for single-cell multi-omics data analysis. Use this skill when: (1) Analyzing single-cell RNA-seq data with batch correction, (2) Integrating multi-modal data (CITE-seq, ATAC-seq, multi-omics), (3) Performing cell type annotation with scANVI, (4) Spatial transcriptomics…

PharMolix/OpenBioMed · 94 tokens

data-stats-analysis

Perform statistical tests, hypothesis testing, correlation analysis, and multiple testing corrections using scipy and statsmodels. Works with ANY LLM provider (GPT, Gemini, Claude, etc.).

omicverse/omicverse · 40 tokens