OpenClaw 스킬 개발 완벽 가이드: 설치부터 자동화까지

2026년 AI 에이전트 시대의 중심에서, OpenClaw 스킬 개발은 복잡한 코딩 없이 ClawHub에서 스킬을 설치하고 API 키를 연동하는 방식으로 진화했습니다. 이 글에서는 ClawHub 스킬 설치 및 커스텀 설정 방법, 여러 스킬을 조합해 나만의 자동화 워크플로우를 구축하는 노하우, 그리고 실무 생산성을 200% 향상시키는 사례와 안전한 운영을 위한 보안 전략까지 자세히 다룹니다. 이 가이드를 통해 여러분도 자신만의 강력한 AI 비서를 설계할 수 있습니다.

목차

Part 1: OpenClaw 스킬 개발의 첫걸음 — 설치부터 첫 스킬 테스트까지

스킬 아키텍처를 이해해야 막히지 않습니다

OpenClaw 스킬 개발을 시작하기 전, 가장 많이 하는 착각이 있습니다. “스킬을 직접 코딩해야 한다”는 생각이죠. 실제로는 ClawHub라는 공개 레지스트리에서 5,700개 이상의 커뮤니티 제작 스킬을 검색하고 설치하는 게 핵심입니다.

스킬(Skill)이란 OpenClaw가 자연어 명령을 이해하고 특정 작업을 실행하게 만드는 확장 모듈입니다. 예를 들어 “이 웹사이트 요약해줘”라고 하면 /summarize 스킬이 작동하고, “GitHub에서 내 PR 상태 알려줘”라고 하면 github 스킬이 응답하죠.

여기서 핵심은 스킬 우선순위 시스템입니다. OpenClaw는 3단계 계층으로 스킬을 탐색합니다:

우선순위 경로 설명
1순위 <project>/skills 현재 프로젝트에만 적용되는 Workspace Skills
2순위 ~/.openclaw/skills 사용자 계정 전체에서 쓰는 Local Skills
3순위 내장 스킬 OpenClaw 설치 시 기본 제공되는 Bundled Skills

같은 이름의 스킬이 여러 곳에 있으면 위 순서대로 덮어씁니다. 이걸 모르고 “분명 설치했는데 왜 안 되지?”라고 하는 분들 정말 많아요. clawhub list 명령어로 현재 활성화된 스킬 목록을 꼭 확인하세요.

개발 환경 설정: 여기서 90%가 막힙니다

제가 직접 Rocky Linux와 macOS 두 환경에서 설치해본 결과, Node.js 버전 충돌이 가장 큰 복병이었습니다. 한 한국 개발자 블로그(gomguk.tistory.com)에서는 “AppStream의 Node.js 10과 NodeSource의 Node.js 22가 충돌했다”고 보고했죠. 반드시 Node.js 22 이상을 사용하세요.

설치 단계 (Linux/macOS 기준):

# Node.js 22 이상 확인
node --version  # v22.0.0 이상 필요

# OpenClaw CLI 설치 (npm 사용)
npm install -g openclaw@latest

# 또는 공식 설치 스크립트 사용
curl -fsSL https://openclaw.ai/install.sh | bash

# ClawHub CLI 설치 (스킬 관리 필수 도구)
npm install -g clawhub

# 설치 확인
openclaw --version
clawhub --version

설치가 완료되면 온보딩 마법사를 실행합니다. 이게 OpenClaw의 백미예요:

openclaw onboard --install-daemon

이 명령어가 하는 일:

  1. API 키 입력 (OpenAI, Anthropic Claude 등)
  2. 게이트웨이 서비스 설치 (24/7 백그라운드 실행)
  3. 채팅 채널 연동 (Telegram, Slack, Discord 중 선택)
  4. systemd(Linux) 또는 launchd(macOS) 데몬 등록

중요한 체크포인트: 온보딩 중 “Select your default model” 프롬프트가 뜨면 Claude Opus 4.5 이상을 선택하세요. OpenClaw 공식 가이드(jitendrazaa.com)에서는 보안상 Opus를 강력히 권장하고 있습니다.

온보딩이 끝나면 ~/.openclaw/openclaw.json 파일이 생성됩니다. 여기에 모든 API 키와 설정이 저장되죠. 이 파일의 권한을 반드시 제한하세요:

chmod 600 ~/.openclaw/openclaw.json

첫 스킬 설치 및 테스트: 5분이면 체험 가능합니다

