# OpenClaw 적용

- 저자: chorr
- URL: https://8log.kr/openclaw-setup
- 날짜: 2026-03-02

---

## 개요

OpenClaw는 개인 AI 어시스턴트를 자체 호스팅할 수 있는 오픈소스 플랫폼이다. Claude, Gemini 등 다양한 LLM provider를 연결하고 Discord, Telegram, Signal 등 여러 메신저와 통합할 수 있다.

## 왜 OpenClaw인가

### 기존 서비스의 한계

* ChatGPT, Claude 웹: 브라우저에 종속, 확장 불가
* API 직접 사용: 코드 작성 필요, 번거로움
* 기존 오픈소스: 설정 복잡, 유지보수 어려움

### OpenClaw의 장점

* **통합 인터페이스**: 여러 채널에서 하나의 AI 접근
* **스킬 시스템**: 기능을 모듈화하여 확장 가능
* **메모리 지속**: 파일 기반 메모리로 컨텍스트 유지
* **자체 호스팅**: 데이터 주권 확보

## 설치 방법

### 요구사항

* Node.js >= 20.0.0
* pnpm >= 10.0.0
* (선택) Docker

### 기본 설치

```bash
# OpenClaw CLI 설치
npm install -g openclaw

# 설정 초기화
openclaw init

# 설정 파일 수정
vim ~/.openclaw/config.json
```

## 스킬 시스템

### 스킬 구조

```
skills/
├── my-skill/
│   ├── SKILL.md       # 스킬 문서 (필수)
│   ├── package.json   # 메타데이터
│   └── script.sh      # (선택) 헬퍼 스크립트
```

### SKILL.md 예시

```markdown
# My Skill

## Overview

이 스킬은 ...을 자동화합니다.

## Commands

- "명령어 1" → 실행 내용
- "명령어 2" → 실행 내용

## Workflows

1. 단계 1
2. 단계 2
3. 단계 3
```

## 메모리 시스템

### 파일 기반 메모리

OpenClaw는 세션 간 지속성을 파일로 관리한다:

```
workspace/
├── AGENTS.md        # 에이전트 규칙
├── SOUL.md          # 성격/성향 정의
├── USER.md          # 사용자 정보
├── MEMORY.md        # 장기 기억
├── TOOLS.md         # 도구/환경 노트
├── HEARTBEAT.md     # 주기적 작업
└── memory/
    ├── 2026-03-01.md    # 일일 로그
    └── channels/
        └── discord-xxx.md   # 채널별 컨텍스트
```

### 메모리 계층

1. **세션 메모리** — 현재 대화 컨텍스트
2. **일일 로그** — `memory/YYYY-MM-DD.md`
3. **장기 기억** — `MEMORY.md` (수동 관리)

## 워크플로우 예시: 블로그 자동화

### 시나리오

```
1. Obsidian에서 글 작성
2. GitHub Actions or 로컬 스크립트로 동기화
3. OpenClaw 채팅으로 "배포해줘" 요청
4. 빌드 → 테스트 → 배포 자동 실행
```

### 구현 방법

**스킬 생성:**

````markdown
# blog-deploy

## Commands

- "블로그 배포해줘" → sync → build → deploy
- "미리보기 배포" → preview deploy

## Scripts

```bash
# 동기화
ob sync --path ~/vault

# 빌드
cd ~/blog && pnpm build

# 배포
pnpm deploy:prod
```
````

## 보안 고려사항

### 민감 정보 관리

* API 키는 환경변수 또는 1Password 연동 사용
* `.env` 파일은 `.gitignore`에 반드시 추가
* 메모리 파일에 개인정보 노출 주의

### 접근 제어

* Gateway는 Tailscale로 제한
* Discord 봇은 특정 서버/채널만 허용
* Admin 명령어는 화이트리스트 관리

## 트러블슈팅

### 자주 발생하는 문제

**채널 연결 안 됨**

```bash
# Discord
openclaw gateway logs  # 로그 확인
# 토큰 유효성, Gateway Intent 확인
```

**메모리 반영 안 됨**

```bash
# Hot reload 실패 시
sudo systemctl restart openclaw
```

**모델 응답 없음**

```bash
# API 키 유효성 확인
openclaw status
```

## 확장 아이디어

* **Home Assistant 연동**: IoT 제어
* **GitHub 통합**: PR 리뷰, 이슈 관리
* **Calendar 연동**: 일정 알림
* **RSS 모니터링**: 뉴스 요약

## 참고 링크

* OpenClaw Docs: <https://docs.openclaw.ai>
* GitHub: <https://github.com/openclaw/openclaw>
* Community: <https://discord.com/invite/clawd>