Docs
/
what you can do

EEG Lab

<!-- GENERATED by ops/tools/skill-sync — do not edit by hand. Run pnpm skills:sync. -->

<!-- GENERATED by ops/tools/skill-sync — do not edit by hand. Run pnpm skills:sync. -->

EEG Lab — what you can do

/admin/d/eeg · pillar devices

Read a Neurosity crown, train binary intent grids, and decode a trained intention into a trigger that runs anything.

Fetch this, never remember it

These change per install and per release. Call for them - a list written here would be a future lie.

WhatCallWhy
whether a crown is connected, and whether it is simulatedGET /api/eeg/statusALWAYS READ THIS FIRST. simulated: true means the bands are generated, not measured — anything trained from them is trained on a sine wave. configured: false means no credential exists yet, which is the ordinary first-run state and not an error.
the grids and their quadrantsGET /api/eeg/gridseach quadrant is one binary axis. settings.scoreThreshold, minMatches and cooldownMs are what decide whether a decode runs anything — they are the answer to "it recognises me but nothing happens".
what a quadrant has been trained onGET /api/eeg/grids/:gridId/samplesa quadrant with samples on only one pole will match almost anything. The counts per labelRole are the honest measure of how much training exists.
the trained modelsGET /api/eeg/grids/:gridId/modelskeyed by quadrant. A quadrant absent from this map has never been trained, which reads on screen as "resting" and is a setup problem rather than a signal.
what a thought is bound to runGET /api/eeg/bindingseach is "when I think X, do Y", stored as an ordinary rule. allowSimulated: true on any of them means a SIMULATED crown can fire it, which is fine for a demo and wrong for a door.
bind a thought to a functionPOST /api/eeg/bindings{intent, run, props} is the whole body. The intent must be spelled as it was TRAINED — a typo compiles to a condition that can never be true, so the rule arms green and never fires. Read the vocabulary first.
the poles this grid can actually produceGET /api/eeg/grids/:gridId/vocabularythe closed set a binding may name, each marked with whether its axis is trained. Bind against this rather than against what the operator called it in conversation.
turn a decode into a sentence, or into a chosen actionPOST /api/eeg/grids/:gridId/interpretdeterministic by default; useModel adds a language model and choose makes it pick an action id. It NEVER runs what it picks. usedModel: false in the reply means you are reading the deterministic phrase — check note for why.
one decode of the newest frameGET /api/eeg/grids/:gridId/decodereturns every quadrant's score, the command they compose, and whether it would fire. 409 means no frame has arrived — connect a crown first.
the live frame feedGET /api/eeg/streamSSE, about four frames a second, each carrying band power, the vendor metrics and a raw preview. It holds a crown session open: the server closes the session when the last watcher leaves, so do not hold this open to poll.

Tabs

Every one is a real URL. A tab with its own section below carries a real job.

TabPathGroupWhat it is for
crown-The headsetConnect a Neurosity crown, watch signal quality, and see the live bands.
signal-The headsetPer-electrode contact and the raw trace — where to look when nothing decodes.
grids-The labThe binary intent grids: each quadrant is one axis, drawn as a 26x26 sheet.
training-The labHold an intention, capture it as a pole, and train the quadrant on what you captured.
models-The labWhat each quadrant has learned, how much it was trained on, and how to retrain it.
bind-The outputWhen I think YES, do this. One pole, one action, no language model in the way.
listen-The outputLive decoding: the moving cell, the command it spells, and whether it would fire.
apps-The outputWatch a metric and fire a trigger. No code is written and none is run.

API

Mounted prefixes that serve this domain: /api/eeg

The full route table is leumas-capabilities/reference/api-routes.md.

Source .claude/skills/leumas-studio/reference/domains/eeg.md (no-git)markdownjson
Generated from the Leumas repository. Every page cites the file it came from.leumas.techllms.txt