Biopython Bioinformatics
aiming-lab/AutoResearchClaw
Quick reference for Biopython work: sequence operations, SeqIO file parsing, BLAST searches, Entrez queries, phylogenetic trees and PDB structure analysis.
Run remote BLAST searches against NCBI servers using Biopython Bio.Blast.NCBIWWW.
$ npx skills add GPTomics/bioSkills --skill bio-blast-searches -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install GPTomics/bioSkills bio-blast-searches --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/database-access/blast-searches .claude/skills/bio-blast-searches && 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-blast-searches" agent skill from https://github.com/GPTomics/bioSkills/tree/main/database-access/blast-searches into .claude/skills/bio-blast-searches/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "bio-blast-searches", 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/database-access/blast-searchesType 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-blast-searches -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install GPTomics/bioSkills bio-blast-searches --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/database-access/blast-searches .agents/skills/bio-blast-searches && 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-blast-searches" agent skill from https://github.com/GPTomics/bioSkills/tree/main/database-access/blast-searches into .agents/skills/bio-blast-searches/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "bio-blast-searches", 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-blast-searches -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install GPTomics/bioSkills bio-blast-searches --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/database-access/blast-searches .cursor/skills/bio-blast-searches && 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-blast-searches" agent skill from https://github.com/GPTomics/bioSkills/tree/main/database-access/blast-searches into .cursor/skills/bio-blast-searches/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "bio-blast-searches", 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 database-access/blast-searches--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-blast-searches -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install GPTomics/bioSkills bio-blast-searches --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/database-access/blast-searches .gemini/skills/bio-blast-searches && 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-blast-searches" agent skill from https://github.com/GPTomics/bioSkills/tree/main/database-access/blast-searches into .gemini/skills/bio-blast-searches/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "bio-blast-searches", 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-blast-searchesInstalls 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-blast-searches -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/database-access/blast-searches .github/skills/bio-blast-searches && 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-blast-searches" agent skill from https://github.com/GPTomics/bioSkills/tree/main/database-access/blast-searches into .github/skills/bio-blast-searches/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "bio-blast-searches", 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-blast-searches -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-blast-searches --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/database-access/blast-searches .opencode/skills/bio-blast-searches && 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-blast-searches" agent skill from https://github.com/GPTomics/bioSkills/tree/main/database-access/blast-searches into .opencode/skills/bio-blast-searches/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "bio-blast-searches", 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-blast-searchesRun remote BLAST searches against NCBI servers using Biopython Bio.Blast.NCBIWWW.
Bio Blast Searches is an agent skill from GPTomics/bioSkills. Run remote BLAST searches against NCBI servers using Biopython Bio.Blast.NCBIWWW. Use when identifying unknown sequences, finding homologs, picking the correct BLAST program (blastn/blastp/blastx/tblastn/tblastx/psiblast/megablast/dc-megablast), interpreting Karlin-Altschul E-values, avoiding the maxtargetseqs trap (Shah 2019), choosing composition-based statistics, or limiting searches by organism. Covers RID lifecycle, database choice (nt/nr/refseqselect/swissprot), word-size and CBS taxonomy.
Its SKILL.md is about 3.9k tokens, which your agent loads only when the skill is triggered. The skill folder holds 5 other files (for example `examples/basic_blast.py`, `examples/blastp_filtered.py` and `examples/save_and_parse.py`).
It sits in Research & Science, covering Bioinformatics. It works with NCBI and Biopython. The repository describes itself as: a set of SKILLS.md for doing bioinformatics with agents like claude code. The licence is MIT.
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 (Python), which the agent can run.
Shell commands in SKILL.md call:
pipFrom the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
blast.ncbi.nlm.nih.govFrom 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 Blast Searches loads about 3.9k tokens when it runs. Until then it costs about 131 tokens; SKILL.md has 1,613 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,613 words, ~3,886 tokens.
.claude/skills/bio-blast-searches/SKILL.md (or your agent's skills folder). This skill also uses 4 other files; get the full folder from GitHub.Reference examples tested with: BioPython 1.83+, NCBI BLAST+ 2.15+
Before using code patterns, verify installed versions match. If versions differ:
pip show biopython then help(Bio.Blast.NCBIWWW.qblast) to check signaturesblastn -version then blastn -helpIf code throws ImportError, AttributeError, or TypeError, introspect the installed package and adapt the example to match the actual API rather than retrying.
"Find similar sequences in NCBI's database" -> Submit a query to NCBI's remote BLAST servers; receive a Request ID (RID); poll for completion; parse the XML hit table. Best for one-off identification of a few sequences. For >50 sequences, switch to local-blast or DIAMOND/MMseqs2 in remote-homology.
The two most consequential decisions: which program (defines query+target molecule types and word-size defaults) and which database (defines the search space and therefore E-value baselines). The third most important: do NOT misuse max_target_seqs -- it is an early-termination heuristic, not a "give me the top N hits" filter (Shah et al. 2019).
NCBIWWW.qblast(program, db, sequence) + NCBIXML.read(handle) (BioPython)blastn -remote -db nt -query seq.fa -out hits.xml -outfmt 5 (BLAST+)from Bio.Blast import NCBIWWW, NCBIXML
from Bio import SeqIONo API key needed for remote BLAST itself, but NCBI's general rate-limit ethic still applies -- one search at a time, polite waiting, no parallelism.
| Program | Query | Target | Word size default | Use case |
|---|---|---|---|---|
blastn | DNA | DNA | 11 | General DNA similarity |
megablast | DNA | DNA | 28 | High-identity DNA (>=95%) -- PCR primer hits, contamination |
dc-megablast | DNA | DNA | 11 (discontiguous) | Cross-species mRNA (sensitive, gapped) |
blastp | Protein | Protein | 3 (6 also valid) | General protein homology |
blastx | DNA | Protein | 3 | Translated DNA query vs protein DB; ORF discovery |
tblastn | Protein | DNA | 3 | Protein query vs translated DB; find unannotated CDS |
tblastx | DNA | DNA | 3 (both translated) | Most expensive; deep cross-species coding similarity |
psiblast | Protein | Protein | 3 | Iterative PSSM-based remote homology -- see remote-homology |
The misuse to avoid: using default blastn (word=11) for cross-species DNA where dc-megablast is the right tool. Or using megablast (word=28) for cross-species homology where it will miss every divergent hit. The most-misused BLAST parameter according to literature.
Database (db=) | Content | Size (2026 approx) | Stable for reproducibility? |
|---|---|---|---|
nt | Non-redundant nucleotide (all GenBank+EMBL+DDBJ) | ~250 GB | NO -- changes daily |
nr | Non-redundant protein | ~300 GB | NO -- changes daily |
refseq_select | One curated rep per species (RNA + protein) | small | YES -- versioned releases |
refseq_rna | RefSeq mRNA | ~10 GB | YES |
refseq_protein | RefSeq protein | small | YES |
swissprot | UniProt Swiss-Prot (reviewed) | small | YES -- monthly releases |
pdb | Protein structures | small | YES |
refseq_genomic | RefSeq genomic | huge | YES |
env_nr / env_nt | Environmental (metagenomic) | huge | YES |
For publication reproducibility, never search nt or nr without recording the snapshot date and ideally archiving a frozen copy. Default to refseq_select for any cross-species homology question; switch to nt/nr only when curated coverage is insufficient.
E-value = K * m * n * exp(-lambda * S), where m = effective query length, n = effective database size, lambda and K are scoring-matrix-dependent constants (Karlin & Altschul 1990 PNAS 87:2264).
| E-value | Bit-score (BLOSUM62, protein) | Interpretation |
|---|---|---|
| < 1e-50 | > 200 | Strong; almost certainly homologous |
| 1e-50 to 1e-10 | 100-200 | Significant; likely homolog |
| 1e-10 to 1e-3 | 50-100 | Marginal; check identity + coverage |
| 0.01 to 10 | 30-50 | Possible remote homolog; needs profile method |
| > 10 | < 30 | Random; not meaningful |
Key implication of E = K * m * n * exp(-lambda * S): the same alignment against a 100x larger database has a 100x larger E-value. Cross-database E-value comparison is meaningless. Bit-score is database-size normalized and is the right cross-database metric.
For protein remote homology where E is marginal (10^-3 to 10^-1), reach for profile methods: PSI-BLAST, jackhmmer, HHblits, or Foldseek -- see remote-homology skill.
Compositional bias inflates significance for low-complexity proteins. The CBS modes (Yu et al. 2006 Nucleic Acids Res 34:5966):
composition_based_statistics | Mode | Use when |
|---|---|---|
| 0 | Off | Almost never |
| 1 | F&S 2002 score adjustment | Legacy compatibility |
| 2 | Yu&Altschul 2005 conditional score adjustment | Default since BLAST+ 2.2.17 -- correct for most cases |
| 3 | Universal statistics | Short queries (< 30 aa) where mode 2 over-corrects |
For protein queries under 30 aa, switch to CBS=3. For protein with known compositional bias (e.g. coiled-coil regions, signal peptides), CBS=2 is appropriate but consider hard-masking with SEG.
max_target_seqs trapThe misuse: max_target_seqs=10 is interpreted as "return the 10 most significant hits". It is not. The flag is an early termination parameter that affects which hits the search ever considers, not which it ultimately reports (Shah N, Nute MG, Warnow T, Pop M. (2019) Misunderstood parameter of NCBI BLAST impacts the correctness of bioinformatics workflows. Bioinformatics 35:1613-1614).
Consequences:
max_target_seqs=10 can return entirely different hits than max_target_seqs=500 then filtering to top 10 by E-value.Correct pattern: set hitlist_size (Bio.Blast parameter name) large (1000+), then post-filter to the top N by E-value or bit-score in Python.
| Search | Word size | Matrix (protein) | Gap (open, extend) |
|---|---|---|---|
| megablast (high identity DNA) | 28 | n/a | 0, 0 (linear) |
| blastn (sensitive DNA) | 11 | n/a | 5, 2 |
| blastp default | 3 | BLOSUM62 | 11, 1 |
| blastp distant | 2 | BLOSUM45 | 14, 2 |
| Short peptides (<30 aa) | 2 | PAM30 or BLOSUM45 | 9, 1 |
For very short query proteins (e.g. proteomics-identified peptides), BLOSUM45 + word=2 + PAM30 substitution matrix is more sensitive than the default. Use matrix='PAM30' for searches against swissprot.
| Phase | Server state | Client action |
|---|---|---|
| Submit | RID created, queued | NCBIWWW.qblast() returns handle |
| Running | Queue + compute | Poll status |
| Done | RID + results retained | Fetch XML |
| Expired | RID purged | 24-36h after completion |
NCBIWWW.qblast() handles polling internally with a fixed retry interval. For long-running searches (>5 min) or batches, submit and capture the RID, then poll independently to avoid blocking. The RID is visible at https://blast.ncbi.nlm.nih.gov/Blast.cgi?CMD=Get&RID=... for 24-36 hours.
Goal: Run BLASTN with explicit, paper-quality parameters.
Approach: Specify program, database (refseq_select for stability), word size, expect, and a large hitlist_size to dodge the max_target_seqs trap.
Reference (BioPython 1.83+):
from Bio.Blast import NCBIWWW, NCBIXML
handle = NCBIWWW.qblast(
program='blastn',
database='refseq_select_rna',
sequence=query_seq,
expect=1e-10,
word_size=11,
hitlist_size=500, # large; filter top-N downstream
format_type='XML',
)
record = NCBIXML.read(handle); handle.close()
top10 = sorted(record.alignments, key=lambda a: a.hsps[0].expect)[:10]Goal: Find mammalian homologs of a query protein in Swiss-Prot.
Approach: entrez_query filters the BLAST search space pre-execution; faster and more meaningful E-values than post-filtering.
Reference (BioPython 1.83+):
handle = NCBIWWW.qblast(
program='blastp',
database='swissprot',
sequence=protein_seq,
entrez_query='Mammalia[Organism]',
expect=1e-5,
composition_based_statistics=2,
hitlist_size=200,
)
record = NCBIXML.read(handle); handle.close()handle = NCBIWWW.qblast(
program='blastp',
database='swissprot',
sequence=peptide_seq, # < 30 aa
matrix_name='PAM30',
word_size=2,
expect=1000, # short queries need permissive cutoff
composition_based_statistics=3,
hitlist_size=100,
)handle = NCBIWWW.qblast('blastn', 'refseq_select_rna', query)
with open('blast.xml', 'w') as f:
f.write(handle.read())
handle.close()
with open('blast.xml') as f:
record = NCBIXML.read(f)Goal: Return structured top hits with biological metrics, not just E-values.
Approach: Walk alignments + first HSP; compute identity and query coverage as fractions; sort by bit-score (database-size invariant) not E-value.
Reference (BioPython 1.83+):
def top_hits(record, min_identity=0.5, min_coverage=0.7, top_n=10):
qlen = record.query_length
hits = []
for aln in record.alignments:
hsp = aln.hsps[0]
ident = hsp.identities / hsp.align_length
cov = hsp.align_length / qlen
if ident >= min_identity and cov >= min_coverage:
hits.append({
'accession': aln.accession,
'title': aln.title,
'evalue': hsp.expect,
'bits': hsp.bits,
'identity': ident,
'coverage': cov,
})
return sorted(hits, key=lambda h: -h['bits'])[:top_n]import time
handle = NCBIWWW.qblast('tblastn', 'nr', query, hitlist_size=500, format_type='XML')
# Bio.Blast handles polling internally; for explicit control use the REST API directly
# or save and re-parse the RID URLmax_target_seqs misinterpretationhitlist_size=10 and assuming top 10 by E-value.hitlist_size=500+ and post-filter; cite Shah 2019.nt search against E from a swissprot search.megablast (word=28) on a cross-species DNA query.dc-megablast (discontiguous) or blastn with word=11.nt/nrrefseq_select for reproducibility, or record snapshot date + archive subset.local-blast / DIAMOND / MMseqs2.filter='S' (SEG).sequence as a raw string without >id\n.record.query is None.SeqRecord.| Error / symptom | Cause | Solution |
|---|---|---|
| Stuck > 5 min | Large query or busy queue | Submit RID, poll separately; or use local |
| URLError / timeout | Network or NCBI maintenance | Retry with backoff; status at status.ncbi.nlm.nih.gov |
| No hits | Wrong program / database type | Verify query and DB molecule types match |
| Empty XML | RID expired | Re-submit; RIDs purge after 24-36h |
| 1000s of low-complexity hits | CBS disabled or extreme bias | CBS=2; consider SEG filter |
| Cross-DB E mismatch | Comparing E across DBs | Use bit-score instead |
© 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 4 other files in database-access/blast-searches of GPTomics/bioSkills.
Open the folder on GitHubat commit d91ed3d
We found 2 copies of this SKILL.md (exact, near-identical or edited) in other folders, from 2 other GitHub owners. This page covers the copy in GPTomics/bioSkills, which our catalogue first saw on October 7, 2026.
Bio Blast Searches 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 Blast Searches this skillGPTomics/bioSkills | 1.2k | 2 repos | ~3.9k | Automated safety check: Pass | MIT | |
| Biopython Bioinformaticsaiming-lab/AutoResearchClaw | 15k | — | ~810 | Automated safety check: Pass | MIT | |
| Biopythondavila7/claude-code-templates | 33k | 12 repos | ~3.4k | Automated safety check: Pass | MIT | |
| BiopythonK-Dense-AI/scientific-agent-skills | 48k | 1 repos | ~4.3k | Automated safety check: Notes | MIT | |
| Biopythonlamm-mit/scienceclaw | 246 | — | ~3.9k | Automated safety check: Pass | Apache-2.0 | |
| Tooluniverse Phylogeneticswu-yc/LabClaw | 1.1k | 2 repos | ~4.2k | Automated safety check: Pass | None |
aiming-lab/AutoResearchClaw
Quick reference for Biopython work: sequence operations, SeqIO file parsing, BLAST searches, Entrez queries, phylogenetic trees and PDB structure analysis.
davila7/claude-code-templates
Primary Python toolkit for molecular biology. An agent skill from davila7/claude-code-templates.
K-Dense-AI/scientific-agent-skills
Provides Biopython workflows for sequence manipulation, file parsing (FASTA/GenBank/PDB), phylogenetics, and programmatic NCBI/PubMed access (Bio.Entrez).
lamm-mit/scienceclaw
Computational molecular biology library (sequence I/O, alignment, phylogenetics).
wu-yc/LabClaw
Production-ready phylogenetics and sequence analysis skill for alignment processing, tree analysis, and evolutionary metrics.
FreedomIntelligence/OpenClaw-Medical-Skills
Convert between sequence file formats (FASTA, FASTQ, GenBank, EMBL) using Biopython Bio.SeqIO.
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.
Categories
Run remote BLAST searches against NCBI servers using Biopython Bio.Blast.NCBIWWW. Bio Blast Searches is an agent skill from GPTomics/bioSkills.NCBIWWW.
Bio Blast Searches fits situations like: identifying unknown sequences; finding homologs; picking the correct BLAST program (blastn/blastp/blastx/tblastn/tblastx/psiblast/megablast/dc-megablast); interpreting Karlin-Altschul E-values.
Run `npx skills add GPTomics/bioSkills --skill bio-blast-searches -a claude-code`. Or copy the skill folder (database-access/blast-searches in GPTomics/bioSkills) into .claude/skills/bio-blast-searches in your project. Claude Code loads it when a task matches its description.
Run `npx skills add GPTomics/bioSkills --skill bio-blast-searches -a codex`. Or copy the skill folder (database-access/blast-searches in GPTomics/bioSkills) into .agents/skills/bio-blast-searches 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-blast-searches -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-blast-searches, .gemini/skills/bio-blast-searches, .github/skills/bio-blast-searches and .opencode/skills/bio-blast-searches in your project.
Going by SKILL.md and its folder, Bio Blast Searches needs Python for the scripts in its folder and the command-line tools its instructions call (pip). Our summary lists: Python 3.
SKILL.md names 1 domain. In commands or code: blast.ncbi.nlm.nih.gov; the agent is likely to contact it when it follows the instructions. 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 Blast Searches is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.9k tokens (SKILL.md is roughly 16k 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 Blast Searches: Biopython Bioinformatics (aiming-lab/AutoResearchClaw, 15k stars), Biopython (davila7/claude-code-templates, 33k stars), Biopython (K-Dense-AI/scientific-agent-skills, 48k stars) and Biopython (lamm-mit/scienceclaw, 246 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.