mcpField
P
pp-docker-hub

pp-docker-hub

github.com/mvanhornクラウド・DevOps2.1k286 回インストール今日更新
リポジトリ

pp-docker-hub について

pp-docker-hubは、Docker Hubのリポジトリを調べるPrinting Press CLIスキルです。読み取り専用の検索とメタデータ照会に対応し、JSON出力やローカルデータ検索も利用できます。

主な機能

  1. 01Docker Hubリポジトリの全文検索
  2. 02リポジトリのメタデータと詳細照会
  3. 03エージェントモードのJSON出力
  4. 04ローカルSQLiteデータの検索

活用シーン

  1. 01キーワードでDocker Hubリポジトリを検索
  2. 02プル数、スター数、更新日時を確認

MCP 対応

別途MCPサーバーをインストールし、Claude Codeに登録する手順が記載されています。MCPクライアントから利用できます。

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/mvanhorn/printing-press-library --skill pp-docker-hub

インストール後、Claude Code で/pp-docker-hubを入力して読み込まれたか確認します。

詳細

Docker Hub — Printing Press CLI

前提条件:CLI をインストールする

このスキルは docker-hub-pp-cli バイナリを使用します。このスキルのコマンドを実行する前に、CLI がインストールされていることを必ず確認してください。 インストールされていない場合は、先にインストールしてください。

  1. Printing Press インストーラーを使用してインストールします。macOS/Linux では既定で $HOME/.local/bin に、Windows では %LOCALAPPDATA%\Programs\PrintingPress\bin にバイナリが配置されます。
    npx -y @mvanhorn/printing-press-library install docker-hub --cli-only
    
  2. 確認します:docker-hub-pp-cli --version
  3. 表示されたインストール先ディレクトリが、このスキルを実行するエージェント/ランタイムの $PATH に含まれていることを確認します。

npx によるインストールに失敗した場合(Node がない、オフラインなど)は、Go から直接インストールしてください(Go 1.26.6 以降が必要です)。

go install github.com/mvanhorn/printing-press-library/library/developer-tools/docker-hub/cmd/docker-hub-pp-cli@latest

インストール後に --version が「command not found」と表示される場合、ランタイムからバイナリのディレクトリを $PATH 経由で認識できていません。確認が成功するまで、スキルのコマンドを実行しないでください。

この CLI を使用しない場合

リモートの状態を変更する、作成、更新、削除、公開、コメント、アップボート、招待、注文、メッセージ送信、予約、購入を必要とするリクエストでは、この CLI を使用しないでください。この CLI が公開するのは、検査、エクスポート、同期、分析のための読み取り専用コマンドです。

コマンドリファレンス

docker-hub-search — Docker Hub 検索を管理します

  • docker-hub-pp-cli docker-hub-search — Docker Hub の全リポジトリを対象に全文検索します。名前、説明、スター数、プル数を返します。

repositories — リポジトリのメタデータと詳細

  • docker-hub-pp-cli repositories <namespace> <repository> — プル数、スター数、説明、最終更新日時など、Docker Hub リポジトリの全メタデータを取得します。
適切なコマンドを見つける

実行したいことは分かっていても、どのコマンドを使えばよいか分からない場合は、CLI に直接問い合わせてください。

docker-hub-pp-cli which "<capability in your own words>"

which は自然言語による機能の問い合わせを、この CLI の厳選された機能インデックスにある最適なコマンドに対応付けます。終了コード 0 は少なくとも 1 件の一致があることを示し、終了コード 2 は確度の高い一致がないことを示します。その場合は --help を参照するか、より具体的な問い合わせを使用してください。

認証設定

認証は不要です。

docker-hub-pp-cli doctor を実行して、セットアップを確認してください。

エージェントモード

任意のコマンドに --agent を追加します。次のオプションに展開されます:--json --compact --no-input --no-color --yes。

  • パイプ可能 — stdout には JSON、stderr にはエラーが出力されます

  • フィルタ可能 — --select を使うと、フィールドを絞り込めます。ドット区切りのパスはネストされた構造をたどり、配列は各要素をたどります。冗長な API でコンテキストを小さく保つうえで重要です。

    docker-hub-pp-cli docker-hub-search --agent --select id,name,status
    
  • プレビュー可能 — --dry-run を使うと、リクエストを送信せずに内容を表示できます

  • オフラインでも利用可能 — 同期/検索コマンドは、利用可能な場合、ローカルの SQLite ストアを使用できます

  • 非対話型 — プロンプトを表示せず、すべての入力をフラグで指定します

  • 読み取り専用 — 作成、更新、削除、公開、コメント、アップボート、招待、注文、送信、その他の変更を伴うリクエストには、この CLI を使用しないでください