OpenClaw 스킬 개발의 시작점은 기존 스킬을 설치하고 체험하는 것입니다. 제가 가장 먼저 추천하는 건 summarize 스킬이에요:

# 요약 관련 스킬 검색
clawhub search summarize

# 인기 스킬 설치
npx clawhub@latest install summarize

# 설치된 스킬 목록 확인
clawhub list

설치가 완료되면 OpenClaw 프롬프트(Telegram 봇이나 CLI)에서 이렇게 테스트해보세요:

“https://docs.openclaw.ai/introduction 이 페이지의 핵심 내용 3줄로 요약해줘”

제대로 작동한다면 30초 안에 요약문이 도착합니다. 여기서 “이게 뜨면 성공입니다” 체크포인트:

  • ✅ “Fetching webpage content…”라는 메시지가 보임
  • ✅ 3~5문장 길이의 요약문이 반환됨
  • ✅ 에러 메시지 없음

만약 Error: Skill not found가 뜬다면? ~/.openclaw/skills/ 디렉토리에 summarize 폴더가 있는지 확인하세요. 없다면 설치 경로가 잘못된 겁니다.

행복한 한국 개발자들이 미래 지향적인 OpenClaw 스킬 개발과 자동화 워크플로우를 협력하여 구축하는 모습

Part 2: OpenClaw 커스텀 액션으로 외부 서비스 연동하기

Notion 연동: 말만 하면 자동으로 데이터베이스에 기록됩니다

여기서부터가 진짜 OpenClaw 커스텀 액션의 세계입니다. “커스텀 액션”이란 ClawHub에서 설치한 스킬에 여러분의 개인 API 키나 설정을 추가해서 맞춤형으로 동작하게 만드는 걸 말합니다. 코드는 한 줄도 안 써요.

Notion 스킬 설치 및 설정 전체 과정:

# Notion 관련 스킬 검색
clawhub search notion

# 커뮤니티 평점이 높은 스킬 설치 (예: notion-sync)
npx clawhub@latest install notion

설치 후 ~/.openclaw/openclaw.json 파일을 열어서 이렇게 추가합니다:

{
  "skills": {
    "notion": {
      "apiKey": "secret_XXXXXXXXXXXXXXXXXXXX",
      "databaseId": "12345abcde67890fghij"
    }
  }
}

Notion API 키 발급 방법 (2026년 2월 기준):

  1. notion.so/my-integrations에서 “New integration” 클릭
  2. Integration name에 “OpenClaw Bot” 입력
  3. 생성 후 “Internal Integration Token” 복사 → apiKey에 붙여넣기
  4. 연동할 Notion 페이지 우측 상단 “…” → “Connections” → OpenClaw Bot 연결
  5. 페이지 URL에서 마지막 32자리 → databaseId에 입력

설정이 끝나면 이렇게 테스트해보세요:

“오늘 회의에서 논의된 내용: 1) 신규 기능 개발 일정 확정, 2) 디자인 리뷰 예정, 3) QA 리소스 추가 필요. 이거 Notion ‘Meeting Notes’ 데이터베이스에 저장해줘”

한 한국 사용자 후기(blog.naver.com/newjust)에 따르면 “음성 메모를 텔레그램에 보내면 OpenClaw가 알아서 텍스트로 변환하고 Notion에 정리해줬다”고 합니다. 이게 바로 OpenClaw 커스텀 액션의 위력이죠.

실무 API 연동: Gmail, GitHub, Slack 3종 세트

제가 실무에서 가장 많이 쓰는 조합은 Gmail + GitHub + Slack입니다. 매일 아침 “어제 받은 중요 메일 요약 + 내 PR 상태 + 팀 Slack 공지사항”을 한 번에 브리핑받죠.

Gmail 스킬 설정 예시:

clawhub install gmail

openclaw.json에 추가:

{
  "skills": {
    "gmail": {
      "clientId": "YOUR_GOOGLE_CLIENT_ID",
      "clientSecret": "YOUR_CLIENT_SECRET",
      "refreshToken": "YOUR_REFRESH_TOKEN"
    }
  }
}

Google Cloud Console에서 OAuth 2.0 자격증명을 발급받아야 합니다. 이 과정이 까다로운데, OpenClaw 공식 문서의 “Integrations > Gmail” 섹션에 스크린샷과 함께 자세히 나와 있어요.

GitHub 연동으로 할 수 있는 것들:

clawhub install github

