Token导航 LogoToken导航TokenDH.com
效率需要联网clawhub未标认证来源可访问clear审计提醒

syri-analysis叙利亚分析

Agent Skill

syri-analysis 用于补充效率相关能力,适合在 OpenClaw 中需要让 Agent 承接效率相关任务时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

5,750

周安装

247

GitHub Stars

公开资料未说明

下载量

2,016
OpenClaw

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

MIT-0

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:syri-analysis(叙利亚分析)
来源仓库:https://github.com/wangjw065/syri-analysis
安装命令:
openclaw skills install syri-analysis
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 OpenClaw 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

ClawHubOpenClaw
openclaw skills install syri-analysis

简介

执行基因组间 SYRI 共线性分析,包含染色体处理、minimap2 比对、结构变异检测及 plotsr 可视化流程。

SKILL.md

SYRI 共线性分析技能

用于执行基因组间的 SYRI 共线性和结构变异分析。

技能说明

本技能提供完整的 SYRI 共线性分析流程,包括:

  • 染色体提取与重命名
  • minimap2 比对
  • SYRI 结构变异分析
  • plotsr 可视化

软件安装

1. minimap2

# conda 安装
conda install -c bioconda minimap2

# 或从源码编译
git clone https://github.com/lh3/minimap2.git
cd minimap2 && make

2. SYRI

# conda 安装(推荐)
conda install -c bioconda syri

# pip 安装
pip install syri

3. plotsr

# conda 安装
conda install -c bioconda plotsr

# pip 安装
pip install plotsr

4. Biopython(用于染色体处理)

pip install biopython

关键发现

1. 线程数设置

重要:使用 64-120 线程加速分析

N_THREADS=64  # 根据 CPU 核心数调整
minimap2 -ax asm5 --eqx -t $N_THREADS ref.fa query.fa > output.sam

2. minimap2 输出缓冲问题

问题:minimap2 运行但 SAM 文件始终为 0 字节(进程正在运行) 原因:stdout/stderr 输出缓冲导致文件写入延迟 解决:使用 stdbuf 禁用输出缓冲

stdbuf -oL -eL minimap2 -ax asm5 --eqx -t $N_THREADS ref.fa query.fa > output.sam

3. SAM 文件清理

minimap2 可能输出日志行到文件,需要清理:

grep -v "^\[" A_vs_Vc.sam > A_vs_Vc_clean.sam
mv A_vs_Vc_clean.sam A_vs_Vc.sam

标准流程

步骤 1:染色体提取与重命名

from Bio.Seq import Seq
from Bio import SeqIO

# 染色体对应关系(根据实际项目调整)
# 格式:(新染色体名称, 原始染色体名称, 是否反向互补)
mapping = [
    ("chr01", "Vcev1_p0.Chr02", True),   # 反向互补
    ("chr02", "Vcev1_p0.Chr11", False),
    # ... 其他染色体
]

src_file = "V_caesariense_W85-20_P0_v2.fasta"
out_file = "Vc_for_SYRI.fa"

records = {rec.id: rec for rec in SeqIO.parse(src_file, "fasta")}

with open(out_file, "w") as f:
    for new_name, old_name, rc in mapping:
        if old_name in records:
            seq = records[old_name].seq
            if rc:
                seq = seq.reverse_complement()
            f.write(f">{new_name}\
")
            f.write(str(seq) + "\
")
            print(f"{new_name} <- {old_name} {'(RC)' if rc else '(direct)'}")

步骤 2:生成染色体长度文件

from Bio import SeqIO

# Vc.len
with open("Vc.len", "w") as f:
    for rec in SeqIO.parse("Vc_for_SYRI.fa", "fasta"):
        f.write(f"{rec.id}\	{len(rec.seq)}\
")

# A.len
with open("A.len", "w") as f:
    for rec in SeqIO.parse("subgenome_a_renamed.fa", "fasta"):
        f.write(f"{rec.id}\	{len(rec.seq)}\
")

步骤 3:创建基因组信息文件

cat > genomes.txt << 'EOF'
#file	name	tags
A.len	A	ft:cl
Vc.len	Vc	ft:cl
EOF

