AIM mindset apps
Language Relayrepairs text typed in the wrong layout
v2.5.3install
macos utility · local by design · open source

typed in the wrong layout? don't retype it.

double shift turns ghbdtn into привет right where you typed it. language relay repairs the last word by default, keeps phrase repair explicit, switches the input source and leaves the cursor ready.

double shift or clean option · last word by default · one window contract · v2.5.3

npx github:aPoWall/language-relay install
relay voxel character
two alphabets · two counter arrows · click mirrors themrelay
Language Relay 2.5.3 panel: the voxel character 40 pt in the shared shell header beside the name, the version line, settings, pin and close, the menu bar row with a live preview of the item and the global combination, the bridge row with the state of the gesture bridge and a restart button, and the bottom line with keys, esc close and the version
the real panel · 2.5.3 · 420×672
live browser demo · same key mapu.s. → russian–pc
alex@mac ~ % relay
scope
case
cue
examples
ready · type · relay / ⌘↩local

this browser demo uses relay or ⌘↩. the installed app uses clean double shift or option.

local onlyno accountno adsno telemetrymit · open source

ghbdtn? vbh becomes привет? мир. one gesture repairs the tail of the thought.

01 · typefinish the thought

keep writing when the active keyboard source is wrong. the text stays exactly where you typed it.

02 · relaytap a clean gesture

double shift or a clean option tap converts the latest word without opening a window. phrase repair is a visible setting.

03 · continuestay at the cursor

the app verifies the write, switches the layout and leaves the insertion point ready for the next word.

small surface. explicit behavior. a contract for agents.

01 · scopeword or phrase

the last word is repaired by default. phrase repair is a visible setting in the panel.

02 · gesturesclean double shift or option

two system gestures, both optional, both without opening a window. ⌥⌘L opens and closes the panel from any app and the combination is chosen in the panel. a repair that dies mid-run releases its own lock after five seconds, so the gestures keep answering.

03 · case + cuesfour case modes, eight cues

preserve, sentence, upper or lower. short sound cues 75–200 ms with four volume levels.

04 · live markcharacter in the app, mark in the bar

the voxel character stands in the panel header at 40 pt, follows the cursor and mirrors its arrows on click; the flat mark keeps the menu bar, where the item is drawn as mark, mark + value, value or hidden. reduce motion keeps the character still.

small surface. explicit behavior.

the menu bar shows the active alphabet in all three visible modes: a filled mark for Russian, an outline for English, plus RU/EN in value modes. every setting names the exact part of the correction it changes, the bar row prints the item as the bar draws it, and the bridge row prints the state of the gesture bridge with one press that restarts it.

Language Relay 2.5.3 native panel with the voxel character in the header, the menu bar row and the bridge row
native control surfaceswift · appkit
language relay / settingschanges sync to the demo ↑
scope
capitalization
triggers
feedback

a keyboard tool with a machine-readable contract.

agents get deterministic conversion, readiness checks, stable capabilities and useful exit status. conversion returns the requested text; diagnostic receipts contain no typed content.

deterministicthe same key map produces the same output on every run.
inspectabledoctor and capabilities report readiness before automation starts.
composablejson fits shell scripts, launch agents and local agent workflows.
privateconversion happens on the mac. diagnostics retain no typed text.
language-relay · schema 1■ ready
$ language-relay convert ghbdtn
{"sourceID":"…US","targetID":"…RussianWin","text":"привет"}

$ language-relay doctor
{"accessibilityTrusted":true,"ready":true}

$ language-relay capabilities
{"scopes":["word","phrase"],"localOnly":true}

eight short signals. one clear receipt.

one command. ready for the next word.

npx github:aPoWall/language-relay install
  1. run the command above. it builds the app from source and installs it into ~/Applications with a launch agent.
  2. approve accessibility access when macos asks. the app needs it to repair the focused field.
  3. type ghbdtn anywhere and tap double shift. the menu bar mark shows the active alphabet.
2026-09-17 · 707 KB · apple siliconsha-256 bd1d6379…a88674b6 · SHA256SUMS.txt
macos 13+ · swift / appkit · mit · u.s. ⇄ russian–pc · v2.5.3 · update an existing install: make test && ./install-runtime.sh update-background

what's new

release-notes.txt · five latest entries load here

your text stays on your mac.

language relay runs as a small native menu bar app. it needs accessibility access to repair the focused field. there is no account, advertising surface, analytics sdk or cloud processing path.

on your macconversion + settings
0 accountsinstall and start writing
0 adsno promotional runtime surface
0 telemetryno analytics sdk or text log
open sourceinspect the app and bridge
u.s. ⇄ ru–pccurrent deterministic pair

current release: u.s. ⇄ russian–pc. the engine uses explicit verified layout pairs, so every future language pair can ship with its own deterministic map and tests.