← 리포트 목록
OpenClaw 단계적 사망 4-8주 로드맵
2026-04-24
openclaw
[openclaw, hermes, migration, kill-roadmap, cron]
Executive Summary
- 현재 스냅샷: OpenClaw cron
297개 중 enabled 6개, Hermes cron80개 중 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개까지 축소.
후보:
oil-supply-monitoroil-supply-monitor-afternoonoil-supply-monitor-eveningdaily-context-snapshot— Hermes 산출물 대조 통과 시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_updater—redefine_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로 명확히 전환 가능한 작업.
절차:
- OpenClaw script read.
- Hermes workspace로 복사 또는 path rewrite.
- shell-job 등록, enabled=false.
- manual run 1회.
- dual-run 3회.
- 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 시작
절차:
- 전체 백업:
~/.openclawtar/zstd snapshot. ~/.openclaw/cron/jobs.json최종 copy.- logs/memory/data checksum 생성.
~/.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개를 통과해야 한다.
- Hermes 동등 job id 확인.
- 동일 schedule 또는 의도된 대체 schedule 확인.
- output path 확인.
- 최근 3회 Hermes run exit 0.
- 최근 3회 OpenClaw/Hermes 산출물 diff 허용 범위.
- Telegram 발송 중복 없음.
- downstream consumer가 Hermes path를 읽음.
- rollback command 준비.
- 백업 완료.
- 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 후 장애 발생 시:
- Hermes job 즉시 disable 또는 schedule pause.
- 백업한 OpenClaw
jobs.json에서 해당 job enabled=true 복원. - 필요 시 LaunchAgent/plist 복원.
- 마지막 정상 output을 consumer path에 복사하지 말고 원본 위치만 참조.
- 알림센터에 “rollback: job id / 원인 / 다음 재시도 조건” 1줄 기록.
- 실패 패턴은
~/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분류로 재정렬한다.
- A: 즉시 사망 — Hermes 동등 있음, dual-run 통과.
- B: 1주 dual-run 필요 — 동등은 있으나 산출물 diff 미확인.
- C: Hermes 이관 필요 — 코드/cron 등록 필요.
- 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