DreamLayer

Appendix

Hardware and seams

DreamLayer is a pre-hardware build: the intelligence stack is complete and tested (1,368 passing tests), and the handful of places where physical hardware plugs in are explicit, narrow, and documented. This chapter is the honest matrix.

The target device: Brilliant Labs Halo

The Halo is a lightweight heads-up display with a circular additive waveguide, camera, microphone, IMU, a button, and an on-glass Lua runtime with a 16-slot runtime-writable palette (1,024 luma tiers per slot). All of halo-lua/ is written against its frame API through a compatibility adapter (halo-lua/compat/frame_adapter.lua), and the repo runs that exact Lua today inside a software rasterizer (bridge/lua_raster.py, via lupa) — which is how every device-path image in this book was produced, and how the draw-budget, richness, and reduce-motion contracts are enforced in CI.

Nothing in the stack is Halo-exclusive by design: the glasses' contract is "render these card dicts, return these events," so any glasses with a display runtime, BLE, and the basic sensors could host the same experience.

Deployment tooling that exists today

  • scripts/upload.py — deploys halo-lua/ to a Halo over BLE (brilliant-ble tooling).
  • scripts/halo_bridge.py — plays scripted Lab scenarios on a real Halo over BLE (bleak).
  • FIRST_DEVICE_TEST_PLAN.md — the written on-glass calibration plan (fonts, pane luma, aurora amplitude, IMU units — each isolated to one constant table).

The matrix

Implemented and tested (no hardware required)

  • All 23 device card renderers, the Horizon, Dream rendering, materials, motion, palettes, budgets — exercised through the real device Lua in the raster harness.
  • The entire orchestrator: Oracle grammar and persona, user model, Veritas, Truth Lens fusion and baselines, Discernment, answer-ahead, attention, anticipation, ledger, commitments, scrub, Social Lens matching and consent grammar, privacy gates.
  • The Brain server: every endpoint, the index, config, pairing, saga, profile mirror, schedulers, backup/restore; live-HTTP tested.
  • The phone app's store, screens, pairing codec (byte-compatible with Python), design system.
  • The demo/film pipeline, golden images, motion exporters.

Device seams (logic built and tested; physical signal to wire)

Seam Plugs in at What a device build supplies
BLE render + input bridge/ <-> halo-lua/ble/ the radio link; cards down, gestures up (framing already matched on both sides)
Microphone + ASR hear(text), ingest_caption(text) on-device speech-to-text and acoustic wake-word spotting
Camera frames on_scene_frame, look_at_object, look_at_person frames from the glasses camera
Face embedding load_contact_faces(face_embed_fn), Social Lens a 512-d on-NPU face embedder (MobileFaceNet-class)
Truth Lens face / voice channels observe_face(frame), observe_voice(mic_fft, amplitude) AU frames and prosody from device sensors
Wake signals activate(source) tap / gaze / raise detection; the wear/wake signal for the brief
Scrub gesture scrub(direction) the twist/tap that drives rewind
Earcons + haptics card payload fields the speaker and actuator (files ship in the phone app; visual analogs drawn today)
IMU parallax and gestures display/parallax.lua, app/imu_gesture.lua real frame.imu_data() — logic is EMA-normalized and nil-guarded; units recalibrate in one constant
Live context feed start_pulse(context_fn) place / people-in-view / clock context for anticipation and attention
macOS readers server/macos_sources.py Messages (chat.db), Mail (.emlx), Calendar / Contacts / Reminders (AppleScript) — real on macOS, empty lists elsewhere
macOS send send_message(approved=True) osascript dispatch, only ever on explicit approval
Cloud verify / answers verify.py, cloud tier an Ollama install and/or an OpenAI-compatible key — plumbing, gating, parsing all built
Phone notifications services/notify.ts permission on a real device
Reach-anywhere relay pairing relay_url + brainFetch any secure tunnel to the Brain; client already prefers LAN and falls back
OCR + translation models Rosetta / Puente the recognition and translation models behind the seams

Pre-hardware (interaction model built; live cross-device streaming pending)

  • Confluence live bonds — the engine, wire messages, and phone UI exist; streaming live bond state between two paired wearers is pending hardware.
  • Rehearsal on the phone — the Reality Compiler engine and device figment protocol are real (see the recorded out/rc_v2/ sessions); the phone screen renders the interaction model on demo state until the bridge streams live figments.
  • On-glass calibration — pane luma, aurora amplitude, DEVICE_FONT metrics, and IMU gain are single-table constants explicitly flagged for tuning on real glass.

Things people ask about that are not in the codebase

An EMG wristband input, health sensing, and additional lens packs (Health, Focus, Skill) appear in roadmap discussions but have no code in this repository today. This book documents what exists.

DreamLayer knowledge base. Every image is rendered by the product's own pipeline. Site repository