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 skills add openscientist-io/openscientist --skill genomicsgit clone --depth 1 https://github.com/openscientist-io/openscientistWrote 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/openscientist-io/openscientist/genomics)<a href="https://agentmods.dev/skills/openscientist-io/openscientist/genomics"><img src="https://agentmods.dev/badge/skills/openscientist-io/openscientist/genomics/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/openscientist-io/openscientist/genomics"><img src="https://agentmods.dev/badge/skills/openscientist-io/openscientist/genomics.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
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.1 | $0.00010 | $0.04746 |
| Opus 5.5 | $0.00004 | $0.01898 |
| Sonnet 5.5 | $0.00002 | $0.00949 |
| Haiku 4.5 | $0.00001 | $0.00475 |
Grade A, and why
genomics 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 2mo 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.
How it starts
The opening of the file, as written. The whole thing — 561 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Genomics and Transcriptomics Analysis
When to Use This Skill
- When data contains gene expression measurements (RNA-seq, microarray)
- When analyzing differential gene expression
- When performing pathway or gene set enrichment analysis
- When interpreting genetic variants or mutations
Core Concepts
Gene Expression Data Types
RNA-seq counts:
- Raw read counts per gene
- Requires normalization (TPM, RPKM, DESeq2)
- Suitable for differential expression analysis
Microarray intensities:
- Probe fluorescence intensities
- Log-transformed, background-corrected
- Legacy platform, less common now
Single-cell RNA-seq:
- Expression per cell (not bulk tissue)
- High sparsity (many zeros)
- Specialized analysis methods
- ⚠️ For differential expression across conditions, aggregate to the sample level (pseudobulk) — cells are not independent replicates (see below)
Gene Nomenclature
Human genes:
- Official symbols: HUGO Gene Nomenclature Committee (HGNC)
- Example: TP53 (tumor protein p53)
- Italicized in publications
Mouse genes:
- Similar to human but capitalization differs
- Example: Tp53 (first letter capital, rest lowercase)
Protein names:
- Not italicized
- Example: p53 protein
Always verify gene symbols - aliases and outdated names are common.
Differential Expression Analysis
Workflow
import pandas as pd
import numpy as np
from scipy.stats import ttest_ind
from statsmodels.stats.multitest import multipletests
# Load expression data (genes × samples)
# Rows = genes, Columns = samples
expr_data = pd.read_csv("expression_data.csv", index_col=0)
# Define groups
group1_samples = ["Sample1", "Sample2", "Sample3"]
group2_samples = ["Sample4", "Sample5", "Sample6"]
results = []
for gene in expr_data.index:
group1_expr = expr_data.loc[gene, group1_samples]
group2_expr = expr_data.loc[gene, group2_samples]
# T-test
t_stat, p_value = ttest_ind(group1_expr, group2_expr)
# Fold change
mean1 = group1_expr.mean()
mean2 = group2_expr.mean()
log2fc = np.log2(mean1 / mean2) if mean2 > 0 else np.nan
results.append({
"gene": gene,
"log2FC": log2fc,
"p_value": p_value,
"mean_group1": mean1,
"mean_group2": mean2
})
results_df = pd.DataFrame(results)
# Multiple testing correction
results_df["p_adj"] = multipletests(results_df["p_value"], method="fdr_bh")[1]
# Define significant genes
significant = results_df[
(results_df["p_adj"] < 0.05) &
(abs(results_df["log2FC"]) > 1) # 2-fold change
]
print(f"Significant genes: {len(significant)}")
print(f"Upregulated: {sum(significant['log2FC'] > 0)}")
print(f"Downregulated: {sum(significant['log2FC'] < 0)}")
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.
- 2mo ago First seen · 561 lines · 10 tokens per session scan A 276f755ae65a
genomics is a skill published in the GitHub repository openscientist-io/openscientist (63 stars, last pushed today), licensed Apache-2.0. It adds 10 tokens to every session and 4,746 once invoked, about $0.0000 per session on Opus 5.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.
genomics compared with skills from other repositories
| Mod | Type | Stars | Last push | Licence | Scan | Tokens | Works with |
|---|---|---|---|---|---|---|---|
| genomicsopenscientist-io/openscientist | Skill | 63 | today | Apache-2.0 | A | 10 | Claude Code, Codex |
| featool-multiphysicsmahmoud20138/Tradecraft | Skill | 17 | 6mo ago | MIT | A | 66 | Claude Code |
| designerorkait/hyperstack | Skill | 1 | 1mo ago | none | A | 62 | Claude Code |
| instrument-data-to-allotropeanthropics/knowledge-work-plugins | Skill | 35k | 2d ago | Apache-2.0 | A | 123 | Claude Code |
| exploratory-data-analysisK-Dense-AI/scientific-agent-skills | Skill | 56k | 4d ago | MIT | A | 83 | Claude Code |
| matlabK-Dense-AI/scientific-agent-skills | Skill | 56k | 4d ago | MIT | A | 44 | Claude Code |
| phylogeneticsK-Dense-AI/scientific-agent-skills | Skill | 56k | 4d ago | MIT | A | 71 | Claude Code, Codex |