← 리포트 목록
OpenClaw 잔존 2개 dual-run 모니터 + LaunchAgent 6개 relabel 권고
2026-04-24
residual
[openclaw, hermes, dual-run, launchagent, migration]
결론
- 잔존 OpenClaw cron 2개(
daily-context-snapshot,intelligence-discovery-filter)는 1주 dual-run 관측 대상으로 등록 완료. - 기존
dual_run_compare.py에 두 후보를 추가했고, Hermes cron에openclaw-kill-dual-run-monitor를 매일 22:30 KST로 등록했다. - 현재 실측 diff:
daily-context-snapshot유사도 83.3%,intelligence-discovery-filter유사도 1.4% → 둘 다 즉시 사망 금지, 1주 추적 필요. - LaunchAgent 6개는 전부
/Users/ron/.hermes/...를 실행하지만 label만com.openclaw.*로 남아 있다. 실제 bootout/bootstrap은 이번 라운드에서 하지 않고, 아래 순서로 relabel 권고.
1. 변경/등록 내역
변경 파일
/Users/ron/.hermes/workspace/scripts/admin/dual_run_compare.pydaily-context-snapshot후보 추가intelligence-discovery-filter후보 추가filtered_*.json처럼 timestamp가 붙는 산출물을 정확히 잡기 위해 glob 비교 지원 추가/Users/ron/.hermes/cron/jobs.jsondaily-context-snapshotHermes mirror job 추가openclaw-kill-dual-run-monitormonitor job 추가
백업
/Users/ron/.hermes/workspace/scripts/admin/dual_run_compare.py.bak-residual2-20260424142242/Users/ron/.hermes/cron/jobs.json.bak-residual2-20260424142242
2. 잔존 2개 dual-run 상태
| 잡 | OpenClaw 상태 | Hermes 상태 | 모니터 결과 | 판정 |
|---|---|---|---|---|
daily-context-snapshot |
enabled=true, 0 9,22 * * *, 최근 ok |
Hermes mirror 등록, next 2026-04-24T22:00:00+09:00 |
latest 유사도 83.295% | 1주 dual-run 유지 |
intelligence-discovery-filter |
enabled=true, 0 */6 * * * |
ocRESTORE-intelligence-cluster active, next 2026-04-25T01:00:00+09:00 |
filtered output 유사도 1.423% | 1주 dual-run 유지, diff 원인 추적 |
모니터 cron
- id:
openclaw-kill-dual-run-monitor - schedule:
30 22 * * *Asia/Seoul - command:
/usr/bin/python3 /Users/ron/.hermes/workspace/scripts/admin/dual_run_compare.py --output /Users/ron/knowledge-agent/400-reports/260424_dual_run_compare_residual.md - status: active
- next_run:
2026-04-24T22:30:00+09:00 - structured output:
/Users/ron/.hermes/workspace/memory/dual_run_logs/latest_summary.json/Users/ron/.hermes/workspace/memory/dual_run_logs/20260424/*
1회 수동 실행 증거
/Users/ron/knowledge-agent/400-reports/260424_dual_run_compare_residual.md
verdict=OpenClaw 사망 보류 comparable=7 pass95=0 stale=6 death_candidates=6
daily-context-snapshot COMPARE_ONLY 83.295
intelligence-discovery-filter COMPARE_ONLY 1.423
3. LaunchAgent 6개 relabel 권고
실측 기준: launchctl print gui/501/<label>에서 6개 모두 running. plist의 ProgramArguments는 전부 /Users/ron/.hermes/... 경로를 실행한다.
| 현재 label | 실행 대상 | live 상태 | 권고 | 이유 |
|---|---|---|---|---|
com.openclaw.auto-dispatcher |
/Users/ron/.hermes/workspace/scripts/monitoring/auto_dispatcher.sh |
running | com.hermes.auto-dispatcher로 relabel |
Hermes workspace만 사용. 다만 Telegram info 발송 경로가 있어 새 label로 dry-run 후 교체 |
com.openclaw.dispatch-watcher |
/Users/ron/.hermes/workspace/scripts/monitoring/dispatch_watcher.sh |
running | com.hermes.dispatch-watcher로 relabel |
Hermes dispatch log 감시. 의존성 낮고 relabel 적합 |
com.openclaw.hermes-tailer |
/Users/ron/.hermes/workspace/scripts/pipeline/hermes_otel_tailer.py |
running | com.hermes.tailer로 relabel |
이름부터 Hermes 기능. OpenClaw label만 legacy |
com.openclaw.task-notifier |
/Users/ron/.hermes/workspace/scripts/task_notifier.py --daemon |
running | com.hermes.task-notifier로 relabel, 단 테스트 후 |
bus_commands 알림. Telegram ops 발송 있으므로 중복 방지 필요 |
com.openclaw.collab-review-loop |
/Users/ron/.hermes/workspace/scripts/collab_review_loop.py |
running | 1순위 relabel 후보 | Hermes DB/run/workspace만 사용. 발송 루프보다 리뷰 루프 성격, 안전 |
com.openclaw.otel-collector |
/Users/ron/.hermes/workspace/src/monitoring/run_collector.py |
running | 유지 또는 마지막 relabel | Hermes 관측 필수. 중단 리스크가 가장 크므로 마지막 단계에서 com.hermes.otel-collector로 교체 권고 |
권고 순서
collab-review-loop— 영향 작고 Hermes-only.dispatch-watcher— 단순 파일 감시.hermes-tailer— Hermes 관측 보조.auto-dispatcher— dispatch 핵심이므로 새 label 병행 확인 후.task-notifier— Telegram 중복 방지 확인 후.otel-collector— 관측 본체라 마지막.
이번 작업에서는 실행 중 프로세스를 끊는 bootout/bootstrap은 하지 않았다. relabel은 다음 단계에서 새 com.hermes.*.plist 생성 → bootstrap 확인 → 기존 com.openclaw.* bootout 순서가 안전하다.
4. 검증 커맨드 요약
python3 -m py_compile /Users/ron/.hermes/workspace/scripts/admin/dual_run_compare.py
python3 -m json.tool /Users/ron/.hermes/cron/jobs.json
cd /Users/ron/.hermes/hermes-agent && venv/bin/python -m hermes_cli.main cron list | grep -i -A4 -B1 'daily-context\|dual-run'
/usr/bin/python3 /Users/ron/.hermes/workspace/scripts/admin/dual_run_compare.py --output /Users/ron/knowledge-agent/400-reports/260424_dual_run_compare_residual.md
launchctl print gui/$(id -u)/com.openclaw.otel-collector
5. 자체평가
- 정확성: 4.5/5 — 잔존 2개를 실제 비교 후보와 cron 모니터에 연결. daily Hermes job이 jobs.json에 없어 mirror job을 복구했다.
- 완성도: 4.3/5 — relabel은 권고까지 완료. 실제 relabel/bootout은 중단 리스크 때문에 다음 단계로 분리.
- 검증: 4.5/5 — py_compile, JSON validation, Hermes cron list, 수동 비교 실행 확인.
- 최소 변경: 4.4/5 — 비교 스크립트 후보 추가와 jobs.json 2개 job 추가만 수행.
Remaining Risks:
- intelligence-discovery-filter diff가 1.4%로 매우 큼. 1주 관측 중 count/입력 소스 차이를 별도 추적해야 한다.
- LaunchAgent relabel 시 task-notifier/auto-dispatcher는 Telegram 중복 발송 가능성이 있어 병행 구동 금지.
DONE