OpenClaw 첫 사용자를 위한 7가지 필수 질문
OpenClaw는 개별 스크립트가 아닌 세션 기반의 장시간 실행 워크플로우로, MEMORY.md와 heartbeat·cron을 통해 지속적인 메모리 관리와 자동화를 지원한다. 초기 BOOTSTRAP.md 삭제 후 SOUL.md·USER.md·MEMORY.md로 전환하며, 두 계층 메모리 구조(장기 기억은 MEMORY.md, 일일 로그는 memory/YYYY-MM-DD.md)에서 memory_search와 memory_get으로 필요한 정보를 조회한다. 자동화는 heartbeat(30분 주기 메일·캘린더·날씨 체크리스트)와 cron(특정 시간 리마인더·보고서 생성)을 활용하며, 외부 API 호출 시 429 에러 발생 시 Retry-After를 준수하고 API 키는 .env 파일에 안전하게 저장해야 한다.
이 글의 핵심 주장과 근거
세션 기반 아키텍처와 핵심 개념
OpenClaw는 개별 스크립트가 아닌 세션 기반의 장시간 실행 가능한 워크플로우를 제공합니다. 이 아키텍처는 MEMORY.md와 heartbeat·cron을 통해 지속적인 메모리·상태 관리가 이루어지며, concept_ids와 claim_ids가 서로 연결된 관계망을 형성합니다. 모든 개념은 최소 한 개 이상의 다른 개념과 연결되어야 하며, 이는 데이터베이스 관계의 무결성을 보장합니다.
두 계층 메모리 구조
OpenClaw는 장기 기억을 MEMORY.md에 정리하고, 일일 로그를 memory/YYYY-MM-DD.md에 원문에 가깝게 기록합니다. 필요할 때는 memory_search로 조회하고, memory_get으로 필요한 조각만 정확히 읽어옵니다. 이 구조 덕분에, 중요한 결정과 설정은 curated된 파일에 저장되고, 일상적인 사건은 별도 로그에 보관됩니다.
자동화 체크리스트와 API 보안 전략
heartbeat는 메일·캘린더·날씨 등 정기적인 체크리스트를 30분 주기로 수행할 때 사용하고, cron은 특정 시간에 한 번 실행되는 리마인더나 보고서 생성 등에 활용됩니다. 외부 API 호출 시에는 과도한 반복을 방지하기 위해 배치 처리를 하고, 429 에러 발생 시 Retry-After를 준수하며, API 키는 .env 파일에 저장해 코드에 평문으로 넣지 않습니다.
조건부 한계 및 제약 사항
공식 문서의 데이터 모델 설계에 따르면, 모든 concept은 최소 한 개 이상의 다른 concept과 연결되어야 하며, 연결되지 않은 상태로 concept을 삽입하면 데이터베이스 관계 무결성 오류가 발생합니다. 또한 API 호출 시 429 응답을 수신하면 Retry-After 헤더에 명시된 시간만큼 대기해야 하며, 이를 무시하고 즉시 재시도하면 요청이 차단됩니다. 세션 기반 워크플로우는 장시간 실행을 전제로 설계되어 있어, 중도 종료 시 MEMORY.md와 heartbeat 상태의 불일치가 발생할 수 있으므로 종료 전 명시적 정리 작업이 필요합니다.