Install any skill in seconds. Free to start, no credit card required.
Get Started Free →**Note**: Foldseek can run locally or via web server. No GPU required.
| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-12 | ✗→✓ | ▲ Improved | — | — |
| case-03 | ✗→✓ | ▲ Improved | — | — |
| case-18 | ✗→✓ | ▲ Improved | — | — |
| case-08 | ✗→✓ | ▲ Improved | — | — |
| case-01 | ✗→✓ | ▲ Improved | — | — |
| Requirement | Minimum | Recommended | |-------------|---------|-------------| | Python | 3.8+ | 3.10 | | RAM | 8GB | 16GB | | Disk | 10GB | 50GB (for local databases) |
Note: Foldseek can run locally or via web server. No GPU required.
bash# Upload structure to web server curl -X POST "https://search.foldseek.com/api/ticket" \ -F "q=@query.pdb" \ -F "database[]=afdb50" \ -F "database[]=pdb100"
bash# Install Foldseek conda install -c conda-forge -c bioconda foldseek # Search PDB foldseek easy-search query.pdb /path/to/pdb100 results.m8 tmp/ # Search AlphaFold DB foldseek easy-search query.pdb /path/to/afdb50 results.m8 tmp/
pythonimport subprocess import pandas as pd def foldseek_search(query_pdb, database, output="results.m8"): """Run Foldseek search.""" subprocess.run([ "foldseek", "easy-search", query_pdb, database, output, "tmp/", "--format-output", "query,target,pident,alnlen,evalue,bits" ]) return pd.read_csv(output, sep="\t", names=["query", "target", "pident", "alnlen", "evalue", "bits"])
| Parameter | Default | Description | |-----------|---------|-------------| | --min-seq-id | 0.0 | Minimum sequence identity | | -e | 0.001 | E-value threshold | | --alignment-type | 2 | 0=3Di, 1=TM, 2=3Di+AA | | --max-seqs | 300 | Max hits to pass through prefilter; reducing this affects sensitivity |
| Database | Description | Size | |----------|-------------|------| | pdb100 | PDB clustered at 100% | ~200K structures | | afdb50 | AlphaFold DB at 50% | ~67M structures | | swissprot | SwissProt structures | ~500K structures | | cath50 | CATH domains | ~50K domains |
# results.m8 (tabular)
query target pident alnlen evalue bits
query 1abc_A 85.2 120 1e-45 180.5
query 2def_B 72.1 115 1e-32 145.2$ foldseek easy-search query.pdb pdb100 results.m8 tmp/
[INFO] Loading database: pdb100 (194,527 entries)
[INFO] Searching...
[INFO] Found 127 hits
Top 5 hits:
1. 1abc_A - 85.2% identity, E=1e-45
2. 2def_B - 72.1% identity, E=1e-32
3. 3ghi_C - 68.5% identity, E=1e-28
4. 4jkl_A - 55.3% identity, E=1e-18
5. 5mno_B - 42.1% identity, E=1e-10Should I use Foldseek?
│
├─ What are you searching?
│ ├─ By 3D structure → Foldseek ✓
│ ├─ By sequence → Use BLAST (uniprot skill)
│ └─ Both → Run both, compare results
│
└─ What do you need?
├─ Find structural homologs → Foldseek ✓
├─ Remote homolog detection → Foldseek ✓
├─ Structural clustering → Foldseek ✓
└─ Functional annotation → Cross-reference with UniProtbash# Compare your design to PDB foldseek easy-search design.pdb pdb100 similar_natural.m8 tmp/
bash# Ensure design is novel (low similarity to known) foldseek easy-search design.pdb afdb50 novelty.m8 tmp/ # Novel if: top hit identity < 30%
bash# Find scaffolds for motif grafting foldseek easy-search motif.pdb pdb100 scaffolds.m8 tmp/ \ --min-seq-id 0.0 -e 10
bashwc -l results.m8 # Number of hits
No hits: Lower e-value threshold, try larger database Too many hits: Increase min-seq-id threshold Slow search: Use smaller database
| Error | Cause | Fix | |-------|-------|-----| | Database not found | Wrong path | Check database location | | Invalid PDB | Malformed structure | Validate PDB format | | Out of memory | Large database | Use more RAM or web server |
Next: Download hits with pdb skill → use for scaffold design.
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-14 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-15 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-19 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-06 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-12 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-13 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-03 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-10 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-05 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-17 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-18 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-08 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-04 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-01 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-09 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-20 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-16 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-21 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-02 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-07 | fail→fail | — | — | — | — | — | — | — | — | — | — | — | — |
case-11 | pass→pass | — | — | — | — | — | — | — | — | — | — | — | — |
case-22 | fail→pass | — | — | — | — | — | — | — | — | — | — | — | — |
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 +41 percentage points is the difference between those two pass rates over the 21 comparable cases.
The per-case answers from this run were removed by the retention sweep, so the case table below shows the verdicts without the text either arm produced. The counts above were recorded at the time and are unaffected. Answers are now kept for 180 days.
Other measured skills in the registry, with their headline benchmark lift.