My collection of Claude-and-friends skills, agents, and bits.
-
zotero-plugin — Expert guide for building, debugging, and releasing Zotero 7–9 plugins. Covers both the classic bootstrapped stack and the TypeScript
zotero-plugin-scaffold/zotero-plugin-toolkitstack. -
gget — Fast CLI/Python queries to ~20 bioinformatics databases (Ensembl, UniProt, NCBI, AlphaFold, Enrichr, ARCHS4, …). Copied verbatim from K-Dense-AI/scientific-agent-skills under their MIT / BSD-2-Clause licensing; see
skills/gget/NOTICE.mdfor provenance. -
gene-set-fetch — Named, provenance-stamped gene sets for human and mouse: transcription factors (Lambert 2018, AnimalTFDB), protein-coding genes (Ensembl biotype, or strict three-way intersection against HGNC/MGI and GENCODE), and set-algebra composites (union, intersection). Fetchers are short and readable on purpose — students should see how the sausage is made.
-
ontology-terms — Focused ontology term operations (immediate parents, immediate children, definition + synonyms, free-text search) across four sources: OLS at EBI (general use, version-pinned), Gemma's annotations API (lab alignment / strong search), direct OBO file parsing (max-reproducible), OntoBee SPARQL (flexible). Accepts both
GO:0006915and full OBO URIs; ontology version recorded per call. -
gene-annotations — Bidirectional gene ↔ GO term annotations with default child-propagation:
genes_with_annotation <term>andannotations_of_gene <gene>. Two authoritative sources: GOA via QuickGO REST (rich coverage), and GAF (GO Consortium per-species files, version-pinned + reproducible via locally cached go.obo). Symbols resolved transparently. Per-row direct/propagated flag. Term labels filled. Evidence codes preserved. Gemma deliberately NOT a default option. -
gene-statistics — Per-gene meta-statistics for honest interpretation of genomic analyses. v0.1 ships multifunctionality (Gillis & Pavlidis 2011): per-gene MF score over GO BP annotations, ranked 1-N with percentile. Flags genes that appear as top hits in any guilt-by-association / enrichment / DE analysis regardless of the underlying biology. v0.2 will add the Differential Expression Prior (Crow, Pavlidis, Gillis 2019). All evidence codes by default (IEA isn't lower quality). Composes with
gene-set-fetchfor the protein-coding background. -
enrichment — Gene-set enrichment with MF correction on by default. Two ops:
pr_enrichment(Ballouz, Pavlidis & Gillis 2017 PR-AUC method, for scored gene lists) andora(hypergeometric / Fisher's exact, for hit lists). Generalizable library input:go-bp(default, from GAF + go.obo) or any GMT file (MSigDB, KEGG, custom). MF-correction uses sibling-skill composition withgene-statistics. -
plotting — Publication-quality figure helpers in both Python (matplotlib) and R (ggplot2) with a consistent flat/minimal style. v0.1 ships
pavlab_heatmap(expression + correlation + raw),pavlab_scatter(basic, log-scale, categorical/numeric color, hexbin),pavlab_stripchart, andpavlab_density(density, histogram, violin, faceted). N-adaptive alpha/size, viridis colorbars, MF-correction-aware defaults. Comes with a 21-example side-by-side gallery. -
pdf-extract — Reproducible PDF extraction: body text (page-tagged), document metadata (title, authors, DOI, year from XMP/docinfo/first-page heuristics), and annotations (highlights, sticky notes, underlines) with highlighted text resolved from the text stream. Every output ships with a sha256-keyed
*_meta.jsonprovenance sidecar. Primary library: pymupdf; text-only fallback: pypdf. No LLM calls. -
provenance-stamp — Write and verify
*_meta.jsonprovenance sidecars for any analysis artifact. Records sha256 of the artifact and its inputs, source URL, DOI, upstream version/date, download timestamp (fetched_at), and analysis parameters. Library + CLI; stdlib-only. Compatible with the sidecar format produced by all bioinformatics skills in this repo. -
supplementary-table — Write supplementary tables that name the figure they back. Emits xlsx (with a
Provenancesheet) and csv / tsv (with#-prefixed comment header block carryingfigure_id,script,source,sha256,stamped_at). One call, both formats, identical hash. Sibling toprovenance-stampfor when the artifact IS the table. -
citation-validator — Detect hallucinated bibliography entries. Checks each citation against CrossRef (the DOI registrar): Level 1 — does the DOI exist? (404 = definitively hallucinated). Level 2 — does stated title/year/author match CrossRef's record? (
METADATA_MISMATCHcatches real DOIs attached to fake papers). Accepts BibTeX and plain text. Level 3 (v0.2): relevance check — does the paper's abstract support the claim at the point of citation? Designed for biolit integration. -
methods-section — Draft a Methods paragraph from an analysis directory. Scans lockfiles (
requirements*.txt,renv.lock, condaenvironment.yaml) for tools and versions, and*.meta.jsonsidecars for data sources, DOIs, download dates, and parameters. Emits structured JSON; Claude drafts the paragraph. Composes with provenance-stamp.
Each skill is a directory under skills/ containing a SKILL.md. To install one in Claude Code, either drop the folder into your skills directory or package it into a .skill file with the skill-creator tool and drag it into the app.
These skills were developed and tested on macOS. The Python and R helpers
aim to be portable — paths go through pathlib / tempfile, text files
are opened as UTF-8, and credentials fall back from environment variables
to the macOS Keychain — but Linux and Windows are not part of routine CI,
so the odd shell-ism or default-encoding wart may still need tweaking.
File an issue (or a PR) if something doesn't run for you on another OS.