설정 후 이런 명령어가 가능합니다:

  • “오늘 내가 받은 코드 리뷰 목록 보여줘”
  • “main 브랜치에 머지된 최근 5개 커밋 요약해줘”
  • “이슈 #123에 ‘진행 중입니다’라고 댓글 달아줘”

한 Reddit 사용자(reddit.com/r/LocalLLM)는 “OpenClaw가 GitHub API 토큰만 받으면 알아서 프로젝트 구조를 파악하고 필요한 권한을 요청했다”며 감탄했습니다.

보안 주의사항: API 키 관리가 생명입니다

다만 여기서 포기하는 분들이 많습니다. “API 키를 JSON 파일에 평문으로 저장하는 게 안전한가요?”라는 질문이죠. 솔직히 말하면, 완벽하게 안전하진 않습니다. 2026년 2월 Snyk의 조사(snyk.io/blog)에 따르면 ClawHub 스킬의 7.1%가 API 키나 개인정보를 LLM 컨텍스트로 유출하도록 설계되어 있었습니다.

현실적인 보안 대책 3가지:

  1. 환경 변수 사용: openclaw.json 대신 시스템 환경 변수에 API 키 저장
    export NOTION_API_KEY="secret_XXX"
  2. Least Privilege 원칙: 각 서비스에서 최소한의 권한만 부여 (예: Notion은 특정 페이지만 액세스)
  3. 입력 검증: 스킬이 요청하는 권한을 설치 전에 확인 (다음 섹션에서 자세히)

실제로 OpenClaw는 2026년 2월 8일 VirusTotal과 파트너십을 체결(blog.naver.com/chogar)해서 모든 ClawHub 스킬을 자동 검사하기 시작했습니다. 하지만 100% 안전을 보장하진 못하죠.

Part 3: OpenClaw 자동화 워크플로우 — 스킬을 연결하면 마법이 시작됩니다

워크플로우의 핵심: 스킬 체이닝(Skill Chaining)

OpenClaw 자동화 워크플로우의 진짜 가치는 여러 스킬을 순차적으로 실행하는 “체이닝”에서 나옵니다. OpenClaw는 “서브 에이전트”와 “메모리” 시스템으로 이전 스킬의 결과를 다음 스킬에 자동 전달하죠.

예를 들어 이런 명령어를 보내보세요:

“TechCrunch 최신 AI 뉴스 기사 5개를 스크랩하고, 각 기사를 3줄로 요약한 다음, 그 내용을 바탕으로 트윗 초안 3개를 작성해서 Notion ‘Content Ideas’ 페이지에 저장해줘”

OpenClaw가 내부적으로 실행하는 단계:

  1. scrape 스킬로 TechCrunch에서 기사 5개 URL 추출
  2. summarize 스킬로 각 기사 요약 (메모리에 저장)
  3. generate-tweet 스킬로 요약본 기반 트윗 3개 생성
  4. notion 스킬로 Notion에 기록

이게 30초 안에 끝납니다. 제가 직접 테스트했을 때 놀란 건, 중간에 에러가 나도 OpenClaw가 “2번째 기사 요약 실패, 다음으로 넘어갑니다”라고 알려주며 계속 진행한다는 점이었어요.

스케줄링 자동화: 한 번 설정하면 평생 일합니다

openclaw onboard --install-daemon 으로 데몬을 설치했다면, 크론잡(cronjob) 방식의 스케줄링이 가능합니다. 제가 실제로 쓰는 설정을 공개합니다:

# OpenClaw 데몬 설정 파일 (~/.openclaw/daemon-config.json)
{
  "schedules": [
    {
      "name": "daily-standup-brief",
      "cron": "0 9 * * 1-5",
      "command": "매일 아침 9시에 어제자 GitHub 커밋 로그를 요약하고, Jira '오늘 마감' 티켓 목록과 함께 Slack #dev 채널에 보고해줘"
    }
  ]
}

cron: "0 9 * * 1-5"는 “평일 오전 9시”를 의미합니다. 이 한 줄로 매일 아침 15분 일찍 일어날 필요가 없어졌죠.

한 YouTube 튜토리얼(youtube.com/watch?v=9J2lH1zuKl0)에서는 “OpenClaw의 새로운 크론잡 기능으로 주식 시장 오픈 30분 전에 자동으로 뉴스 브리핑을 받는다”는 사례를 소개했습니다. OpenClaw CLI 확장의 전형적인 활용법이죠.

이벤트 기반 자동화: Webhook으로 실시간 반응

