Skip to content
macifyerPublic

About

A keyboard-driven command palette for Arch/Hyprland built on Quickshell — apps, actions, tools, and focused-app menu search via AT-SPI

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Repository files navigation

Pallet

Pallet

A keyboard-driven command palette for Omarchy on Arch/Hyprland, built on Quickshell. Summon it, type, act — applications, windows, calculation, script commands, and the focused application's own menu items via AT-SPI.

Status: early but daily-drivable. App search, fuzzy ranking, theme icons, and focused-app menu search work; more providers land next.

Install (Omarchy Quattro)

omarchy plugin add https://github.com/macifyer/pallet.git --enable

That's it — Pallet registers its own hotkey: ALT+SPACE toggles the palette, leaving SUPER+SPACE on the built-in Omarchy menu. If ALT+SPACE is already bound on your system, Pallet logs a warning in the shell log instead of overriding it; bind omarchy-shell shell toggle io.github.macifyer.pallet to a key of your choice in that case.

Update

Installed from git:

omarchy plugin update io.github.macifyer.pallet

Developing (the plugin directory IS the checkout — validators reject symlinks):

git clone git@github.com:macifyer/pallet.git \
    ~/.config/omarchy/plugins/io.github.macifyer.pallet
omarchy-shell shell rescanPlugins && omarchy plugin enable io.github.macifyer.pallet
# edit and commit in that directory; the shell auto-reloads on save

See docs/PLUGIN.md for the lifecycle contract, validation, and publish checklist. Standalone development (any Quickshell setup) is covered in shell/README.md.

Stack

  • Frontend: Quickshell / QML
  • Core (prototype): Python, JSON over stdio
  • Compositor: Hyprland (windows, focus, runtime keybindings via hyprctl eval)
  • Integration: Omarchy shell plugin (kinds: overlay + service)

Layout

manifest.json      Omarchy plugin contract
PalletOverlay.qml  overlay entry point (summon/hide -> open/close)
Service.qml        service entry point (self-registering ALT+SPACE hotkey)
shell/             Quickshell QML (window, search, results, actions)
src/               Python core (provider host: fanout, merge, cancel)
providers/         One directory per provider (apps, menus, ...)
docs/              architecture + provider protocol + plugin guide

Milestones

  1. The loop — shortcut, search, ranked results, select, execute, close
  2. Action panel — open / copy / reveal / alternate actions
  3. Menu search — focused app menus via AT-SPI (port of MaNi4's walker, MIT); deeper coverage next
  4. Persistent tools — clipboard history, snippets, timers, file search
  5. Hyprland + Omarchy providers — window switching, system actions, packages
  6. Workflows and AI — reviewable, confirmable actions

Security posture

  • Providers run as subprocesses with declared commands; never unrestricted QML plugins.
  • Search text is never executed as a shell command.
  • Privileged or destructive actions get visible confirmation; nothing silent with sudo.
  • Clipboard storage is opt-in with explicit controls.
  • AI proposes actions; humans confirm them.

Credits

About

A keyboard-driven command palette for Arch/Hyprland built on Quickshell — apps, actions, tools, and focused-app menu search via AT-SPI

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages