Commit graph

53 commits

Author SHA1 Message Date
Hermes Agent
3c8b617471 fix(hermes-webui): hermes-agent as root (runAsUser:0), webui as uid1000
Removed pod runAsUser/runAsNonRoot to allow hermes-agent root.
Hermes-agent: runAsUser:0 runAsGroup:0 (root).
Hermes-webui: runAsUser:1000 runAsGroup:1000 (non-root, matches WANTED_UID).
2026-05-07 13:45:42 +00:00
sirius0xdev
7a76e088e4
Update deployment.yaml 2026-05-07 09:30:15 -04:00
sirius0xdev
84305d3605
Update deployment.yaml 2026-05-07 09:29:48 -04:00
sirius0xdev
2f09278164
Merge branch 'master' into fix/hermes-webui-container-init-error 2026-05-07 09:15:52 -04:00
Hermes Agent
22964a16a8 fix(hermes-webui): remove root initContainer and custom /etc mount to fix read-only fs + sudo error
- Removed initContainer running as root (violates PodSecurity restricted:latest)
- Removed shared emptyDir /etc mount (no longer needed)
- Rely on fsGroup:1000 + runAsUser:1000 for volume ownership and container UID
- Added runAsNonRoot: true to podSecurityContext and both containers for policy compliance

Pod will now start, webui runs as UID 1000 == WANTED_UID, init.bash skips chown/sudo.
2026-05-07 13:14:01 +00:00
sirius0xdev
bbc662cd85 plz 2026-05-07 02:22:18 +00:00
sirius0xdev
bdcaf9f8f6 fix webui 2026-05-07 02:16:48 +00:00
sirius0xdev
d87f5963d3 webui fix 2026-05-07 01:43:57 +00:00
sirius0xdev
d187eae375 fix priv escalation 2026-05-07 01:32:24 +00:00
sirius0xdev
c84ef732f8 fix hermes webui 2026-05-07 01:28:39 +00:00
Hermes Agent
a893406374 fix(hermes-webui): add init container to create webui user entry 2026-05-06 21:21:11 +00:00
sirius0xdev
f886934963
Update deployment.yaml 2026-05-06 17:11:07 -04:00
sirius0xdev
adce52ad8b
Update deployment.yaml 2026-05-06 17:05:07 -04:00
sirius0xdev
4b81e2310f
Update deployment.yaml 2026-05-06 17:03:42 -04:00
sirius0xdev
e79afb4c7b
Update deployment.yaml 2026-05-06 16:56:47 -04:00
sirius0xdev
9500d6d248
Update deployment.yaml 2026-05-06 16:51:45 -04:00
sirius0xdev
2ed7ac55dc
Update deployment.yaml 2026-05-06 16:43:30 -04:00
sirius0xdev
235a42cb2b
Update deployment.yaml 2026-05-06 16:26:34 -04:00
sirius0xdev
1ccfb45263
Update deployment.yaml 2026-05-06 16:15:06 -04:00
Hermes Agent
2ff889d297 fix(hermes-webui): fsGroup=1000 + PodSecurity compliance for PVC access 2026-05-06 19:56:22 +00:00
Hermes Agent
84b3d2436e feat: replace Open WebUI with native Hermes WebUI
Swap the generic Open WebUI frontend for the purpose-built
hermes-webui (nesquena) with full CLI parity:

- 3-panel layout: sessions, chat, workspace file browser
- Native session, cron, skills, memory, profile management
- Themes (dark/light/slate/solarized/monokai/nord/oled)
- Mobile responsive
- Sidecar container sharing the hermes-agent PVC
- Exposed via Tailscale on port 8787 (plain HTTP)

Access: http://hermes-webui.tail14a963.ts.net:8787
2026-05-06 19:33:38 +00:00
sirius0xdev
ec1ee82b19
Merge pull request #102 from sirius0xdev/fix/hermes-webui-http-only
fix: Force plain HTTP on hermes-webui Tailscale proxy
2026-05-06 14:51:05 -04:00
Hermes Agent
72866d0044 fix: force plain HTTP on hermes-webui Tailscale proxy
tailscale.com/https-only: 'false' still attempts TLS termination,
causing ERR_SSL_PROTOCOL_ERROR when the backend speaks plain HTTP.

Replaced with tailscale.com/ports: 'http:8080' to explicitly tell
the operator to serve unencrypted HTTP on this port.
2026-05-06 18:50:09 +00:00
sirius0xdev
7810613030
Update open-webui-deployment.yaml 2026-05-06 14:20:52 -04:00
Hermes Agent
bac231097e fix(open-webui): add tailscale.com/https-only: false
Tailscale defaults to HTTPS (443) but Open WebUI only serves HTTP (8080).

- Add tailscale.com/https-only: "false" annotation
- Now hermes-webui.tail14a963.ts.net:8080 works without SSL errors

Fixes ERR_SSL_PROTOCOL_ERROR
2026-05-06 18:05:02 +00:00
Hermes Agent
192cd656fd fix(open-webui): add emptyDir volume for SQLite DB
Open WebUI crashes on startup because it can't write its SQLite database to
/app/backend/data.

