virtual-insanity
← 리포트 목록

OpenClaw 단계적 사망 4-8주 로드맵

2026-04-24 openclaw [openclaw, hermes, migration, kill-roadmap, cron]

Executive Summary

  • 현재 스냅샷: OpenClaw cron 297개 중 enabled 6개, Hermes cron 80개 중 enabled 75개.
  • 목표: surface:4 inventory가 확정되기 전까지는 “가설 30개” 기준으로 운영하고, 실제 inventory 수령 후 주간 kill list만 갱신한다.
  • 첫 주 후보 5개: oil-supply-monitor, oil-supply-monitor-afternoon, oil-supply-monitor-evening, daily-context-snapshot, intelligence-discovery-filter.

0. 현재 기준선 (2026-04-24)

영역 총 job enabled 비고
OpenClaw cron 297 6 이미 대부분 disabled. 남은 enabled 6개가 즉시 정리 대상
Hermes cron 80 75 실운영 backbone

현재 OpenClaw enabled:

OpenClaw job schedule Hermes 동등/후보 1차 판정
oil-supply-monitor 06:00 ocCRIT-oil-supply-monitor-global Week 1 dual-run 종료 후 kill 후보
oil-supply-monitor-afternoon 14:00 ocRESTORE-oil-supply-monitor-afternoon Week 1 kill 후보
oil-supply-monitor-evening 21:00 ocCRIT-oil-supply-monitor-evening Week 1 kill 후보
daily-context-snapshot 09:00,22:00 Hermes context/discovery 계열 확인 필요 Week 1/2 조건부 후보
intelligence-discovery-filter 6h Hermes ocRESTORE-discovery-enricher/cluster 계열 대조 필요 Week 1/2 조건부 후보
b2g_signal_updater 09:07 redefine_signal_updater/signal 계열 확인 필요 Week 2 후보, 즉시 kill 금지

1. 8주 로드맵

Week 1 — 이미 Hermes 동등이 있는 OpenClaw enabled 5개 사망 준비

목표:

  • kill 후보: 5개.
  • 실제 kill은 “dual-run 1주일 + 산출물 diff 통과” 후 disabled.
  • OpenClaw enabled 6 → 1~3개까지 축소.

후보:

  1. oil-supply-monitor
  2. oil-supply-monitor-afternoon
  3. oil-supply-monitor-evening
  4. daily-context-snapshot — Hermes 산출물 대조 통과 시
  5. intelligence-discovery-filter — Hermes discovery/filter 산출물 대조 통과 시

검증:

  • 동일 schedule Hermes job 존재 확인.
  • 최근 7일 산출물 mtime 비교.
  • Telegram 중복 발송 여부 확인.
  • state/latest.json diff 허용 기준: 숫자 필드 동일 또는 Hermes가 더 최신이면 통과.

마일스톤:

지표 목표
사망 준비 job 5
실제 disabled 3~5
dual-run 통과율 ≥80%
알림센터 중복/노이즈 oil 계열 중복 0
Hermes 부하 CPU/메모리 baseline 대비 +10% 이하

Week 2 — 남은 OpenClaw enabled + 안전한 disabled legacy 5~10개 제거

목표:

  • OpenClaw enabled를 0으로 만든다. 단 b2g_signal_updater는 Hermes 동등 검증 전 kill 금지.
  • disabled legacy 중 Hermes에 이미 복제된 5~10개는 archive 후보로 태깅한다.

후보군:

  • b2g_signal_updaterredefine_signal_updater/signal-synthesizer와 output diff 후.
  • 이미 Hermes batch reports에서 성공한 과거 migrated jobs.
  • source registry, quality monitor, vault control, hypothesis feedback, log rotator 등 이미 first batch 성공 보고가 있는 잡.

마일스톤:

지표 목표
추가 사망 job 5~10
OpenClaw enabled 0
rollback 발생 0~1
알림센터 노이즈 전주 대비 -20%
Hermes 발송 건수 중복 제거 후 안정

Week 3 — Hermes 이관 필요 잡 5~10개: 코드 복사·테스트·등록

대상 유형:

  • OpenClaw에만 코드가 있고 Hermes에 job이 없는 수집/변환 작업.
  • side effect가 작고 idempotent한 pipeline.
  • output path가 ~/.hermes/workspace/memory 또는 ~/knowledge-agent로 명확히 전환 가능한 작업.

