Star on GitHub

omadeckhomeworkspace 1

Your phone is the keyboard now.

OmaDeck turns the phone you already own into a Stream Deck and voice remote for your Omarchy desktop. Switch workspaces, pause YouTube, kill :3000, from the couch.

terminalon your Omarchy machine

$ git clone \
 https://github.com/Mohsintl/omadeck.git &&
cd omadeck && ./install.sh --quick

Then scan the QR code it prints. Free and open source, Apache 2.0, no app store. Watch each feature

phonehighlightsped up

watch13 clipsworkspace 2

Watch each feature.

Real clips of an iPhone driving an Omarchy laptop, sped up where it waits. Each one plays when you scroll to it, with the exact taps and words it shows.

VoiceMichold

Say what you want

  1. Hold the mic and say Close the active window. The YouTube window closes.
  2. Hold it again and say Open Chrome on workspace 4.
  3. The deck answers Opened Chrome on workspace 4, and the screen follows.

VoiceMicSuper+K names

Your keybindings, by name

  1. Hold the mic and say Open incognito browser.
  2. The deck answers The incognito browser has been opened.
  3. Any description in Omarchy's Super+K list works the same way.

Kill :3000Codetap

Kill a stuck dev server

  1. Type python -m http.server 3000 with Type, and the server starts in the terminal.
  2. Tap Kill :3000 on the Code tab.
  3. The deck answers Killed the process on port 3000.

StepsDevyour key

A key that runs steps

  1. Tap +, name the tab Dev, then Add key.
  2. Choose Steps: New terminal, wait 1 s, then type cd omadeck && omadeck update with Enter.
  3. Save, then tap the key: a terminal opens and the update runs. The deck answers ran 3 steps.

Ask, TypeDocktype

Ask, then Type

  1. Tap Ask, type Open chrome in workspace 1 and send. Chrome opens there.
  2. Tap Type, type Youtube and send.
  3. The text goes straight into the focused window on the PC.

Copy, PasteQuick keystap

Copy here, paste there

  1. In VS Code, tap All, then Copy to copy a GitHub link.
  2. Tap workspace 1, then Address on the Web tab.
  3. Tap Paste and Enter: the repo opens in Chrome.

WorkspacesTop rowtap or hold

One row for workspaces

  1. Tap 1, 2 and 3: the screen jumps to each one.
  2. Hold a key to move the focused window there, here into the scratchpad.
  3. Tap Scratch to show or hide the scratchpad.

WindowsDesktap

Windows and layout

  1. Tap Previous to focus the window on the left.
  2. Tap Fullscreen, Float and Split to change the layout.
  3. Tap Swap right, then Close window.

MediaMediatap

Media keys, YouTube included

  1. Tap Play / Pause: YouTube pauses and plays, even when it isn't focused.
  2. Tap Previous and Next to change videos.
  3. Tap Volume −, Volume + and Mute; Omarchy shows the volume.

BrowserWebtap

Browser controls

  1. Tap Zoom in, Zoom out and Reload.
  2. Tap Address, type Chrome with Type and send.
  3. Tap Back, Forward, Scroll down, New tab and Close tab.

ToolsUtilstap

Tools and menus

  1. Tap btop to see the system monitor.
  2. Tap Clipboard for clipboard history and Lazygit for git.
  3. Tap System menu, then Esc on the deck to close it.

Edit deck⋯ menutap

Make the deck yours

  1. Open ⋯ and tap Edit deck.
  2. Tap ✕ to hide a key, ◀ ▶ to move one, and pick which quick keys show.
  3. Tap Done: Saved your layout on this phone.

LandscapeAny tabturn the phone

Works sideways too

  1. Turn the phone: the dock moves left and the deck fills the right.
  2. Tap a workspace to switch to it.
  3. Tap Close window on the Desk tab.

omadeck log -fone evening on the couchworkspace 3

One evening, never getting up.

