virtual-insanity
← 리포트 목록

Hermes 시스템 전수조사

2026-05-12 hermes [hermes, openclaw, ops, audit]

Hermes 시스템 전수조사

결론

  • Hermes 핵심 게이트웨이는 살아 있음: 8642 /health 정상, 인증 포함 /v1/models 정상.
  • Telegram 수신 루프도 살아 있음: 게이트웨이 로그에서 getUpdates 정상 반복.
  • 그러나 운영 백본 일부가 막혀 있음: cron 실행이 2026-05-11 14:03 이후 멈춘 흔적, command queue는 61건 대기, agent queue worker LaunchAgent들은 plist만 있고 현재 로드되지 않음.
  • Home Assistant와 Telegram miniapp LaunchAgent는 반복 재시작 실패 상태.
  • Codex proxy는 18642에서 정상인데 Hermes config는 18643을 가리켜 포트 불일치가 있음.

확인한 상태

살아 있는 핵심

  • ai.hermes.gateway: running, pid 68802, port 8642.
  • com.openclaw.codex-proxy: running, pid 12337, port 18642.
  • com.ron.pipeline-orchestrator: running, pid 12761.
  • com.ron.vault-watcher: running, pid 29083.
  • com.hermes.collab-review-loop: running, pid 89396.
  • virtual-insanity webapp: port 8080 응답 정상.
  • MCP: 4/4 healthy.

막힌 부분

  • Hermes cron jobs: 112개 중 106개 enabled. 최근 실행 기록은 2026-05-11 14:03에서 멈춤.
  • cron output 디렉터리도 최신 파일/디렉터리가 2026-05-11 14:03 기준.
  • dashboard command queue: queued 61, done 18, failed 6, cancelled 3.
  • Hermes DB bus_commands: queued 61. 오래된 대기건은 2026-04-14부터 남아 있음.
  • com.openclaw.agent-queue-ron/codex/cowork/guardian/...: plist는 있으나 launchctl print gui/501/<label> 기준 서비스 미로드.
  • com.hermes.homeassistant: spawn scheduled, runs 152275, last exit 1. 로그 원인: homeassistant 컨테이너 이름 충돌 반복.
  • com.hermes.telegram-miniapp: spawn scheduled, runs 10057, last exit 1. 다만 별도 tmux 프로세스로 9119 웹은 응답 중.
  • Knowledge 구조: dashboard 기준 ROOT lock 미감지, ontology TTL 0 bytes, prompt pack 0.

포트 점검

  • 8642: Hermes gateway 정상.
  • 18642: codex-chat proxy 정상.
  • 18643: 응답 없음.
  • 18789: 구 Node gateway 포트, 응답 없음.
  • 9119: Hermes miniapp 웹 응답 있음.
  • 3344: dashboard API 일부 응답, 루트/health는 404.
  • 8080: webapp 응답 정상.

설정 불일치

  • ~/.hermes/config.yaml custom provider/fallback base_url: 127.0.0.1:18643.
  • 실제 codex proxy: 127.0.0.1:18642.
  • .env의 Hermes Codex base URL은 18642.
  • 판단: Telegram/LLM 호출 경로에서 config.yaml을 우선하면 실패할 수 있음.

로그 기반 장애

  • gateway error: Home Assistant 연결 실패 반복, aiohttp client session 미정리 로그 반복.
  • homeassistant launchagent: Docker container name conflict 반복.
  • autopilot sweeper: 매분 jobs.json 백업 생성, changed 0 반복.
  • ron orchestrator: queued 수만 보고 stuck 없음으로 판단, 실제 worker 미로드 문제는 처리하지 못함.

우선 복구 순서 제안

  1. Codex proxy 포트 불일치 정리: config.yaml의 18643을 18642로 맞추거나 proxy를 18643으로 추가 기동.
  2. agent queue worker LaunchAgent 로드 상태 복구: ron/codex/cowork/guardian 워커부터 bootstrap/kickstart 후 queued 감소 확인.
  3. cron ticker 정지 원인 확인: .tick.lock, gateway scheduler, jobs.json next_run_at 갱신 여부 점검 후 cron 1개 수동 트리거로 검증.
  4. Home Assistant launchagent 루프 정리: 기존 컨테이너 상태 확인 후 start.sh가 중복 생성하지 않도록 수정.
  5. Telegram miniapp LaunchAgent와 tmux 이중 실행 정리: 하나만 정식 관리자로 남김.
  6. command queue 오래된 항목 정리 정책 수립: 4월 KPI/연구성 대기건은 보류·취소·재분류 필요.

실행한 검증

  • 기준 문서 확인: .openclaw/workspace/docs/system-baseline.md, latest.json.
  • MCP: knowledge_os.py mcp-check → 4/4 정상.
  • API: gateway health/models, dashboard structure/command queue, webapp 루트, miniapp 루트 확인.
  • DB: Hermes/OpenClaw ops_multiagent.db status 집계.
  • LaunchAgent: plist 목록, launchctl print, 주요 서비스 상태 확인.
  • 로그: gateway/error/homeassistant/autopilot/orchestrator tail 샘플 확인.