Developer tool

Omnish

The server in your pocket — local-first shell from chat

Step 1 of 4Quick start — install and run gateway

WhatsApp

Omnish gateway

Gateway ready. Send !commands from chat.
omnish — zsh
$ omnish run
gateway listening on :3789
$ npm install -g omnish
$ omnish link
$ omnish allow +1…
$ omnish run
Chat
Transport
CommandRouter
ShellExecutor
ChatReply
Allowlisted shell from chat—local-first, no relay.
Local-first shellChat bridgeBrowser UI setupMIT open source

Why try Omnish

Your machine, your rules—from chat

Local-first execution

Commands run on your host—no hosted execution relay or vendor lock-in.

Explicit allowlists

Only approved phone numbers can trigger shell access. Wildcard entries are rejected.

Single config.json

CLI, WhatsApp/Telegram chat, and browser UI all read the same config on your machine.

MIT open source

Inspect, fork, and deploy on Linux, macOS, or Windows.

Command surface

What you can run from chat

Sync shell (!cmd)

Run commands with per-chat working directory and shortcuts.

PTY sessions (/apps)

Interactive TUIs and REPLs with attach, resize, and tail.

Background jobs (/bg, /tail)

Long-running commands with log streaming and safe kill.

File transfer (/send, /receive)

Push and pull files with configurable roots.

Cluster routing (/c use)

Route senders to target machines without central infra.

Security (omnish security)

Startup blocked on error-level findings; audit via CLI or /security.

Security model

Built for operators who need guardrails

Allowlist = credential

Treat approved identities like SSH keys—not open relay access.

Strict file permissions

Config and auth secrets expected with locked-down permissions.

Browser UI on LAN

omnish ui edits real host config—protected by setup token.

Quick start

Try it in minutes

npm install -g omnish
omnish link
omnish allow +YOUR_E164
omnish run
# From WhatsApp or Telegram:
!ls
Read the docs on omnish.dev

Build with Omnish

Questions about integration, partnerships, or custom engineering?