원클릭으로
browser-render-visualization
当需要用 Playwright 渲染网页前端、GitHub Pages、本地静态页面、Canvas 或 Three.js 页面并保存桌面/移动端截图、检查空白渲染、布局溢出和浏览器报错时使用。
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
当需要用 Playwright 渲染网页前端、GitHub Pages、本地静态页面、Canvas 或 Three.js 页面并保存桌面/移动端截图、检查空白渲染、布局溢出和浏览器报错时使用。
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
将 arXiv、旧会议、旧期刊或自定义 LaTeX 论文工程迁移到目标会议/期刊投稿模板;用于模板 A 到模板 B 的 LaTeX class/style/bibliography/单双栏转换、全匿名投稿检查、页数约束、图表公式排版、PDF 可视化检查、文本/图片/表格/公式守恒、模板标准文件守恒和最终压页。
当需要部署或训练 LLM/VLM 时使用;覆盖 vLLM OpenAI-compatible 服务、多模态输入限制、Qwen3.5 工具调用、thinking/reasoning 控制、CUDA Graph 策略,以及 ms-swift SFT/DPO/GRPO full training、Megatron 长序列训练、messages loss/loss_scale、数据校验、显存排错和训练检查。
当需要在 lab cluster 1 / PJLAB 上使用开发机、rlaunch worker 或 rjob 任务时使用;覆盖交互 SSH、安全边界、路径规范、代理、CPU/GPU 分区、训练/部署、服务访问和排错,并要求使用原始 rlaunch/rjob 命令。
Use when installing, configuring, running, embedding, deploying, or debugging InternScience ResearchHarness as a lightweight tool-using LLM agent runtime, including CLI runs, local frontend UI, OpenAI-compatible API server, Python API, tool selection, workspaces, traces, compaction, tests, and read-only source inspection.
Use when configuring or debugging the context-overlay OpenAI-compatible proxy for deterministic prompt/context injection, prompt patching, rule matching, request routing, rejection rules, skill_dir retrieval, streaming forwarding, and local or tunneled proxy validation.
当需要用 structai.read_pdf 将 PDF 文档解析成本地 Markdown、抽取图片资源,并处理 MinerU 解析缓存或代理重试问题时使用。
SOC 직업 분류 기준
| name | browser-render-visualization |
| description | 当需要用 Playwright 渲染网页前端、GitHub Pages、本地静态页面、Canvas 或 Three.js 页面并保存桌面/移动端截图、检查空白渲染、布局溢出和浏览器报错时使用。 |
file://。/tmp,用后清理。检查 Node.js:
node -v
npm -v
安装 Playwright:
npm install -D playwright
npx playwright install chromium
Linux 如果缺浏览器系统依赖:
npx playwright install-deps chromium
如果 npm 或 Playwright 缓存权限有问题,可以指定临时缓存;任务结束后清理:
env npm_config_cache=/tmp/.npm \
PLAYWRIGHT_BROWSERS_PATH=/tmp/pw-browsers \
npx playwright install chromium
require.resolve('playwright') 可定位 Node 包入口。npm view playwright version 可查看 registry 最新版本;不要因此自动升级,升级前先确认。node_modules;需要改测试脚本时改项目脚本,需要改依赖时先征得用户同意。node - <<'JS'
const pw = require('playwright');
console.log('playwright package:', require.resolve('playwright'));
console.log('chromium executable:', pw.chromium.executablePath());
JS
npx playwright --version
npm ls playwright
常见 Linux 依赖包括:
sudo apt install -y \
libnspr4 \
libnss3 \
libasound2t64 \
libatk-bridge2.0-0 \
libgtk-3-0 \
libgbm1 \
libxkbcommon0 \
libxcomposite1 \
libxdamage1 \
libxfixes3 \
libxrandr2 \
libcups2 \
libdrm2 \
libpango-1.0-0 \
libcairo2
普通静态页面:
cd /path/to/project/docs
python3 -m http.server 8000
访问:
http://127.0.0.1:8000/
不要直接打开 file://.../index.html,因为:
桌面端截图:
npx playwright screenshot \
--browser=chromium \
--viewport-size=1440,1000 \
http://127.0.0.1:8000/ \
preview_desktop.png
整页截图:
npx playwright screenshot \
--browser=chromium \
--viewport-size=1440,1000 \
--full-page \
http://127.0.0.1:8000/ \
preview_fullpage.png
移动端截图:
npx playwright screenshot \
--browser=chromium \
--viewport-size=390,844 \
--full-page \
http://127.0.0.1:8000/ \
preview_mobile.png
CLI 适合快速截图;如果页面加载慢、有动画、需要捕获 console,使用脚本。
可以新建 scripts/screenshot.js:
const { chromium } = require('playwright');
async function main() {
const url = process.argv[2] || 'http://127.0.0.1:8000/';
const out = process.argv[3] || 'screenshot.png';
const browser = await chromium.launch({ headless: true });
const page = await browser.newPage({
viewport: { width: 1440, height: 1000 },
deviceScaleFactor: 1,
});
page.on('console', msg => {
console.log('[browser]', msg.type(), msg.text());
});
page.on('pageerror', err => {
console.error('[pageerror]', err);
});
await page.goto(url, {
waitUntil: 'networkidle',
timeout: 60000,
});
await page.waitForTimeout(2000);
await page.screenshot({
path: out,
fullPage: true,
});
await browser.close();
}
main().catch((err) => {
console.error(err);
process.exit(1);
});
运行:
node scripts/screenshot.js http://127.0.0.1:8000/ preview_desktop.png
移动端把 viewport 改成:
viewport: { width: 390, height: 844 }
先截图:
node scripts/screenshot.js http://127.0.0.1:8000/ page.png
再检查截图是否几乎纯色:
from PIL import Image, ImageStat
img = Image.open("page.png").convert("RGB")
stat = ImageStat.Stat(img)
print("mean:", stat.mean)
print("stddev:", stat.stddev)
if max(stat.stddev) < 2:
print("image may be nearly blank")
只截第一个 canvas:
const canvas = page.locator('canvas').first();
await canvas.screenshot({ path: 'canvas.png' });
检查重点:
页面空白时优先检查:
file://。Playwright 找不到 Chromium:
npx playwright install chromium
Linux 缺系统库:
npx playwright install-deps chromium
定位缺失库:
ldd /path/to/chrome-headless-shell | grep "not found"
截图太糊:
const page = await browser.newPage({
viewport: { width: 1600, height: 1100 },
deviceScaleFactor: 2,
});
动画或 3D 模型还没加载完:
await page.waitForLoadState('networkidle');
await page.waitForTimeout(3000);
更稳的方式是等待页面自己的 ready 元素:
await page.locator('.loaded').waitFor({ timeout: 30000 });
一个终端启动页面:
cd /path/to/project/docs
python3 -m http.server 8000
另一个终端截图:
npx playwright screenshot \
--browser=chromium \
--viewport-size=1440,1000 \
--full-page \
http://127.0.0.1:8000/ \
preview_desktop.png
npx playwright screenshot \
--browser=chromium \
--viewport-size=390,844 \
--full-page \
http://127.0.0.1:8000/ \
preview_mobile.png
最终确认: