01 · Session

Watch a function get written.

Sixteen channels of surface EMG, a decoder, and the program assembling as the wearer writes it. Replay it, or perform the gestures yourself.

session · ship.nlband connected · 16 ch · 2 kHz · 4 ms
ch 01–16 · sEMG · µV
decoder · nld 0.3.100:00.0
    programtext form
    or perform it yourself:
    keys when the session is focused: F fn · [ ] braces · ↓ intent · ↑ verify · → allow · ← deny · R run · U undo · W write
    02 · Why a language

    The keyboard was built for the person who writes the code. That is no longer the job.

    In 2026 the human in the loop emits a handful of tokens an hour: an intent, a constraint, a check, a yes. Neuralang is sized for exactly those tokens. Nine chords and a pen cover the whole grammar, so the band on your wrist is enough, and the agent does the typing.

    your handpinch · swipe · roll · write→bandsurface EMG · 16 ch · 2 kHz→nlddecoder on device · gesture events→tokensfn { intent "…" verify … }→nlccompiler · plan + checks→agentClaude Code · Codex · any stdin

    Small on purpose

    Seven keywords. Every keyword is one gesture. You learn the whole language in an afternoon and never look at a cheat sheet again.

    Plain text underneath

    Every gesture stream serialises to a .nl file. Diff it, review it, commit it. The band is the input method, not the storage format.

    Agent-agnostic

    nlc compiles a program to a plan with its checks attached and hands it to Claude Code, Codex CLI, Cursor, Gemini CLI, or any process that reads stdin.

    04 · Text form

    Every program is also a file.

    A gesture stream is a poor thing to put in a repository, so nld writes every session out as plain text. The text form is the canonical one: it is what you review, what you diff, and what nlc compiles. Type it on a keyboard if you want to. The band is the point, not a requirement.

    The grammar fits on one screen. Functions hold statements; statements are intents, checks and capabilities; run sends a function to the agent. There are no expressions, no loops and no types, because the agent on the other end has all of those.

    Read the full grammar →

    ship.nltext form · 12 lines
    use band meta.neural-band
    use agent claude-code
    
    fn ship {
      intent "add retry with backoff to the upload client"
      intent "make no mistakes"
      verify tests.pass
      verify lint.clean
      deny net.write
    }
    
    run ship
    $ nlc ship.nl
    nlc 0.3.1 · ship.nl
    ✓ ship · 2 intents · 2 checks · 1 deny · compiled in 38 ms
    ✓ sent to claude-code (stdin) · waiting on checks…
    05 · Hardware

    Works with the band on your wrist.

    nld needs one thing from a device: discrete gesture events with a timestamp. Anything that can send those can write Neuralang.

    Meta Neural Band

    Ships with Meta Ray-Ban Display. Meta opened the glasses and the band to third-party developers in May 2026, and nld reads gesture events through the web-app path of the Meta Wearables Toolkit. Surface handwriting uses the band's own decoder.

    You need the glasses paired, because today the band only talks to them.

    status · supported · previewgestures · taps · thumb swipes · wrist rolls · handwritingpath · wearables toolkit · web app · local socket
    radiusulnaflexors · extensors01020304050607080910111213141516wrist cross-section · 16 electrode pairs · one differential channel per pair · gesture events out
    07 · Questions

    Frequently asked.

    Does it work with Claude Code?
    Yes. nlc hands the compiled plan to the agent over stdin and reads the check results back. Hooks for Claude Code and Codex CLI are in the repository; Cursor and Gemini CLI go through the generic stdin target.
    Do I need the glasses?
    Today, yes. The Meta Neural Band only pairs with Meta Ray-Ban Display, and gesture events reach nld through a web app running on the glasses. The Neuralang Band is how we remove that requirement.
    What happens to the code the agent writes?
    It is normal code in your normal repository. Neuralang only ever writes the intent and the checks. If the checks fail, nlc reports which one and the agent's attempt stays on a branch.
    Can I just type it?
    Yes. The text form is plain text with a .nl extension and a grammar you can read in five minutes. Many people write the first draft on a keyboard and use the band for the corrections.
    Who is this for?
    Anyone with a wrist. The band reads intended movement rather than movement, so it also works for people with limited hand mobility, and a language that needs no keyboard is a language for people who cannot use one. That is the work we care most about.
    Is Neuralang affiliated with Meta?
    No. Neuralang is an independent open project. Meta Neural Band and Meta Ray-Ban Display are trademarks of Meta Platforms, Inc., and are referred to here only to describe compatibility.
    08 · Start

    Write your first function tonight.

    curl -fsSL https://neuralang.org/install | sh