Communitygithub.com

cli-anything-renderdoc

RenderDoc GPUフレームキャプチャ(.rdcファイル)をコマンドラインから解析するためのCLIツール

cli-anything-renderdoc とは?

このスキルは、RenderDocのGPUフレームキャプチャ(.rdcファイル)をヘッドレスで解析するためのCLIツールです。RenderDocはグラフィックスデバッガであり、本スキルを使用することで、キャプチャのメタデータの表示、アクションツリーの検索・フィルタリング、テクスチャのエクスポート、パイプライン状態の比較、シェーダの抽出、GPUカウンタの取得など、多彩な操作を自動化できます。対応APIはD3D11、OpenGL/GLES、Vulkanで、シェーダはそれぞれHLSLソース、GLSLソース、GLSLソースまたはSPIR-V逆アセンブリとしてエクスポートされます。すべてのコマンドはJSONモードに対応しており、プログラムからの利用が容易です。また、`preview`機能により、キャプチャの真実に基づいた検査バンドル(サムネイル、出力画像、パイプライン状態、アクションサマリーなど)を生成でき、差分バンドルもサポートします。主な利用プラットフォームはLinux/macOS/Windowsのコマンドライン環境です。

対応~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/HKUDS/CLI-Anything/tree/main/skills/cli-anything-renderdoc

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

RenderDoc CLI スキル

RenderDoc GPUフレームキャプチャ(.rdcファイル)のヘッドレスコマンドライン解析。

機能

  • キャプチャ検査: メタデータ、セクション、サムネイル、フォーマット変換
  • アクションツリー: ドローコール、クリア、ディスパッチ、マーカーの一覧表示/検索/フィルタリング
  • テクスチャ操作: 一覧表示、検査、エクスポート(PNG/JPG/DDS/HDR/EXR)、ピクセルピッキング
  • パイプライン状態: 任意のイベントにおけるシェーダ/レンダリングターゲット/ビューポートの完全な状態
  • シェーダ解析: 人間可読な形式(HLSL/GLSL/逆アセンブリ)でのシェーダエクスポート、定数バッファの読み戻し
  • リソース検査: バッファ/テクスチャの列挙、生データ読み出し
  • メッシュデータ: 頂点シェーダの入力/出力デコード
  • GPUカウンタ: ハードウェアパフォーマンスカウンタの列挙と取得

コマンドグループ

キャプチャ

cli-anything-renderdoc -c frame.rdc capture info          # メタデータ+セクション
cli-anything-renderdoc -c frame.rdc capture thumb -o t.png # サムネイル抽出
cli-anything-renderdoc -c frame.rdc capture convert -o out.rdc --format rdc

アクション

cli-anything-renderdoc -c frame.rdc actions list           # 全アクション
cli-anything-renderdoc -c frame.rdc actions list --draws-only  # ドローコールのみ
cli-anything-renderdoc -c frame.rdc actions summary        # タイプ別カウント
cli-anything-renderdoc -c frame.rdc actions find "Shadow"  # 名前で検索
cli-anything-renderdoc -c frame.rdc actions get 42         # 単一アクション

テクスチャ

cli-anything-renderdoc -c frame.rdc textures list
cli-anything-renderdoc -c frame.rdc textures get <id>
cli-anything-renderdoc -c frame.rdc textures save <id> -o out.png --format png
cli-anything-renderdoc -c frame.rdc textures save-outputs 42 -o ./renders/
cli-anything-renderdoc -c frame.rdc textures pick <id> 100 200

パイプライン

cli-anything-renderdoc -c frame.rdc pipeline state 42

# シェーダを人間可読な形式でエクスポート
# テキストシェーダ(GLSL/HLSL)→ そのまま保存
# バイナリシェーダ(DXBC/SPIR-V)→ 埋め込みソース(HLSL/GLSL)または逆アセンブリ
cli-anything-renderdoc -c frame.rdc pipeline shader-export 42 --stage Fragment
cli-anything-renderdoc -c frame.rdc pipeline shader-export 42 --stage Vertex -o ./shaders/

