-
-
Notifications
You must be signed in to change notification settings - Fork 39
Gateway Cron Health Logs
The Manage section's operational tools, grouped because they're what you reach for when something needs attention.
Start, stop, and restart the messaging gateway. Live status:
- PID, uptime, connected platforms.
- Per-platform connection state mirrors the dot you see throughout the app.
- Pairing management — view approved users, approve new pairing requests, revoke existing approvals.
The gateway is what brings Hermes onto Telegram / Discord / Slack / etc. Stop it to take the agent offline without quitting Hermes itself.
View and edit Hermes scheduled jobs (~/.hermes/cron/jobs.json):
| Column | What it shows |
|---|---|
| Name | The job's display name. |
| Schedule |
Human-readable phrase (v2.5+) — "Every 6 hours", "Weekdays at 09:00", "@hourly", etc. — falling back to the raw cron expression for anything the formatter doesn't recognize. Backed by CronScheduleFormatter; ScarfGo renders the same text. |
| State |
enabled / paused / failed / running with an icon. |
| Last run / next run | Timestamps. |
| Delivery | Channel format like discord:chat:thread. |
Operations (new in 1.6 — full write support):
- Create a new job — prompt, optional skills, optional model override, schedule, delivery target.
- Edit any field on an existing job.
- Pause / resume.
- Run-now (one-shot trigger outside the schedule).
- Delete.
- Pre-run scripts, delivery-failure tracking, timeout type / seconds,
[SILENT]indicator for jobs that suppress output.
Edits go through ServerContext.writeText — atomic, transport-aware.
Component-level status and diagnostics. Mirrors hermes status and hermes doctor:
- API key validation per provider.
- Auth provider status.
- External tools availability (browser, terminal, voice).
- "Update available" indicator from Sparkle.
Two buttons:
-
Run Dump — captures
hermes dumpoutput inline. - Share Debug Report — uploads a structured report to Nous support, with a confirmation dialog before sending.
A Run supply-chain audit button runs hermes audit (which checks installed dependencies against the OSV.dev advisory database) and shows the result inline on the Health view. Gated on HermesCapabilities.hasHermesAudit.
When your configured model is one of the xAI Grok IDs retired on May 15 (grok-4-0709, grok-4-fast-*, grok-4-1-fast-*, grok-code-fast-1, grok-3, grok-imagine-image-pro), Health surfaces a warning with a one-click hermes migrate xai action to rewrite the stored model to its successor (grok-4.3 / grok-imagine-image-quality). Stored retired IDs still resolve at runtime via Scarf's alias map, so this is a cleanup nudge, not a hard failure. Gated on HermesCapabilities.hasXAIModelRetirement.
Hermes ships a local web UI (hermes dashboard) on port 9119 for config / session management. The Health header shows its live state:
-
Launch Dashboard spawns
hermes dashboard --no-open --port 9119detached, waits for the port to bind (probing/api/statusup to ~6s), then openshttp://127.0.0.1:9119in the default browser. -
Open in Browser / Stop take over once the dashboard is running. Stop works whether Scarf launched it or you started it from a terminal — it falls back to
pkill -f "hermes dashboard"in the external case. - Liveness is polled every 3 seconds via a 500ms
GET /api/status— that endpoint is whitelisted in Hermes's_PUBLIC_API_PATHSso no session token is needed for detection.
The row is hidden for remote servers — the dashboard binds 127.0.0.1 by default and SSH tunneling isn't wired up yet.
Real-time tail for the three main logs at ~/.hermes/logs/:
-
agent.log— the agent's loop. -
errors.log— errors only. -
gateway.log— messaging gateway.
Filters:
- Level — DEBUG / INFO / WARNING / ERROR / CRITICAL.
- Component — Gateway / Agent / Tools / CLI / Cron.
- Session — clickable session-ID pills filter the view to one session.
- Text search.
Local windows tail with FileHandle. Remote windows run ssh host tail -F with partial-line buffering so you don't see half-arrived JSON. See HermesLogService.
Restructured in 1.6 into a 10-tab layout exposing ~60 previously hidden config fields:
| Tab | What lives here |
|---|---|
| General | Updates (Sparkle toggle + manual check), basic preferences. |
| Display | Streaming, reasoning visibility, cost display, verbose mode. |
| Agent | Model picker (backed by models.dev catalog — 111 providers + 6 overlay-only providers from HERMES_OVERLAYS), max turns, approval mode, reasoning effort. |
| Terminal | Terminal backend, Docker / container settings, modal options. |
| Browser | Browser backend selection. |
| Voice | TTS / STT providers, PTT, silence threshold (default 200ms). |
| Memory |
memory_enabled, memory_char_limit, user_char_limit, memory_provider. Reset memory (v2.5+) — a toolbar button on Memory views (Mac + iOS) runs hermes memory reset --yes with a destructive-confirmation dialog. |
| Aux Models | All 8 auxiliary model tasks (vision, web extract, compression, delegation, etc.). |
| Security | Tirith sandbox, command allowlist, website blocklist, redaction. |
| Secrets (v2.10.0+, Hermes v0.15+) |
Bitwarden Secrets Manager (secrets.bitwarden.*) — enable, access_token_env (default BWS_ACCESS_TOKEN), project_id, override_existing, server_url (US / EU / self-hosted), cache_ttl_seconds, auto_install. The bootstrap token itself lives in ~/.hermes/.env, not in this form. Gated on HermesCapabilities.hasBitwarden. |
| Advanced | Logging level / rotation, checkpoints, human-delay simulation, compression thresholds. |
Backup & Restore lives at the bottom — wraps hermes backup (zips the current profile) and hermes import (unzips into the active profile). One-click via context.runHermes.
ScarfGo's Settings tab is read view + Quick Edits — see ScarfGo and Platform Differences. The 7 quick-edit keys (model.default / provider, agent.approval_mode / max_turns, display.streaming / show_cost / show_reasoning) shell out to hermes config set. Other keys remain read-only on iOS.
- Core Services — the services backing each of these views.
- Hermes Paths — where each operational file lives.
- Updating — Sparkle, the appcast, and how the auto-update flow works.
Last updated: 2026-05-28 — Scarf v2.10.0 (Health supply-chain audit button + xAI retired-model migrate action, Settings → Secrets / Bitwarden Secrets Manager tab)
Wiki edited via the local .wiki-worktree/ clone. See Wiki Maintenance for the workflow. Last sync: 2026-04-20.
Getting Started
ScarfGo (iOS)
User Guide
- Dashboard
- Insights & Activity
- Chat
- Slash Commands
- Memory & Skills
- Projects & Profiles
- Project Templates
- Template Catalog
- Template Ideas
- Platforms / Personalities / Quick Commands
- Servers & Remote
- MCP, Plugins, Webhooks, Tools
- Gateway / Cron / Health / Logs
Architecture
- Overview
- Core Services
- Design System
- Data Model
- Transport Layer
- ScarfCore Package
- Sidebar & Navigation
- ACP Subprocess
Developer Guide
Reference
Troubleshooting
Contributing
Release History
Legal & Support
Unsorted