Web Shader Extractor

lixiaolin94/skills/web-shader-extractor

作者 lixiaolin94ee7e9c50049bf9278b7810c3cd00802cfa401138无许可证收录于 2026年10月9日更新于 2026年10月9日

Use when a user gives or references a webpage URL and wants to extract, reproduce, port, or locally replay a WebGL, WebGPU, Canvas, shader-like, animated background, interactive 3D, or web visual effect. Locks the target rendering surface group, records shader/resource/render graph/timing/input evidence, builds an evidence-matched local baseline, then projectizes it. Do not use for ordinary DOM/CSS page cloning.

AI 生成的概览

从给定网页 URL 提取 WebGL、WebGPU 或 Canvas 着色器效果并在本地复现。

功能
该技能调查目标网页的渲染表面,锁定表面组,并收集有关着色器、资源、渲染图、时序与输入的证据。它会先构建与证据匹配的本地基线,再将其项目化为可编辑工程,产出提取报告、复现清单、QA 报告和已知缺口文档。它附带用于抓取渲染后 DOM 和扫描打包片段的辅助脚本,以及状态与报告模板。
适用场景
当用户提供或引用某个网页 URL,并希望提取、复现、移植或在本地回放着色器类、WebGL、WebGPU、Canvas、动画背景或交互式 3D 效果时使用。它不适用于普通 DOM 或 CSS 页面克隆、静态截图、通用网站复制或产品界面重设计。
运行要求
需要具备浏览器能力的智能体,例如导航、运行时求值、预加载脚本、网络元数据与响应体访问、source map、画布截图、交互、WebGL/WebGPU 帧捕获、本地运行和多帧对比。可选的渲染后 DOM 抓取脚本需要 Playwright;打包扫描脚本在 shell 中运行。该技能附带可执行脚本及参考与模板文件,并需要一个输出目录来存放大型捕获和生成产物。

Web Shader Extractor

Index for WebGL / WebGPU / Canvas rendering investigation and local replay. Start from the target visual. Lock the surface group. Trace source or runtime facts. Build a runnable baseline. Then projectize.

Router Contract

This file is the index. Do not treat it as the full operating manual. Before task action, read:

  • references/operating-contract.md
  • references/recon-kernel.md

Then load only the focused references needed by the current state. Keep large evidence, captures, and generated outputs out of the conversation. Store them in the user's output directory.

Use This For

  • Extracting a webpage WebGL, WebGPU, Canvas2D, OffscreenCanvas, shader, or animated canvas effect.
  • Replaying an animated background, product shader, interactive WebGL scene, or Canvas visual locally.
  • Building an evidence-matched baseline first, then an editable project.
  • Investigating target-bound shader/render graph/timing/resource/input facts.

Do not use this for ordinary DOM/CSS cloning, static screenshots, generic website copying, unrelated JavaScript deobfuscation, or product UI redesign. Use it only when the task has a shader/canvas target.

Core Rules

  • Target-bound before framework-bound: a global Three.js, platform, or shader signature is only a hypothesis until tied to the target surface group.
  • Probes must discriminate: before running a probe, state which live hypotheses it separates and what each outcome eliminates. Evidence consistent with every candidate is weak; evidence only one candidate predicts is strong.
  • Evidence before implementation: source, runtime objects, frame captures, source maps, and public structured definitions outrank visual fitting.
  • No fabricated numbers: confidence is expressed with hypothesis status and SOURCE/PARTIAL/GUESS, never invented probabilities or scores.
  • Baseline before projectization: never overwrite a verified baseline for cleanup, simplification, or native conversion.
  • Honest labels: implementation-critical facts are SOURCE, PARTIAL, or GUESS; unlabeled values are treated as GUESS.
  • No compensation tuning: do not adjust brightness, time, color, offsets, or noise to mask missing pipeline evidence.
  • Gate artifacts are transition guards: if the required artifact is missing, incomplete, or has placeholders in gate-critical fields, the state has not advanced.
  • Ask only for product scope changes or external access/permission blockers.
  • Use plain records: state the fact, evidence path, current unknown, and next action. Avoid metaphor, broad claims, and unsupported conclusions.

State Router

The full state machine, branches, and gate semantics live in references/recon-kernel.md. The gate order is fixed:

TARGET_LOCKED must precede deep source/bundle work. Before lock, only narrow source probes tied to nextProbe are allowed. REPLAY_READY must precede implementation. BASELINE_VERIFIED must precede projectization.

Reference Router

Load only what the current state needs:

NeedRead
Global contract, fact labels, completion statesreferences/operating-contract.md
Kernel, initial protocol, state flow, autonomy, budgetsreferences/recon-kernel.md
Surface discovery and visual attributionreferences/surface-discovery.md
Lock criteria, target-bound evidence, scope, Three.js bindingreferences/target-lock.md
Evidence labels, ledgers, unknown classes, sensitive datareferences/evidence-policy.md
Tool capability selectionreferences/tool-capability-matrix.md
WebGL, WebGPU, and Canvas2D capture factsreferences/capture-backends.md
Source maps, bundle slices, config, encoded definitionsreferences/source-analysis.md
Replay readiness, routes, baseline, stack choice, projectizationreferences/replay-policy.md
QA, failure routing, severity, mismatch signaturesreferences/qa-failure-policy.md
Three.js shader injection or TSL reconstructionreferences/three-shader-reconstruction.md
Unicorn Studio targetreferences/unicorn-studio.md
shaders.com / TSL targetreferences/shaders-com.md

Tool And Artifact Policy

Tools are replaceable capabilities, not prerequisites. First record the available capability profile:

text
navigate, runtime-eval, preload-script, network-metadata, network-body,source-map, canvas-screenshot, interaction, frame-capture-webgl,frame-capture-webgpu, local-run, multi-frame-compare

Use scripts/fetch-rendered-dom.mjs only as an optional inventory helper when Playwright is already available. Use scripts/scan-bundle.sh only on target-bound bundle slices or a precise nextProbe. Script output is hypothesis evidence. It never satisfies Surface Attribution, Target Lock, Replay Ready, or QA gates by itself.

Use bundled templates as schemas, not free-form notes:

  • templates/scout-card.json
  • templates/replay-manifest.json
  • templates/run-state.json
  • templates/qa-report.md
  • templates/known-gaps.md
  • templates/extraction-report.md

Platform Adapters

Load platform references only after target-bound evidence points there:

  • Unicorn Studio: references/unicorn-studio.md
  • shaders.com / TSL: references/shaders-com.md
  • Three.js shader injection or TSL: references/three-shader-reconstruction.md

If no adapter fits, follow generic WebGL, WebGPU, or Canvas2D capture in references/capture-backends.md.

来源与署名

来源:lixiaolin94/skills位于web-shader-extractor提交ee7e9c5

许可证: 无许可证

内容归原作者所有。SourceWeft 从公开仓库中收录这些内容。

举报或申请下架