cli-anything-renderdoc -c frame.rdc pipeline cbuffer 42 --stage Vertex --index 0

# 2つのイベント間のパイプライン状態を比較
# デフォルト出力: キャプチャファイルと同じディレクトリ; -o で上書き可能
cli-anything-renderdoc -c a.rdc pipeline diff 100 200 -b b.rdc
cli-anything-renderdoc -c frame.rdc pipeline diff 100 200              # 同じキャプチャ内
cli-anything-renderdoc -c a.rdc pipeline diff 100 200 -b b.rdc -o result.json
cli-anything-renderdoc -c a.rdc pipeline diff 100 200 -b b.rdc --no-compact

リソース

cli-anything-renderdoc -c frame.rdc resources list
cli-anything-renderdoc -c frame.rdc resources buffers
cli-anything-renderdoc -c frame.rdc resources read-buffer <id> --format float32

メッシュ

cli-anything-renderdoc -c frame.rdc mesh inputs 42 --max-vertices 10
cli-anything-renderdoc -c frame.rdc mesh outputs 42

カウンタ

cli-anything-renderdoc -c frame.rdc counters list
cli-anything-renderdoc -c frame.rdc counters fetch --ids 1,2,3

プレビューバンドル

RenderDocのプレビュー機能は、ライブのクリエイティブプレビューではなく、真実に基づいたキャプチャ検査を目的としています。

# プレビューレシピの一覧
cli-anything-renderdoc -c frame.rdc --json preview recipes

# アクティブキャプチャまたは特定イベントのプレビューバンドルを取得
cli-anything-renderdoc -c frame.rdc --json preview capture --recipe quick --event-id 42

# 2つのイベントまたはキャプチャ間の差分プレビューバンドルを取得
cli-anything-renderdoc -c frame.rdc --json preview diff 100 200
cli-anything-renderdoc -c a.rdc --json preview diff 100 200 --capture-b b.rdc

# キャプチャに対する最新の既存バンドルを返す
cli-anything-renderdoc -c frame.rdc --json preview latest --recipe quick

典型的なプレビューバンドルの内容:

  • キャプチャサムネイル
  • 出力ターゲット画像
  • pipeline_state.json
  • action_summary.json

差分バンドルには以下が追加されます:

  • A/Bサムネイル
  • A/B出力ターゲット画像
  • pipeline_diff.json

RenderDocは現在ライブプレビューセッションを公開していません。代わりに、各キャプチャ/差分バンドルは安定したレシピレベルの trajectory.json に追加されます。

ビューアコマンド:

cli-hub previews inspect /path/to/bundle
cli-hub previews html /path/to/bundle -o page.html
cli-hub previews open /path/to/bundle

JSONモード

すべてのコマンドは機械可読な出力のため --json をサポートします:

cli-anything-renderdoc -c frame.rdc --json actions summary

環境変数

変数説明
RENDERDOC_CAPTUREデフォルトのキャプチャファイルパス
PYTHONPATHRenderDocのパスを含める必要あり

