Install any skill in seconds. Free to start, no credit card required.
Get Started Free →AI scientist framework for autonomous biological research workflows
.claude/skills/brycewang-stanford-bioagents-guide/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-03 | ✗→✓ | ▲ Improved | 231% | 0% |
| case-05 | ✗→✓ | ▲ Improved | 53% | 0% |
| case-06 | ✗→✓ | ▲ Improved | 111% | 0% |
| case-18 | ✗→✓ | ▲ Improved | 225% | 0% |
| case-19 | ✗→✓ | ▲ Improved | 666% | 0% |
BioAgents -- AI agent systems for biological research -- represent a paradigm shift in how life science experiments are conceived, designed, executed, and analyzed. Building on the foundation of large language models, these systems integrate literature search, hypothesis generation, experimental design, data analysis, and manuscript drafting into semi-autonomous or fully autonomous research pipelines.
The AI Scientist framework (Sakana AI, 2024) demonstrated that language models can conduct end-to-end research: generating ideas, writing code, running experiments, and producing papers. In biology, this approach is being applied to drug discovery, protein engineering, genomics analysis, and systems biology -- domains where the combinatorial complexity of experimental space makes AI-assisted exploration particularly valuable.
This guide covers the architecture of bioagent systems, the biological research tasks they can automate, integration with wet-lab automation, and the methodological considerations for researchers building or evaluating these systems. The focus is on practical patterns that connect AI capabilities to real biological research problems.
BioAgent System Architecture:
┌─────────────────────────────────────────────────┐
│ ORCHESTRATOR │
│ (LLM-based planning and reasoning agent) │
├──────────┬──────────┬──────────┬────────────────┤
│ LITERATURE│ HYPOTHESIS│ EXPERIMENT│ ANALYSIS │
│ MODULE │ MODULE │ MODULE │ MODULE │
├──────────┼──────────┼──────────┼────────────────┤
│ PubMed │ Causal │ Protocol │ Statistical │
│ Semantic │ inference│ generator│ analysis │
│ Scholar │ Graph │ Robot │ Visualization │
│ BioRxiv │ reasoning│ interface│ Interpretation │
│ Patents │ Novelty │ LIMS │ Manuscript │
│ │ scoring │ integration│ drafting │
└──────────┴──────────┴──────────┴────────────────┘
│ │ │
┌────┴────┐ ┌────┴────┐ ┌────┴────┐
│ Knowledge│ │ Wet Lab │ │ Compute │
│ Bases │ │ Equipment│ │ Cluster │
└─────────┘ └─────────┘ └─────────┘pythonfrom dataclasses import dataclass from typing import List, Optional import json @dataclass class Hypothesis: statement: str mechanism: str evidence_for: List[str] evidence_against: List[str] novelty_score: float testability_score: float predicted_outcome: str def generate_hypotheses( research_question: str, literature_context: List[dict], existing_data: Optional[dict] = None, n_hypotheses: int = 5, ) -> List[Hypothesis]: """ Generate ranked hypotheses from literature and data context. This is a framework for LLM-driven hypothesis generation. In practice, the LLM call would go here. """ prompt = f""" Based on the following research question and literature context, generate {n_hypotheses} testable hypotheses. Research question: {research_question} Literature findings: {json.dumps(literature_context, indent=2)} For each hypothesis, provide: 1. A clear, falsifiable statement 2. The proposed mechanism 3. Supporting evidence from the literature 4. Contradictory evidence 5. Novelty score (0-1): How novel relative to existing literature 6. Testability score (0-1): How feasible to test experimentally 7. Predicted outcome if the hypothesis is correct """ # In production: response = llm.generate(prompt) # Parse and return structured hypotheses return [] # Placeholder for LLM output parsing def rank_hypotheses(hypotheses: List[Hypothesis]) -> List[Hypothesis]: """Rank hypotheses by composite score (novelty * testability).""" for h in hypotheses: h.composite_score = h.novelty_score * h.testability_score return sorted(hypotheses, key=lambda h: h.composite_score, reverse=True)
AI-assisted drug discovery workflow:
1. TARGET IDENTIFICATION
- Literature mining for disease-gene associations
- Network analysis of protein-protein interactions
- Druggability assessment (binding site prediction)
Tools: OpenTargets, STRING, FPocket
2. HIT IDENTIFICATION
- Virtual screening of compound libraries
- De novo molecular generation (SMILES, graph-based)
- Docking and scoring (molecular dynamics)
Tools: AutoDock-GPU, RDKit, DeepChem
3. LEAD OPTIMIZATION
- ADMET property prediction (absorption, distribution, metabolism)
- Toxicity prediction
- Multi-objective optimization (potency vs. selectivity vs. ADMET)
Tools: ADMET-AI, ToxCast, Optuna
4. PRECLINICAL VALIDATION
- In vitro assay design and analysis
- Animal model selection and protocol design
- Pharmacokinetic modeling
Tools: PK-Sim, literature-based dose predictionpython# Example: Using ESM-2 embeddings for protein function prediction # (Practical pattern for bioagent integration) from transformers import AutoTokenizer, AutoModel import torch def get_protein_embeddings(sequences: list, model_name: str = "facebook/esm2_t33_650M_UR50D"): """ Generate protein embeddings using ESM-2 for downstream tasks. Applications: function prediction, fitness landscape, design. """ tokenizer = AutoTokenizer.from_pretrained(model_name) model = AutoModel.from_pretrained(model_name) model.eval() embeddings = [] for seq in sequences: inputs = tokenizer(seq, return_tensors="pt", padding=True, truncation=True, max_length=1024) with torch.no_grad(): outputs = model(**inputs) # Use mean pooling over sequence length embedding = outputs.last_hidden_state.mean(dim=1).squeeze().numpy() embeddings.append(embedding) return embeddings # Applications: # 1. Cluster proteins by function (unsupervised) # 2. Predict fitness effects of mutations (supervised) # 3. Guide directed evolution experiments (active learning) # 4. Design novel sequences (generative, conditional on embedding space)
python# Automated RNA-seq analysis pipeline # (Pattern for agent-orchestrated bioinformatics) def automated_rnaseq_pipeline( fastq_dir: str, reference_genome: str, sample_sheet: str, output_dir: str, ) -> dict: """ End-to-end RNA-seq analysis pipeline that a bioagent can orchestrate. Steps: 1. Quality control (FastQC + MultiQC) 2. Adapter trimming (Trim Galore) 3. Alignment (STAR or HISAT2) 4. Quantification (featureCounts or Salmon) 5. Differential expression (DESeq2) 6. Pathway analysis (GSEA, enrichR) 7. Visualization and report generation """ pipeline_steps = { "qc": f"fastqc {fastq_dir}/*.fastq.gz -o {output_dir}/qc/", "trim": f"trim_galore --paired {fastq_dir}/*_R1.fastq.gz {fastq_dir}/*_R2.fastq.gz -o {output_dir}/trimmed/", "align": f"STAR --genomeDir {reference_genome} --readFilesIn {{trimmed_R1}} {{trimmed_R2}} --outSAMtype BAM SortedByCoordinate", "count": f"featureCounts -a {reference_genome}/genes.gtf -o {output_dir}/counts.txt {{bam_files}}", "de_analysis": "Rscript run_deseq2.R --counts counts.txt --design sample_sheet.csv", "pathway": "Rscript run_gsea.R --de_results de_results.csv --gene_sets msigdb.gmt", "report": "Rmarkdown::render('analysis_report.Rmd')", } return { "pipeline": pipeline_steps, "expected_outputs": [ "qc/multiqc_report.html", "de_results.csv", "pathway_results.csv", "analysis_report.html", "figures/volcano_plot.pdf", "figures/heatmap.pdf", ], }
Cloud lab integration pattern:
AGENT → API → CLOUD LAB → RESULTS → AGENT
Platforms:
- Emerald Cloud Lab: Programmatic access to wet lab equipment
- Strateos: Automated biology research platform
- Arctoris: AI-integrated drug discovery lab
API pattern:
1. Agent designs experiment protocol (JSON/YAML)
2. Protocol validated against lab capabilities
3. Experiment submitted via API
4. Real-time monitoring of experiment progress
5. Results returned as structured data
6. Agent analyzes results, designs next experiment
Active learning loop:
- Agent proposes most informative experiment (Bayesian optimization)
- Lab executes experiment
- Results update model
- Repeat until convergence or budget exhausted| Criterion | Metric | Benchmark | |-----------|--------|-----------| | Literature coverage | Recall of relevant papers | Compare to expert bibliography | | Hypothesis quality | Expert rating (1-5), novelty score | Panel of domain scientists | | Experimental design | Validity, power, feasibility | IRB/protocol review standards | | Data analysis | Accuracy, reproducibility | Gold standard datasets | | Manuscript quality | Expert review scores | Peer review simulation | | Cost efficiency | $/discovery, time to insight | Traditional lab benchmarks |
Key ethical issues in autonomous biological research:
1. DUAL USE RISK
- AI-designed pathogens or toxins
- Mitigation: Red-team evaluation, biosecurity review
- Reference: Wilson Center, NTI biosecurity frameworks
2. REPRODUCIBILITY
- Agent-generated experiments must be reproducible
- All parameters, code, and data must be logged
- Version control for every pipeline component
3. ATTRIBUTION
- Who is the "author" of AI-generated research?
- Current consensus: Humans are responsible, AI is a tool
- Journals require human accountability for all claims
4. DATA PRIVACY
- Patient data in biomedical research (HIPAA, GDPR)
- Agent access must respect data governance
- De-identification before agent processing| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-01 | fail→fail | 20,799 | 32,248 | +55% | 1 | 1 | 0% | 3,923 | 8,648 | +120% | 0 | 0 | — |
case-02 | fail→fail | 33,987 | 23,341 | -31% | 1 | 1 | 0% | 6,807 | 7,681 | +13% | 0 | 0 | — |
case-03 | fail→pass | 11,237 | 17,306 | +54% | 1 | 1 | 0% | 1,757 | 5,822 | +231% | 0 | 0 | — |
case-04 | pass→pass | 20,125 | 25,861 | +29% | 1 | 1 | 0% | 3,207 | 7,384 | +130% | 0 | 0 | — |
case-05 | fail→pass | 20,280 | 12,895 | -36% | 1 | 1 | 0% | 3,310 | 5,073 | +53% | 0 | 0 | — |
case-06 | fail→pass | 19,197 | 21,229 | +11% | 1 | 1 | 0% | 2,960 | 6,231 | +111% | 0 | 0 | — |
case-07 | pass→pass | 16,315 | 17,745 | +9% | 1 | 1 | 0% | 2,528 | 5,625 | +123% | 0 | 0 | — |
case-08 | pass→pass | 17,433 | 15,079 | -14% | 1 | 1 | 0% | 2,420 | 5,229 | +116% | 0 | 0 | — |
case-09 | pass→pass | 17,991 | 19,407 | +8% | 1 | 1 | 0% | 2,762 | 5,722 | +107% | 0 | 0 | — |
case-10 | fail→fail | 27,023 | 16,719 | -38% | 1 | 1 | 0% | 1,493 | 5,559 | +272% | 0 | 0 | — |
case-11 | pass→pass | 17,931 | 20,398 | +14% | 1 | 1 | 0% | 2,867 | 5,909 | +106% | 0 | 0 | — |
case-12 | pass→pass | 20,015 | 19,832 | -1% | 1 | 1 | 0% | 3,027 | 6,222 | +106% | 0 | 0 | — |
case-13 | pass→pass | 20,877 | 23,582 | +13% | 1 | 1 | 0% | 3,370 | 6,641 | +97% | 0 | 0 | — |
case-14 | fail→fail | 18,096 | 16,366 | -10% | 1 | 1 | 0% | 2,803 | 5,362 | +91% | 0 | 0 | — |
case-15 | pass→pass | 12,689 | 7,571 | -40% | 1 | 1 | 0% | 1,945 | 3,961 | +104% | 0 | 0 | — |
case-16 | pass→pass | 14,593 | 12,303 | -16% | 1 | 1 | 0% | 1,906 | 4,671 | +145% | 0 | 0 | — |
case-17 | pass→pass | 20,695 | 25,292 | +22% | 1 | 1 | 0% | 2,836 | 6,418 | +126% | 0 | 0 | — |
case-18 | fail→pass | 21,084 | 10,487 | -50% | 1 | 1 | 0% | 1,385 | 4,496 | +225% | 0 | 0 | — |
case-19 | fail→pass | 61,623 | 28,424 | -54% | 1 | 1 | 0% | 1,005 | 7,699 | +666% | 0 | 0 | — |
case-20 | pass→pass | 23,345 | 22,642 | -3% | 1 | 1 | 0% | 4,429 | 7,035 | +59% | 0 | 0 | — |
case-21 | pass→pass | 24,267 | 27,559 | +14% | 1 | 1 | 0% | 4,800 | 7,981 | +66% | 0 | 0 | — |
case-22 | pass→pass | 25,323 | 32,421 | +28% | 1 | 1 | 0% | 4,972 | 9,224 | +86% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 22 cases were attempted, and 21 counted toward the lift figure. The other 1 produced results that are not comparable between the two arms, so they are excluded from the headline rather than averaged into it. The headline lift of +23 percentage points is the difference between those two pass rates over the 21 comparable cases.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.