# What's coming to omabox

This is https://omabox.app/next as Markdown, for agents. Every page: https://omabox.app/llms.txt

**omabox beyond Omarchy.**

omabox was born on Omarchy, and 1.0 runs there. But most of it has nothing to do with Omarchy: the boxes, the keys and clicks, the shots, the waits, gdb. Only the config a box boots and the shell it runs are Omarchy's. Here is what comes next, what has run so far, and what hasn't. **None of it has shipped, and there is no date.**

## Plain Hyprland boxes: A box without Omarchy.

A plain box boots its own small Hyprland config: Hyprland's defaults, a terminal on `SUPER` + `RETURN`, no Omarchy look or binds. Every command you'd use to test works the same: `keys`, `click`, `shot`, `wait`, `events`, `lua`, `gdb`, `--hyprland` with your build. Reproduce a plugin's crash or a compositor bug without losing your session.

**For** Hyprland plugin and compositor developers, and anyone on Hyprland whose agent needs a desktop to test in.

**Aimed at** any distro with Hyprland 0.56+ and its Lua config. Lua because `keys`, `click` and `monitor` work through `hyprctl eval`, which a `.conf` config refuses.

**On a branch, not released: the name may change**

```
$ omabox up --desktop plain
```

**What has run**

A plain box on our Omarchy machine, with Omarchy's files hidden from the box, as if they weren't installed. No config errors, and `keys` opened a terminal.

**Not yet**

A run on a machine without Omarchy; an install that doesn't assume pacman (a `doctor` that says what's missing, per distro); tests in the suite.

## Your own shell: The shell you use, in a box.

`up --shell CMD` runs a shell of your choice in place of Omarchy's. Shells will be supported one at a time, each checked in a box before it's listed. Dux Shell (formerly DankMaterialShell) is first.

**For** people who write or use Hyprland shells, and shell plugin authors.

![Dux Shell 2.0 in a plain box, its control center open: user at omabox, network not connected, no Bluetooth adapters, no output device](https://omabox.app/media/dux2-control-center.webp)

A spike, not a release: Dux Shell 2.0 in a plain box, its control center open. No system bus, so network and sound read "Not connected" and "No output device", and the shell keeps running.

**On a branch, not released: the name may change**

```
$ omabox up --desktop plain --shell CMD
```

**What has run**

Dux Shell 2.0 in a plain box, up to its bar in about 4 s. Its bar, dash, launcher and control center were driven with `click` and its own IPC, and `restart-shell` brought its bar back. Its control center can be read as text (`tree`). A box has no system bus, so network, Bluetooth and sound read "Not connected", "No adapters" and "No output device", and the shell keeps running.

DankMaterialShell 1.6.3 ran the same way before the rename.

**Not yet**

A second shell. Shells with their own idle and lock need omabox to hold those off.

## Your own Hyprland desktop, in a box: Your desktop, your agent, none of it on your session.

`--desktop desk` boots your `hyprland.lua` in a box: your binds, your input settings, your shell, and the look your config and shell give it. What would reach your session is left out: `systemctl --user` and uwsm lines, idle and lock daemons, polkit agents. Everything else runs, and each decision is logged. A reload in the box is clean. Your agent tries a change to your desktop in a box first, and you look at it there.

**For** anyone whose agent edits their dotfiles, binds or shell.

**On a branch, not released: the name may change**

```
$ omabox up --desktop desk --shell CMD
```

**What has run**

The config Dux Shell 2.0 sets up for a new user (127 binds), booted in a box with Dux as its shell. No config errors, and only its two systemd lines were dropped. Its own `SUPER` + `SPACE` opened Dux's Spotlight launcher, and a reload kept every bind with nothing started twice.

An earlier run on DankMaterialShell 1.6.3 also brought back its wallpaper and light mode, with the box's HOME at your real path. That HOME is still a copy, never your real one: the host's `~/.ssh` and the rest were absent.

**Not yet**

A config from a real machine rather than one made in a box; configs that run commands while they load; finding the shell from the config; tests in the suite.

## What stays the same.

The same rules hold on every desktop. A box never gets your seat, your secrets or your session, and it is not a security boundary. On Omarchy, everything on [/omarchy](https://omabox.app/omarchy) stays.

## Which shell should come next?

Shells will be supported one at a time. Tell us yours, and whether your agents already edit it.

[omabox #321 · your own desktop](https://github.com/diogochaves/omabox/issues/321) [omabox #247 · plain Hyprland](https://github.com/diogochaves/omabox/issues/247) [Watch the repo →](https://github.com/diogochaves/omabox)
