这些都是标准 skill 包(`SKILL.md` + `scripts/` + `references/`),共 8 个。我先确认了一个关键点:已安装的 `two-sample-mr` 是旧版(无 `version` 字段、内容与 v1.4 压缩包不一致),所以安装时会先备份再升级,且全程只做覆盖写入、不删除任何文件。
安装已完成,但我这边的校验环节报了 `name=?`,需要确认是校验脚本的问题还是文件内容问题,先查一下落盘文件:
文件内容本身完全正常(UTF-8、`name: batch-mr` 都在),是我校验脚本里的正则在跨 shell 传参时被转义吃掉了。换用直接检索来复核:
8 个包的 `name`、版本、文件数、中文文件名都核对无误。最后记录一下这次安装:
已安装完成。这 8 个 zip 都是标准 skill 包(`SKILL.md` + `scripts/` + `references/`),不是市场在线技能,所以我直接把它们解压到了用户级技能目录 `C:\Users\ROG\.workbuddy\skills\`,对所有项目可用。
| 技能 | 版本 | 文件数 | 状态 |
|---|---|---|---|
| batch-mr 批量MR | 1.0 | 18 | 新装 |
| coloc 共定位 | 1.5 | 14 | 新装 |
| drug-target-mr 药靶MR | 1.5 | 14 | 新装 |
| gwas-outcome-prep 结局数据整形 | 1.1 | 7 | 新装 |
| mediation-mr 中介MR | 1.12 | 17 | 新装 |
| multivariable-mr 多变量MR | 1.5 | 14 | 新装 |
| smr-scan SMR/HEIDI | 包标 v1.2.1 / 内部 1.2 | 11 | 新装 |
| two-sample-mr 两样本MR | 1.4 | 13 | **升级覆盖** |
几点需要你知道:
- **旧版冲突处理**:原本已装的 `two-sample-mr` 是旧版本(`SKILL.md` 无 version 字段、内容与 v1.4 包不一致)。升级前已完整备份到 `C:\Users\ROG\.workbuddy\skill-backups\2026-11-06\two-sample-mr`(13 个文件),安装过程只做覆盖写入,没有删除任何文件。原有的 `transcriptome-analysis`、`wes-mtdna-analysis` 未改动。
- **中文文件名**:压缩包里 `安装说明.md` 没带 UTF-8 标志,直接解压会变乱码;我用原始字节按 UTF-8/GBK 解码还原,8 个包的中文说明文件名都正常。
- **验证结果**:8 个 `SKILL.md` 的 `name` 均与目录名一致,各目录落盘文件数与压缩包内文件数逐一吻合;校验中曾出现一次 `name=?`,是我校验脚本的正则在 shell 传参时被转义吃掉,改用直接检索复核后全部通过,文件内容本身无问题。
- **生效方式**:新增技能需要重新开启会话或刷新技能列表后才会出现在可调用清单里。各包 `scripts/` 下的 `check_env_*.R` / `install_packages_*.R` 是 R 依赖检查与安装脚本,首次跑分析时按需执行即可(我没有代跑,避免触发长时间的包安装)。
- 工作区已留记录:`.workbuddy/memory/2026-11-06.md`。
另外提醒一句:`smr-scan` 压缩包文件名写 v1.2.1,但包内 `SKILL.md` 的 `version` 是 1.2,属于包内标注不一致,不影响使用。