MicroFish/docs/hosting/mirofish-hermes-integration...

2.5 KiB

MiroFish Hermes Integration Contract

Purpose

This document defines the minimum stable contract for Hermes and OpenClaw to use the MiroFish host safely.

Canonical Paths

  • Runtime: /Users/Shared/OpenClaw/mirofish-runtime
  • Transcribes: /Users/Shared/OpenClaw/transcribes
  • Source only: /Users/adrianlat/Library/Mobile Documents/com~apple~CloudDocs/airShare/MiroFish

Service Identity

  • Service label: com.openclaw.mirofish
  • Runtime owner: airstride
  • Access model: LAN + SSH only

Network Endpoints

  • Frontend LAN URL: http://10.0.0.161:3000
  • Backend LAN URL: http://10.0.0.161:5001
  • Backend health: http://10.0.0.161:5001/health
  • Frontend proxy health path: http://10.0.0.161:3000/api/graph/project/list

SSH Access

  • SSH alias: openclaw-mirofish
  • SSH user: airstride

Recommended tunnels:

ssh -L 3000:127.0.0.1:3000 openclaw-mirofish
ssh -L 5001:127.0.0.1:5001 openclaw-mirofish

Tunnel-based local URLs:

  • Frontend: http://127.0.0.1:3000
  • Backend: http://127.0.0.1:5001

Required Health Checks

Before Hermes or OpenClaw send operational work to MiroFish, the host should pass:

sudo launchctl print system/com.openclaw.mirofish
curl -sS http://127.0.0.1:5001/health
curl -sSI http://127.0.0.1:3000/
curl -sS http://127.0.0.1:3000/api/graph/project/list

Expected results:

  • LaunchDaemon present in system
  • Backend returns {"service":"MiroFish Backend","status":"ok"}
  • Frontend returns HTTP/1.1 200 OK
  • Frontend proxy returns a successful JSON payload

Smoke Test

Use the canonical smoke test after reboot or maintenance:

/Users/Shared/OpenClaw/mirofish-runtime/scripts/host-smoke-test.sh

Operational Data Rules

  • Do not run MiroFish from iCloud.
  • Do not write operational runtime state back into the iCloud source tree.
  • Treat /Users/Shared/OpenClaw/mirofish-runtime/backend/uploads as persistent operational state.
  • Treat /Users/Shared/OpenClaw/transcribes as the canonical local operational transcribes dataset.

Consumption Rules

  • Prefer SSH tunnels for operator access from other machines.
  • Use LAN URLs only inside the trusted local network.
  • Do not expose ports 3000 or 5001 through router forwarding or public internet ingress.
  • Hermes and OpenClaw should assume MiroFish is a long-lived host service, not an ephemeral dev process.

Operational Commands

From /Users/Shared/OpenClaw/mirofish-runtime:

./scripts/host-start.sh
./scripts/host-stop.sh
./scripts/host-status.sh
tail -f runtime/logs/backend.log
tail -f runtime/logs/frontend.log