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.
npx agentmods add skills/tiangzlab/omicsclaw/spatial-integratenpx skills add TianGzlab/OmicsClaw --skill spatial-integrategit clone --depth 1 https://github.com/TianGzlab/OmicsClawWrote 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.
[](https://agentmods.dev/skills/tiangzlab/omicsclaw/spatial-integrate)<a href="https://agentmods.dev/skills/tiangzlab/omicsclaw/spatial-integrate"><img src="https://agentmods.dev/badge/skills/tiangzlab/omicsclaw/spatial-integrate.svg" alt="Measured on agentmods" height="20"></a>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.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00062 | $0.01847 |
| Opus 5 | $0.00031 | $0.00924 |
| Sonnet 5 | $0.00012 | $0.00369 |
| Haiku 4.5 | $0.00006 | $0.00185 |
Grade A, and why
spatial-integrate 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 today.
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.
How it starts
The opening of the file, as written. The whole thing — 138 lines — stays where its author put it; the contents beside it link to each section on GitHub.
spatial-integrate
When to use
The user has a multi-sample spatial AnnData (sample / donor labels in
obs["batch"] or another --batch-key) and wants batch effects in
the gene-expression embedding removed before downstream domain /
cluster / DE analysis. Three methods:
harmony(default) — soft k-means in PCA space; producesobsm["X_pca_harmony"]. Tunable via--harmony-theta/--harmony-lambda/--harmony-max-iter. Requiresharmonypy.bbknn— batch-balanced neighbour graph; produces a fusedobsp["distances"]ready for UMAP / clustering. Tunable via--bbknn-neighbors-within-batch/--bbknn-n-pcs/--bbknn-trim. Requiresbbknn.scanorama— corrected expression matrix inobsm["X_scanorama"]. Tunable via--scanorama-knn/--scanorama-sigma/--scanorama-alpha/--scanorama-batch-size. Requiresscanorama.
For physical slice-coordinate alignment use spatial-register. For
single-batch data skip this skill and go to spatial-domains /
spatial-de directly.
Inputs & Outputs
Inputs
- File types:
.h5ad - Requires a preprocessed AnnData (
Xnormalised, PCA/neighbours present) - Expects
obsm:X_pca
Outputs
tables/batch_sizes.csvtables/corrected_embedding_points.csvtables/integration_metrics.csvtables/integration_observations.csvtables/umap_after_points.csvtables/umap_before_points.csvfigures/batch_entropy_after_umap.pngfigures/batch_entropy_distribution.pngfigures/batch_highlight.pngfigures/batch_mixing.pngfigures/batch_sizes.pngfigures/umap_before_by_batch.pngfigures/umap_by_batch.pngfigures/umap_by_cluster.pngprocessed.h5adreport.mdresult.json- Processed AnnData (
saves_h5ad) — addsobsm:X_pca_harmony,X_scanorama
Flow
- Load AnnData (
--input) or build a 3-batch demo via the bundledspatial-preprocess --demo(spatial_integrate.py:803-815chains via subprocess). parser.errorvalidates per-method numeric ranges (--harmony-theta≥ 0;--harmony-lambda> 0 or -1;--harmony-max-iter≥ 1;--bbknn-*≥ 1;--scanorama-*per-flag bounds).- Dispatch to method:
harmony→ writeobsm["X_pca_harmony"].bbknn→ rebuildobsp["distances"]+obsp["connectivities"].scanorama→ writeobsm["X_scanorama"].
- Compute integration metrics (e.g., LISI / silhouette scores when supported).
- Save
processed.h5ad, tables, figures,report.md,result.json.
What ships with it
8 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.
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.
- today First seen · 138 lines · 62 tokens per session scan A 178c01bb5412
spatial-integrate is a skill published in the GitHub repository TianGzlab/OmicsClaw (160 stars, last pushed 1mo ago), licensed Apache-2.0. It adds 62 tokens to every session and 1,847 once invoked, about $0.0003 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.
Other skills, from other repositories
spatial-integration
Multi-sample integration and batch correction for spatial transcriptomics data.
spatial-multi-sample-integration
Multi-sample spatial transcriptomics integration and batch correction with automatic method selection (STAligner, Harmony, BBKNN, Scanorama) and robust fallback.
spatial-omics-integrate
Integrate two aligned spatial omics modalities on the same cells using SpatialGlue or SpaDDM. Standard input contract: --input --omics2 . Supports demo mode and validated modality pairs such as RNA+Protein and RNA+ATAC.
batch_integration_advisor
Recommend a batch-integration strategy and explain the tradeoffs for preserving biology versus removing technical effects.
spatial-modality-integrate
Identify spatial domains with DeepST or PearlST. This skill is directory-only: use --input /path/to/sample for single-sample runs; use --mode integration --input-list samples.txt only with DeepST.
exploratory-data-analysis
Perform bounded, local exploratory analysis of explicitly supported scientific files. Use for redacted CSV/TSV/JSON profiles; optional NumPy, HDF5, FASTA/FASTQ, and basic image metadata inspection; missingness/leakage audits; outlier and transformation sensitivity; and rigorous EDA report scaffolds. Other domain…