レスポンスのエンベロープ

ローカルストアまたは API から読み取るコマンドは、出力を出所情報のエンベロープでラップします。

{
  "meta": {"source": "live" | "local", "synced_at": "...", "reason": "..."},
  "results": <data>
}

データには .results を解析し、ライブかローカルかを確認するには .meta.source を参照してください。人間が読みやすい N results (live) の要約は、stdout が端末の場合に限り stderr に出力されます。パイプ/エージェントの利用者には、stdout に純粋な JSON が出力されます。

エージェントへのフィードバック

あなた(またはエージェント)がこの CLI の気になる点に気付いたら、記録してください。

docker-hub-pp-cli feedback "the --since flag is inclusive but docs say exclusive"
docker-hub-pp-cli feedback --stdin < notes.txt
docker-hub-pp-cli feedback list --json --limit 10

エントリは ~/.docker-hub-pp-cli/feedback.jsonl にローカル保存されます。DOCKER_HUB_FEEDBACK_ENDPOINT が設定され、かつ --send が渡されているか、DOCKER_HUB_FEEDBACK_AUTO_SEND=true が設定されていない限り、POST されることはありません。既定の動作はローカル保存のみです。

バグ報告ではなく、意外に感じたことを書いてください。短く、具体的に、1 行で。それが積み重ねの力になります。

出力の送信先

すべてのコマンドで --deliver <sink> を指定できます。出力は、標準出力に加えて(または標準出力の代わりに)指定した送信先に送られるため、エージェントはコマンド結果を手作業でパイプに渡さずにルーティングできます。サポートされている送信先は3種類です。

送信先動作
stdoutデフォルト。標準出力にのみ書き込みます
file:<path>出力を <path> にアトミックに書き込みます(一時ファイルを作成してから名前を変更)
webhook:<url>出力本文を URL に POST します(--compact の場合は application/json または application/x-ndjson)

未対応のスキームは、サポートされているスキームの一覧を示す構造化エラーとともに拒否されます。Webhook の失敗時はゼロ以外の終了コードが返され、URL と HTTP ステータスが標準エラーに記録されます。

名前付きプロファイル

プロファイルとは、保存したフラグ値のセットで、複数回の実行に再利用できます。スケジュールされたエージェントが、同じ設定で毎回同じコマンドを呼び出す場合に使用します。これは HeyGen の「Beacon」パターンです。

docker-hub-pp-cli profile save briefing --json
docker-hub-pp-cli --profile briefing docker-hub-search
docker-hub-pp-cli profile list --json
docker-hub-pp-cli profile show briefing
docker-hub-pp-cli profile delete briefing --yes

明示的に指定したフラグは常にプロファイル値より優先され、プロファイル値はデフォルト値より優先されます。agent-context は、実行時にエージェントがプロファイルを確認できるよう、利用可能なすべてのプロファイルを available_profiles の下に一覧表示します。

終了コード

コード意味
0成功
2使用エラー(引数が正しくありません)
3リソースが見つかりません
5API エラー(上流の問題)
7レート制限中(待機して再試行してください)
10設定エラー

引数の解析

$ARGUMENTS を解析します。

  1. 空、help、または --help → docker-hub-pp-cli --help の出力を表示します
  2. install で始まる → mcp で終わる場合は MCP のインストール、それ以外の場合は上記の前提条件を参照してください
  3. その他すべて → 直接使用(CLI コマンドとして --agent を付けて実行します)

MCP サーバーのインストール

  1. MCP サーバーをインストールします。
    go install github.com/mvanhorn/printing-press-library/library/other/docker-hub-pp-cli/cmd/docker-hub-pp-mcp@latest
    
  2. Claude Code に登録します。
    claude mcp add docker-hub-pp-mcp -- docker-hub-pp-mcp
    
  3. 確認します。claude mcp list

直接使用

  1. インストール済みか確認します。which docker-hub-pp-cli 見つからない場合は、インストールを提案してください(このスキルの冒頭にある前提条件を参照してください)。
  2. ユーザーのクエリに最適なコマンドを、上記の独自機能とコマンドリファレンスから選びます。
  3. --agent フラグを付けて実行します。
    docker-hub-pp-cli <command> [subcommand] [args] --agent
    
  4. 判断が難しい場合は、サブコマンドのヘルプを確認します。docker-hub-pp-cli <command> --help。

コメント