Genomic file toolkit. An agent skill from davila7/claude-code-templates.

MITAuto-check passedResearch & Science

Install Pysam

skills CLI
$ npx skills add davila7/claude-code-templates --skill pysam -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install davila7/claude-code-templates pysam --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/davila7/claude-code-templates.git skills-src && mkdir -p .claude/skills && cp -r skills-src/cli-tool/components/skills/scientific/pysam .claude/skills/pysam && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
pysam
GitHub stars
33k
Used in
10 other repos
Token cost
~2.5k tokens
SKILL.md length
1,003 words
Files
5 (incl. references)
Skills in repo
479
Repo updated
First seen
Licence
MIT

At a glance

Genomic file toolkit. An agent skill from davila7/claude-code-templates.

  • Works in 4 steps: Alignment File Operations (SAM/BAM/CRAM) → Variant File Operations (VCF/BCF) → Sequence File Operations (FASTA/FASTQ) → …
  • Tasks that involve Bioinformatics
  • SKILL.md covers Overview, When to Use This Skill, Quick Start and Core Capabilities, plus 5 more sections
  • Calls uv

What it does

Pysam is an agent skill from davila7/claude-code-templates. Genomic file toolkit. Read/write SAM/BAM/CRAM alignments, VCF/BCF variants, FASTA/FASTQ sequences, extract regions, calculate coverage, for NGS data processing pipelines.

Its SKILL.md is about 2.5k tokens, which your agent loads only when the skill is triggered. The skill folder holds 5 other files, including reference files (for example `references/alignment_files.md`, `references/common_workflows.md` and `references/sequence_files.md`).

It sits in Research & Science, covering Bioinformatics. It works with pysam. The repository describes itself as: CLI tool for configuring and monitoring Claude Code. The licence is MIT.

When your agent uses it

  • Tasks that involve Bioinformatics

Example prompts

  • “/pysam”

Requirements

  • Python 3

Workflow steps

4 steps, taken from the step headings in SKILL.md.

  1. Alignment File Operations (SAM/BAM/CRAM)
  2. Variant File Operations (VCF/BCF)
  3. Sequence File Operations (FASTA/FASTQ)
  4. Integrated Bioinformatics Workflows

What it can do on your machine

Read from SKILL.md and the folder at commit c0ca7da. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • uv

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Links to these hosts (documentation or services it may open):

    • pysam.readthedocs.io

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Pysam loads about 2.5k tokens when it runs, and up to ~14k if it reads all its reference files. Until then it costs about 44 tokens; SKILL.md has 1,003 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~44
When it runs · the whole SKILL.md, loaded when a task matches
~2.5k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~14k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from davila7/claude-code-templates at commit c0ca7da, republished under its MIT licence (© davila7). 1,003 words, ~2,481 tokens.

