コンテンツにスキップ

CLI リファレンス

miseru は npm で配布される依存ゼロの CLI です(Node.js 20 以上)。インストール不要で npx miseru から使えます。

Terminal window
miseru push <file> --name <name> --pr <n> [--sha <sha>] [--viewport WxH]
miseru expire <image_id>
miseru mcp # MCP サーバー(stdio)として起動

引数なし・--help-hhelp でヘルプを表示します。

変数必須デフォルト説明
MISERU_TOKENUpload Token(ダッシュボードの「トークン」から発行)
MISERU_APIhttps://api.miseru.devAPI のベース URL(セルフテスト・開発用)

MISERU_TOKEN 未設定の場合は MISERU_TOKEN が未設定です(ダッシュボードの「トークン」から発行できます) エラーで終了します。

画像をアップロードし、PR に貼れる markdown を標準出力に返します。

Terminal window
npx miseru push ./shot.png --name home --pr 482 --viewport 1280x800
フラグ必須説明
<file>(位置引数)画像パス。1ファイルのみ。拡張子は .png / .jpg / .jpeg / .webp
--name <name>スクリーンショットの論理名(例: home, login, checkout@mobile)
--pr <n>対象 PR 番号(正の整数)
--sha <sha>コミット SHA。省略時はカレントリポジトリの git rev-parse HEAD を自動検出
--viewport <WxH>ビューポート(例: 1280x800)

出力は stdout = データ / stderr = 進捗 に分離されています。パイプで markdown だけを取り出せます。

  • 標準出力(stdout): PR に貼る markdown(![<name>](<配信URL>))
  • 標準エラー(stderr): ✓ アップロード完了 (id: <id>)
Terminal window
# markdown だけをファイルに書き出す
npx miseru push ./shot.png --name home --pr 482 > comment.md

クライアント側バリデーション

Section titled “クライアント側バリデーション”

アップロード前に CLI 側で次を検査します(サーバー側の検証は HTTP API リファレンスを参照)。

条件エラーメッセージ
対応外の拡張子対応していない拡張子です(png/jpg/webp): <file>
5MB 以上画像が 5MB を超えています(GitHub Camo の制限)
git 外で --sha 省略--sha を指定してください(git リポジトリ外のため自動検出不可)
API エラーアップロード失敗 (<status>): <エラー内容>

画像を1件、即座に失効させます(オリジンから削除され、配信 URL は 404 になります)。

Terminal window
npx miseru expire <image_id>
  • <image_id>miseru push が返した画像 ID です
  • 成功時は stderr に ✓ 失効しました: <image_id> を出力します
  • 失敗時は 失効失敗 (<status>): <エラー内容> で終了します

MCP サーバーとして stdio で起動します。ツールの仕様は MCP サーバーリファレンスを参照してください。

コード意味
0成功
1エラー(バリデーション失敗・API エラー・不明なコマンド/オプション)

未知のコマンドは error: 不明なコマンド: <cmd>、未知の -- オプションは 不明なオプション: --xxx として終了コード 1 で失敗します。

miseru pushmarkdown を返すだけで、PR へのコメント投稿は行いません。PR コメントの自動投稿・更新は GitHub Action が担当します。手動運用の場合は、標準出力の markdown を PR コメントに貼ってください。