Day 6

OpenClaw Heartbeat & Cron: 자동화 설정 가이드

Heartbeat로 항시 모니터링을 활성화하고, Cron 스케줄로 반복 작업을 자동화하세요. 메모리 로깅 설정으로 AI를 능동적으로 전환.

"말을 걸어야만 움직이는 어시스턴트는 그냥 도구입니다. 먼저 다가오는 어시스턴트가 진짜 어시스턴트입니다."

오늘의 목표

LearnHeartbeat, Cron, 메모리가 OpenClaw를 능동형 어시스턴트로 바꾸는 방식을 이해합니다.
DoHeartbeat 규칙 하나를 만들고, 아침 Cron 하나를 추가한 뒤, 둘 다 활성화되어 있는지 확인합니다.
Done whenopenclaw system heartbeat last 와 openclaw cron list 에 오늘 만든 설정이 모두 보입니다.

빠져 있던 마지막 조각

이제 어시스턴트는 Soul도 있고, 당신을 알고, 이메일을 읽고, 캘린더를 관리하고, 웹 검색을 하고, 스킬도 실행합니다. 하지만 자동화 이전 단계의 결정적 한계가 하나 남아 있습니다. 당신이 먼저 말을 걸지 않으면 아무 일도 일어나지 않는다는 점입니다.

이메일 50통이 쌓여도 확인하지 않습니다. 30분 뒤 회의가 있어도 알려 주지 않습니다. 사이트가 다운돼도 경고하지 않습니다.

능력 있는 사람을 고용해 두고 문 앞에서 지시만 기다리게 하는 것과 같습니다. 말을 걸지 않으면 아무것도 하지 않습니다. 그건 집사가 아니라 조각상입니다.

오늘 이 문제를 해결합니다.

Heartbeat: 어시스턴트의 생체 시계

Heartbeat 메커니즘은 일정 간격(기본값: 30분)마다 어시스턴트에게 신호를 보냅니다. 신호를 받으면 어시스턴트는 다음을 수행합니다.

  1. HEARTBEAT.md 의 작업 목록을 읽음
  2. 각 점검을 실행
  3. 주의가 필요한 내용이 있으면 메시지 전송
  4. 아무 일도 없으면 조용히 HEARTBEAT_OK 를 반환하고 다시 대기

매번 무엇을 확인할지 ~/.openclaw/workspace/HEARTBEAT.md 에 정의하세요:

## Check Every Heartbeat
- Gmail: any emails marked important or needing reply
- Calendar: meetings starting within 2 hours

## Check 2-3 Times Daily
- Is my site accessible?
- Any unusual GSC traffic fluctuations?