- Add emptyDir volume at /app/backend/data
- Pod restarts will lose data (dev-only acceptable)

Fixes pod crash: peewee.OperationalError: unable to open database file
2026-05-06 17:37:06 +00:00
Hermes Agent
e285401341 fix: use Grafana Tailscale annotations on Open WebUI service
- tailscale.com/expose: "true"
- tailscale.com/hostname: "hermes-webui"
- tailscale.com/tags: "tag:k8s-operator"
- port: 8080 -> 8080 (match Open WebUI default)
- type: ClusterIP explicit
2026-05-06 16:00:17 +00:00
Hermes Agent
214133d062 feat: add Open WebUI with Tailscale exposure
- Enable Hermes API Server (port 8642) in gateway deployment
- Add Open WebUI deployment connected to Hermes API Server
- Expose Open WebUI via Tailscale using Service annotations
- Create ClusterIP Service for Hermes Agent API Server
- All deployments follow PodSecurity restricted policy
2026-05-06 15:36:27 +00:00
Hermes Agent
8b6edd3c6a fix: copy ConfigMap to PVC on startup so Hermes config is writable 2026-05-06 03:07:30 +00:00
sirius0xdev
4e9ed1fa2d fix pvc mixup 2026-05-06 03:02:09 +00:00
sirius0xdev
f2e2a9c064
Update rays-deployment.yaml 2026-05-05 22:47:12 -04:00
sirius0xdev
bb31aaceeb
Update deployment.yaml 2026-05-05 22:46:15 -04:00
sirius0xdev
36d09df5b6 fix configmap name 2026-05-06 01:53:13 +00:00
sirius0xdev
ce26d0aaee change pvc name 2026-05-06 01:47:59 +00:00
sirius0xdev
e05e71d0fc vllm image error fix 2026-05-06 01:42:12 +00:00
sirius0xdev
2200006c41 fix vllm error 2026-05-06 01:31:45 +00:00
sirius0xdev
862c8c0f19
Update deployment.yaml 2026-04-29 12:59:21 -04:00
sirius0xdev
2548bccfc6 fix(hermes-agent): add type: openai to vLLM providers for model listing
Enables /v1/models endpoint query for custom providers (fixes qwen model not showing under qwen-vllm).

Changes:
- Added `type: openai` to `rtx6000-brain` and `qwen-vllm` providers
- Standardized base_url to full FQDN: \*.customer1.svc.cluster.local
- Added context_length to qwen-vllm provider
- Updated models.qwen-vllm base_url and context_length for consistency
2026-04-29 16:18:35 +00:00
sirius0xdev
37a4179f96
Update deployment.yaml 2026-04-29 09:22:34 -04:00
sirius0xdev
ec41b38f1a feat: add rtx6000-brain and qwen-vllm custom vLLM providers to Hermes ConfigMap
- Makes rtx6000-brain selectable in the /model provider picker (preferred name)
- Uses short Kubernetes service names (optimal for same-namespace)
- Keeps existing models: section for CLI compatibility
- Will appear as provider options after ArgoCD/Helm rollout + /restart
2026-04-29 12:52:00 +00:00
sirius0xdev
8c1c55dd80
Update kustomization.yaml 2026-04-29 08:23:18 -04:00
sirius0xdev
13db3d4a3d
Update kustomization.yaml 2026-04-29 08:22:58 -04:00
sirius0xdev
6989b18f37 feat(hermes-config): add clean 'vllm' provider for the existing rtx6000-brain-service
- Primary 'vllm' entry for easy /model vllm usage
- Uses model from the rtx6000 deployment
- Kept existing qwen-vllm, rtx6000-vllm, and rtx6000-brain for compatibility
2026-04-29 05:50:54 +00:00
sirius0xdev
58451ccca5 feat(hermes-config): add rtx6000-brain provider using model from vLLM deployment
Added rtx6000-brain alongside the existing rtx6000-vllm entry.
Uses the exact model name from rtx6000-vllm Deployment and the correct ClusterIP service endpoint.
2026-04-29 05:42:31 +00:00
sirius0xdev
9e5eea2cd1 feat(hermes-agent): add hermes-config ConfigMap and mount to deployment
- hermes-config::ConfigMap with current /opt/data/config.yaml (models incl. vLLM, agent/tool settings)
- deployment.yaml: volume + subPath mountPath=/opt/data/config.yaml (overrides PVC)
- kustomization.yaml: include configmap.yaml

Standardizes Hermes config via K8s ConfigMap for easier management.
2026-04-29 04:45:18 +00:00
sirius0xdev
bb7dcd5651 fix node selector for 6000pro 2026-04-28 23:16:51 +00:00
sirius0xdev
b4ffa0c238 add wellness probes to vllm and activate keda 2026-04-25 23:23:48 +00:00
sirius0xdev
ed165b9cc4 add xai to hermes 2026-04-25 21:26:54 +00:00
sirius0xdev
33570bd137 fix typo 2026-04-25 21:11:57 +00:00
sirius0xdev
dc1afb1472 activate hermes agent 2026-04-25 21:02:14 +00:00