pysam

A Python toolkit for reading and changing common genomic data files, including sequencing alignments, genetic variants, and DNA sequences. NGS, or next-generation sequencing, is a way to read large numbers of DNA fragments.

In plain words
What is it for?
Use it to process SAM, BAM, CRAM, VCF, BCF, FASTA, and FASTQ files, extract regions, inspect reads, calculate coverage, and build sequencing-data pipelines.
Why use it?
It gives bioinformatics programs a way to work with these files and inspect selected genomic regions without manually parsing their formats. It also supports coverage calculations and related command-line tools.

Skill for Claude CodeCodex

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/synthetic-sciences/openscience/pysam
Any agent
npx skills add synthetic-sciences/openscience --skill pysam
Clone the repo
git clone --depth 1 https://github.com/synthetic-sciences/openscience

Made for: Claude Code, Codex.

Per session 47 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 2,311 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 1 finding. 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 $0.00047 $0.02311
Opus 5 $0.00023 $0.01156
Sonnet 5 $0.00009 $0.00462
Haiku 4.5 $0.00005 $0.00231

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

Security

Grade A, and why

pysam scanned grade A with 1 finding 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.

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.

Makes network callslowCapability

Not a fault in itself. Listed so you know the mod talks to something, and to what.

Without an index, use `fetch(until_eof=True)` for sequential reading.
Origin

Copies of this mod

3 near-identical copies found in the catalogue:

  • alterlab-pysam — 98% identical, 16 lines differ
  • pysam — 97% identical, 6 lines differ
  • pysam — 95% identical, 3 lines differ
backend/cli/skills/biology/pysam/SKILL.md · 265 lines

How it starts

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

Pysam

Overview

Pysam is a Python module for reading, manipulating, and writing genomic datasets. Read/write SAM/BAM/CRAM alignment files, VCF/BCF variant files, and FASTA/FASTQ sequences with a Pythonic interface to htslib. Query tabix-indexed files, perform pileup analysis for coverage, and execute samtools/bcftools commands.

When to Use This Skill

This skill should be used when:

  • Working with sequencing alignment files (BAM/CRAM)
  • Analyzing genetic variants (VCF/BCF)
  • Extracting reference sequences or gene regions
  • Processing raw sequencing data (FASTQ)
  • Calculating coverage or read depth
  • Implementing bioinformatics analysis pipelines
  • Quality control of sequencing data
  • Variant calling and annotation workflows

Quick Start

Installation

uv pip install pysam

Basic Examples

Read alignment file:

import pysam

# Open BAM file and fetch reads in region
samfile = pysam.AlignmentFile("example.bam", "rb")
for read in samfile.fetch("chr1", 1000, 2000):
    print(f"{read.query_name}: {read.reference_start}")
samfile.close()

Read variant file:

# Open VCF file and iterate variants
vcf = pysam.VariantFile("variants.vcf")
for variant in vcf:
    print(f"{variant.chrom}:{variant.pos} {variant.ref}>{variant.alts}")
vcf.close()

Query reference sequence:

# Open FASTA and extract sequence
fasta = pysam.FastaFile("reference.fasta")
sequence = fasta.fetch("chr1", 1000, 2000)
print(sequence)
fasta.close()

Core Capabilities

1. Alignment File Operations (SAM/BAM/CRAM)

Use the AlignmentFile class to work with aligned sequencing reads. This is appropriate for analyzing mapping results, calculating coverage, extracting reads, or quality control.

Common operations:

  • Open and read BAM/SAM/CRAM files
  • Fetch reads from specific genomic regions
  • Filter reads by mapping quality, flags, or other criteria
  • Write filtered or modified alignments
  • Calculate coverage statistics
  • Perform pileup analysis (base-by-base coverage)
  • Access read sequences, quality scores, and alignment information

Read the full file on GitHub · 265 lines

Files

What ships with it

4 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 · 265 lines · 47 tokens per session scan A c456d64c4df7

Subscribe to this mod's changes

pysam is a skill published in the GitHub repository synthetic-sciences/openscience (3,385 stars, last pushed today), licensed Apache-2.0. It adds 47 tokens to every session and 2,311 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 1 finding (makes network calls). 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

python-math

Small Python utilities for math and text files.

trpc-group/trpc-agent-go · 13 tokens

paper2code

Converts an arxiv paper into a minimal, citation-anchored Python implementation. Trigger when user runs /paper2code with an arxiv URL or paper ID, says "implement this paper", or pastes an arxiv link asking for implementation. Flags all ambiguities honestly. Never invents implementation details not stated in the paper.

PrathamLearnsToCode/paper2code · 72 tokens

esm

Use when working directly with the esm Python SDK, ESM3 or ESMC model IDs, Forge/Biohub inference clients, or ESMFold2 folding workflows.

K-Dense-AI/scientific-agent-skills · 39 tokens

adk-sample-creator

Creates a new sample agent in the ADK Python repository — the sample directory, its agent.py, and its README.md — following the conventions the existing samples already use. Use when the user wants to add a sample or example demonstrating a feature or agent pattern (dynamic nodes, fan-out/fan-in, a standalone…

google/adk-python · 150 tokens

zeroclaw

Help users operate and interact with their ZeroClaw agent instance — through both the CLI (zeroclaw commands) and the REST/WebSocket gateway API. Use this skill whenever the user wants to: send messages to ZeroClaw, manage memory or cron jobs, check system status, configure channels or providers, hit the gateway API…

zeroclaw-labs/zeroclaw · 167 tokens

github-issue-triage

Issue triage and lifecycle management agent for ZeroClaw. Use this skill whenever the user wants to: triage open issues, close stale/duplicate/fixed issues, apply labels, run a backlog sweep, enforce the current issue stale policy, or handle a specific issue. Trigger on: 'triage issues', 'issue triage', 'sweep…

zeroclaw-labs/zeroclaw · 140 tokens