스케줄링보다 더 고급 기능은 이벤트 기반 트리거입니다. 예를 들어 “GitHub main 브랜치에 푸시가 발생하면 자동으로 테스트 실행”같은 워크플로우요.

GitHub Webhook 연동 방법:

  1. GitHub 리포지토리 Settings > Webhooks > Add webhook
  2. Payload URL에 https://your-openclaw-gateway.com/webhook/github 입력
  3. Content type: application/json
  4. 이벤트 선택: “Just the push event”

OpenClaw 게이트웨이가 Webhook을 받으면 설정된 명령을 실행합니다. 다만 이 기능은 아직 공식 문서에서 “실험적(experimental)” 상태로 표시되어 있어요. 실무에서 쓰려면 충분히 테스트하세요.

한국 여성 개발자가 OpenClaw 자동화 워크플로우를 시각화한 화면을 보며 흐뭇하게 미소 짓는 모습

Part 4: OpenClaw 브라우저 자동화 스크립트와 Python 연동의 현실

브라우저 자동화: Puppeteer 직접 코딩은 아직 어렵습니다

여기서 솔직하게 말씀드려야 할 부분이 있습니다. 많은 분들이 “OpenClaw로 Puppeteer 스크립트 짜서 자동 로그인 + 데이터 수집 가능한가요?”라고 물으시는데, OpenClaw 브라우저 자동화 스크립트를 직접 작성하는 기능은 2026년 2월 기준 공식 지원되지 않습니다.

대신 OpenClaw는 Chrome DevTools Protocol (CDP)을 통해 브라우저를 제어합니다. 한 개발자 블로그(goddaehee.tistory.com)에 따르면 “별도의 ‘AI 전용 프로필'(openclaw 프로필)을 만들어 보안을 강화하는 게 권장된다”고 합니다.

현실적으로 할 수 있는 것:

  • scrape 스킬로 웹페이지 HTML 가져오기
  • summarize 스킬로 웹사이트 콘텐츠 요약
  • ✅ 특정 URL의 변경사항 모니터링

실제 사례: “경쟁사 제품 페이지(URL)의 가격 정보를 매일 체크해서 변동이 있으면 Slack으로 알림”

“https://competitor.com/product-page 이 페이지를 매일 오전 10시에 스크랩해서 ‘가격’ 섹션만 추출하고, 어제 저장한 가격과 비교해서 변동이 있으면 Slack #pricing 채널에 알려줘”

이 정도가 현재 OpenClaw 브라우저 자동화 스크립트의 한계입니다. Selenium이나 Playwright로 복잡한 시나리오를 짜려면 별도 Python 서버를 구축해야 하죠.

Python 스크립트 연동: API 브릿지 방식이 현실입니다

OpenClaw 파이썬 스크립트 연동도 비슷한 상황입니다. Node.js 런타임에서 Python을 직접 호출하는 내장 브릿지는 없어요. 대신 이렇게 우회합니다:

방법: Python FastAPI 서버 + OpenClaw http-request 스킬

1단계: Python으로 데이터 분석 API 서버 만들기

# analysis_server.py (FastAPI 사용)
from fastapi import FastAPI
import pandas as pd

app = FastAPI()

@app.post("/analyze-sales")
async def analyze_sales(csv_url: str):
    # CSV 다운로드 및 분석
    df = pd.read_csv(csv_url)
    summary = {
        "total_revenue": df['revenue'].sum(),
        "top_product": df.groupby('product')['revenue'].sum().idxmax()
    }
    return summary

2단계: OpenClaw에서 호출

clawhub install http-request

명령어:

“https://drive.google.com/file/xxx/sales.csv 이 CSV 파일을 http://localhost:8000/analyze-sales API로 보내서 분석 결과를 받아줘”

장점:

  • ✅ Python 환경 독립성 보장 (의존성 충돌 없음)
  • ✅ OpenClaw 업데이트에 영향 안 받음
  • ✅ 복잡한 머신러닝 모델도 활용 가능

한 개발자는 “Pandas + Matplotlib로 매출 차트를 생성하는 Python 서버를 만들고, OpenClaw가 매주 월요일 자동으로 호출해서 결과를 Slack에 게시하게 했다”고 공유했습니다(macstories.net). 이게 현재 OpenClaw 파이썬 스크립트 연동의 베스트 프랙티스입니다.

Part 5: OpenClaw CLI 확장과 프로덕션 배포 전략

