full-page-screenshot
Acerca de
Esta habilidad captura capturas de pantalla de páginas web completas en formato PNG, manejando tanto pestañas de navegador abiertas como URLs específicas. Gestiona automáticamente contenedores de desplazamiento de SPA, imágenes de carga diferida y une páginas largas. La herramienta se conecta directamente al Protocolo de Herramientas de Desarrollo de Chrome sin dependencias externas.
Instalación rápida
Claude Code
Recomendadonpx skills add LewisLiu007/full-page-screenshot -a claude-code/plugin add https://github.com/LewisLiu007/full-page-screenshotgit clone https://github.com/LewisLiu007/full-page-screenshot.git ~/.claude/skills/full-page-screenshotCopia y pega este comando en Claude Code para instalar esta habilidad
Documentación
Full Page Screenshot
对浏览器中的网页生成一张完整的长截图 PNG,覆盖页面全部内容(包括需要滚动才能看到的部分)。直连 Chrome DevTools WebSocket,无需 CDP Proxy 或其他中间层。
前置条件
只需 Node.js 22+ 和 Chrome 开启远程调试:
node "${CLAUDE_SKILL_DIR}/scripts/full-page-screenshot.mjs" --check
如果 chrome 检查失败,引导用户:打开 chrome://inspect/#remote-debugging,勾选 "Allow remote debugging for this browser instance"。
工作流程
用户描述了已打开的 tab(推荐,尤其是需要登录的页面)
先列出所有 tab,匹配用户描述找到 targetId:
node "${CLAUDE_SKILL_DIR}/scripts/full-page-screenshot.mjs" --list
然后截图该 tab:
node "${CLAUDE_SKILL_DIR}/scripts/full-page-screenshot.mjs" <targetId> <output> [--width N] [--dpr N]
用户给了 URL
一条命令完成全部流程(建 tab → 等加载 → 截图 → 关 tab):
node "${CLAUDE_SKILL_DIR}/scripts/full-page-screenshot.mjs" --url "<URL>" <output> [--width N] [--dpr N] [--wait N]
注意:--url 模式创建后台 tab。对于需要登录的内部系统(如 SAP、企业 SSO),后台 tab 可能无法完成认证。此时应引导用户先在 Chrome 中打开页面,然后使用 targetId 模式截图。
参数说明
| 参数 | 说明 | 默认值 |
|---|---|---|
output | 输出文件路径 | /tmp/screenshot.png |
--width | 视口宽度(CSS 像素)。文章页 1200,宽表格/面板 1440-1920 | 1200 |
--dpr | 设备像素比。2 可获 Retina 清晰度,但体积翻 4 倍 | 1 |
--wait | 页面加载超时(毫秒),仅 --url 模式 | 15000 |
验证输出
sips -g pixelWidth -g pixelHeight <output>
裁剪局部验证(需要 Pillow):
from PIL import Image
img = Image.open("<output>")
w, h = img.size
img.crop((0, 0, w, 1500)).save("/tmp/check_top.png")
img.crop((0, h-1500, w, h)).save("/tmp/check_bottom.png")
核心能力
- SPA 内部滚动容器:自动检测
overflow-y: auto/scroll的容器,用!important覆盖 CSS 高度约束(含 Tailwindh-[calc(...)]等),展开全部内容后截图 - DOM 稳定等待:
readyState=complete后继续监测 DOM 元素数量变化,直到 SPA 数据渲染完成 - 懒加载处理:逐步滚动触发 IntersectionObserver,等待所有
img.complete - 超长页面分片:>16000px 的页面自动分片截取(每片 8000px),用 Python PIL 拼接
- Proxy 兼容:当 web-access CDP Proxy 运行时,自动检测并通过 proxy API 完成截图(滚动容器分片拼接)
注意事项
- 超长页面(> 20000px)在高 DPR 下可能导致 Chrome 内存问题。遇到此情况降低
--dpr到 1 或减小--width。 --url模式会自动创建后台 tab 并在截图后关闭,不影响用户已有 tab。- 截图期间会临时改变页面视口尺寸和滚动容器样式,完成后自动恢复。
- 脚本通过读取
DevToolsActivePort文件发现 Chrome 调试端口,直连 WebSocket,无需任何代理或中间服务。 - 分片拼接需要 Python 3 + Pillow(macOS 通常已安装)。无 Pillow 时会保留分片文件。
- 当 web-access 的 CDP Proxy 在运行时,脚本先尝试直连,超时后降级到 proxy API(通过 /eval 和 /screenshot 端点操作)。
Repositorio GitHub
Habilidades relacionadas
llamaguard
OtroLlamaGuard es el modelo de Meta de 7-8B parámetros para moderar las entradas y salidas de LLM en seis categorías de seguridad como violencia y discurso de odio. Ofrece una precisión del 94-95% y puede implementarse usando vLLM, Hugging Face o Amazon SageMaker. Utiliza esta skill para integrar fácilmente filtrado de contenido y barreras de seguridad en tus aplicaciones de IA.
cost-optimization
OtroEsta Skill de Claude ayuda a los desarrolladores a optimizar los costes en la nube mediante el ajuste de tamaño de recursos, estrategias de etiquetado y análisis de gastos. Proporciona un marco para reducir los gastos en la nube e implementar una gobernanza de costes en AWS, Azure y GCP. Úsala cuando necesites analizar los costes de infraestructura, ajustar el tamaño de los recursos o cumplir con restricciones presupuestarias.
quantizing-models-bitsandbytes
OtroEsta habilidad cuantiza LLMs a precisión de 8 o 4 bits utilizando bitsandbytes, logrando una reducción de memoria del 50-75% con pérdida mínima de precisión. Es ideal para ejecutar modelos más grandes en memoria GPU limitada o para acelerar la inferencia, admitiendo formatos como INT8, NF4 y FP4. La habilidad se integra con HuggingFace Transformers y permite entrenamiento QLoRA y optimizadores de 8 bits.
dispatching-parallel-agents
OtroEsta Skill de Claude despliega múltiples agentes para investigar y solucionar 3 o más problemas independientes de forma concurrente. Está diseñada para escenarios que involucran fallos no relacionados que pueden resolverse sin estado compartido o dependencias. Su capacidad principal es la resolución paralela de problemas, asignando un agente por cada dominio problemático independiente para maximizar la eficiencia.
