About tooluniverse-molecular-cloning
tooluniverse-molecular-cloning is a skill for designing and checking DNA fragment assemblies using Gibson Assembly or Golden Gate. It also simulates Golden Gate digestion and ligation to help researchers inspect the intended product.
Key features
- 01Design Gibson homology overlaps
- 02Design Golden Gate 4 bp overhangs
- 03Screen internal sites and junctions
- 04Simulate Golden Gate assembly products
Use cases
- 01Plan assembly of multiple DNA fragments
- 02Check designs for potential misassembly
- 03Trace ligation products after plasmid digestion
Install
Copy the command and run it in a terminal.
npx skills add https:/ / github.com/ mims-harvard/ tooluniverse --skill tooluniverse-molecular-cloningAfter installing, type/tooluniverse-molecular-cloningin Claude Code to confirm it loaded.
Bundled filesscripts/cloning_qc.py
Details
From the project READMEMolecular Cloning Assembly Design (Gibson & Golden Gate)
Plan how to join DNA fragments into a construct: design the overlaps (Gibson) or Type IIS overhangs (Golden Gate) and avoid the failures that come from internal sites and non-unique junctions.
Step 0 — Pick the method
| Use Gibson Assembly when | Use Golden Gate when |
|---|---|
| A few fragments, scarless/seamless junctions anywhere you choose | Many parts, standardized reusable parts (MoClo/modular), one-pot |
| You can add ~20–40 bp homology by PCR | You can remove internal BsaI/BbsI sites (domestication) |
| One-off constructs | Combinatorial libraries / repeated assemblies |
Both are sequence-independent (no scar at the junction for Gibson; a 4-bp fusion scar for Golden Gate). For 2–4 unique fragments, Gibson is usually simplest; for libraries or a parts toolkit, Golden Gate.
Step 1 — Gibson Assembly
tu run DNA_gibson_design '{"operation":"gibson_design",
"fragments":["ATGGCG...GAGGAC","GAGGAC...GGCAAG","GGGCAAG...ATCCT"],
"overlap_length":20}'
For each fragment it returns left_overlap, right_overlap, and with_overlaps (the fragment extended with the homology arms you'd add to your PCR primers — hand these to tooluniverse-primer-design).
Gibson design rules
- Overlap length 15–40 bp (20–25 typical); longer for GC-poor junctions.
- Overlap Tm ≈ 48–65 °C and balanced between junctions.
- Fragment order matters — list fragments in assembly order; the last fragment's 3′ overlaps the first only if you're making a circle (vector).
- Avoid repeats/secondary structure at the junctions (hairpins, direct repeats) → misassembly.
- Unique junctions — if two junctions share homology, fragments can swap; redesign so each overlap is unique.
Step 2 — Golden Gate Assembly
tu run DNA_golden_gate_design '{"operation":"golden_gate_design",
"parts":["ATGGCG...AAGAAC","CTGAGC...CTGATC","GAGGAG...GTGGTG"],
"enzyme":"BsaI"}'
Returns parts_with_overhangs: each part's unique 4-bp left_overhang/right_overhang and the full_sequence flanked by the Type IIS recognition sites (e.g. BsaI GGTCTC(N1) … cutting outside its site to leave the 4-bp fusion overhang).
Golden Gate design rules
- Domestication is mandatory. The chosen enzyme's site (BsaI
GGTCTC, BbsIGAAGAC) must NOT occur inside any part, or it will be cut internally. Remove internal sites by silent mutation before assembly — check every part. Don't rely on memorized recognition sites for a less common enzyme, or when a part's internal site can't be silently removed and you need an isoschizomer instead:REBASE_get_enzyme(site + methylation sensitivity) andREBASE_list_isoschizomers(alternative enzymes cutting the same site) are the authoritative lookup. - Overhangs must be unique and non-palindromic. Each 4-bp fusion site must differ from the others and not equal its own reverse complement, or junctions misligate. The tool assigns unique non-palindromic overhangs; keep them.
- Avoid high-GC or all-AT overhangs; published high-fidelity overhang sets (e.g. Potapov 2018) ligate most cleanly.
- Order is encoded by the overhangs, not by listing order — the 4-bp junctions define assembly.
Step 3 — QC before ordering
scripts/cloning_qc.py screens parts for the problems above: internal BsaI/BbsI sites (Golden Gate), overhang uniqueness/palindromes, and Gibson overlap GC/length — and flags PASS/WARN.
Step 4 — Gotchas (state these)
- Internal Type IIS sites (Golden Gate) — the #1 failure; domesticate every part.
- Non-unique Gibson overlaps or shared homology → fragment swapping / misassembly.
- Repeats and strong secondary structure at junctions reduce efficiency in both methods.
- Overlap Tm imbalance (Gibson) → some junctions form, others don't.
- Generating the fragments still needs primers with the overlaps/overhangs appended — design and QC those in
tooluniverse-primer-design(and BLAST for specificity).
Working backwards — what does an existing assembly produce?
The reverse question ("I combined these plasmids in a Golden Gate reaction with Esp3I — what does the product express / what does the gRNA target?") is answered by one call. Do not hand-write a digestion/ligation simulator.
tu run DNA_golden_gate_assemble '{"fragments":["<plasmid1>","<plasmid2>","<plasmid3>"],
"enzyme":"Esp3I","labels":["pLAB-CTU","pLAB-gTU2E","pLAB-CH3"]}'
It digests each input, drops the fragments that keep a recognition site (those are
re-cut in the reaction and cannot persist), chains the rest by matching 4-bp
overhangs, and returns product_sequence, product_length and the assembly_order
with the overhang at every junction. Inputs are treated as circular plasmids unless
you pass circular: false.
Then annotate the product. Locate features in product_sequence (promoter, ORF,
gRNA spacer). For a gRNA cassette the spacer is the ~20 nt immediately 5′ of the
scaffold (GTTTTAGAGCTAGAAATAGCAAG); identify its target by matching that spacer
against the genome (BLAST_*, or an Ensembl/NCBI/SGD sequence lookup) and check for
an adjacent PAM. Match the species implied by the construct — yeast tRNA/Pol III
parts mean search the yeast genome, not human.
If the assembly reports that the fragments do not chain, digest the inputs
individually with DNA_virtual_digest (circular: true) to see what each released:
a Golden Gate donor carries its two Type IIS sites inverted around the insert, so
a correct digest gives 2 fragments per plasmid. Getting 1 means the enzyme name or
circular is wrong — not that the plasmid lacks sites.
Enzyme names: Esp3I and BsmBI are the same enzyme (CGTCTC); BsaI
(GGTCTC), BbsI (GAAGAC) and SapI (GCTCTTC) all resolve too.
Honest limitations
- Digestion and overhang-driven ligation are simulated faithfully (
DNA_virtual_digestandDNA_golden_gate_assemblecut both strands at each enzyme's real offset, including Type IIS enzymes that cut outside their site). What is not modelled is reaction efficiency — overhang ligation bias, partial digestion, incorrect-but-possible junctions — so a returned product is the intended assembly, not a yield prediction. Validate by sequencing the assembled construct. - No vector-backbone or ORF-frame checking — confirm reading frame and backbone compatibility yourself.
Related skills
tooluniverse-primer-design— design the PCR primers (with homology arms / Type IIS tails) to make the fragments.tooluniverse-sequence-analysis— handle the input sequences.