Back to list
katalyzeAI

blast-screen

by katalyzeAI

AI-powered tool for designing species-specific dsRNA sequences for agricultural pest control

0🍴 0📅 Jan 20, 2026

SKILL.md


name: blast-screen description: Screen dsRNA candidates for off-target matches in human and honeybee

BLAST Off-Target Screening Skill

When to Use This Skill

Use after designing candidates to screen all 15 dsRNA sequences against human and honeybee genomes for safety assessment.

Data Storage Structure

Reads from:

  • data/blast_db/ - Cached BLAST databases (input data)
  • output/{run}/candidates.json - From design-dsrna step

Writes to:

  • output/{run}/blast_results.json - Screening results
  • output/{run}/figures/ - Safety visualization plots

Prerequisites

BLAST+ must be installed and databases must exist:

  • data/blast_db/human_cds.*
  • data/blast_db/honeybee_cds.*

Check with:

blastn -version
ls data/blast_db/*.n*

If missing, run ./setup_blast_db.sh first.

Instructions

Step 1: Verify BLAST Setup

blastn -version
ls -la data/blast_db/

If databases don't exist, instruct user to run setup script and wait.

Step 2: Run BLAST Screening Script

python .deepagents/skills/blast-screen/scripts/run_blast.py \
  --candidates output/{run}/candidates.json \
  --blast-db-dir data/blast_db \
  --output output/{run}/blast_results.json

The script:

  1. Writes each candidate to temp FASTA
  2. Runs blastn against human_cds and honeybee_cds
  3. Parses output for max alignment length
  4. Applies EPA safety thresholds

Step 3: Verify Results

jq '[.results[] | select(.safety_status == "reject")] | length' \
  output/{run}/blast_results.json

Step 4: Generate Visualization

Create safety analysis plots:

python .deepagents/skills/blast-screen/scripts/plot_safety.py \
  --blast-results output/{run}/blast_results.json \
  --candidates output/{run}/candidates.json \
  --output-dir output/{run}/figures/

This creates:

  • safety_heatmap.png - Heatmap showing human/honeybee matches for each candidate
  • safety_distribution.png - Histogram of match lengths
  • safety_by_gene.png - Grouped bar chart of safety status per target gene

Step 5: Present Results

Output this summary to the user:

## BLAST Screening Complete

**Summary:**
- {total} candidates screened against human and honeybee CDS
- Safe (<15bp): {safe_count} candidates
- Caution (15-18bp): {caution_count} candidates
- Rejected (>=19bp): {reject_count} candidates

**Safety Results:**
| Candidate | Human Match | Honeybee Match | Status |
|-----------|-------------|----------------|--------|
| vATPase_1 | 12bp | 14bp | Safe |
| ... | ... | ... | ... |

**Files Created:**
- `output/{run}/blast_results.json`
- `output/{run}/figures/safety_heatmap.png`

**Figures:** [Show safety heatmap]

---
Proceed to score-rank? (yes/no)

Note: If >5 candidates are rejected, warn user that ranking may include marginal candidates.

Safety Thresholds (EPA Guidelines)

Match LengthStatusColorAction
<15 bp✅ SafeGreenProceed to ranking
15-18 bp⚠️ CautionYellowFlag but include
≥19 bp❌ RejectRedExclude from ranking

These thresholds are based on:

  • EPA Guidelines for RNAi Biopesticide Assessment
  • Published research on minimum siRNA complementarity for gene silencing
  • Conservative approach for environmental safety

Output Format

output/{run}/blast_results.json:

{
  "success": true,
  "screening_date": "2024-01-15",
  "databases_used": ["human_cds", "honeybee_cds"],
  "results": [
    {
      "candidate_id": "vATPase_1",
      "human_max_match": 12,
      "honeybee_max_match": 14,
      "max_match": 14,
      "safety_status": "safe",
      "safe": true
    }
  ]
}

Expected Output

All outputs go in output/{run}/:

  • blast_results.json
  • figures/safety_heatmap.png
  • figures/safety_distribution.png
  • figures/safety_by_gene.png

Available Tools

  • shell - Check BLAST installation, run script and plotting
  • read_file / write_file - Handle JSON

Troubleshooting

BLAST not found

# macOS
brew install blast

# Ubuntu/Debian
sudo apt-get install ncbi-blast+

Database files missing

./setup_blast_db.sh

BLAST timeout

  • Increase timeout in run_blast.py
  • Or screen candidates in smaller batches

Score

Total Score

50/100

Based on repository quality metrics

SKILL.md

SKILL.mdファイルが含まれている

+20
LICENSE

ライセンスが設定されている

0/10
説明文

100文字以上の説明がある

0/10
人気

GitHub Stars 100以上

0/15
最近の活動

3ヶ月以内に更新がある

0/10
フォーク

10回以上フォークされている

0/5
Issue管理

オープンIssueが50未満

+5
言語

プログラミング言語が設定されている

+5
タグ

1つ以上のタグが設定されている

0/5

Reviews

💬

Reviews coming soon