meticulous-test について
Meticulousでフロントエンドのビジュアルテストを行うためのスキルです。開発者向けに、ビルドのアップロード、テスト実行、結果確認をCLIまたはMCPで進める手順を示し、未コミット変更の扱いも説明します。
主な機能
- 01フロントエンド成果物のビルドとアップロード
- 02指定した基準コミットに対するテスト実行
- 03複数の基準でデプロイを再利用
- 04スクリーンショット、DOM差分、タイムラインの確認
活用シーン
- 01フロントエンド更新の視覚的な変更確認
- 02一つのビルドを複数の基準コミットと比較
MCP 対応
MCP経由でビルドのアップロードURLを取得して登録し、テストを実行する手順を示します。MCPでの実行には基準情報の明示が必要で、完了を待たずに返ります。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ alwaysmeticulous/ skills --skill meticulous-testインストール後、Claude Code で/meticulous-testを入力して読み込まれたか確認します。
詳細
Meticulous を使用してフロントエンドの変更をテストするには、以下のワークフローに沿って、CLI または MCP コマンドを使いながら手順を進めてください。
開始する前に、
meticulous-cli-updateスキルを実行して、Meticulous CLI とスキルが最新であることを確認してください。ただし、この会話の前のほうですでに実行している場合は、スキップしてください。
テスト実行 ID がすでに指定されている場合は、ステップ 4 に進んでください。
ステップ 1 -- フロントエンドをビルドする
- CI 設定で該当するステップを確認し、Meticulous が必要とするビルド成果物を調べます。
- GitHub:
.github/workflows/*.ymlでuses: alwaysmeticulous/report-diffs-action/upload-assets@v1(ビルドアセット)またはupload-container@v1(Docker イメージ)を確認します。 - GitLab:
.gitlab-ci.yml(またはインクルードされている.gitlab/ci/*.yml)でnpx @alwaysmeticulous/cli ci upload-assets(ビルドアセット)またはci upload-container(Docker イメージ)を確認します。 - Bitbucket:
bitbucket-pipelines.ymlで同じnpx @alwaysmeticulous/cli ci upload-assets/ci upload-containerステップを確認します。
- GitHub:
- CI 設定で使用されている手順に従って、フロントエンドをビルドします。
ステップ 2 -- ビルドをアップロードする
agent upload-build を使って、ビルドを再利用可能なデプロイとして登録します。このコマンドは成果物をアップロードし、deploymentId を標準出力に表示します。まだテスト実行は開始しません。
# CLI
meticulous agent upload-build --appDirectory <path-to-build> # assets
meticulous agent upload-build --localImageTag <image-tag> # container
# MCP (not 1:1 — request an upload URL, upload the artifact yourself, then register it)
request_asset_upload(size=<zipByteSize>) # or request_container_upload() — no required args
# ... upload the zip/image to the returned URL/registry yourself ...
register_asset_build(uploadId="<id>", commitSha="<sha>") # or register_container_build(uploadId="<id>", commitSha="<sha>")
--appDirectoryにはビルド出力ディレクトリ(例:dist/サブフォルダー)を指定します。--localImageTagにはローカルの Docker イメージタグを指定します。ビルドモードは自動検出されます。- ビルドのコミットはデフォルトでローカルの git HEAD になります。作業ツリーに変更がある場合、その内容は一時コミットとして記録されます(
commitSha (local, ephemeral due to dirty working tree): …と表示されます)。下記の未コミット変更に関する注意を参照してください。 - 追跡されていないファイルは記録できないため、受け付けられません。先に
git addしてください。 - 標準出力から
deploymentIdを取得してください(--verboseを指定すると、標準エラー出力にも進行状況が表示されます)。
ステップ 3 -- テスト実行を開始する
デプロイに対するテスト実行を、ベースと比較して開始します。リポジトリのディレクトリから実行すると、ベース(origin のデフォルトブランチとのマージベース)と git diff が自動的に推定されます。
# CLI
meticulous agent trigger-test-run --deploymentId <deploymentId>
# MCP (never infers `baseSha`/`gitDiffOutput` — pass them explicitly — and always returns immediately without waiting for the run to finish)
trigger_test_run(deploymentId="<deploymentId>", baseSha="<sha>")
- ベースの指定は必須です。現在のディレクトリから自動的に推定されます。または
--baseSha <sha>(および必要に応じて--gitDiffOutput)を指定して明示できます。 --deploymentIdを省略すると、代わりにローカルの HEAD コミット用にすでにアップロードされた最新のデプロイが使われます。この場合、作業ツリーがクリーンである必要があります(未コミットの変更がないこと)。- デフォルトでは、実行が完了するまでコマンドはブロックされ、
testRunIdを標準出力に表示します。視覚的な差分が検出されると、最終ステータスはFailureになります(これは通常の完了判定であり、エラーではありません)。実行の開始後すぐに戻るには、--dontWaitForTestRunToCompleteを指定してください。 - 1 つのビルドを複数のベースに使用: 同じ
deploymentIdを異なるベースに対して再実行できます。異なる--baseShaを指定してagent trigger-test-runを再実行してください。再ビルドや再アップロードは不要です。
出力から testRunId を控えてください。
ステップ 4 -- 視覚的な変更を確認する
meticulous-review スキルに、ステップ 3 の testRunId を渡して実行してください。このスキルは差分の概要を取得し、代表的なスクリーンショット/DOM 差分/タイムラインを調査して、各視覚的変更を意図したものか意図しないものか分類した最終レポートを作成します。
未コミットの変更: 作業ツリーに変更がある状態でビルド/テストした場合、実行は HEAD ではない(プッシュもされていない)一時コミットに対して記録されます。ローカルのチェックアウトから実行を特定するコマンド(
--testRunIdを指定せずに実行するmeticulous-review/agent test-run-diffs)ではコミットから実行を見つけられないため、その場合はレビューの手順で必ず明示的に--testRunIdを指定してください。