ワンクリックで
visualize-screenshot-checker
maou visualize の可視化機能をスクリーンショットで網羅的にチェックする.Gradio サーバーを起動し,各画面状態のスクリーンショットを撮影・目視確認する.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
maou visualize の可視化機能をスクリーンショットで網羅的にチェックする.Gradio サーバーを起動し,各画面状態のスクリーンショットを撮影・目視確認する.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Validate Clean Architecture compliance including dependency flow verification (infra → interface → app → domain), module organization analysis, layer separation checks, and circular dependency detection. Use when reviewing code structure, analyzing imports, ensuring architectural principles, or validating refactoring changes.
Execute performance benchmarks for DataLoader configurations, training performance analysis, GPU utilization monitoring, and optimization validation. Use when analyzing performance bottlenecks, finding optimal training settings, validating speed improvements, or testing array bundling efficiency.
Validate that benchmark-training command stays in sync with learn-model command. Checks for missing CLI options, verifies test exclusion list accuracy, and identifies options that need to be added to benchmark-training when learn-model features are added. Use after adding new options to learn-model, before creating PRs that modify CLI commands, or when reviewing benchmark-training compatibility.
Execute cloud provider integration tests for Google Cloud Platform (GCP) and Amazon Web Services (AWS), validate S3 and GCS operations, test cloud storage authentication, verify bucket access, and debug cloud integration issues. Use when testing cloud storage features, validating parallel upload/download operations, or troubleshooting cloud connectivity.
Validate data pipeline configuration including array_type parameter verification, HCPE and preprocessing data format validation, storage configuration checks, and schema compliance verification. Use when configuring data sources, validating pipeline setup, debugging data loading issues, or ensuring data type consistency.
Manage Python dependencies using uv exclusively, add new packages, update existing dependencies, remove unused packages, and validate dependency compatibility. Use when adding packages, updating dependencies, resolving conflicts, or managing development dependencies. NEVER use pip directly.
| name | visualize-screenshot-checker |
| description | maou visualize の可視化機能をスクリーンショットで網羅的にチェックする.Gradio サーバーを起動し,各画面状態のスクリーンショットを撮影・目視確認する. |
| user-invocable | true |
| disable-model-invocation | true |
| argument-hint | ["--array-type <hcpe|stage1|stage2|preprocessing>"] |
maou visualize の可視化機能をスクリーンショットベースで網羅的にチェックするスキル.
Playwright で各画面状態を撮影し,Claude の画像認識でビジュアル検証を行う.
uv sync --extra cpu --extra visualize
uv run playwright install --with-deps chromium
uv run maturin develop
以下のフェーズを順番に実行する.各フェーズでサーバー起動→撮影→停止のサイクルを繰り返す.
$ARGUMENTS に --array-type の指定がある場合,該当する array-type のみチェックする.
指定がなければ全 array-type をチェックする.
各フェーズで以下のパターンを繰り返す:
# 起動(array-type は各フェーズで指定)
uv run maou visualize --use-mock-data --array-type $ARRAY_TYPE --port 7860 &
SERVER_PID=$!
sleep 8
# 撮影(各チェック項目ごとにオプションを変える)
uv run maou utility screenshot \
--url http://localhost:7860 \
--output /tmp/check-XXXX.png \
--settle-time 3000
# 停止
kill $SERVER_PID 2>/dev/null; wait $SERVER_PID 2>/dev/null
lsof -ti :7860 | xargs kill -9 2>/dev/null || true
sleep 2
重要: 実行フローと報告の原則
Read ツールで各画像をまとめて読み取り,チェック項目に沿って確認する途中経過の報告は行わない.ユーザーへの報告は最終レポート1回のみとする.
対象: --array-type hcpe(代表として)
サーバー起動後,操作なしの初期画面を撮影する.
uv run maou utility screenshot \
--url http://localhost:7860 \
--output /tmp/check-0101-initial-full.png \
--settle-time 5000
確認項目:
uv run maou utility screenshot \
--url http://localhost:7860 \
--selector "#mode-badge" \
--output /tmp/check-0102-mode-badge.png
確認項目:
各 array-type でサーバーを起動し,盤面の描画を確認する.
--array-type hcpe で起動.ID 検索で任意のレコードを表示する.
# ID 検索でレコードを表示してから盤面を撮影
uv run maou utility screenshot \
--url http://localhost:7860 \
--action "fill:#id-search-input input:mock_id_0" \
--action "click:#id-search-btn" \
--action "wait:#board-display svg" \
--selector "#board-display" \
--output /tmp/check-0201-hcpe-board.png
確認項目:
#f9f6f0 付近)--array-type stage1 で起動.
uv run maou utility screenshot \
--url http://localhost:7860 \
--action "wait:#board-display svg" \
--selector "#board-display" \
--output /tmp/check-0202-stage1-board.png
確認項目:
--array-type stage2 で起動.
uv run maou utility screenshot \
--url http://localhost:7860 \
--action "wait:#board-display svg" \
--selector "#board-display" \
--output /tmp/check-0203-stage2-board.png
確認項目:
--array-type preprocessing で起動.
uv run maou utility screenshot \
--url http://localhost:7860 \
--action "wait:#board-display svg" \
--selector "#board-display" \
--output /tmp/check-0204-preprocessing-board.png
確認項目:
HCPE の盤面で将棋のルール・表示規則を重点的に確認する.
--array-type hcpe で起動.
フルページスクリーンショットで座標を確認.
uv run maou utility screenshot \
--url http://localhost:7860 \
--action "wait:#board-display svg" \
--selector "#board-display" \
--output /tmp/check-0301-coordinates.png \
--width 1920 --height 1080
確認項目:
uv run maou utility screenshot \
--url http://localhost:7860 \
--output /tmp/check-0302-pieces.png
確認項目:
#2c2c2c)が正立で表示されている#c41e3a)が倒立(180度回転)で表示されているuv run maou utility screenshot \
--url http://localhost:7860 \
--output /tmp/check-0303-pieces-in-hand.png
確認項目:
--array-type hcpe で起動.レコード表示時の概要タブ内容を確認する.
uv run maou utility screenshot \
--url http://localhost:7860 \
--output /tmp/check-0401-overview-tab.png
確認項目:
--array-type hcpe で起動.
検索結果タブをクリックしてテーブルを表示し,撮影する.
uv run maou utility screenshot \
--url http://localhost:7860 \
--action "click:button[role='tab']:nth-of-type(2)" \
--output /tmp/check-0501-search-results.png
確認項目:
uv run maou utility screenshot \
--url http://localhost:7860 \
--selector "#page-info" \
--output /tmp/check-0502-page-info.png
確認項目:
各 array-type で分析チャートを確認する.
--array-type hcpe で起動.データ分析タブに切り替えて確認.
uv run maou utility screenshot \
--url http://localhost:7860 \
--action "click:button[role='tab']:nth-of-type(3)" \
--output /tmp/check-0601-analytics-hcpe.png
確認項目:
--array-type stage1 で起動.データ分析タブに切り替えて確認.
uv run maou utility screenshot \
--url http://localhost:7860 \
--action "click:button[role='tab']:nth-of-type(3)" \
--output /tmp/check-0602-analytics-stage1.png
確認項目:
--array-type stage2 で起動.データ分析タブに切り替えて確認.
uv run maou utility screenshot \
--url http://localhost:7860 \
--action "click:button[role='tab']:nth-of-type(3)" \
--output /tmp/check-0603-analytics-stage2.png
確認項目:
--array-type hcpe で起動.レコード間の移動を確認する.
uv run maou utility screenshot \
--url http://localhost:7860 \
--selector "#record-indicator" \
--output /tmp/check-0701-record-indicator.png
確認項目:
サーバー起動直後,検索未実行の状態を確認.
uv run maou utility screenshot \
--url http://localhost:7860 \
--output /tmp/check-0801-no-search.png
確認項目:
uv run maou utility screenshot \
--url http://localhost:7860 \
--output /tmp/check-0901-wide.png \
--width 1920 --height 1080 \
--no-full-page
確認項目:
uv run maou utility screenshot \
--url http://localhost:7860 \
--output /tmp/check-0902-standard.png \
--width 1280 --height 720 \
--no-full-page
確認項目:
uv run maou utility screenshot \
--url http://localhost:7860 \
--output /tmp/check-0903-narrow.png \
--width 768 --height 1024 \
--no-full-page
確認項目:
--array-type hcpe で起動.検索結果テーブルの行をクリックして盤面が変わることを確認する.
# 検索結果タブに切り替えてテーブル行をクリック
uv run maou utility screenshot \
--url http://localhost:7860 \
--action "click:button[role='tab']:nth-of-type(2)" \
--action "click:#search-results-table [data-testid='cell-1-0']" \
--action "wait:#board-display svg" \
--output /tmp/check-1001-table-row-click.png
確認項目:
--array-type hcpe で起動.データソースを変更した際のインデクシング状態遷移を確認する.
# Array Type ドロップダウンをクリックしてデータソース変更UIを撮影
uv run maou utility screenshot \
--url http://localhost:7860 \
--action "click:#array-type-dropdown" \
--settle-time 1000 \
--output /tmp/check-1101-indexing-start.png
確認項目:
uv run maou utility screenshot \
--url http://localhost:7860 \
--action "click:#array-type-dropdown" \
--action "wait-hidden:.loading-spinner" \
--settle-time 5000 \
--output /tmp/check-1102-indexing-complete.png
確認項目:
全フェーズの撮影・確認を完了した後,以下の形式で 1回だけ ユーザーに報告する. 途中経過の報告は行わない.
## Visualize Screenshot Check Report
### 実行環境
- array-type: (チェックした array-type)
- date: (実行日)
### スクリーンショット一覧
撮影した全スクリーンショットのパスを以下に示す.
`Read` ツールで各ファイルを直接確認できる.
| Check | 内容 | ファイルパス | 撮影結果 |
|-------|------|------------|---------|
| 1.1 | フルページ初期状態 | `/tmp/check-0101-initial-full.png` | OK / ERROR |
| 1.2 | モードバッジ | `/tmp/check-0102-mode-badge.png` | OK / ERROR |
| 2.1 | HCPE 盤面 | `/tmp/check-0201-hcpe-board.png` | OK / ERROR / SKIP |
| 2.2 | Stage1 盤面 | `/tmp/check-0202-stage1-board.png` | OK / ERROR / SKIP |
| 2.3 | Stage2 盤面 | `/tmp/check-0203-stage2-board.png` | OK / ERROR / SKIP |
| 2.4 | Preprocessing 盤面 | `/tmp/check-0204-preprocessing-board.png` | OK / ERROR / SKIP |
| 3.1 | 座標系の正確性 | `/tmp/check-0301-coordinates.png` | OK / ERROR |
| 3.2 | 駒の表示 | `/tmp/check-0302-pieces.png` | OK / ERROR |
| 3.3 | 持ち駒の表示 | `/tmp/check-0303-pieces-in-hand.png` | OK / ERROR |
| 4.1 | 概要タブ | `/tmp/check-0401-overview-tab.png` | OK / ERROR |
| 5.1 | 検索結果テーブル | `/tmp/check-0501-search-results.png` | OK / ERROR |
| 5.2 | ページナビゲーション | `/tmp/check-0502-page-info.png` | OK / ERROR |
| 6.1 | HCPE データ分析 | `/tmp/check-0601-analytics-hcpe.png` | OK / ERROR / SKIP |
| 6.2 | Stage1 データ分析 | `/tmp/check-0602-analytics-stage1.png` | OK / ERROR / SKIP |
| 6.3 | Stage2 データ分析 | `/tmp/check-0603-analytics-stage2.png` | OK / ERROR / SKIP |
| 7.1 | レコードインジケータ | `/tmp/check-0701-record-indicator.png` | OK / ERROR |
| 8.1 | ID 検索の空状態 | `/tmp/check-0801-no-search.png` | OK / ERROR |
| 9.1 | ワイド画面 | `/tmp/check-0901-wide.png` | OK / ERROR |
| 9.2 | 標準画面 | `/tmp/check-0902-standard.png` | OK / ERROR |
| 9.3 | ナロー画面 | `/tmp/check-0903-narrow.png` | OK / ERROR |
| 10.1 | テーブル行クリック | `/tmp/check-1001-table-row-click.png` | OK / ERROR |
| 11.1 | インデクシング開始 | `/tmp/check-1101-indexing-start.png` | OK / ERROR |
| 11.2 | インデクシング完了 | `/tmp/check-1102-indexing-complete.png` | OK / ERROR |
- **OK**: スクリーンショット撮影成功
- **ERROR**: 撮影時にエラー発生(セレクタ未検出,タイムアウト等)
- **SKIP**: `--array-type` 指定により対象外
### 結果サマリー
| Phase | チェック項目数 | Pass | Fail | 備考 |
|-------|------------|------|------|------|
| 1. 初期状態 | X | X | X | |
| 2. 盤面レンダリング | X | X | X | |
| 3. 将棋規則 | X | X | X | |
| 4. 概要タブ | X | X | X | |
| 5. 検索結果タブ | X | X | X | |
| 6. データ分析タブ | X | X | X | |
| 7. ナビゲーション | X | X | X | |
| 8. エラー状態 | X | X | X | |
| 9. レスポンシブ | X | X | X | |
| 10. テーブル行クリック | X | X | X | |
| 11. データソース変更 | X | X | X | |
### Fail 項目の詳細
(Fail があった場合,スクリーンショットのパスと問題点を記述)
| Check | ファイルパス | 問題点 |
|-------|------------|--------|
| X.X | `/tmp/check-XXXX.png` | 問題の説明 |
sleep 8 を確保すること--settle-time 3000 以上を推奨--selector "#board-display" を使用する場合,必ず --action "wait:#board-display svg" を併用すること.盤面 SVG は非同期レンダリングされるため,wait なしではデータ読み込み前の空盤面がキャプチャされる--action オプションでUI操作(ID検索,タブ切り替え,行クリック等)を撮影前に実行可能TYPE:SELECTOR[:VALUE](click, fill, wait, wait-text, wait-hidden)--action を繰り返し指定し,指定順に実行されるuv を使用すること(poetry は使用しない)