Download SKILL.mdSave it as .claude/skills/pysam/SKILL.md (or your agent's skills folder). This skill also uses 4 other files; get the full folder from GitHub.
name
pysam
description
Genomic file toolkit. Read/write SAM/BAM/CRAM alignments, VCF/BCF variants, FASTA/FASTQ sequences, extract regions, calculate coverage, for NGS data processing pipelines.

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
bash
uv pip install pysam
Basic Examples

Read alignment file:

python
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:

python
# 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:

python
# 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

Reference: See references/alignment_files.md for detailed documentation on:

  • Opening and reading alignment files
  • AlignedSegment attributes and methods
  • Region-based fetching with fetch()
  • Pileup analysis for coverage
  • Writing and creating BAM files
  • Coordinate systems and indexing
  • Performance optimization tips
2. Variant File Operations (VCF/BCF)

Use the VariantFile class to work with genetic variants from variant calling pipelines. This is appropriate for variant analysis, filtering, annotation, or population genetics.

Common operations:

  • Read and write VCF/BCF files
  • Query variants in specific regions
  • Access variant information (position, alleles, quality)
  • Extract genotype data for samples
  • Filter variants by quality, allele frequency, or other criteria
  • Annotate variants with additional information
  • Subset samples or regions

Reference: See references/variant_files.md for detailed documentation on:

  • Opening and reading variant files
  • VariantRecord attributes and methods
  • Accessing INFO and FORMAT fields
  • Working with genotypes and samples
  • Creating and writing VCF files
  • Filtering and subsetting variants
  • Multi-sample VCF operations
3. Sequence File Operations (FASTA/FASTQ)

Use FastaFile for random access to reference sequences and FastxFile for reading raw sequencing data. This is appropriate for extracting gene sequences, validating variants against reference, or processing raw reads.

Common operations:

  • Query reference sequences by genomic coordinates
  • Extract sequences for genes or regions of interest
  • Read FASTQ files with quality scores
  • Validate variant reference alleles
  • Calculate sequence statistics
  • Filter reads by quality or length
  • Convert between FASTA and FASTQ formats

Reference: See references/sequence_files.md for detailed documentation on:

  • FASTA file access and indexing
  • Extracting sequences by region
  • Handling reverse complement for genes
  • Reading FASTQ files sequentially
  • Quality score conversion and filtering
  • Working with tabix-indexed files (BED, GTF, GFF)
  • Common sequence processing patterns
4. Integrated Bioinformatics Workflows

Pysam excels at integrating multiple file types for comprehensive genomic analyses. Common workflows combine alignment files, variant files, and reference sequences.

Common workflows:

  • Calculate coverage statistics for specific regions
  • Validate variants against aligned reads
  • Annotate variants with coverage information
  • Extract sequences around variant positions
  • Filter alignments or variants based on multiple criteria
  • Generate coverage tracks for visualization
  • Quality control across multiple data types

Reference: See references/common_workflows.md for detailed examples of:

  • Quality control workflows (BAM statistics, reference consistency)
  • Coverage analysis (per-base coverage, low coverage detection)
  • Variant analysis (annotation, filtering by read support)
  • Sequence extraction (variant contexts, gene sequences)
  • Read filtering and subsetting
  • Integration patterns (BAM+VCF, VCF+BED, etc.)
  • Performance optimization for complex workflows

Key Concepts

Coordinate Systems

Critical: Pysam uses 0-based, half-open coordinates (Python convention):

  • Start positions are 0-based (first base is position 0)
  • End positions are exclusive (not included in the range)
  • Region 1000-2000 includes bases 1000-1999 (1000 bases total)

Exception: Region strings in fetch() follow samtools convention (1-based):

python
samfile.fetch("chr1", 999, 2000)      # 0-based: positions 999-1999
samfile.fetch("chr1:1000-2000")       # 1-based string: positions 1000-2000

VCF files: Use 1-based coordinates in the file format, but VariantRecord.start is 0-based.

Show full SKILL.md (386 more words)Show less
Indexing Requirements

Random access to specific genomic regions requires index files:

  • BAM files: Require .bai index (create with pysam.index())
  • CRAM files: Require .crai index
  • FASTA files: Require .fai index (create with pysam.faidx())
  • VCF.gz files: Require .tbi tabix index (create with pysam.tabix_index())
  • BCF files: Require .csi index

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

File Modes

Specify format when opening files:

  • "rb" - Read BAM (binary)
  • "r" - Read SAM (text)
  • "rc" - Read CRAM
  • "wb" - Write BAM
  • "w" - Write SAM
  • "wc" - Write CRAM
Performance Considerations
  1. Always use indexed files for random access operations
  2. Use pileup() for column-wise analysis instead of repeated fetch operations
  3. Use count() for counting instead of iterating and counting manually
  4. Process regions in parallel when analyzing independent genomic regions
  5. Close files explicitly to free resources
  6. Use until_eof=True for sequential processing without index
  7. Avoid multiple iterators unless necessary (use multiple_iterators=True if needed)

Common Pitfalls

  1. Coordinate confusion: Remember 0-based vs 1-based systems in different contexts
  2. Missing indices: Many operations require index files—create them first
  3. Partial overlaps: fetch() returns reads overlapping region boundaries, not just those fully contained
  4. Iterator scope: Keep pileup iterator references alive to avoid "PileupProxy accessed after iterator finished" errors
  5. Quality score editing: Cannot modify query_qualities in place after changing query_sequence—create a copy first
  6. Stream limitations: Only stdin/stdout are supported for streaming, not arbitrary Python file objects
  7. Thread safety: While GIL is released during I/O, comprehensive thread-safety hasn't been fully validated

Command-Line Tools

Pysam provides access to samtools and bcftools commands:

python
# Sort BAM file
pysam.samtools.sort("-o", "sorted.bam", "input.bam")

# Index BAM
pysam.samtools.index("sorted.bam")

# View specific region
pysam.samtools.view("-b", "-o", "region.bam", "input.bam", "chr1:1000-2000")

# BCF tools
pysam.bcftools.view("-O", "z", "-o", "output.vcf.gz", "input.vcf")

Error handling:

python
try:
    pysam.samtools.sort("-o", "output.bam", "input.bam")
except pysam.SamtoolsError as e:
    print(f"Error: {e}")

Resources

references/

Detailed documentation for each major capability:

  • alignment_files.md - Complete guide to SAM/BAM/CRAM operations, including AlignmentFile class, AlignedSegment attributes, fetch operations, pileup analysis, and writing alignments

  • variant_files.md - Complete guide to VCF/BCF operations, including VariantFile class, VariantRecord attributes, genotype handling, INFO/FORMAT fields, and multi-sample operations

  • sequence_files.md - Complete guide to FASTA/FASTQ operations, including FastaFile and FastxFile classes, sequence extraction, quality score handling, and tabix-indexed file access

  • common_workflows.md - Practical examples of integrated bioinformatics workflows combining multiple file types, including quality control, coverage analysis, variant validation, and sequence extraction

Getting Help

For detailed information on specific operations, refer to the appropriate reference document:

  • Working with BAM files or calculating coverage → alignment_files.md
  • Analyzing variants or genotypes → variant_files.md
  • Extracting sequences or processing FASTQ → sequence_files.md
  • Complex workflows integrating multiple file types → common_workflows.md

Official documentation: https://pysam.readthedocs.io/

© davila7, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 4 other files (references) in cli-tool/components/skills/scientific/pysam of davila7/claude-code-templates.

  • SKILL.md
  • references/alignment_files.md
  • references/common_workflows.md
  • references/sequence_files.md
  • references/variant_files.md

Open the folder on GitHubat commit c0ca7da

Used in 10 other repositories

We found 12 copies of this SKILL.md (exact, near-identical or edited) in other folders, from 10 other GitHub owners. This page covers the copy in davila7/claude-code-templates, which our catalogue first saw on October 7, 2026.

Compare with similar skills

Pysam next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Pysam compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Pysam this skilldavila7/claude-code-templates33k10 repos~2.5kAutomated safety check: PassMIT
Amplicon Primer ClippingGPTomics/bioSkills1.2k2 repos~2.2kAutomated safety check: PassMIT
Alignment Filtering with samtools and pysamGPTomics/bioSkills1.2k2 repos~3.6kAutomated safety check: PassMIT
Bio Alignment IndexingGPTomics/bioSkills1.2k2 repos~2.4kAutomated safety check: PassMIT
Bio Alignment SortingGPTomics/bioSkills1.2k2 repos~2.6kAutomated safety check: PassMIT
PysamK-Dense-AI/scientific-agent-skills48k1 repos~3.4kAutomated safety check: NotesMIT

Similar skills

  • Amplicon Primer Clipping

    GPTomics/bioSkills

    Soft- or hard-clips PCR primer footprints from aligned amplicon BAMs so primer bases stop masquerading as confirmed reference sequence.

    1.2k GitHub starsUsed in 2 repos~2.2k tokens
    Research & ScienceAuto-check passed
  • Filters BAM alignments by FLAG bits, mapping quality and regions with samtools view or pysam, with recipes for common keep and drop cases.

    1.2k GitHub starsUsed in 2 repos~3.6k tokens
    Research & ScienceAuto-check passed
  • Bio Alignment Indexing

    GPTomics/bioSkills

    Create and use BAI/CSI indices for BAM/CRAM files using samtools and pysam.

    1.2k GitHub starsUsed in 2 repos~2.4k tokens
    Research & ScienceAuto-check passed
  • Bio Alignment Sorting

    GPTomics/bioSkills

    Sort alignment files by coordinate or read name using samtools and pysam.

    1.2k GitHub starsUsed in 2 repos~2.6k tokens
    Research & ScienceAuto-check passed
  • Pysam

    K-Dense-AI/scientific-agent-skills

    Provides Python/HTSlib workflows for genomic files. An agent skill from K-Dense-AI/scientific-agent-skills.

    48k GitHub starsUsed in 1 repo~3.4k tokens
    Research & ScienceAuto-check: notes
  • Omics Tools

    DrugClaw/DrugClaw

    Omics and single-cell workflow guide for AnnData, Scanpy-style dataset profiling, PyDESeq2-oriented count checks, pysam alignment inspection, and pyOpenMS mass-spectrometry summaries.

    126 GitHub stars~1.1k tokensUpdated 6 mo ago
    Research & ScienceAuto-check passed

More from davila7/claude-code-templates

All 479 skills in this repo
  • Perplexity Web Search

    davila7/claude-code-templates

    Runs web-grounded searches through Perplexity's Sonar models over OpenRouter for current events, recent literature and cited facts beyond the model's training cutoff.

    33k GitHub starsUsed in 11 repos~3.5k tokens
    Auto-check: notes
  • Neuropixels Data Analysis

    davila7/claude-code-templates

    Analyzes Neuropixels recordings from SpikeGLX or Open Ephys through preprocessing, drift correction, Kilosort4 spike sorting, quality metrics and curation.

    33k GitHub starsUsed in 9 repos~2.8k tokens
    Auto-check passed
  • Scientific Venue Templates

    davila7/claude-code-templates

    Supplies LaTeX templates and formatting rules for journals, conferences, posters, and grant proposals, then can check a draft against them.

    33k GitHub starsUsed in 9 repos~5.1k tokens
    Auto-check: notes
  • Brand Voice Content Creator

    davila7/claude-code-templates

    Analyzes a brand's existing writing to lock in a consistent voice, then builds SEO blog posts and platform-specific social content around it.

    33k GitHub starsUsed in 3 repos~1.9k tokens
    Auto-check passed
  • CAPA Officer

    davila7/claude-code-templates

    Guides corrective and preventive action (CAPA) work in a quality management system, from initiation and root cause analysis through effectiveness verification.

    33k GitHub starsUsed in 1 repo~2k tokens
    Auto-check passed
  • Fda Consultant Specialist

    davila7/claude-code-templates

    Senior FDA consultant and specialist for medical device companies including HIPAA compliance and requirement management.

    33k GitHub starsUsed in 1 repo~2.7k tokens
    Auto-check passed

Works with

Questions about Pysam

What does Pysam do?

Genomic file toolkit. An agent skill from davila7/claude-code-templates. Pysam is an agent skill from davila7/claude-code-templates. Genomic file toolkit.

When should I use Pysam?

Pysam fits situations like: tasks that involve Bioinformatics.

How do I install Pysam in Claude Code?

Run `npx skills add davila7/claude-code-templates --skill pysam -a claude-code`. Or copy the skill folder (cli-tool/components/skills/scientific/pysam in davila7/claude-code-templates) into .claude/skills/pysam in your project. Claude Code loads it when a task matches its description.

How do I install Pysam in Codex?

Run `npx skills add davila7/claude-code-templates --skill pysam -a codex`. Or copy the skill folder (cli-tool/components/skills/scientific/pysam in davila7/claude-code-templates) into .agents/skills/pysam in your project. Codex loads it when a task matches its description.

Can I use Pysam in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add davila7/claude-code-templates --skill pysam -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/pysam, .gemini/skills/pysam, .github/skills/pysam and .opencode/skills/pysam in your project.

What does Pysam need to run?

Going by SKILL.md and its folder, Pysam needs the command-line tools its instructions call (uv). Our summary lists: Python 3.

Does Pysam access the network?

SKILL.md names 1 domain. As links in the text: pysam.readthedocs.io. This is read from the text; nothing was executed.

Is Pysam safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Pysam use?

Pysam is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Pysam use?

About 2.5k tokens (SKILL.md is roughly 9.9k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 11k tokens, read only when the agent opens those files.

What are the alternatives to Pysam?

Skills that share tags, products or a category with Pysam: Amplicon Primer Clipping (GPTomics/bioSkills, 1.2k stars), Alignment Filtering with samtools and pysam (GPTomics/bioSkills, 1.2k stars), Bio Alignment Indexing (GPTomics/bioSkills, 1.2k stars) and Bio Alignment Sorting (GPTomics/bioSkills, 1.2k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Pysam?

davila7 (a GitHub user) maintains it in davila7/claude-code-templates, which has 32,512 GitHub stars. The repository holds 479 skills in this directory. The repository was last updated on October 10, 2026.

Source: davila7/claude-code-templates on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.