Fastreer
ClawBio/ClawBio
Phylogenetic distance matrices and trees from VCF or FASTA data using the fastreeR hybrid Java/Python toolkit (VCF2TREE, VCF2DIST, DIST2TREE, FASTA2DIST).
Computes immune-repertoire diversity, clonal structure, overlap, and segment usage from TCR/BCR clonotype tables with VDJtools (immunarch as the modern R alternative).
$ npx skills add GPTomics/bioSkills --skill bio-tcr-bcr-analysis-vdjtools-analysis -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install GPTomics/bioSkills bio-tcr-bcr-analysis-vdjtools-analysis --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/GPTomics/bioSkills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/tcr-bcr-analysis/vdjtools-analysis .claude/skills/bio-tcr-bcr-analysis-vdjtools-analysis && rm -rf skills-srcUse ~/.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/
Install the "bio-tcr-bcr-analysis-vdjtools-analysis" agent skill from https://github.com/GPTomics/bioSkills/tree/main/tcr-bcr-analysis/vdjtools-analysis into .claude/skills/bio-tcr-bcr-analysis-vdjtools-analysis/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "bio-tcr-bcr-analysis-vdjtools-analysis", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/GPTomics/bioSkills/tree/main/tcr-bcr-analysis/vdjtools-analysisType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add GPTomics/bioSkills --skill bio-tcr-bcr-analysis-vdjtools-analysis -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install GPTomics/bioSkills bio-tcr-bcr-analysis-vdjtools-analysis --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/GPTomics/bioSkills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/tcr-bcr-analysis/vdjtools-analysis .agents/skills/bio-tcr-bcr-analysis-vdjtools-analysis && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "bio-tcr-bcr-analysis-vdjtools-analysis" agent skill from https://github.com/GPTomics/bioSkills/tree/main/tcr-bcr-analysis/vdjtools-analysis into .agents/skills/bio-tcr-bcr-analysis-vdjtools-analysis/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "bio-tcr-bcr-analysis-vdjtools-analysis", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add GPTomics/bioSkills --skill bio-tcr-bcr-analysis-vdjtools-analysis -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install GPTomics/bioSkills bio-tcr-bcr-analysis-vdjtools-analysis --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/GPTomics/bioSkills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/tcr-bcr-analysis/vdjtools-analysis .cursor/skills/bio-tcr-bcr-analysis-vdjtools-analysis && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "bio-tcr-bcr-analysis-vdjtools-analysis" agent skill from https://github.com/GPTomics/bioSkills/tree/main/tcr-bcr-analysis/vdjtools-analysis into .cursor/skills/bio-tcr-bcr-analysis-vdjtools-analysis/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "bio-tcr-bcr-analysis-vdjtools-analysis", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/GPTomics/bioSkills.git --path tcr-bcr-analysis/vdjtools-analysis--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add GPTomics/bioSkills --skill bio-tcr-bcr-analysis-vdjtools-analysis -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install GPTomics/bioSkills bio-tcr-bcr-analysis-vdjtools-analysis --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/GPTomics/bioSkills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/tcr-bcr-analysis/vdjtools-analysis .gemini/skills/bio-tcr-bcr-analysis-vdjtools-analysis && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "bio-tcr-bcr-analysis-vdjtools-analysis" agent skill from https://github.com/GPTomics/bioSkills/tree/main/tcr-bcr-analysis/vdjtools-analysis into .gemini/skills/bio-tcr-bcr-analysis-vdjtools-analysis/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "bio-tcr-bcr-analysis-vdjtools-analysis", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install GPTomics/bioSkills bio-tcr-bcr-analysis-vdjtools-analysisInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add GPTomics/bioSkills --skill bio-tcr-bcr-analysis-vdjtools-analysis -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/GPTomics/bioSkills.git skills-src && mkdir -p .github/skills && cp -r skills-src/tcr-bcr-analysis/vdjtools-analysis .github/skills/bio-tcr-bcr-analysis-vdjtools-analysis && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "bio-tcr-bcr-analysis-vdjtools-analysis" agent skill from https://github.com/GPTomics/bioSkills/tree/main/tcr-bcr-analysis/vdjtools-analysis into .github/skills/bio-tcr-bcr-analysis-vdjtools-analysis/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "bio-tcr-bcr-analysis-vdjtools-analysis", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add GPTomics/bioSkills --skill bio-tcr-bcr-analysis-vdjtools-analysis -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install GPTomics/bioSkills bio-tcr-bcr-analysis-vdjtools-analysis --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/GPTomics/bioSkills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/tcr-bcr-analysis/vdjtools-analysis .opencode/skills/bio-tcr-bcr-analysis-vdjtools-analysis && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "bio-tcr-bcr-analysis-vdjtools-analysis" agent skill from https://github.com/GPTomics/bioSkills/tree/main/tcr-bcr-analysis/vdjtools-analysis into .opencode/skills/bio-tcr-bcr-analysis-vdjtools-analysis/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "bio-tcr-bcr-analysis-vdjtools-analysis", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
bio-tcr-bcr-analysis-vdjtools-analysisComputes immune-repertoire diversity, clonal structure, overlap, and segment usage from TCR/BCR clonotype tables with VDJtools (immunarch as the modern R alternative).
Bio Tcr Bcr Analysis Vdjtools Analysis is an agent skill from GPTomics/bioSkills. Computes immune-repertoire diversity, clonal structure, overlap, and segment usage from TCR/BCR clonotype tables with VDJtools (immunarch as the modern R alternative). Use when deciding which diversity estimator answers a question (q=0 observed richness/chao1/chaoE, q=1 shannonWienerIndex, q=2 inverseSimpson as a Hill profile); normalizing sequencing depth before any cross-sample claim (DownSample or the resampled CalcDiversityStats table); choosing an overlap metric (depth-robust MorisitaHorn/F2 vs depth-biased…
Its SKILL.md is about 4.5k tokens, which your agent loads only when the skill is triggered. The skill folder holds 3 other files (for example `examples/diversity_analysis.sh` and `usage-guide.md`).
It sits in Research & Science. It works with Java. The repository describes itself as: a set of SKILLS.md for doing bioinformatics with agents like claude code. The licence is MIT.
3 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit d91ed3d. It shows what the files ask for, not the result of running them.
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.
Ships script files (Shell), which the agent can run.
Shell commands in SKILL.md call:
javaFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Bio Tcr Bcr Analysis Vdjtools Analysis loads about 4.5k tokens when it runs. Until then it costs about 210 tokens; SKILL.md has 1,848 words of instructions outside code blocks.
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.
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.
The full file from GPTomics/bioSkills at commit d91ed3d, republished under its MIT licence (© GPTomics). 1,848 words, ~4,527 tokens.
.claude/skills/bio-tcr-bcr-analysis-vdjtools-analysis/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.Reference examples tested with: VDJtools 1.2.1+, Java (JRE 8+), R 4.x with ggplot2/reshape2/gridExtra (for Plot* modules), immunarch 0.9+/1.0+
Before using code patterns, verify installed versions match. If versions differ:
java -jar vdjtools.jar prints the current routine list; <routine> with no args prints its flagspackageVersion('immunarch') then ?repDiversity / ?repOverlap to confirm .method stringsIf code throws ImportError, AttributeError, or TypeError, introspect the installed package and adapt the example to match the actual API rather than retrying.
Note: routine names are CamelCase and case-sensitive, and the depth-resampling routine is DownSample (capital S). Run RInstall once so the Plot* modules can call R. VDJtools is post-analysis only: it consumes clonotype tables (from MiXCR etc.), not FASTQ.
"Compute diversity and compare my TCR/BCR repertoires" -> summarize each repertoire's clonal structure, compare samples at equal depth, and quantify overlap.
java -jar vdjtools.jar CalcDiversityStats | CalcPairwiseDistances | TrackClonotypesrepDiversity(), repOverlap(), repClonality()A repertoire is a sample of an enormous, unevenly expanded clonal population with a long tail of rare clonotypes, so observed richness never saturates: deeper sequencing keeps discovering new clonotypes. Observed richness, Shannon entropy, clonality, Jaccard, and shared-clonotype counts are all functions of read depth. Comparing raw values across libraries of unequal depth measures depth, not biology -- this is the field's single most common and most invalidating error.
The fix is mandatory before any cross-sample claim: bring all samples to a common depth. Two routes:
DownSample -x <reads> every sample to a shared depth, then analyze; orCalcDiversityStats at a common depth from its resampled table. CalcDiversityStats emits two tables, diversity.<i>.txt (original) and diversity.<i>.resampled.txt (downsampled to the smallest sample or -x). Use the resampled/normalized values for between-sample comparison; the original table is for within-sample description only.Choosing the normalization depth is itself a decision: downsampling every sample to the cohort minimum discards data and can leave everyone underpowered if one library is tiny. Set the common depth near the cohort's lower quartile, and EXCLUDE (do not drag everyone down to) any sample far below it -- a sample whose rarefaction curve is still steeply climbing well below the chosen depth is under-sampled and cannot support a diversity claim at all. Report the chosen depth and any excluded samples. PlotQuantileStats and the rarefaction curves show which samples are safe to include.
Rarefaction makes the problem visible: RarefactionPlot draws interpolated + extrapolated diversity-vs-depth curves. Compare samples at a common x, never at curve endpoints of different depth. Extrapolation is reliable only to ~2-3x observed depth and degrades for q=0 (Chao 2014).
A single index misleads because indices weight the abundance distribution differently. Report the Hill profile -- effective number of clonotypes at orders q=0, 1, 2 -- whose shape (steep drop from q=0 to q=2 = a few dominant clones over a large rare tail) is the informative object (Greiff 2015 Genome Med 7:49; Chao 2014 Ecol Monogr 84:45-67). Two repertoires can share richness yet have opposite clonality.
CalcDiversityStats emits these columns (each with _mean/_std); Gini is NOT among them (it is an immunarch option, not a VDJtools output):
| Column | Hill order | Question it answers | Depth-robustness |
|---|---|---|---|
| observedDiversity | q=0 | How many distinct clonotypes were seen | Poor -- must downsample |
| chao1 | q=0 | Nonparametric richness lower bound (uses singletons f1, doubletons f2) | Poor; breaks without count data (f2=0) or if rare clones were pre-filtered; PCR error inflates it |
| chaoE | q=0 | Chao richness extrapolated, normalized for cross-sample use | Moderate (VDJtools' preferred richness proxy) |
| efronThisted | q=0 | Efron-Thisted lower-bound total diversity | Poor; a lower bound, not the truth |
| shannonWienerIndex | q=1 | exp(Shannon), effective number weighting by frequency | Moderate |
| normalizedShannonWienerIndex | -- | Pielou evenness H'/ln(S), range 0-1 | Depth-dependent through ln(S) |
| inverseSimpson | q=2 | 1/sum(p^2), dominated by abundant clones | Best -- most depth-robust |
| d50 | -- | Fewest top clones covering 50% of reads | Poor; coarse descriptor |
Default: report q=0 (chaoE or downsampled observedDiversity), q=1 (shannonWienerIndex), and q=2 (inverseSimpson) together. Feed chao1/efronThisted only genuine count data with singletons and doubletons; on non-UMI, non-error-corrected data, PCR/sequencing errors manufacture singletons and inflate them arbitrarily.
Clonality = 1 - normalizedShannonWienerIndex = 1 - H'/ln(S). It runs 0 (even/polyclonal) to 1 (one clone dominates) and is the near-universal one-number summary because it is bounded and intuitive. State its flaws in any report:
Fix: report clonality alongside a q=2 Hill number (inverseSimpson) and a rarefaction curve, never alone.
CalcPairwiseDistances builds an N x N matrix; OverlapPair compares two samples. Any count-of-shared-clonotypes or set index is dominated by the shallower sample's depth: a clone can only be shared if sampled in both, so the shallow sample caps the intersection. Downsample both samples to a common depth first, and prefer abundance-weighted metrics.
| Metric | Basis | Best when | Fails when |
|---|---|---|---|
| MorisitaHorn | Abundance, size-normalized | Unequal depth; the default choice | -- (near-invariant to depth; dominated by abundant shared clones) |
| F2 | Sum of per-clonotype geometric-mean frequencies | Frequency-weighted overlap robust to a single dominant shared clone | -- (preferred VDJtools frequency metric) |
| F | Geometric mean of summed shared frequencies | Quick frequency overlap | One large shared clone dominates it |
| R | Pearson of log-frequencies over shared clones only | Concordance of abundances among shared clones | Ignores private clones entirely |
| D | Shared count / geometric-mean diversities | Descriptive | Numerator (shared count) still depth-biased |
| Jaccard | Presence/absence | Equal-depth, denoised samples only | Dominated by the shallower sample's depth |
Overlap magnitude also swings by orders of magnitude with the clonotype match key (-i): nt (strict, few coincidental shares) vs aa (convergent recombination inflates sharing), and whether V/J must match (ntV, ntVJ, aaVJ, ...). Fix one key and hold it constant across every comparison in a study; state it in every figure. TrackClonotypes does ordered all-vs-all intersection for time courses -- a clone scoring "absent" at a timepoint is often a sampling zero, so downsample timepoints to common depth before declaring contraction.
An overlap number is only interpretable against a null: some sharing is expected by chance from convergent recombination of high-Pgen clonotypes. To claim overlap EXCEEDS chance, compare the observed statistic to a background of unrelated-donor pairs, or to shuffled/label-permuted repertoires at the same depth, and for public-clonotype claims condition on generation probability (specificity-annotation). Two related individuals or two timepoints from one host will always overlap more than two random donors regardless of biology.
"Public" (a clonotype shared across individuals) is largely an artifact of generation probability, not shared antigen selection. High-Pgen CDR3s -- short, few insertions, near-germline (and fetal-generated) -- are independently produced by many donors, and convergent recombination compounds this at the aa level (Venturi 2006 PNAS 103:18691). So a public/shared count is enriched for stochastic high-Pgen sequences, not evidence of a shared response. To argue antigen association, condition on Pgen (OLGA/IGoR) or intersect with an antigen database (ScanDatabase against VDJdb; immunarch dbAnnotate against VDJdb/McPAS-TCR) -- and even a database hit is a sequence match, not proof of binding. Hand Pgen-aware interpretation off to specificity-annotation.
CalcSegmentUsage yields per-sample V/J frequency vectors; CalcSpectratype yields the CDR3-length histogram (PlotFancySpectratype overlays the top-N clones; PlotSpectratypeV stacks by V family; PlotFancyVJUsage is the V-J chord plot).
Both consume the same clonotype tables; pick by pipeline, not by metric.
| VDJtools | immunarch | |
|---|---|---|
| Language | Java CLI (calls R for plots) | R / tidyverse |
| Maintenance | Stable, low activity (~1.2.1) | Actively maintained (v1.0 adds airr_*) |
| Ingestion | Convert -S <fmt> | repLoad() auto-detects MiXCR/Adaptive/10x/AIRR/VDJtools |
| Plotting | Fixed Plot* PDFs | vis() returns editable ggplot objects |
| Strengths | Reference F/F2/chaoE + resampled tables; legacy reproducibility; pairs with MiXCR/VDJdb | 10x single-cell, k-mer/motif, publication plots, ML feature matrices |
Prefer VDJtools for CLI/legacy MiXCR pipelines and its exact resampled diversity tables; prefer immunarch for R, single-cell, k-mer/motif, or editable figures. Many groups convert with VDJtools and analyze/plot with immunarch.
Core operations in immunarch (verify .method strings on the installed version):
library(immunarch)
data <- repLoad('samples_dir/') # metadata + tidy clonotype tables
repDiversity(data$data, .method = 'raref') # rarefaction/extrapolation curves (the depth control)
repDiversity(data$data, .method = 'hill') # Hill profile across q
repDiversity(data$data, .method = 'inv.simp') # q=2, depth-robust
repClonality(data$data, .method = 'homeo') # clonal-space homeostasis (Rare..Hyperexpanded bins)
repOverlap(data$data, .method = 'morisita') # depth-robust overlap; 'jaccard'/'public' are depth-biased
geneUsage(data$data[[1]]) # V/J usage vector
trackClonotypes(data$data, list('Sample1', 1:10)) # longitudinal tracking
dbAnnotate(data$data, vdjdb, 'CDR3.aa', 'cdr3') # antigen-database annotationConvert upstream output, drop nonfunctional clones, and downsample to a shared depth before any comparison.
# Import MiXCR clonotypes to VDJtools format (also: -S migec/immunoseq/imgt/vidjil ...)
java -jar vdjtools.jar Convert -S mixcr mixcr_clones.txt converted/
# Keep only functional (in-frame, no-stop) clonotypes for functional-repertoire analysis
java -jar vdjtools.jar FilterNonFunctional -m metadata.txt filtered/
# Optional: remove cross-sample contamination (barcode switching / chimeras) before cross-sample work
java -jar vdjtools.jar Decontaminate -m metadata.txt decontaminated/
# Downsample every sample to a common read depth (capital S; -x/--size = target reads)
java -jar vdjtools.jar DownSample -x 100000 -m metadata.txt downsampled/The metadata file is tab-delimited: a #file.name sample.id <covariate...> header row, then one row per sample. Most multi-sample routines consume it via -m.
# Diversity: emits diversity.<i>.txt (original) AND diversity.<i>.resampled.txt (depth-normalized)
# Compare across samples using the RESAMPLED table only.
java -jar vdjtools.jar CalcDiversityStats -m metadata.txt diversity/
# Rarefaction curves -- the correct visual for comparing diversity across depths (read at common x)
java -jar vdjtools.jar RarefactionPlot -m metadata.txt rarefaction/
# Pairwise overlap; -i sets the clonotype match key (hold constant study-wide).
# Report MorisitaHorn / F2 columns; treat Jaccard as depth-biased.
java -jar vdjtools.jar CalcPairwiseDistances -i aa -m metadata.txt overlap/
java -jar vdjtools.jar ClusterSamples -e MorisitaHorn overlap/ clustered/
# Longitudinal tracking across an ordered sample set (downsample timepoints first)
java -jar vdjtools.jar TrackClonotypes -m metadata_timecourse.txt tracking/import pandas as pd
def load_resampled_diversity(prefix):
'''Load the depth-normalized diversity table for cross-sample comparison.'''
return pd.read_csv(f'{prefix}.strict.resampled.txt', sep='\t')
def load_overlap_matrix(path, metric='MorisitaHorn'):
'''Load one depth-robust overlap metric from the pairwise-distance output.'''
df = pd.read_csv(path, sep='\t')
return df.pivot(index='1_sample_id', columns='2_sample_id', values=metric)| Symptom | Cause | Fix |
|---|---|---|
| Deeper libraries look 'more diverse' every time | Comparing raw richness/Shannon/clonality across unequal depth -- measuring depth, not biology | DownSample to a common depth or read the .resampled.txt table; compare rarefaction curves at a common x |
| Overlap flips when samples are swapped or re-sequenced | Jaccard / public counts dominated by the shallower sample's depth | Downsample both, and report MorisitaHorn or F2 |
| Overlap magnitude differs wildly between studies | Different clonotype match key (-i aa vs nt, +/-V/J) | Fix one -i value and state it in every figure |
| chao1/efronThisted are NaN or absurdly large | Fed frequency-only or rare-clone-filtered data, or PCR errors created singletons | Provide genuine count data (singletons/doubletons); UMI/error-correct first; or use inverseSimpson |
| One clonality number reported as 'the diversity' | Clonality is a rescaled evenness that discards richness and is depth-dependent | Report Hill q=0/1/2 (add inverseSimpson) plus a rarefaction curve |
| 'Public' clones claimed as antigen-specific | Publicity is mostly high-Pgen convergent recombination | Condition on Pgen (OLGA) or intersect VDJdb via ScanDatabase; hand off to specificity-annotation |
| V/J usage differs between cohorts by platform | Multiplex-PCR primer bias, not biology | Compare usage only within a protocol; CLR-transform before PCA and check PC1 is not depth/batch |
Plot* routine errors on start | R plotting dependencies missing | Run java -jar vdjtools.jar RInstall once |
© GPTomics, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 2 other files in tcr-bcr-analysis/vdjtools-analysis of GPTomics/bioSkills.
Open the folder on GitHubat commit d91ed3d
We found 1 copy of this SKILL.md (exact, near-identical or edited) in other folders, from 1 other GitHub owner. This page covers the copy in GPTomics/bioSkills, which our catalogue first saw on October 7, 2026.
Bio Tcr Bcr Analysis Vdjtools Analysis 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.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Bio Tcr Bcr Analysis Vdjtools Analysis this skillGPTomics/bioSkills | 1.2k | 1 repos | ~4.5k | Automated safety check: Pass | MIT | |
| FastreerClawBio/ClawBio | 1.2k | 1 repos | ~3.5k | Automated safety check: Notes | GPL-3.0 | |
| Pymoojaechang-hits/SciAgent-Skills | 374 | 1 repos | ~4.9k | Automated safety check: Pass | Apache-2.0 | |
| Snpeff Variant Annotationjaechang-hits/SciAgent-Skills | 374 | 1 repos | ~5.4k | Automated safety check: Pass | MIT | |
| Pyimagej Fiji Bridgejaechang-hits/SciAgent-Skills | 374 | 1 repos | ~6.2k | Automated safety check: Pass | Apache-2.0 | |
| Hypothesis Generationspacering-net/codeg | 3.9k | 14 repos | ~3.6k | Automated safety check: Notes | MIT |
ClawBio/ClawBio
Phylogenetic distance matrices and trees from VCF or FASTA data using the fastreeR hybrid Java/Python toolkit (VCF2TREE, VCF2DIST, DIST2TREE, FASTA2DIST).
jaechang-hits/SciAgent-Skills
Python framework for single- and multi-objective optimization with evolutionary algorithms.
jaechang-hits/SciAgent-Skills
Annotate and filter VCF variants with SnpEff and SnpSift. An agent skill from jaechang-hits/SciAgent-Skills.
jaechang-hits/SciAgent-Skills
Python bridge to ImageJ2/Fiji for macros, plugins (Bio-Formats, TrackMate, Analyze Particles), NumPy↔ImagePlus/ImgLib2 exchange, and ImageJ Ops.
spacering-net/codeg
Structured hypothesis formulation from observations. An agent skill from spacering-net/codeg.
bytedance/deer-flow
Researches a GitHub repository over four rounds using the GitHub API and web search, then writes a structured markdown report with timeline, metrics and Mermaid diagrams.
GPTomics/bioSkills
Read, write, and convert multiple sequence alignment files using Biopython Bio.AlignIO.
GPTomics/bioSkills
Installs the bioSkills collection of 425 bioinformatics skills in one step, or only chosen categories, so sequencing, RNA-seq, single-cell and variant tasks get specialized help.
GPTomics/bioSkills
Write biological sequences to files (FASTA, FASTQ, GenBank, EMBL) using Biopython Bio.SeqIO.
GPTomics/bioSkills
Soft- or hard-clips PCR primer footprints from aligned amplicon BAMs so primer bases stop masquerading as confirmed reference sequence.
GPTomics/bioSkills
Filters BAM alignments by FLAG bits, mapping quality and regions with samtools view or pysam, with recipes for common keep and drop cases.
GPTomics/bioSkills
Create and use BAI/CSI indices for BAM/CRAM files using samtools and pysam.
Works with
Categories
Computes immune-repertoire diversity, clonal structure, overlap, and segment usage from TCR/BCR clonotype tables with VDJtools (immunarch as the modern R alternative). Bio Tcr Bcr Analysis Vdjtools Analysis is an agent skill from GPTomics/bioSkills. Computes immune-repertoire diversity, clonal structure, overlap, and segment usage from TCR/BCR clonotype tables with VDJtools (immunarch as the modern R alternative).
Bio Tcr Bcr Analysis Vdjtools Analysis fits situations like: deciding which diversity estimator answers a question (q=0 observed richness/chao1/chaoE; Q=1 shannonWienerIndex; Q=2 inverseSimpson as a Hill profile); normalizing sequencing depth before any cross-sample claim (DownSample.
Run `npx skills add GPTomics/bioSkills --skill bio-tcr-bcr-analysis-vdjtools-analysis -a claude-code`. Or copy the skill folder (tcr-bcr-analysis/vdjtools-analysis in GPTomics/bioSkills) into .claude/skills/bio-tcr-bcr-analysis-vdjtools-analysis in your project. Claude Code loads it when a task matches its description.
Run `npx skills add GPTomics/bioSkills --skill bio-tcr-bcr-analysis-vdjtools-analysis -a codex`. Or copy the skill folder (tcr-bcr-analysis/vdjtools-analysis in GPTomics/bioSkills) into .agents/skills/bio-tcr-bcr-analysis-vdjtools-analysis in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add GPTomics/bioSkills --skill bio-tcr-bcr-analysis-vdjtools-analysis -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/bio-tcr-bcr-analysis-vdjtools-analysis, .gemini/skills/bio-tcr-bcr-analysis-vdjtools-analysis, .github/skills/bio-tcr-bcr-analysis-vdjtools-analysis and .opencode/skills/bio-tcr-bcr-analysis-vdjtools-analysis in your project.
Going by SKILL.md and its folder, Bio Tcr Bcr Analysis Vdjtools Analysis needs a shell for the scripts in its folder and the command-line tools its instructions call (java). Our summary lists: A Bash shell.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
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.
Bio Tcr Bcr Analysis Vdjtools Analysis is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 4.5k tokens (SKILL.md is roughly 18k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Bio Tcr Bcr Analysis Vdjtools Analysis: Fastreer (ClawBio/ClawBio, 1.2k stars), Pymoo (jaechang-hits/SciAgent-Skills, 374 stars), Snpeff Variant Annotation (jaechang-hits/SciAgent-Skills, 374 stars) and Pyimagej Fiji Bridge (jaechang-hits/SciAgent-Skills, 374 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
GPTomics (a GitHub organization) maintains it in GPTomics/bioSkills, which has 1,218 GitHub stars. The repository holds 559 skills in this directory. The repository was last updated on August 15, 2026.
Source: GPTomics/bioSkills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.