⌂ Home ☷ Board

Mission Control source note: lotsoftick/hermes_client

Reviewed: 2026-05-22 13:10 SAST Source: https://github.com/lotsoftick/hermes_client Local inspection clone: /tmp/hermes_client_review at bc5a2e4 (fixed gateway status on linux)

Lucienne view

This is very relevant to Mission Control, but not as a drop-in replacement.

It validates several product/architecture decisions we have been circling around for Mission Control:

  1. A chat-first web cockpit can sit over Hermes without needing a heavyweight always-on Hermes API gateway.
  2. Hermes profiles map naturally to UI-visible "agents"/runtimes.
  3. CLI invocation plus SSE streaming is a pragmatic runtime adapter pattern.
  4. Session JSON files can be treated as durable truth and reconciled into a UI database.
  5. Skills, plugins, cron jobs, profiles, model setup, and chat belong in one coherent operator shell.
  6. A PTY-backed setup drawer is useful for preserving real CLI setup flows rather than re-implementing every wizard.

Mission Control should borrow the patterns, not import the app wholesale.

What the repo appears to be

Hermes Client is a public MIT-licensed Node/React app:

Best ideas to pull into Mission Control

1. Runtime adapter by CLI, not gateway

Relevant file: api/src/services/hermes/chat.ts and api/src/services/hermes/cli.ts.

Pattern:

Mission Control implication:

2. Profiles as UI agents/runtimes

Relevant file: api/src/services/hermes/profiles.ts.

Pattern:

Mission Control implication:

3. Session file reconciliation

Relevant file: api/src/services/hermes/sync.ts.

Pattern:

Mission Control implication:

4. Cron surface across profiles

Relevant file: api/src/services/hermes/cron.ts.

Pattern:

Mission Control implication:

5. PTY setup drawer

Relevant files: api/pty-bridge.py, client/src/features/agent/setup/*.

Pattern:

Mission Control implication:

Cautions / things not to import blindly

  1. Default admin credentials are insecure for anything exposed beyond localhost:
  2. admin@admin.com / 123456 seeded on first run.
  3. Fine for a local toy; not acceptable for MC without forced first-login rotation or generated one-time secret.

  4. CORS defaults are permissive:

  5. README says allow-all unless HERMES_STRICT_CORS=1.
  6. MC should default closed, especially over Tailscale/LAN.

  7. The app is single-Hermes oriented:

  8. It manages Hermes profiles well, but MC must orchestrate multiple runtime types and ticket workflows.

  9. Direct on-disk schema reads are powerful but version-coupled:

  10. Good for speed and fidelity.
  11. MC should wrap these in explicit adapter contracts with schema version checks.

  12. This is not a governance layer:

  13. No ticket lifecycle, approval gates, send-back review loop, WAT controls, or multi-agent assignment model.

Recommendation

Use hermes_client as a reference implementation for the "Hermes profile cockpit" slice inside Mission Control.

Do not fork it into MC wholesale. Instead create an MC runtime adapter note/issue with these borrowed patterns:

Acceptance criteria for integrating these ideas into MC:

Bottom line

This repo is probably the best concrete reference so far for the Hermes-specific part of Mission Control. It gives us validated patterns for profiles, streaming, setup, cron, and session reconciliation. The MC redesign should explicitly cite it as inspiration for the runtime adapter layer while preserving MC's broader governance/ticket/cockpit model.