Edge · On-device · Gemma 4
GHOST-WALK
An industrial inspection agent that sleeps. It captures what a field engineer sees by day, consolidates it into memory overnight — entirely inside a browser tab, with zero connectivity — and delivers a prioritized action briefing by morning.
60-second demo
Site imagery in the film is AI-generated. All application footage is a live screen recording of the working app — the same build you can launch above.
The loop
1 · THE WALK
The engineer photographs fixed checkpoints and dictates voice notes — transcribed on-device by Whisper. Every observation is logged locally.
2 · THE SLEEP
Heavy reasoning would drain a field device mid-round, so it waits for the night dock: wall power, idle GPU. Gemma 4 captions each photo, recalls that checkpoint's baseline, and scores what drifted.
3 · THE BRIEFING
By morning: a triaged worklist. Critical drift becomes one imperative action — 'Check the mount bolts on Pump A. Before start-up.'
Nothing leaves the device.Images, voice, model weights, and reasoning all live in the browser. After a one-time initialization, the entire loop — capture, consolidation, briefing — runs in airplane mode. For bandwidth-denied sites, offline isn't a failure state; it's Tuesday.
Test it yourself — 5 minutes
Requirements: desktop Chrome or Edge with WebGPU · ~1.5GB one-time model download · camera/mic optional
- LAUNCH THE APP → press INITIALIZE SYSTEM and let both models reach READY (one-time download; cached after).
- On WALK: pick a checkpoint, then either point your camera at any object — or use the ⬆ IMPORT button with two photos of the same subject (one healthy, one visibly changed).
- Add a voice note (hold the mic button) or type one — e.g. “hearing a strange rattle” — then LOG EVENT.
- Go to SLEEP and flip the toggle: the first pass registers your photo as the day-0 baseline (~30s).
- Log the changed photo of the same subject with a symptom note, sleep again — and open the BRIEFING to see the agent correlate your note with what changed in the pixels.
Tip: navigate with the bottom tabs — a page reload evicts the model from GPU memory and the next sleep re-wakes it (~2 min).
Stack
Gemma 4 E2B (ONNX q4f16, WebGPU) · transformers.js v4 · Whisper-tiny · Next.js 16 static export · Web Worker inference · Dexie / IndexedDB · PWA — zero backend. This page and the app are plain static files.