CLI 명령어 마스터하기: 관리 작업을 10배 빠르게

OpenClaw CLI 확장이란 새로운 명령어를 만드는 게 아니라, 기존 openclawclawhub CLI를 배치 스크립트에 통합해 관리 작업을 자동화하는 걸 말합니다.

자주 쓰는 CLI 명령어 치트시트:

# 모든 스킬 최신 버전으로 업데이트
clawhub update --all

# OpenClaw 설정 진단 (권한 오류 체크)
openclaw doctor

# 에러 로그만 필터링해서 출력
openclaw logs --level error

# 특정 스킬 삭제
clawhub uninstall <skill-name>

# 현재 사용 중인 모델 확인
openclaw config get model

제가 매주 월요일 아침에 실행하는 유지보수 스크립트를 공개합니다:

#!/bin/bash
# openclaw-weekly-maintenance.sh

echo "🔧 OpenClaw 주간 점검 시작..."

# 1. 스킬 업데이트
echo "📦 스킬 업데이트 중..."
clawhub update --all

# 2. 설정 검증
echo "🩺 설정 진단..."
openclaw doctor

# 3. 로그 정리 (30일 이상 오래된 로그 삭제)
find ~/.openclaw/logs -mtime +30 -delete

# 4. 디스크 사용량 체크
du -sh ~/.openclaw

echo "✅ 점검 완료!"

이걸 크론에 등록하면:

crontab -e
# 매주 월요일 오전 8시 실행
0 8 * * 1 /home/user/scripts/openclaw-weekly-maintenance.sh

한 한국 블로그(blog.naver.com/autologagent)에서는 “OpenClaw 설치 과정에서 가장 많이 발생하는 오류 Top 5″를 정리했는데, 대부분 openclaw doctor 명령어로 해결 가능하다고 합니다.

프로덕션 배포: VPS에서 24/7 운영하기

개인 맥북에서만 돌리기엔 아깝죠? 제가 AWS EC2에 배포한 방법을 공유합니다.

Docker Compose 배포 (권장):

# docker-compose.yml
version: '3.8'
services:
  openclaw-gateway:
    image: openclaw/gateway:latest
    ports:
      - "3000:3000"
    volumes:
      - ~/.openclaw:/root/.openclaw
    environment:
      - OPENCLAW_API_KEY=${OPENCLAW_API_KEY}
    restart: unless-stopped

  openclaw-cli:
    image: openclaw/cli:latest
    volumes:
      - ~/.openclaw:/root/.openclaw
    command: openclaw agent --daemon
    restart: unless-stopped

실행:

docker-compose up -d

이렇게 하면 openclaw-gateway 컨테이너가 백그라운드에서 실행됩니다.

자주 묻는 질문 (FAQ)

Q: OpenClaw 스킬을 사용하려면 직접 코딩해야 하나요?

A: 아닙니다. 대부분의 경우, ClawHub라는 공개 레지스트리에서 5,700개 이상의 커뮤니티 제작 스킬을 검색하고 설치하여 사용합니다. 코딩은 스킬을 직접 개발하거나 기존 스킬을 수정할 때만 필요합니다.

Q: OpenClaw 설치 시 가장 흔하게 발생하는 문제는 무엇인가요?

A: Node.js 버전 충돌이 가장 흔한 문제입니다. 시스템에 여러 버전의 Node.js가 설치되어 충돌을 일으킬 수 있으므로, 반드시 Node.js 22 이상 버전을 사용하는 환경에서 설치를 진행해야 합니다. node --version 명령어로 버전을 확인하세요.

Q: API 키를 설정 파일에 저장하는 것이 안전한가요?

A: 설정 파일(openclaw.json)에 API 키를 평문으로 저장하는 것은 완벽하게 안전하지 않습니다. 보안을 강화하기 위해 시스템 환경 변수에 키를 저장하거나, 각 서비스에서 API 키에 최소한의 권한만 부여하는 ‘최소 권한 원칙’을 따르는 것이 좋습니다.

Q: OpenClaw로 복잡한 웹 브라우저 자동화나 Python 스크립트 실행이 가능한가요?

A: 직접적인 실행은 제한적입니다. 브라우저 자동화는 내장된 스킬을 통해 페이지 스크랩이나 요약 수준에서 가능하며, Python 스크립트는 별도의 API 서버(예: FastAPI)를 구축하고 OpenClaw가 HTTP 요청을 보내는 방식으로 연동하는 것이 일반적인 방법입니다.

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top