publish について
Harborのタスクやデータセットをレジストリに公開する手順を案内するスキルです。認証とタスク識別子を確認し、マニフェストの準備、同期、公開範囲、公開コマンドを説明します。
主な機能
- 01レジストリ認証の確認
- 02タスク識別子の準備
- 03データセットマニフェストの初期化と拡張
- 04タスクとメトリックのダイジェスト同期
- 05タグ、公開範囲、アップロード設定
- 06公開済みデータセットの実行
活用シーン
- 01Harborタスクの単体または一括公開
- 02ローカルとレジストリのタスクを集めてデータセット化
- 03指定タグや公開範囲でデータセットを公開
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ harbor-framework/ harbor --skill publishインストール後、Claude Code で/publishを入力して読み込まれたか確認します。
詳細
ユーザーが Harbor のタスクまたはデータセットをレジストリに公開できるよう支援します。前提条件を確認し、公開コマンドを実行する前に確認を取りながら、各手順を案内します。
すべてのコマンドで uvx harbor を使用するため、ユーザーは CLI をグローバルにインストールする必要はありません。
前提条件
-
認証:
uvx harbor auth statusを実行して、ユーザーがログイン済みであることを確認します。未ログインの場合は、uvx harbor auth loginを実行するよう案内します。 -
タスク識別子:すべてのタスクの
task.tomlには、<org>/<name>のような名前を指定した[task]セクションが必要です。設定されていない場合は、次を実行します。uvx harbor task update "<path/to/task>" --org "<org>"ディレクトリ内のすべてのタスクを更新するには、次を実行します。
uvx harbor task update "<path/to/tasks>" --org "<org>" --scan
タスクの公開
uvx harbor publish "<path/to/task>"
複数のタスクまたはディレクトリ内のすべてのタスクを公開します。
uvx harbor publish "<path/to/task-a>" "<path/to/task-b>"
uvx harbor publish "<path/to/tasks>"
データセットの公開
1. データセットマニフェストを初期化する(dataset.toml が存在しない場合)
uvx harbor dataset init "<org>/<dataset>" \
--description "<description>" \
--author "Jane Doe <[email protected]>"
カスタムメトリクススクリプトが必要な場合は、--with-metric を追加します。省略すると、データセットではデフォルトのメトリクス(タスク全体の平均報酬。欠損値は 0 として扱います)が使用されます。
自動追加の動作: タスクがすでに含まれているディレクトリで dataset init を実行すると、それらのタスクが自動的にマニフェストに追加されます。初期化後、追加のタスクを加えるかどうかをユーザーに確認します。Harbor レジストリから追加することも、ほかのローカルフォルダーから追加することもできます。
2. 追加のタスクとファイルを追加する(任意)
cd "<path/to/dataset>"
uvx harbor dataset add "<path/to/task-a>" "<path/to/task-b>" # local tasks from elsewhere
uvx harbor dataset add "<path/to/folder>" --scan # all tasks in another folder
uvx harbor dataset add org/task-name # published tasks from registry
uvx harbor dataset add org/dataset-name # all tasks from a published dataset
uvx harbor dataset add metric.py # metric file (same dir as dataset.toml)
uvx harbor dataset remove "<org>/<task-name>" # remove a task
特定のバージョン:org/task@tag、org/task@revision、または org/task@sha256:<hash>。
3. ダイジェストを同期する(前回の公開以降にタスクやメトリクスが変更された場合)
uvx harbor sync
uvx harbor sync --upgrade # also upgrade remote tasks to latest
4. データセットを公開する
uvx harbor publish "<path/to/dataset>"
uvx harbor publish を実行すると、データセットディレクトリ内のローカルタスクのダイジェストが自動的に更新されます。
公開オプション(タスクとデータセット)
-t / --tag:タグを追加します(繰り返し指定できます)。latestは常に含まれます。-c / --concurrency:アップロードの同時実行数を指定します。--public:公開設定にします(デフォルトは非公開です)。--no-tasks(データセットのみ):データセットディレクトリ内のタスクの公開をスキップします。
例:
uvx harbor publish "<path>" -t v1.0 --public
公開後
- 公開範囲は、後から
uvx harbor task visibility/uvx harbor dataset visibilityを実行するか、https://hub.harborframework.com/ で変更できます。 - 公開済みのデータセットを実行するには、次を実行します。
uvx harbor run -d "<org>/<dataset>@v1.0" -a "<agent>" -m "<model>"