Repository navigation
Keystroke 1.2.1
Keystroke 1.2.1
Released September 9, 2026.
A hotfix for Omarchy 4.0.3: applications are listed again, and the hotkey's
second tap starts dictation instead of closing the palette. 1.2.0 is unaffected
in every other respect, and nothing else changed.
Fixes
- Applications are listed again on Omarchy 4.0.3. 4.0.3 hands a plugin panel
a manifest whosekindsis a QML sequence rather than an array. The shell's
ownArray.isArraycheck rejects it, so it withholds the shared application
library and then, a second after startup, destroys the palette's scoped shell
because it recomputes that plugin's capability profile from the registry
manifest and sees a different answer. The palette now keeps serving
applications from Omarchy's ownAppLibrarycomponent once that happens, with
the same desktop-entry filtering, icons, launch behaviour and removal. On
4.0.2 the shared library is still preferred and nothing changes. - The hotkey's second tap starts dictation. The palette is
keepLoaded
again, so the shell no longer unloads it a tick after the tap that starts
recording. Second tap in Settings › Voice behaves as documented.
Update
omarchy plugin update evindor.keystrokeIf the shell still uses cached plugin code after updating, run
omarchy restart shell.
Requires Omarchy 4.0.2 or later.
Still outstanding on 4.0.3, and only fixable upstream: once the scoped shell is
revoked, services provided by extension plugins are no longer reachable, and
extensions receive a null shell. manifestHasKind needs to accept a QML
sequence, not only a JavaScript array.
Validation: 148 QML tests, 48 time-zone cases, the application check (extended
to cover the revocation, and failing against the previous component), the file,
catalog, matching worker, engine and session checks, the palette matching,
shortcut, motion and dictation checks, the voice, clipboard, Codex and hotkey
checks, plugin validation, site checks and qmllint passed offscreen. The
extension lifecycle check stops at the same "update applied" race recorded for
1.2.0. Verified live on Omarchy 4.0.3-1: the palette lists all 73 applications
after the scoped shell is revoked. See the verification record.