Coding agents work on one workspace, YouTube plays on another. This is how the evening goes.

  1. tapWorkspace 2 to check on the agents, then 3 to get back to the video.
  2. mediaPlay / Pause. YouTube pauses, even though it isn't the focused window.Toggled playback.
  3. codeA dev server hangs. Kill :3000 on the Code tab.Killed the process on port 3000.
  4. voiceHold the mic: Open Chrome on workspace 4.Opened Chrome on workspace 4.
  5. typeAnswer the agent from the Type panel, then send it with Enter.
  6. your keyUpdate OmaDeck: one key opens a terminal and runs omadeck update.Update omadeck: ran 3 steps.

deckTokyo Nightphone

The OmaDeck deck in the Tokyo Night theme: workspaces 1 to 5 and Scratch on top, the Desk, Code, Media, Web, Utils tabs and a plus for your own, the deck keys, quick keys and arrows, and the dock with Ask, the mic and Type

installabout 2 minutesworkspace 4

Set up your phone.

  1. Run this on your Omarchy machine.

    It installs just the phone deck, with no questions.

    $ git clone \
     https://github.com/Mohsintl/omadeck.git &&
    cd omadeck && ./install.sh --quick
  2. Scan the QR code with your phone.

    The setup page installs a certificate, checks it, then opens the deck.

  3. Install it as an app.

    Share › Add to Home Screen on iPhone, ⋮ › Install app on Android. Tapping and typing work straight away; voice is optional, from the deck's Settings.

notesafter install

omadeck mobile
Shows the QR code again if you lost it.
omadeck update
Pulls the latest OmaDeck, reinstalls it and restarts.
omadeck log -f
Shows each button press and voice command as it happens.
Tested on
iPhone, iPad and Android (Chrome) with Omarchy on Hyprland.

securityyour own networkworkspace 5

Stays close to home.

OmaDeck types and runs actions on your desktop, so it keeps to your network.

  • Local network onlyThe deck talks to your computer over your Wi-Fi. Away from home, use Tailscale or WireGuard, never port forwarding.
  • Paired, with an optional PINEach phone pairs with an auto-generated token. Add a 4–8 digit PIN on shared networks; wrong guesses are rate limited.
  • HTTPS with your own certificateA local certificate, limited to private addresses, encrypts the connection. PINs and API keys are never sent over plain HTTP.
  • No shell by defaultThe assistant can't run shell commands unless you turn that on.
  • Careful with what it readsAfter the assistant reads a page or the clipboard, commands wait for your spoken confirmation.
  • Honest about the limitsThe security guide lists what OmaDeck does and doesn't protect against. Read it.

everythingby tab

Desk

  • Workspaces 1–5 and the scratchpad
  • Hold a workspace to move a window there
  • Fullscreen, float, split and swap

Code

  • Kill :3000, :8000 and other ports
  • Ctrl+C, Ctrl+Z and Ctrl+L
  • Git status, diff and push; run the tests

Media

  • Play, pause and skip, YouTube included
  • Volume, mute and audio output
  • Display brightness

Web

  • New, close and switch tabs
  • Back, forward, reload and zoom
  • Jump to the address bar

Utils

  • btop, Lazygit, Lazydocker, OpenCode
  • Night light, keep awake, zen mode
  • Clipboard history

Typing and voice

  • Type or dictate into any window
  • Enter, Del, Tab, Esc, All, Copy, Paste and arrows that repeat
  • Obvious commands and Super+K keybindings skip the AI
  • Voice with Ollama, Groq, OpenAI and more

Your own

  • Tabs and keys of your own, with Steps
  • Edit deck: hide and move keys

Look

  • Portrait or landscape
  • 24 themes, or follow your Omarchy theme
  • Installs from the browser, no app store

Like it?

If OmaDeck saves you a trip to the keyboard, a star on GitHub helps a lot. Ideas, bugs and pull requests are all welcome.