harbor-exec について
harbor-exec は、Harbor の `harbor exec` コマンドラインツールを操作するエージェントスキルです。map-reduce ジョブの設定や成果物の管理、CLI バージョンの確認を案内します。
主な機能
- 01Harbor CLI のバージョンとコマンド確認
- 02入力と成果物要件の設定
- 03map と reduce フェーズの実行
- 04タスクとジョブ出力設定の管理
活用シーン
- 01入力ファイルから Harbor ジョブを準備
- 02生成結果の成果物を指定
- 03再実行可能な map-reduce ワークフローを設定
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ harbor-framework/ harbor --skill harbor-execインストール後、Claude Code で/harbor-execを入力して読み込まれたか確認します。
同梱ファイルreferences/examples.md
詳細
Harbor Exec
概要
Harbor の harbor exec コマンドを操作するには、このスキルを使用します。harbor exec はエージェント型のマップリデュースとして扱います。ばらばらの入力を Harbor タスクに変換し、それらのタスクに対して Harbor ジョブを実行して、必要に応じて結果を集約します。
事前確認
ユーザーがインストール済みの Harbor CLI を実行していることを前提とします。断定する前に、インストールされているコマンドの仕様を確認してください。
harbor --version
harbor exec --help
harbor exec の実行には Harbor >=0.17.1 が必要です。harbor --version の結果がこれより古い場合は、先にアップグレードするようユーザーに依頼してください。
設定の解決、推定される成果物、タスク/ジョブのディレクトリ、またはデフォルト値をデバッグする場合は、--print-config を使用してください。最終的な起動コマンドを提示する代わりとして使用してはいけません。
インストール済みの harbor コマンドを利用できない場合は、コマンドのパスを推測する前に、Harbor のインストール方法をユーザーに尋ねてください。
実行パラメーターの確認
Harbor Exec ジョブを実行する前に、指定されていない実行パラメーターについて、ユーザーに確認してください。
- 入力:正確なパス/glob、および
--scanと--no-scanのどちらを使用するか。 - 成果物の契約:エージェントが書き込む必要のある出力ファイルのパス。
- 成果物のスキーマ:各成果物に必要な JSON または構造化スキーマ。
- 環境プロバイダー:ローカルの
dockerよりもクラウドサンドボックスを推奨してください。modal、daytona、e2bを提案します。 - マップステップに使用するエージェントとモデル。
- 並列実行数。
- リデュースステップを含めるかどうか。含める場合は、使用するリデュースエージェントとモデル。
- 最終コマンド:実行前に正確な起動コマンドを提示してください。
使用ワークフロー
単発の実行にはフラグを、繰り返し実行するワークフローやマップリデュースのワークフローには --config を優先してください。
生成ファイルの正確性が重要な場合は、成果物を明示してください。
harbor exec -p ./input -i "Write /app/answer.json" -f /app/answer.json
自動推定される成果物よりも、明示的な成果物を優先してください。自動推定で読み取られるのはインライン指示のみで、指示ファイルは読み取られません。
デフォルトでは、コンパイル済みタスクを保存しないでください。ユーザーがコンパイル済みタスクを調査または再利用したい場合を除き、--tasks-dir は省略してください。省略すると、コンパイル済みタスクは一時的に作成され、実行後に削除されます。
デフォルトでは、ジョブの出力先を指定しないでください。ユーザーが特定の出力パスを希望する場合のみ --jobs-dir を使用します。デフォルトは jobs です。
タスク数が重要な場合は、--scan または --no-scan を指定してください。現在のフラグモードでは、デフォルトで単一のディレクトリまたは glob をスキャンしますが、複数のパスは --scan を明示しない限りグループ化されます。
--config とフラグモードのオプションを併用しないでください。完全な ExecConfig をファイル内に作成してください。
マップとリデュース
マップフェーズ:
map.compileはタスクの合成を定義します。指示、コピーするパス、Docker イメージ/作業ディレクトリ、成果物、テンプレート、コンパイル時の検証ツール生成が含まれます。map.jobは実行を定義します。エージェント、モデル、環境プロバイダー、再試行、試行回数、並列実行数、メトリクス、ジョブディレクトリが含まれます。
リデュースフェーズ:
map.compile.artifactsが必要です。リデューサーは、以前のマップ試行の成果物がenvironment/artifactsの下にステージングされたものを使用します。- リデューサータスクを正確に 1 つコンパイルします。
- リデューサー固有のフラグ/設定がフラグモードで上書きしない限り、マップジョブの設定を引き継ぎます。
- 通常はリデューサーの成果物を明示的に定義してから、検証してください。
例
具体的なコマンド、設定ファイル、またはマップリデュースの例を作成する場合は、references/examples.md を読んでください。