harness-mint について
harness-mint は、metaharness で新しい harness のディレクトリツリーを作成する ruflo スキルです。既定ではドライランを行い、現在のプロジェクトへの書き込みや既存ターゲットの上書きを防ぐ安全チェックを備えています。
主な機能
- 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>/ディレクトリです)。 - 既存のターゲットへの書き込みを拒否します。 上書きは行いません。まだ存在しないディレクトリにスキャフォールドする必要があります。
- サブプロセスと 60s のタイムアウトを使用します。 ライブラリのインポートや、プロセス内での実行は行いません。mint は ruflo のランタイムから隔離されたままです。
アルゴリズム
実装:scripts/mint.mjs。
--nameと--templateを検証します。--hostのデフォルトはclaude-codeです。--targetを解決します(デフォルト:一時ディレクトリ)。- 安全性チェックを実行します(プロジェクトルートへの書き込み禁止、ターゲットが存在しないこと)。
--confirmを指定しない場合:ドライランの計画を出力し、終了コード 0 で終了します。--confirmを指定した場合:シェルで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 を追加します。