AgentSkillsCN

primerdesigner

为分子克隆设计 PCR 引物。适用于用户咨询引物设计、LIC 克隆引物、测序引物、Gibson 组装引物,或需要结合 NCBI accession 编码进行克隆操作时使用。

SKILL.md
--- frontmatter
name: primerdesigner
description: Design PCR primers for molecular cloning. Use when the user asks about designing primers, LIC cloning primers, sequencing primers, Gibson assembly primers, or working with NCBI accession codes for cloning.
allowed-tools: Bash(primer_cli:*), Bash(primerdesigner:*), Bash(python:*)

Primer Designer Tool

Design PCR primers for LIC cloning, sequencing, and Gibson/HiFi assembly using Primer3.

CLI Location

bash
scripts/primer_cli.py

Quick Start

LIC Cloning Primers (default v1)

bash
python3 scripts/primer_cli.py --index 1 --accession NM_007192

LIC Cloning with Specific Tag Version

bash
python3 scripts/primer_cli.py --index 1 --accession NM_007192 --lic-tag v2

Gibson/HiFi Assembly Primers

bash
python3 scripts/primer_cli.py --index 1 --accession NM_007192 --hifi --vector 438-A

List Available Options

bash
python3 scripts/primer_cli.py --list-lic-tags
python3 scripts/primer_cli.py --list-vectors

Options

OptionDescription
--index, -iStarting index number for primer naming (required)
--accession, -aNCBI accession code (NM_ or XM_ prefix)
--sequence, -sRaw DNA sequence (ATCG only)
--gene, -gGene name (required with --sequence)
--lic-tag, -tLIC tag version: v1, v2, v3, vKoz, vBac, vGFP1, vGFP2, vHRV
--list-lic-tagsList available LIC tag versions and exit
--hifi, --gibsonDesign HiFi/Gibson assembly primers
--vector, -vVector name (e.g., 438-A) - also auto-selects LIC tag
--overlap-tmTarget Tm for overlap regions (default: 60°C)
--list-vectorsList available vectors and exit
--lic-onlyOnly generate LIC cloning primers
--seq-onlyOnly generate sequencing primers
--jsonOutput results as JSON

LIC Tag Versions (MacroLab Vectors v8)

TagForward OverhangReverse OverhangORF Requirement
v1TACTTCCAATCCAATGCATTATCCACTTCCAATGTTATTANo ATG in ORF
v2TTTAAGAAGGAGATATAGATCTTATGGAGTTGGGATCTTATTAORF needs ATG
v3TTTAAGAAGGAGATATAGTTCGGATTGGAAGTAGAGGTTCTCORF needs ATG
vKozTACTTCCAATCCAATGCCACCTTATCCACTTCCAATGTTATTAORF needs ATG
vBacTACTTCCAATCCAATCGTTATCCACTTCCAATGTTATTAORF needs ATG
vGFP1TACTTCCAATCCAATGCACTCCCACTACCAATGCCNo stop codon
vGFP2TTTAAGAAGGAGATATAGATCGTTGGAGGATGAGAGGATCCCORF needs ATG
vHRVGTGCTGTTCCAGGGTCCGAATTGGTGGTGGTGGTGCTCGATTAHRV 3C SLIC

When to Use Each Tag

TagUse CaseExample Vectors
v1N-terminal tagged constructs (His6-MBP, His6-GST, etc.)1B, 1C, 1M, 2BT, 2CT, 4B, 4C, 438-B, 438-C
v2Untagged expression2AT
v3C-terminal tagged constructs2Bc-T, 2Cc-T, 2Oc-T, 2Tc-T
vKozEukaryotic expression with Kozak sequence-
vBacBaculovirus/insect cell untagged4A, 5A, 438-A
vGFP1C-terminal fluorescent protein fusion (N-term tagged)MBP-mCherry, H6-msfGFP
vGFP2C-terminal fluorescent protein fusion (untagged)u-mCherry, u-msfGFP
vHRVHRV 3C protease site SLIC cloning-

Auto-Selection from Vector

When using --vector, the appropriate LIC tag is auto-selected:

bash
# Auto-selects vBac for 438-A (untagged insect)
python3 scripts/primer_cli.py --index 1 --accession NM_007192 --vector 438-A

# Auto-selects v1 for 438-B (His6-MBP)
python3 scripts/primer_cli.py --index 1 --accession NM_007192 --vector 438-B

# Auto-selects v2 for 2AT (untagged E. coli)
python3 scripts/primer_cli.py --index 1 --accession NM_007192 --vector 2AT

You can override auto-selection with explicit --lic-tag:

bash
python3 scripts/primer_cli.py --index 1 --accession NM_007192 --vector 438-B --lic-tag v2

Primer Types

1. LIC Primers (Ligation Independent Cloning)

Overhangs determined by tag version:

code
LF1_GeneName_LICv1_F    TACTTCCAATCCAATGCA{binding_region}
LF2_GeneName_LICv1_R    TTATCCACTTCCAATGTTATTA{binding_region}

2. HiFi/Gibson Assembly Primers

Dynamic overlaps calculated to achieve target Tm (default 60°C):

  • Forward: [vector upstream overlap] + [gene binding region]
  • Reverse: [vector downstream overlap RC] + [gene binding region]

Output includes detailed Tm information:

code
LF1_SUPT16H_HiFi_F    ACACCTCCCCCTGAACCTGATGGCTGTGACTCTGGACAAAGACGCTTAT
  # Overlap: ACACCTCCCCCTGAACCTG (Tm: 61.5°C, 19 bp)
  # Binding: ATGGCTGTGACTCTGGACAAAGACGCTTAT (Tm: 67.8°C)

3. Sequencing Primers

Spaced ~750bp apart for full-length sequencing coverage.

Available Vectors

Vectors are loaded from ./vectors/ directory:

VectorTagLIC TagHost
438-A- (untagged)vBacInsect
438-BHis6-TEVv1Insect
438-CHis6-MBP-TEVv1Insect
438-DHis6-GST-TEVv1Insect
438-GHis6-GB1-TEVv1Insect

Examples

LICv2 for Untagged Expression

bash
python3 scripts/primer_cli.py --index 1 --sequence ATGCATGC... \
  --gene MyGene --lic-tag v2 --lic-only

LICv3 for C-terminal Tags

bash
python3 scripts/primer_cli.py --index 1 --accession NM_007192 \
  --lic-tag v3 --lic-only

Gibson/HiFi with Custom Overlap Tm

bash
python3 scripts/primer_cli.py --index 1 --accession NM_007192 \
  --hifi --vector 438-B --overlap-tm 65

JSON Output for Parsing

bash
python3 scripts/primer_cli.py --index 1 --accession NM_007192 \
  --lic-only --json

Restriction Site Check

Automatically warns about internal SwaI and PmeI sites that could interfere with cloning.

Configuration

Settings in scripts/settings.py:

  • Email: configured in scripts/settings.py
  • Initials: configured in scripts/settings.py (used in primer names)