## Don't Check Unless I Ask
- Weather (not needed proactively)
- Social media (unless I'm @mentioned)

간격 옵션은 다음과 같습니다. 15분(집중 근무일), 30분(기본 균형), 1시간(비용 절약 / 오프타임). openclaw.json 의 agents.defaults.heartbeat.every 키로 설정합니다. 예: "30m", "1h", "15m".

token 비용 가이드:

  • 15분 Heartbeat: 월 약 $8-15 (고사용량)
  • 30분 Heartbeat: 월 약 $4-8 (권장)
  • 1시간 Heartbeat: 월 약 $2-4 (가벼운 사용량)

비용은 사용하는 모델 제공자 요금에 맞춰 조정하세요.

능동 점검을 잠시 멈추려면: openclaw system heartbeat disable / openclaw system heartbeat enable

Heartbeat vs Cron: 언제 무엇을 쓸까 →

검증 체크: openclaw system heartbeat last 를 실행하고, Heartbeat가 활성화되어 있으며 ~/.openclaw/workspace/HEARTBEAT.md 에 방금 정의한 규칙을 읽고 있는지 확인하세요.

Day 6 최소 구성

오늘 꼭 해볼 가치가 있는 최소 구성은 이 정도입니다.

Step 1: ~/.openclaw/workspace/HEARTBEAT.md 를 만들고 규칙 하나만 넣기

Check Gmail for emails marked important. Notify me if any found.

Heartbeat 활성화 (아직 실행 중이 아니라면):

openclaw system heartbeat enable
openclaw system heartbeat last   # Should show last heartbeat run time

간격을 바꾸려면 openclaw.json 에서 agents.defaults.heartbeat.every 를 수정하세요. 예: "15m", "30m", "1h".

Step 2: 아침 브리핑 Cron 하나 추가하기

openclaw cron add --name "Morning" --cron "0 8 * * *" \
  --system-event "Send me a morning briefing: important emails + today's calendar."

Step 3: 둘 다 등록됐는지 확인하기

openclaw system heartbeat last
openclaw cron list

검증 체크: openclaw system heartbeat last 는 Heartbeat 활성 상태를 보여 주고, openclaw cron list 에는 0 8 * * * 로 예약된 Morning 항목이 보여야 합니다.

Cron: 정확한 시간 예약

Heartbeat는 "주기적으로 확인"에 적합하고, Cron은 "정해진 시각에 실행"할 때 적합합니다.

# Morning briefing at 8am every day
openclaw cron add --name "Morning Briefing" --cron "0 8 * * *" \
  --system-event "Generate morning briefing: important emails, today's calendar, any site anomalies. Compile into one message."

# Weekly report every Monday at 9am
openclaw cron add --name "Weekly Report" --cron "0 9 * * 1" \
  --system-event "Summarize last week: key events, completed tasks, data changes, notable emails."

# Hydration reminder on weekdays
openclaw cron add --name "Break Reminder" --cron "0 10,12,14,16 * * 1-5" \
  --system-event "Remind to get up, move, drink water. If working 2+ hours straight, make it stronger."

표준 Cron 문법이며 Linux crontab과 같습니다.

Cron jobs: 전체 문법 참고와 예시 →

검증 체크: openclaw cron list 를 실행해 각 작업 이름, Cron 표현식, system event가 의도와 일치하는지 확인하세요.

3단계 메모리 시스템

어시스턴트가 능동적으로 움직이기 시작하면, 무슨 일이 있었는지 기억할 수 있어야 합니다. OpenClaw는 세 겹의 메모리를 사용합니다.

1단계 - 일일 로그 (~/.openclaw/workspace/memory/YYYY-MM-DD.md) 어시스턴트가 매일 자동으로 기록합니다. 무엇을 점검했는지, 무엇을 발견했는지, 무엇을 요청받았는지, 어떤 선호를 배웠는지 남깁니다.

2단계 - 장기 메모리 (~/.openclaw/workspace/MEMORY.md) 며칠에 한 번 최근 일일 로그를 검토해 영구적으로 남길 가치가 있는 정보만 추립니다. 프로젝트 이름, 일하는 습관, 항상 바로 답장하는 메일, 반복 패턴 등이 여기에 들어갑니다.

3단계 - Soul 메모리 (SOUL.md + USER.md) 가장 안정적인 핵심입니다. 당신이 누구인지, 어떻게 일하는지 정의합니다. 날짜에 따라 달라지지 않으며, 나머지 모든 메모리의 기준선이 됩니다.

누적 효과는 분명합니다. 일주일만 지나도 초기 설치 때보다 업무 흐름을 더 잘 이해하고, 한 달이 지나면 필요한 것을 먼저 짐작하기 시작합니다. 방금 설치한 어시스턴트와 6개월 된 어시스턴트의 차이는 거의 전부 메모리에서 나옵니다.

Hooks: 작업 전/후 자동화 →

검증 체크: 하루 정도 사용한 뒤 ~/.openclaw/workspace/memory/ 안에 일일 로그가 생겼는지 확인하고, ~/.openclaw/workspace/MEMORY.md 또는 SOUL.md 를 검토해 장기 동작이 여전히 원하는 방향인지 점검하세요.

균형 잡기: 능동적이되 성가시지 않게

유용함과 스팸 사이에는 얇은 선이 있습니다.

중요하지 않은 것은 묶어서 보내기. 중요한 이메일은 즉시 알리고, 일반 이메일은 아침 브리핑에 모읍니다. 날씨가 좋은 날이라는 사실은 굳이 실시간으로 알릴 필요가 없습니다.

조용한 시간 지키기. SOUL.md에 "밤 11시부터 아침 8시까지는 긴급하지 않으면 메시지를 보내지 않는다"라고 적어 두세요. 주말에는 빈도를 더 낮추세요.

경험칙: 대부분의 사람에게 하루 3~5개의 능동 메시지가 적당합니다. 그보다 많아지면 가치가 소음에 묻힙니다.

모든 능동 동작은 HEARTBEAT.md 와 Cron에서 조정할 수 있습니다. 너무 자주 오면 간격을 늘리고, 쓸모없는 점검은 지우면 됩니다.

검증 체크: 하루 안에 저가치 알림을 몇 개 이상 받는다면, 밤새 켜 두기 전에 Heartbeat 간격을 늘리거나 시끄러운 규칙을 제거하세요.

자주 생기는 문제

  • Heartbeat는 돌았는데 메시지가 오지 않음: 알림 채널이 아직 연결되어 있는지 확인하고, HEARTBEAT.md 에 항상 메시지를 만들어 내는 단순 규칙을 넣어 테스트하세요.
  • Cron이 엉뚱한 시간에 실행됨: 서버 시간대를 확인하고, Cron 표현식이 노트북이 아니라 서버 시간대를 기준으로 맞게 설정됐는지 검증하세요.
  • 첫날 알림이 너무 많음: 첫 규칙이 지나치게 넓다는 뜻인 경우가 많습니다. 규칙 범위를 줄이고, 우선순위가 낮은 업데이트는 아침 브리핑으로 묶거나, Heartbeat를 15분에서 30분 또는 60분으로 늘리세요.

실제로 돌기 시작하면 이런 모습입니다

완전히 설정된 Day 6 시스템은 당신이 아무것도 하지 않아도 이렇게 작동합니다.

  • 오전 8:00 — Telegram으로 아침 브리핑이 도착합니다. 한 메시지 안에 필요한 정보가 다 들어 있습니다.
  • 오전 10:30 — Heartbeat 점검 결과 특이 사항 없음. 조용히 지나갑니다.
  • 오전 11:50 — "1시간 뒤 Product Discussion 회의가 있습니다. 관련 이메일 스레드 3개를 찾았습니다. 미리 브리핑을 준비할까요?"
  • 오후 3:00 — Heartbeat가 사이트 트래픽 30% 하락을 감지합니다. 경고가 도착합니다.
  • 오후 9:00 — 일일 로그가 기록되고 ~/.openclaw/workspace/MEMORY.md 가 업데이트됩니다. 오늘 배운 내용이 내일을 위해 저장됩니다.

앱을 열지도 않았고, 먼저 질문하지도 않았습니다. 그냥 작동합니다.

그게 핵심입니다.

Day 6 Agent

Need help with this step?

Ask about anything on this page.

OpenClaw 전문가

공식 문서 기반

I can help you with Day 6. What would you like to know?

Common questions: