Project Focus
Omarchy bar widget that starts a project — jump to its workspace, launch its apps — and puts the desktop into a matching focus mode.

What it does
- Keeps a list of projects, each with a workspace and any number of launch commands
- Keeps a list of focus modes, each of which can silence notifications and block idle
- Activating a project switches to its workspace, runs its commands, and applies the selected mode
- "Clear focus" turns Do Not Disturb and stay-awake back off
- Everything is edited in the panel as a form — projects, workspaces, commands and modes — with no JSON to hand-write
Requirements
- Omarchy 4 / Quickshell plugin support
- Hyprland, for workspace switching (both the 0.56+ Lua dispatcher and the older flat syntax are supported)
omarchy-shellfor Do Not Disturb and theomarchyCLI for stay-awake — both ship with Omarchy
Configuration
The panel writes this for you; the stored shape is:
{
"id": "andreconde.project-focus",
"defaultProject": "coding",
"defaultMode": "deep-work",
"projectsJson": "[{\"id\":\"coding\",\"name\":\"Coding\",\"workspace\":1,\"commands\":[\"omarchy launch browser\"]}]",
"modesJson": "[{\"id\":\"deep-work\",\"name\":\"Deep Work\",\"dnd\":true,\"stayAwake\":true}]"
}
workspace— set to0to stay on the current workspace.commands— each entry runs throughsh -lc.
Notes
- Activating is always an explicit action. The plugin does not relaunch your default project's apps on every shell restart; it only adopts the default mode.
- Renaming a project or mode regenerates its id and keeps it unique.
Install
omarchy plugin add https://github.com/andreconde21/omarchy-project-focus.git --enable --yes
Remove
omarchy plugin remove andreconde.project-focus --yes
If a focus mode is active, press Clear focus in the panel before removing — or afterwards run omarchy-shell notifications setDnd off and omarchy toggle idle allow-idle to undo it.
License
MIT — see LICENSE.