Spaces:
Runtime error
Runtime error
Commit History
-
feat: self-healing gateway, package replay, private space guard, key rotation, readme sync
- start.sh: gateway restart loop, shell capture wrappers (apt/pip/uv/npm/hermes), pool key promotion for 16 providers, HUGGINGMES_RUN startup scripts, env-driven package installs, JupyterLab PID guard, enhanced boot banner - health-server.js: private space guard (HF API detect + redirect), embed-aware dashboard buttons, /hf-redirect route - .env.example: add HUGGINGMES_RUN, package installs, key rotation pools, gateway restart vars, terminal vars, webhook URL - README.md: document all new features, fix terminal section (on by default), add ephemeral package replay and key rotation sections Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>43301b6 -
fix: use venv python for JupyterLab — system python3 lacks jupyterlab
jupyterlab is installed into /opt/hermes/.venv, not system python3. start_jupyter() was calling python3 -c "import jupyterlab" which fails on system python → returned 1 → set -euo pipefail killed start.sh → container crashed every boot → HF Space stuck in RUNNING_APP_STARTING. Fixes: - Use /opt/hermes/.venv/bin/python for the import check and launch - Change failing return 1s in start_jupyter to return 0 (non-fatal) - Restore HEALTHCHECK with 60s start-period (was accidentally removed) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>4c78093 -
feat: terminal on by default, uses GATEWAY_TOKEN, add dashboard button
- DEV_MODE defaults to true — no extra secret needed - JUPYTER_TOKEN falls back to GATEWAY_TOKEN (single password) - Add "Open Terminal →" button beside "Open Hermes Agent →" on dashboard - Update README to reflect new defaults Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>617d143 -
feat: add JupyterLab terminal at /terminal/ (DEV_MODE=true)
Install JupyterLab in the venv. When DEV_MODE=true and JUPYTER_TOKEN is set (strong token required — full shell access), start JupyterLab on port 8888 with /terminal/ base URL. health-server proxies HTTP and WebSocket (required for kernels/terminals) to JupyterLab. Usage: set DEV_MODE=true and JUPYTER_TOKEN=<openssl rand -hex 32> in HF Space secrets, then visit /terminal/. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>775b8b3
-
chore: replace emoji with 🪽 (Hermes winged sandals)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>cf96b21 -
fix: sync state on natural gateway exit to preserve user-set keys
When user restarts the gateway from Hermes dashboard, the gateway process exits naturally. wait() returns but SIGTERM trap never fires, so no sync runs before the container shuts down. Keys set via the UI are lost because the next restore pulls a stale backup. Add an explicit sync-once after wait() to cover the natural-exit path. SIGTERM path already handled by graceful_shutdown trap. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>bdb63d2 -
fix: restore correct gemini provider model name format
Hermes gemini provider requires bare model name (e.g. gemini-2.5-flash) not the prefixed form (google/gemini-2.5-flash). Reverts the incorrect google/ prefix preservation from the previous commit and reunifies google|gemini case with correct prefix stripping. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>6c85d60 -
refactor: decouple model provider configuration from model names to enable automatic provider inference by Hermes
baeabbc
-
feat: add PATH export to profile and enable secret redaction by default
5534b90 -
fix: remove venv from PATH and symlink hermes CLI to .local/bin for terminal compatibility
099d3ad
-
feat: add persistent plugin directory and use setdefault for configuration schema preservation
765659f
-
fix: update sync interval to 600 seconds and enhance environment variable handling in startup scripts
9277464 -
fix: correct spelling of 'HuggingMes' across multiple files
Co-authored-by: Copilot <copilot@github.com>1428d20 -
feat: update Dockerfile and start.sh to use python3 and enhance startup banner
Co-authored-by: Copilot <copilot@github.com>d3062ba
-
refactor: remove redundant startup CLI logging, update linting instructions, and simplify dashboard UI presentation
bf48a19 -
feat: replace setup-uptimerobot.sh with a modular cloudflare-keepalive-setup.py for automated health check pinging.
06fe1a1 -
Add Cloudflare keepalive worker and restyle dashboard
728bb65 -
Document and map Gemini model config
08d8db1 -
Allow startup without model secrets
df5853b -
Add HuggingMess Hermes Space wrapper
b9d12d1