WS WebSketch CLI
v0.4.1 — npm package

See what users see. In plain text.

Render, diff, and fingerprint web UI captures so LLMs and CI pipelines can reason about what users see. ASCII art, structural hashes, semantic diffs — all from one CLI.

Install

pnpm add -g @mcptoolshop/websketch

Render

websketch render-ascii capture.json

Diff

websketch diff before.json after.json

Features

Everything you need to capture, compare, and communicate UI.

ASCII Rendering

Turn any WebSketch capture into a box-drawing layout that fits in a terminal or LLM context window.

Structural Fingerprinting

Hash a page layout to detect changes without pixel diffing. Layout-only mode ignores text changes.

Semantic Diff

Compare two captures and get a ranked change report — added, moved, resized, text changed.

Bundle Packaging

Combine captures and optional diffs into a single shareable .ws.json file.

Pipeline-First

Every command supports --json output and deterministic exit codes for CI scripting.

LLM-Optimized

The --llm flag produces metadata-rich output designed for agent consumption with legends and context.

Commands

Render to ASCII

# Default 80x24 grid
websketch render-ascii capture.json

# LLM-optimized with metadata and legend
websketch render-ascii --llm capture.json

# Custom dimensions
websketch render-ascii --width 120 --height 40 capture.json

Diff & Fingerprint

# Structural fingerprint
websketch fingerprint capture.json
# Output: e33442b6

# Semantic diff between captures
websketch diff before.json after.json --json

# Bundle into shareable file
websketch bundle before.json after.json -o bundle.ws.json

Exit Codes

Deterministic codes for CI integration.

Code
Meaning
0
Success
1
Validation / data error (bad JSON, invalid capture, unknown command)
2
Filesystem error (file not found, permission denied, I/O error)

Ecosystem

WebSketch CLI works with the broader WebSketch toolchain.

Chrome Extension

websketch-extension — one-click page capture from any browser tab.

IR Library

@mcptoolshop/websketch-ir — build captures programmatically in TypeScript.

Pipeline Integration

Add --json to any command for machine-readable output in CI/CD workflows.