用途
install-scripts 用于将插件运行脚本安装到项目的 .claude/scripts/ 目录,以便在插件未加载的情况下持续使用这些脚本。
触发方式
关键词:install scripts、setup scripts、copy scripts、install-scripts。
不应使用的场景
- 安装规则:应使用 /install-rules
- 安装钩子:应使用 /install-hooks
- 完整项目设置:应使用 /project-setup
工作流程
- Phase 0:解析模式;进行过时集合迁移(非列表调用时最先执行;--dry-run 会被转发)
- Phase 1:定位插件脚本目录
- Phase 2:枚举脚本(核心脚本 + 技能脚本)
- Phase 3:确定安装集合(--all、--skill、具体名称)
- Phase 4:复制脚本及依赖到 .claude/scripts/
- Phase 4.5:更新清单
- Phase 5:输出报告
Phase 0:过时集合迁移
与 /install-hooks 共用同一迁移逻辑,在此处同样调用,以确保两个入口都不会手工复现不安全的顺序(hook-lightweighting § 3.6)。先解析调用模式:列表式调用会跳过此阶段(只读),同时 --dry-run 会被转发,使迁移也仅进行报告:
# --dry-run → append --dry-run to the command below; list-only invocations skip Phase 0
node "${CLAUDE_PLUGIN_ROOT}/scripts/migrate-hook-lightweighting.js" --repo "$(git rev-parse --show-toplevel)"
该迁移先注销过时的设置项,仅在设置写入成功后才删除已停用的强制执行层文件。若退出码为 1,则停止安装并展示报告。Phase 5 的输出中需包含迁移的报告行。
参数
- --all:安装所有可用的核心脚本
- --list:列出可用的核心脚本,不安装
- --dry-run:显示将要安装的内容,不做改动
- --force:覆盖内容不同的已有脚本
- --skill <name>:安装指定技能的全部脚本
- --skill-all:安装所有技能的脚本
- --skill-list:列出所有可用的技能脚本
- script-names...:要安装的具体脚本名称
脚本类型
| 类型 | 来源 | 目标 |
|---|---|---|
| 核心脚本 | scripts/.js、scripts/.sh | .claude/scripts/ |
| 核心库 | scripts/lib/*.js | .claude/scripts/lib/ |
| 技能脚本 | skills/<name>/scripts/* | .claude/scripts/ |
冲突处理
| 场景 | 操作 |
|---|---|
| 目标缺失 | 复制 |
| 目标内容相同 | 跳过(已是最新) |
| 目标内容不同 | 跳过并警告(使用 --force 覆盖) |
输出
## Install Scripts Report
| Script | Type | Status |
|--------|------|--------|
| precommit-runner.js | core | installed |
| lib/utils.js | core-lib | up to date |
| git-profile.sh | skill | installed |
Installed: N | Skipped: M | Conflicts: K
限制
资料未提供该技能的具体平台依赖、收费情况、价格或其他未在正文中说明的细节。