절차:

  1. OpenClaw script read.
  2. Hermes workspace로 복사 또는 path rewrite.
  3. shell-job 등록, enabled=false.
  4. manual run 1회.
  5. dual-run 3회.
  6. diff 통과 시 Hermes enabled=true, OpenClaw disabled 유지.

마일스톤:

지표 목표
신규 Hermes 등록 5~10
dual-run 통과율 ≥70%
실패 rollback 즉시
평균 실행시간 5분 이하

Week 4 — 남은 일반 pipeline 정리 + 보고/웹앱 소비자 전환

대상 유형:

  • 웹앱이 아직 OpenClaw memory를 읽는 consumer.
  • 보고서·dashboard가 OpenClaw path fallback을 갖는 코드.
  • ~/.openclaw/workspace/memory 직접 참조.

목표:

  • consumer path를 Hermes 우선, OpenClaw fallback으로 바꾼 뒤 1주 후 fallback 제거 후보화.
  • grep -R "\.openclaw\|openclaw" ~/.hermes/workspace/scripts 실사용 hit를 전주 대비 50% 감소.

마일스톤:

지표 목표
path fallback 교체 10개 이상
웹앱 critical 500/404 0
dashboard stale badge 모든 주요 소스 표기

Week 5 — 의존성 깊은 잡: LaunchAgent, MCP, gateway 주변

대상:

  • LaunchAgent 기반 daemon.
  • MCP host.
  • Telegram bridge.
  • gateway/recovery/stall detector.

원칙:

  • “죽이기”가 아니라 “소유권 명확화”가 목표.
  • Hermes가 main이면 OpenClaw launchd label은 bootstrap 해제 또는 disabled plist archive.
  • MCP는 client별 config와 실제 process owner를 확인한 뒤 단계적으로 전환.

마일스톤:

지표 목표
LaunchAgent 전환/비활성 3~5
MCP Hermes 우선화 주요 3개
gateway recovery OpenClaw command 0
재시작 테스트 1회 이상

Week 6 — 마지막 deep dependency와 read-only archive mode

목표:

  • OpenClaw를 실행 backbone이 아니라 read-only archive로 만든다.
  • 쓰기 경로를 전부 Hermes/knowledge-agent로 확정.
  • OpenClaw DB/cron/log는 읽기 보존만.

마일스톤:

지표 목표
OpenClaw write path 0
OpenClaw cron enabled 0
OpenClaw launchd running 0 또는 명시적 archive daemon만
Hermès health OK

Week 7 — OpenClaw 디렉토리 archive 시작

절차:

  1. 전체 백업: ~/.openclaw tar/zstd snapshot.
  2. ~/.openclaw/cron/jobs.json 최종 copy.
  3. logs/memory/data checksum 생성.
  4. ~/.openclaw~/.openclaw.archive-YYYYMMDD로 이동할지, symlink read-only로 둘지 결정.

마일스톤:

지표 목표
archive snapshot 1개
복구 리허설 sample 3파일 restore 성공
OpenClaw 참조 grep critical 0

Week 8 — 완전 종료 선언

완료 조건:

  • 7일간 OpenClaw cron/launchd 발화 0.
  • Hermes 주요 job 성공률 ≥95%.
  • 알림센터 중복 노이즈 전환 전 대비 -50% 이상.
  • 웹앱/Telegram/MCP 모두 Hermes data로 동작.
  • rollback 없이 7일 운영.

종료 작업:

  • OpenClaw launchd bootout.
  • OpenClaw cron scheduler 비활성 확인.
  • dashboard/system-baseline에서 OpenClaw를 archive로 표기.
  • ~/knowledge-agent/400-reports/openclaw_retirement_final.md 작성.

2. 매주 고정 마일스톤 보드

