adaptyv
How to use the Adaptyv Bio Foundry API and Python SDK for protein experiment design, submission, and results retrieval. Use this skill whenever the user…
Python/HTSlib workflows for genomic files. Use when reading, querying, filtering, or writing SAM/BAM/CRAM, VCF/BCF, FASTA/FASTQ, or tabix data with pysam, including pileup, coverage, indexing, and CRAM references.
$ npx -y skills add K-Dense-AI/scientific-agent-skills --skill pysam --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/pysamContext preview
The summary Claude sees to decide when to auto-load this skill.
Python/HTSlib workflows for genomic files. Use when reading, querying, filtering, or writing SAM/BAM/CRAM, VCF/BCF, FASTA/FASTQ, or tabix data with pysam, including pileup, coverage, indexing, and CRAM references.
name: pysam description: Python/HTSlib workflows for genomic files. Use when reading, querying, filtering, or writing SAM/BAM/CRAM, VCF/BCF, FASTA/FASTQ, or tabix data with pysam, including pileup, coverage, indexing, and CRAM references. license: MIT allowed-tools: Read Write Edit Bash compatibility: Requires Python 3.8–3.14 and pysam 0.24.0. Bundled scripts use local files. CRAM decoding may require the matching reference FASTA or an explicitly configured REF_PATH/REF_CACHE. metadata: version: "2.1" skill-author: K-Dense Inc.
Use pysam for low-level, streaming access to HTSlib-supported genomic formats:
Current upstream baseline: **pysam 0.24.0** (27 April 2026), wrapping HTSlib/samtools/bcftools 1.23.1. Read `references/sources.md` before updating version-specific guidance.
Use the pinned release for reproducible work:
uv pip install "pysam==0.24.0"
Confirm the runtime:
import pysam print(pysam.__version__) # 0.24.0 print(pysam.__samtools_version__) # 1.23.1
Prebuilt wheels are available for supported macOS and Linux platforms. A source build needs a C compiler and HTSlib build dependencies; read the official installation guide linked from `references/sources.md`.
Before writing code:
1. Identify the real format, compression, sort order, and available index. 2. Decide whether coordinates are numeric Python coordinates or a region string. Do not mix them. 3. For CRAM, identify the exact reference assembly and FASTA. 4. Prefer indexed region access; use sequential iteration only when intended. 5. Preserve headers when writing and write to a new path by default. 6. State filtering semantics: mapping/base quality, flags, overlap handling, duplicate handling, and pileup depth cap.
For unfamiliar files, start with the bundled read-only inspector:
python scripts/inspect_hts.py sample.bam python scripts/inspect_hts.py cohort.vcf.gz python scripts/inspect_hts.py reference.fa
| Script | Purpose | Typical call | |---|---|---| | `scripts/inspect_hts.py` | Metadata-only inspection for alignment, variant, FASTA, FASTQ, and tabix files | `python scripts/inspect_hts.py sample.cram --reference ref.fa` | | `scripts/alignment_qc.py` | Streaming aggregate read/QC counts as JSON | `python scripts/alignment_qc.py sample.bam --max-records 100000` | | `scripts/variant_summary.py` | Streaming variant, FILTER, and genotype summary as JSON | `python scripts/variant_summary.py cohort.vcf.gz --region chr1:1-1000000` | | `scripts/filter_alignments.py` | Filter SAM/BAM/CRAM without changing record order | `python scripts/filter_alignments.py input.bam output.bam --exclude-secondary` |
All scripts refuse to overwrite existing outputs. Run each with `--help` for coordinate, index, and privacy notes.
**Numeric coordinates accepted by pysam APIs are 0-based, half-open.** This includes numeric `AlignmentFile.fetch()`, `VariantFile.fetch()`, `FastaFile.fetch()`, `TabixFile.fetch()`, and `pileup()` arguments.
**Region strings are samtools-style: 1-based and inclusive.**
# The same 100 bases:
bam.fetch("chr1", 99, 199) # [99, 199)
bam.fetch(region="chr1:100-199") # 1-based inclusiveVCF text uses 1-based `POS`, while record properties expose both systems:
record.pos # 1-based record.start # 0-based inclusive record.stop # 0-based exclusive
Read `references/coordinates_and_indexing.md` for format conversions, overlap semantics, index choices, and contig-name checks.
Use context managers and explicit modes:
import pysam
with pysam.AlignmentFile("sample.bam", "rb", threads=4) as bam:
for read in bam.fetch("chr1", 1_000, 2_000):
if (
not read.is_unmapped
and not read.is_secondary
and not read.is_supplementary
and read.mapping_quality >= 30
):
print(read.query_name, read.reference_start, read.cigarstring)Use `fetch(until_eof=True)` to stream every record in file order, including unplaced unmapped reads, without requiring an index:
with pysam.AlignmentFile("sample.bam", "rb") as bam:
for read in bam.fetch(until_eof=True):
...Important distinctions:
15 plus `read_callback="all"`.
overlap, orphan, and `max_depth=8000` defaults.
For exact-region pileups, set `truncate=True` and explicit filters:
with pysam.FastaFile("reference.fa") as fasta, pysam.AlignmentFile(
"sample.bam", "rb"
) as bam:
for column in bam.pileup(
"chr1",
1_000,
2_000,
truncate=True,
stepper="samtools",
fastafile=fasta,
min_mapping_quality=20,
min_base_quality=20,
max_depth=100_000,
):
print(column.reference_pos, column.get_num_aligned())Read `references/alignment_files.md` for flags, CIGAR operations, tags, modified bases, writing records, pileup details, and iterator lifetime.
Input format is auto-detected. Numeric fetch coordinates remain 0-based:
import pysam
with pysam.VariantFile("cohort.vcf.gz", threads=4) as variants:
for record in variants.fetch("chr1", 999_999, 2_000_000):
print(record.contig, record.pos🔔 Claude Scientific Skills is now Scientific Agent Skills. Same skills, broader compatibility — now works with any AI agent that supports the open Agent Skills standard, not just Claude.
How to use the Adaptyv Bio Foundry API and Python SDK for protein experiment design, submission, and results retrieval. Use this skill whenever the user…
This skill should be used for time series machine learning tasks including classification, regression, clustering, forecasting, anomaly detection,…
AlphaGenome API key, free for non-commercial use from deepmind.google.com/science/alphagenome. ALPHA_GENOME_API_KEY is accepted as an alternative spelling.
Plan, execute, and document validation, verification, and transfer of analytical procedures under the governing framework - ICH Q2(R2) and Q14, USP…
Data structure for annotated matrices in single-cell analysis. Use when working with .h5ad files or integrating with the scverse ecosystem. This is the data…
Autonomously improve a real artifact (code, training recipe, agent harness, data pipeline, prompt) against an objective and an evaluator, using Hypothesis Tree…