Commit b60e975
committed
hermes-workspace: deploy as the default MiOS chat frontend
Operator directive 2026-05-11:
'forget open webui for now -- Ollama >> hermes agent >>
hermes-workspace app is the front-end'
Chain:
mios-ollama (LLM models, GPU on the dev VM)
-> mios-hermes (OpenAI-compatible gateway, port 8642)
-> mios-hermes-workspace (web frontend, port 3030 -- the URL
the operator opens in their browser)
Files added:
* etc/containers/systemd/mios-hermes-workspace.container -- Quadlet
pulling ghcr.io/outsourc-e/hermes-workspace:latest. Wires
HERMES_API_URL to the local mios-hermes; HERMES_API_TOKEN pulls the
shared API_SERVER_KEY from /etc/mios/hermes/api.env so the same
secret authenticates the gateway and the workspace. PORT=3030
overrides the image's PORT=3000 default to match mios.toml
[ports].hermes_workspace (which collides with mios-forge otherwise).
COOKIE_SECURE=0 keeps plain-HTTP login working without a reverse-
proxy / TLS layer.
* usr/lib/systemd/system/mios-hermes-workspace-firstboot.service +
usr/libexec/mios/mios-hermes-workspace-firstboot.sh -- generates
the workspace's session password (HERMES_PASSWORD) into
/etc/mios/hermes-workspace/workspace.env on first boot. The
upstream image makes HERMES_PASSWORD REQUIRED whenever the bind
isn't pure loopback (we bind 0.0.0.0:3030), so without this the
container exits immediately on first start. Rotate by deleting the
file + restarting the firstboot service.
mios.toml changes:
* [ports] -- hermes_workspace = 3030 (canonical), webui moves to
3031 (legacy; Quadlet disabled in [quadlets.enable]).
* [image.sidecars] -- hermes_workspace = ghcr.io/outsourc-e/
hermes-workspace:latest.
* [quadlets.enable] -- mios-hermes-workspace = true, mios-hermes =
true (explicit), mios-webui = false. Open WebUI stays in-tree but
doesn't autostart by default; operators wanting it can flip the
flag in their layered toml.1 parent 9a8181d commit b60e975
4 files changed
Lines changed: 144 additions & 12 deletions
File tree
- etc/containers/systemd
- usr
- libexec/mios
- lib/systemd/system
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
Lines changed: 15 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1556 | 1556 | | |
1557 | 1557 | | |
1558 | 1558 | | |
1559 | | - | |
| 1559 | + | |
| 1560 | + | |
1560 | 1561 | | |
1561 | 1562 | | |
1562 | 1563 | | |
| |||
1582 | 1583 | | |
1583 | 1584 | | |
1584 | 1585 | | |
| 1586 | + | |
| 1587 | + | |
1585 | 1588 | | |
1586 | 1589 | | |
1587 | 1590 | | |
| |||
2167 | 2170 | | |
2168 | 2171 | | |
2169 | 2172 | | |
2170 | | - | |
2171 | | - | |
2172 | | - | |
2173 | | - | |
2174 | | - | |
2175 | | - | |
2176 | | - | |
2177 | | - | |
2178 | | - | |
2179 | | - | |
2180 | | - | |
| 2173 | + | |
| 2174 | + | |
| 2175 | + | |
| 2176 | + | |
| 2177 | + | |
| 2178 | + | |
| 2179 | + | |
| 2180 | + | |
| 2181 | + | |
| 2182 | + | |
| 2183 | + | |
| 2184 | + | |
| 2185 | + | |
| 2186 | + | |
2181 | 2187 | | |
2182 | 2188 | | |
2183 | 2189 | | |
| |||
0 commit comments