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

  1. LAUNCH THE APP → press INITIALIZE SYSTEM and let both models reach READY (one-time download; cached after).
  2. 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).
  3. Add a voice note (hold the mic button) or type one — e.g. “hearing a strange rattle” — then LOG EVENT.
  4. Go to SLEEP and flip the toggle: the first pass registers your photo as the day-0 baseline (~30s).
  5. 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.