개요

OpenClaw는 6가지 자동화 메커니즘을 제공한다. 에이전트가 사용자 메시지 없이도 스스로 작업을 수행하거나 외부 이벤트에 반응할 수 있다.


6가지 자동화 메커니즘

1. Heartbeat (하트비트)

주기적으로 에이전트의 메인 세션에 턴을 발생시킨다.

  • 기본 주기: 30분
  • 에이전트가 HEARTBEAT.md 파일을 읽고 할 일을 확인
  • 할 일이 없으면 HEARTBEAT_OK 응답
  • 상세 내용은 하트비트 문서 참고

2. Cron (크론)

정확한 시간에 스케줄링된 작업을 실행한다.

{
  "automation": {
    "cron": [
      {
        "name": "daily-report",
        "schedule": "0 9 * * *",        // 매일 오전 9시
        "agent": "default",
        "message": "오늘의 보고서를 생성해주세요."
      },
      {
        "name": "weekly-summary",
        "schedule": "0 18 * * 5",       // 매주 금요일 오후 6시
        "agent": "default",
        "message": "이번 주 요약을 작성해주세요."
      }
    ]
  }
}

크론 표현식 형식: 분 시 일 월 요일

필드값 범위
0-59
0-23
1-31
1-12
요일0-7 (0과 7 모두 일요일)

3. Hooks (훅)

이벤트 기반으로 스크립트를 실행한다.

{
  "automation": {
    "hooks": {
      "on_message_received": {
        "script": "./scripts/log-message.sh"
      },
      "on_session_start": {
        "script": "./scripts/init-session.sh"
      },
      "on_error": {
        "script": "./scripts/alert.sh"
      }
    }
  }
}

4. Standing Orders (상시 지시)

시스템 프롬프트에 포함되는 지속적인 지시사항이다. 에이전트가 모든 대화에서 항상 따르는 규칙을 정의한다.

<!-- AGENTS.md 에 작성 -->

## Standing Orders
- 매 턴마다 할 일 목록을 확인하고 긴급한 것이 있으면 알린다
- 고객 문의가 10분 이상 미응답이면 알림을 보낸다
- 매일 자정에 당일 활동 요약을 메모리에 기록한다

5. Background Tasks (백그라운드 작업)

메인 대화와 분리된 독립 작업을 추적한다.

  • 장시간 실행되는 작업을 백그라운드로 분리
  • 작업 상태 추적 및 완료 알림
  • 메인 세션을 차단하지 않음

6. Webhooks (웹훅)

외부 HTTP 이벤트를 수신하여 에이전트를 트리거한다.

{
  "automation": {
    "webhooks": {
      "enabled": true,
      "endpoints": {
        "github": {
          "path": "/webhook/github",
          "secret": "${GITHUB_WEBHOOK_SECRET}",
          "agent": "code-review",
          "message_template": "GitHub 이벤트: {{event}}"
        },
        "stripe": {
          "path": "/webhook/stripe",
          "secret": "${STRIPE_WEBHOOK_SECRET}",
          "agent": "billing",
          "message_template": "결제 이벤트: {{type}}"
        }
      }
    }
  }
}

추가 자동화 기능

Gmail PubSub

Gmail 수신 메일을 실시간으로 감지하여 에이전트를 트리거한다.

  • Google Cloud Pub/Sub 연동
  • 새 메일 수신 시 자동으로 에이전트에 전달

폴링 (Polling)

주기적으로 외부 서비스를 확인하여 변경 사항을 감지한다.

  • API 엔드포인트 주기적 조회
  • 상태 변경 시 에이전트 트리거

인증 모니터링 (Auth Monitoring)

연결된 채널의 인증 상태를 모니터링한다.

  • 토큰 만료 감지
  • 재인증 필요 시 알림
  • 자동 토큰 갱신 (지원 채널)

자동화 조합 예시

여러 자동화를 조합하여 복잡한 워크플로를 구성할 수 있다.

[GitHub Webhook] → 코드 리뷰 에이전트 → [Slack 알림]
     |
[매일 크론] → 일일 리포트 생성 → [이메일 전송]
     |
[하트비트 30분] → 대기 중인 작업 확인 → [필요 시 처리]