Week kill 목표 실측 dual-run 통과율 알림센터 노이즈 Hermes 부하 판정
W1 5 TBD ≥80% oil 중복 0 +10% 이하 TBD
W2 5~10 TBD ≥80% -20% +15% 이하 TBD
W3 5~10 이관 TBD ≥70% 유지/감소 +20% 이하 TBD
W4 fallback 10개 제거 TBD ≥80% -30% +20% 이하 TBD
W5 launchd/MCP 3~5 TBD ≥90% 유지 +20% 이하 TBD
W6 write path 0 TBD ≥95% -40% 안정 TBD
W7 archive snapshot TBD 복구 3/3 -50% 안정 TBD
W8 완전 종료 TBD 7일 OK -50%+ 안정 DONE

3. 사망 전 체크리스트

각 job마다 아래 10개를 통과해야 한다.

  1. Hermes 동등 job id 확인.
  2. 동일 schedule 또는 의도된 대체 schedule 확인.
  3. output path 확인.
  4. 최근 3회 Hermes run exit 0.
  5. 최근 3회 OpenClaw/Hermes 산출물 diff 허용 범위.
  6. Telegram 발송 중복 없음.
  7. downstream consumer가 Hermes path를 읽음.
  8. rollback command 준비.
  9. 백업 완료.
  10. kill 기록 보고서에 남김.

4. 절대 사망 금지 / 별도 승인 필요

아래는 단순 cron kill 대상이 아니다.

대상 이유 처리 방식
Hermes gateway 현재 backbone OpenClaw와 무관하게 유지
MCP host/config Claude/Codex/웹앱 소비자 의존 client별 전환 후 별도 cutover
Telegram bot token/config 발송/알림센터 핵심 secret 보존, 직접 삭제 금지
~/knowledge/ 해리 볼트 source of truth AI 직접 쓰기 금지 원칙 유지
ops DB / historical logs 감사·복구 근거 archive 전 checksum
LaunchAgent recovery 계열 자동복구 체계 Hermes 대체 검증 후만 bootout

5. 롤백 절차

OpenClaw job disabled 후 장애 발생 시:

  1. Hermes job 즉시 disable 또는 schedule pause.
  2. 백업한 OpenClaw jobs.json에서 해당 job enabled=true 복원.
  3. 필요 시 LaunchAgent/plist 복원.
  4. 마지막 정상 output을 consumer path에 복사하지 말고 원본 위치만 참조.
  5. 알림센터에 “rollback: job id / 원인 / 다음 재시도 조건” 1줄 기록.
  6. 실패 패턴은 ~/knowledge-agent/500-signals/ 또는 해당 kill 보고서에 누적.

백업 규칙:

cp ~/.openclaw/cron/jobs.json ~/.openclaw/cron/jobs.json.bak-kill-YYYYMMDD-HHMM
cp ~/.hermes/cron/jobs.json ~/.hermes/cron/jobs.json.bak-kill-YYYYMMDD-HHMM
cp ~/Library/LaunchAgents/<label>.plist ~/Library/LaunchAgents/<label>.plist.bak-kill-YYYYMMDD-HHMM

6. surface:4 inventory 수령 후 갱신 규칙

surface:4 inventory가 오면 이 문서의 “가설 30개”를 다음 4분류로 재정렬한다.

  1. A: 즉시 사망 — Hermes 동등 있음, dual-run 통과.
  2. B: 1주 dual-run 필요 — 동등은 있으나 산출물 diff 미확인.
  3. C: Hermes 이관 필요 — 코드/cron 등록 필요.
  4. D: 사망 금지/보류 — gateway/MCP/LaunchAgent/secret/수동 운영 의존.

매주 kill batch는 A 우선, B 일부, C는 5개 이하로 제한한다.

7. 첫 주 실행 후보 5개 한 줄

oil-supply-monitor, oil-supply-monitor-afternoon, oil-supply-monitor-evening, daily-context-snapshot, intelligence-discovery-filter — 단, 뒤 2개는 Hermes 산출물 diff 확인 후만 disabled.

자체평가

  • 정확성: 4.1/5 — 실제 현재 jobs.json 스냅샷을 확인했고, surface:4 inventory 미완료분은 가설로 명시.
  • 완성도: 4.2/5 — 8주 일정, 주별 마일스톤, 가드레일, 롤백 절차 포함.
  • 검증: 4.0/5 — OpenClaw/Hermes job count와 enabled 목록 실측 반영.
  • 최소 변경: 4.5/5 — 문서 작성만 수행, cron 수정 없음.

종합: 4.2/5

DONE