关于 harness-mint
harness-mint 是 ruflo 技能,通过 metaharness 创建新的 harness 目录树。默认先执行演练,并通过安全检查避免写入当前项目或覆盖已有目标。
主要功能
- 01默认演练,确认后才执行
- 02禁止写入当前项目内部
- 03拒绝已存在的目标目录
- 04支持多种模板和宿主
适用场景
- 01创建前预览 harness 脚手架计划
- 02在当前项目外的新目录创建 harness
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ ruvnet/ ruflo --skill harness-mint安装后在 Claude Code 中输入/harness-mint确认已加载。
详细介绍
插件中唯一具备写入能力的技能。其他所有技能都只读。此技能会调用 metaharness new,写入一个新的目录树。
安全性(关键)
- 默认试运行。 不带
--confirm时,脚本会打印将要执行的操作并以状态码 0 退出,不会触碰磁盘。 - 拒绝项目根目录。 如果
--target解析为当前工作目录或其中的任意路径,脚本会报错并以状态码 2 退出。目标必须是调用方仓库之外的绝对路径(默认使用一个新建的/tmp/ruflo-mint-<ts>-<name>/目录)。 - 拒绝已存在的目标。 不会覆盖现有内容,必须在不存在的目录中搭建脚手架。
- 子进程 + 60 秒超时。 不导入库,也不在进程内执行。创建过程会与 ruflo 的运行时隔离。
算法
实现:scripts/mint.mjs。
- 验证
--name和--template。--host默认为claude-code。 - 解析
--target(默认为临时目录)。 - 运行安全检查(不写入项目根目录;目标必须不存在)。
- 不带
--confirm时:输出试运行计划,以状态码 0 退出。 - 带
--confirm时:运行 shell 命令npx metaharness new <name> --template <id> --host <id> --target <abs> --yes。
模板
minimal、vertical:coding、vertical:devops、vertical:support、
vertical:legal、vertical:research、vertical:trading、vertical:health、
vertical:education、vertical:sales、vertical:business、
vertical:crm、vertical:marketing、vertical:advertising、
vertical:ai、vertical:agentics、vertical:ruview、vertical:gaming、
vertical:repo-maintainer、vertical:exotic。
主机
claude-code、codex、pi-dev、hermes、openclaw、rvm、
copilot、opencode、github-actions。
试运行示例
$ node scripts/mint.mjs --name my-harness --template vertical:coding --host claude-code
# harness-mint (dry-run)
- action: metaharness new
- name: my-harness
- template: vertical:coding
- host: claude-code
- target: /tmp/ruflo-mint-1718560000-my-harness
- confirm: false
- willWrite: false
Re-run with `--confirm` to actually scaffold.
为什么默认试运行
Ruflo 的行为规则要求“谨慎执行操作”——破坏性操作或会触碰仓库的操作都需要确认。试运行输出会先展示要做什么,再决定何时执行。用户看到 target 后做出判断;如果确认无误,再添加 --confirm。
评论
支持 Markdown