エージェント利用時の注意点

  • pipeline shader-export を使用してシェーダを抽出する — バイナリシェーダ(DXBC/SPIR-V)の場合は自動的に埋め込みHLSL/GLSLソースをエクスポートするか、逆アセンブリにフォールバックします。テキストシェーダ(GLSL/HLSL)の場合は生のソースをそのまま保存します。
  • キャプチャAPIによるシェーダ形式:
    • D3D11 → DXBCバイナリ、埋め込みHLSLソース(.hlsl)またはバイトコードアセンブリ(.dxbc.asm)としてエクスポート
    • OpenGL/GLES → GLSLソーステキスト(.glsl)、既に人間可読
    • Vulkan → SPIR-Vバイナリ、埋め込みGLSLソース(.glsl)またはSPIR-Vアセンブリ(.spv.asm)としてエクスポート
  • pipeline diff を使用して2つのイベントを比較する — JSONファイルを書き込み、パスのみを出力します。2番目のキャプチャには -b を使用します。
  • プログラムで利用する場合は常に --json を指定してください。
  • 最初に actions summary を使用してキャプチャの複雑さを把握してください。
  • actions list --draws-only を使用して実際のレンダリングに集中してください。
  • エージェントが生のリプレイ呼び出しだけではなく、ポータブルで誠実な検査バンドルを必要とする場合は、preview capture または preview diff を使用してください。
  • 永続的なキャプチャ/差分履歴が必要な場合は、プレビューJSONから _trajectory_path を読み取ってください。
  • cli-hub previews ... は既に生成されたバンドルの検査/オープンにのみ使用してください。
  • パイプライン状態にはアクションリストからのイベントIDが必要です。
  • テクスチャ保存対応形式: png, jpg, bmp, tga, hdr, exr, dds
  • バッファデータはhex、float32、uint32、生バイトとしてデコード可能です。

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

cli-anything-adguardhome

>-

cli-anything-anygen

>-

cli-anything-audacity

>-

cli-anything-blender

>-

cli-anything-browser

Browser automation CLI using DOMShell MCP server. Maps Chrome

cli-anything-calibre

>-

cli-anything-ccswitch

CLI interface for CC Switch — manage AI coding tool configurations from the terminal

cli-anything-chromadb

>-

cli-anything-cloudanalyzer

Command-line interface for CloudAnalyzer — Agent-friendly harness for CloudAnalyzer, a QA platform for mapping, localization, and perception outputs. Supports 27 commands across 8 groups: point cloud evaluation, trajectory evaluation, ground segmentation QA, config-driven quality gates, baseline evolution, processing, visualization, and interactive REPL.

cli-anything-cloudcompare

Command-line interface for CloudCompare — Agent-friendly harness for CloudCompare, the open-source 3D point cloud and mesh processing software. Supports 41 commands across 9 groups: project management, session control, point cloud operations (subsample, filter, segment, analyze), mesh operations, distance computation (C2C, C2M), transformations (ICP, matrix), export (LAS/LAZ/PLY/PCD/OBJ/STL/E57), and interactive REPL.

cli-anything-comfyui

>-

cli-anything-dify-workflow

Wrapper for the Dify workflow DSL CLI. Create, inspect, validate, edit, and export Dify workflow files through a CLI-Anything harness.

cli-anything-drawio

>-

cli-anything-eez-studio

Use EEZ Studio from the command line: inspect and modify native .eez-project files, edit LVGL screens/widgets, manage SCPI commands, and invoke the real EEZ Studio backend for LVGL builds.

cli-anything-eth2-quickstart

>-

cli-anything-exa

>-

cli-anything-firefly-iii

Firefly III CLI - Personal finance management via CLI-Anything

cli-anything-freecad

Complete CLI harness for FreeCAD parametric 3D CAD modeler (258 commands). Covers ALL workbenches: Part (29 primitives + boolean + mirror + loft + sweep), Sketcher (26 cmds: geometry + constraints + editing), PartDesign (38 cmds: pad/pocket/groove/fillet/chamfer/patterns/hole/datum), Assembly (11 cmds), Mesh (16 cmds), TechDraw (15 cmds: views + dimensions + PDF/SVG), Draft (33 cmds: 2D shapes + arrays + transforms), FEM (12 cmds), CAM/CNC (10 cmds), Surface (6 cmds), Spreadsheet (7 cmds), Import (13 formats), Export (17 formats), Measure (12 cmds), Materials (21 presets). Headless FreeCAD export to STEP/IGES/STL/OBJ/DXF/PDF/glTF/3MF.

cli-anything-gimp

>-

cli-anything-godot

>-

関連スキル