步骤 4:minimap2 比对

# 关键参数:
# -ax asm5: 用于长读长的基因组比对
# --eqx: 将 CIGAR 中的 =/X 转换为 M(SYRI 需要)
# -t: 线程数(推荐 64-120)
# stdbuf: 解决输出缓冲问题

N_THREADS=64
stdbuf -oL -eL minimap2 -ax asm5 --eqx -t $N_THREADS \
/path/to/ref.fa \
/path/to/query.fa > A_vs_Vc.sam 2>&1 &

echo "Started minimap2, PID: $!"
# 等待完成(约 10-15 分钟)

步骤 5:SAM 文件预处理

# 1. 移除 minimap2 日志行(以 [ 开头的行)
grep -v "^\[" A_vs_Vc.sam > A_vs_Vc_clean.sam
mv A_vs_Vc_clean.sam A_vs_Vc.sam

# 2. 可选:过滤低质量比对(MAPQ >= 20)
awk 'BEGIN {FS="\	"} /^@/ {print; next} $5 >= 20 {print}' A_vs_Vc.sam > A_vs_Vc_filtered.sam

步骤 6:SYRI 分析

mkdir -p syri_out

syri -c A_vs_Vc_filtered.sam \
-r /path/to/ref.fa \
-q /path/to/query.fa \
-F S -k --dir syri_out

# 参数说明:
# -c: 比对文件 (SAM/BAM/PAF)
# -r: 参考基因组
# -q: 查询基因组
# -F S: 输入格式为 SAM
# -k: 保留中间文件

步骤 7:plotsr 可视化

# 单染色体
plotsr --sr syri_out/syri.out --genomes genomes.txt \
-o output.png --chr chr01 -H 8 -W 10

# 全染色体
plotsr --sr syri_out/syri.out --genomes genomes.txt \
-o output_all.png -H 8 -W 15

注意事项

1. 染色体命名一致性

  • SYRI 要求 ref 和 query 的染色体名称和数量完全匹配
  • 建议使用统一的命名格式(如 chr01-chr12)

2. CIGAR 格式

  • SYRI 需要标准化的 CIGAR 字符串(使用 =/X 而非 M)
  • 必须使用 --eqx 参数

3. 输入格式

  • SAM 文件必须有正确的格式
  • 使用 -F S 参数明确指定 SAM 格式

4. 内存和存储

  • 大型基因组比对会产生很大的 SAM 文件(10-20GB)
  • 确保有足够的磁盘空间
  • 考虑过滤低质量比对以加速分析

5. 线程数选择

  • 推荐使用 CPU 核心数的 50%-100%
  • 过高线程数可能因内存带宽受限而无法提速

错误排查

错误:SAM 文件格式问题

Error: invalid literal for int() with base 10: '*'

解决:确保使用 -a 参数生成标准 SAM 格式

错误:CIGAR 格式问题

Error: Incorrect CIGAR string found

解决:添加 --eqx 参数

错误:染色体长度不匹配

Error: length in genome fasta is less than the maximum coordinate

解决:检查并确保 genomes.txt 中的长度与实际染色体匹配

错误:minimap2 进程运行但文件为 0

SAM file size = 0 bytes

解决:使用 stdbuf -oL -eL 禁用输出缓冲

输出文件说明

文件说明
syri.out结构变异注释(主要结果)
syri.vcfVCF 格式结果
synOut.txt共线性区域
invOut.txt倒位区域
TLOut.txt易位区域
dupOut.txt重复区域
snps.txtSNP 位置
sv.txt结构变异位置

文件位置(示例)

  • 工作目录:/path/to/syri/AVc_v2/
  • SYRI 结果:syri_out_v2/
  • 图片输出:/path/to/syri/plots/

适合场景

01

OpenClaw 用户查找和安装 Skill 时

02

用户想查找某类 Agent Skill 时

03

需要根据任务场景推荐可安装能力包时

04

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

补充不同宿主或平台的使用分布数据

能力 5

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

OpenClaw

88.47%
按下载量换算1,784

安全审计

VirusTotal

通过

ClawScan

可疑

Static analysis

通过

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在 warning/failed 结果,不能写成本站确认安全。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills