Skip to content

CommandDeck v0.1.0-preview.2

Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 06 Nov 13:00
d27ca6d

The second preview of CommandDeck, a keyboard-first command palette and
launcher for Omarchy and Hyprland. This release makes the launcher open
at once, adds a shortcut editor and a searchable Settings, and installs the
hotkey on Omarchy 4.5.

Note

This is a preview. Expect rough edges, and please
report problems. The
extension SDK and the standalone Hyprland host are experimental.

What's new

Opens at once

  • The launcher's surface stays ready while it is closed. In our measurements,
    on an idle desktop with software rendering, the launcher submits its first
    frame, with the card and its Home results, about 6 ms after Hyprland
    dispatches the shortcut. The search field has the keyboard after about 9 ms,
    and the results can run after about 51 ms (medians). See
    the timing details.
  • Home results are found while the launcher is closed, so they are in the
    first frame. Until the search made after the open finishes, a row found
    while closed runs nothing.
  • The open fade is gone. The hotkey module also turns off Hyprland's fade for
    CommandDeck's windows.
  • Typing is faster: a search starts 16 ms after an edit, and the daemon starts
    faster with many indexed folders.
  • Window and workspace results come from Hyprland's socket directly, without
    starting hyprctl.

Change your shortcuts

  • Settings → Shortcuts lists CommandDeck's shortcuts and your Hyprland
    bindings together. Type a key, such as super+q, to find what it does.
    Click a shortcut and press new keys to record it. When another binding uses
    those keys, choose Replace or Cancel. ↺ restores a change.
  • A binding stays read-only when CommandDeck can't change it safely, for
    example one that loads after CommandDeck's module or only under a condition,
    one in a submap, or one that is not a plain binding call. Its info button
    names the file to change instead.
  • From the launcher, Alt+K changes or adds the shortcut of the selected
    row. A row with a Hyprland shortcut shows it, and apps and commands offer
    Copy Hyprland Binding.

Settings, found

  • Type a setting's name in the launcher, such as reduce motion, and
    Enter opens Settings at that control.
  • Settings has a search field, grouped pages with icons, compact controls, an
    interface font choice, and a Diagnostics page with the version, socket,
    index state, and recent search times. Copy debug info copies it for a
    bug report.

Search

  • Typos are fine: fierf still finds Firefox.
  • After =, the calculator accepts thousands separators, such as = 1,000 * 1.2.
  • Enter switches to an app that is already open. Shift+Enter opens a new
    window.
  • Ctrl+L shows your search, or a calculator answer, in Large Type.
  • Drag a file row into a terminal, browser, or chat.
  • Type an address such as github.com/devmobasa to open it, or choose
    Save as Quicklink….
  • agents: lists every Herdr agent, blocked ones first. In a Herdr space, a
    name that no tab has offers Create tab.
  • Desktop controls name the next step: Mute or Unmute, Turn Wi-Fi
    Off
    , Enter Fullscreen.
  • The launcher follows Hyprland's rounding, so rounding = 0 gives square
    corners.

Fixes

  • commanddeck hotkey install now installs Ctrl+Space on Omarchy 4.5, which
    binds that key in its default bindings. CommandDeck takes the key over from
    that default. Your own bindings on the key are kept next to the launcher, or
    the install stops and tells you which file to change.
  • New extension projects build with later .NET SDK 10.0.4xx patches.
  • Fixes for editor launches, Run shortcuts, index pause and resume, saved
    shortcuts on reinstall, and focus in Settings dialogs, assistant answers,
    wheel scrolling, and Large Type.
  • Stricter socket peer checks, archive limits, and process deadlines.

Requirements

  • Omarchy with shell plugins on Hyprland, a systemd user session, jq, icu,
    and glibc 2.39 or later.
  • Builds for linux-x64 and linux-arm64. The linux-arm64 build is built
    and smoke-tested on an ARM64 runner, but installed desktop use on ARM64 is
    not tested yet, so please report what you find.

Known issues

  • The assistant's answer can appear in the launcher a few seconds after the
    assistant has finished, and the footer can keep showing "Asking Codex…"
    afterwards.

Install (no .NET needed)

Run these commands in your Omarchy session. On an ARM computer, use
linux-arm64 instead of linux-x64.

curl -fLO https://github.com/devmobasa/CommandDeck/releases/download/v0.1.0-preview.2/commanddeck-v0.1.0-preview.2-linux-x64.tar.gz
curl -fLO https://github.com/devmobasa/CommandDeck/releases/download/v0.1.0-preview.2/commanddeck-v0.1.0-preview.2-linux-x64.tar.gz.sha256
sha256sum -c commanddeck-v0.1.0-preview.2-linux-x64.tar.gz.sha256
tar -xzf commanddeck-v0.1.0-preview.2-linux-x64.tar.gz
cd commanddeck-v0.1.0-preview.2-linux-x64
./install.sh

The installer needs Omarchy with shell plugins on Hyprland, a systemd
user session, jq, icu, and glibc 2.39 or later. Run
./install.sh --dry-run first to check them. It changes nothing.

To update, install the new release in the same way. Your configuration
is kept. The installation guide
tells how to uninstall.

What's Changed

  • Build extensions with the patched .NET 10 SDK by @devmobasa in #2
  • Time the launcher from the shortcut to the complete card by @devmobasa in #1
  • Show the launcher card at once when it opens by @devmobasa in #3
  • Keep the window's shown state apart from its mapping by @devmobasa in #4
  • Keep the launcher surface mapped between opens by @devmobasa in #5
  • Show Home results at once when the launcher opens by @devmobasa in #6
  • Let new extension projects build with later SDK patches by @devmobasa in #7
  • Wait for the next frame's layout before revealing a settings card by @devmobasa in #8
  • Read windows and workspaces through Hyprland's socket by @devmobasa in #9
  • Install the hotkey over Omarchy's conditional default bindings by @devmobasa in #10
  • Prepare the v0.1.0-preview.2 release by @devmobasa in #11

New Contributors

Full Changelog: v0.1.0-preview.1...v0.1.0-preview.2