Skip to Content

OpenClaw 🦞

OpenClaw 는 오픈소스 로컬 AI 어시스턴트로, WhatsApp, Telegram, Slack 등 메시지 앱을 통해 상호작용하며, 이메일 관리, 캘린더, 항공편 체크인, 웹 브라우징 등 실제 작업을 수행합니다. 완전히 로컬에서 실행되며, 데이터가 기기를 떠나지 않습니다.

OfoxAI와 함께 사용하는 이유

  • 100개 이상의 모델 통합 호출 — 하나의 API Key로 Claude, GPT, Gemini, Qwen, Doubao 등 모든 주요 모델에 접속
  • 유연한 Agent 전략 — 다른 Agent에 다른 모델 할당: 주력은 Sonnet, 추론은 Opus, 경량은 Haiku
  • 99.9% SLA — 다중 노드 이중화, 자동 장애 전환
  • 비용 관리 — 통합 과금 대시보드, 실시간 토큰 소비 모니터링

OpenClaw는 Agentic AI 어시스턴트로, 단일 작업의 토큰 소비가 상당합니다 (일반적으로 10K-100K+ 토큰). 작업 복잡도에 따라 모델을 선택하여 불필요한 비용을 방지하세요. 이 문서에서는 참고용으로 세 가지 설정 방안을 제공합니다.

설치

macOS / Linux
curl -sSL https://openclaw.ai/install.sh | bash
Windows (PowerShell)
& ([scriptblock]::Create((iwr -useb https://openclaw.ai/install.ps1)))

빠른 시작

1. API Key 발급

OfoxAI 콘솔 에서 API Key를 생성하세요.

2. 설정 마법사 실행

OpenClaw는 대화형 마법사를 제공합니다. 다음 명령을 입력하면 빠르게 설정을 완료할 수 있습니다:

openclaw onboard

마법사에서 Custom Provider를 선택하고 다음 정보를 입력합니다:

설정 항목
Provider Typeanthropic-messages
Base URLhttps://api.ofox.ai/anthropic
API KeyOfoxAI API Key
Modelanthropic/claude-sonnet-4.5

3. 시작 및 확인

openclaw start

OpenClaw에 메시지를 보내 연결을 테스트합니다. 정상적인 응답을 받으면 설정이 완료된 것입니다.

마법사가 자동으로 openclaw.json 설정 파일을 생성합니다. 더 세밀한 제어가 필요한 경우, 아래의 전체 설정을 참조하세요.

전체 설정

OpenClaw는 ~/.openclaw/openclaw.json으로 모든 설정을 관리합니다 (JSON5 형식 지원, 주석 작성 가능).

Provider 설정

Provider는 models.providers 아래에 정의되며, 각 Provider는 API 프로토콜 유형, 주소 및 키를 지정해야 합니다:

~/.openclaw/openclaw.json
{ "models": { "providers": { "ofoxai-anthropic": { "baseUrl": "https://api.ofox.ai/anthropic", "apiKey": "${OFOXAI_API_KEY}", "api": "anthropic-messages", "models": [] }, "ofoxai-openai": { "baseUrl": "https://api.ofox.ai/v1", "apiKey": "${OFOXAI_API_KEY}", "api": "openai-responses", "models": [] }, "ofoxai-gemini": { "baseUrl": "https://api.ofox.ai/gemini", "apiKey": "${OFOXAI_API_KEY}", "api": "google-generative-ai", "models": [] } } } }

apiKey${ENV_VAR} 구문으로 환경 변수를 참조할 수 있어, 설정 파일에 평문으로 기록하는 것을 방지합니다. 세 가지 프로토콜이 각각 다른 모델 시리즈에 대응합니다: Claude는 ofoxai-anthropic (anthropic-messages), OpenAI는 ofoxai-openai (openai-responses), Gemini는 ofoxai-gemini (google-generative-ai)를 사용합니다. 기타 모델은 ofoxai-openai를 통해 접속할 수 있습니다.

Models 설정

모델은 해당 Provider의 models 배열에 정의됩니다. 세 가지 방안을 제공하며, 필요에 따라 선택하세요:

풀 Claude 라인업 — 최고 성능 추구, 높은 요구 시나리오에 적합.

openclaw.json — models.providers
{ "models": { "providers": { "ofoxai-anthropic": { "baseUrl": "https://api.ofox.ai/anthropic", "apiKey": "${OFOXAI_API_KEY}", "api": "anthropic-messages", "models": [ { "id": "anthropic/claude-sonnet-4.5", "name": "Claude Sonnet 4.5", "input": ["text", "image", "file"], "contextWindow": 200000, "maxTokens": 64000 }, { "id": "anthropic/claude-opus-4.6", "name": "Claude Opus 4.6", "reasoning": true, "input": ["text", "image", "file"], "contextWindow": 200000, "maxTokens": 128000 }, { "id": "anthropic/claude-haiku-4.5", "name": "Claude Haiku 4.5", "input": ["text", "image", "file"], "contextWindow": 200000, "maxTokens": 64000 } ] } } } }
모델역할적용 시나리오
anthropic/claude-sonnet-4.5주력 모델일상 대화, 작업 실행, 코드 생성
anthropic/claude-opus-4.6심층 추론복잡한 분석, 긴 체인 추론, 연구 작업
anthropic/claude-haiku-4.5빠른 응답간단한 조회, 빠른 답변, 경량 작업

Agents 설정

OpenClaw는 agents.defaults로 전역 기본값을 설정하고, agents.list 배열로 각 Agent를 정의합니다. 각 Agent는 기본 설정을 덮어쓸 수 있습니다:

openclaw.json — agents 부분
{ "agents": { "defaults": { "model": { "primary": "ofoxai-anthropic/anthropic/claude-sonnet-4.5", "fallbacks": ["ofoxai-anthropic/anthropic/claude-haiku-4.5"] }, "models": { "ofoxai-anthropic/anthropic/claude-opus-4.6": { "alias": "opus" }, "ofoxai-anthropic/anthropic/claude-sonnet-4.5": { "alias": "sonnet" }, "ofoxai-anthropic/anthropic/claude-haiku-4.5": { "alias": "haiku" } }, "thinkingDefault": "low", "timeoutSeconds": 600, "maxConcurrent": 3 }, "list": [ { "id": "main", "default": true }, { "id": "research", "model": { "primary": "ofoxai-anthropic/anthropic/claude-opus-4.6" } }, { "id": "quick", "model": { "primary": "ofoxai-anthropic/anthropic/claude-haiku-4.5" } } ] } }
Agent모델용도
mainclaude-sonnet-4.5 (defaults 상속)기본 Agent, 일상 모든 작업
researchclaude-opus-4.6심층 연구, 복잡한 추론, 장문 분석
quickclaude-haiku-4.5간단한 Q&A, 빠른 응답, 저비용

모델 참조 형식은 provider명/model-id (예: ofoxai-anthropic/anthropic/claude-sonnet-4.5)입니다. defaultsmodels 필드에 모델 별칭을 정의하면, 대화에서 /model opus로 빠르게 전환할 수 있습니다. list의 Agent는 defaults의 모든 설정을 상속하며, 변경이 필요한 필드만 덮어쓰면 됩니다.

전체 설정 예제

다음은 Provider, Models, Agents 설정을 통합한 완전한 openclaw.json입니다 (최강 설정 방안):

~/.openclaw/openclaw.json
{ "models": { "providers": { "ofoxai-anthropic": { "baseUrl": "https://api.ofox.ai/anthropic", "apiKey": "${OFOXAI_API_KEY}", "api": "anthropic-messages", "models": [ { "id": "anthropic/claude-sonnet-4.5", "name": "Claude Sonnet 4.5", "input": ["text", "image", "file"], "contextWindow": 200000, "maxTokens": 64000 }, { "id": "anthropic/claude-opus-4.6", "name": "Claude Opus 4.6", "reasoning": true, "input": ["text", "image", "file"], "contextWindow": 200000, "maxTokens": 128000 }, { "id": "anthropic/claude-haiku-4.5", "name": "Claude Haiku 4.5", "input": ["text", "image", "file"], "contextWindow": 200000, "maxTokens": 64000 } ] }, "ofoxai-gemini": { "baseUrl": "https://api.ofox.ai/gemini", "apiKey": "${OFOXAI_API_KEY}", "api": "google-generative-ai", "models": [ { "id": "models/google/gemini-2.5-flash", "name": "Gemini 2.5 Flash", "reasoning": true, "input": ["text", "image"], "contextWindow": 1000000, "maxTokens": 64000 }, { "id": "models/google/gemini-2.5-pro", "name": "Gemini 2.5 Pro", "reasoning": true, "input": ["text", "image"], "contextWindow": 1000000, "maxTokens": 64000 } ] } } }, "agents": { "defaults": { "model": { "primary": "ofoxai-anthropic/anthropic/claude-sonnet-4.5", "fallbacks": ["ofoxai-anthropic/anthropic/claude-haiku-4.5"] }, "models": { "ofoxai-anthropic/anthropic/claude-opus-4.6": { "alias": "opus" }, "ofoxai-anthropic/anthropic/claude-sonnet-4.5": { "alias": "sonnet" }, "ofoxai-anthropic/anthropic/claude-haiku-4.5": { "alias": "haiku" } }, "thinkingDefault": "low", "timeoutSeconds": 600, "maxConcurrent": 3 }, "list": [ { "id": "main", "default": true }, { "id": "research", "model": { "primary": "ofoxai-anthropic/anthropic/claude-opus-4.6" } }, { "id": "quick", "model": { "primary": "ofoxai-anthropic/anthropic/claude-haiku-4.5" } } ] } }

사용 시나리오

설정 완료 후, 메시지 앱을 통해 OpenClaw에 명령을 전송합니다:

  • 이메일 관리 — “오늘 읽지 않은 이메일을 정리하고, 우선순위별로 정렬해주세요”
  • 일정 관리 — “내일 오후 3시에 팀 회의를 예약해주세요”
  • 정보 검색 — “최근 AI Agent 관련 기술 글을 검색하고 요점을 정리해주세요”
  • 코드 지원 — “이 Python 코드를 리뷰하고, 보안 문제를 확인해주세요”
  • 워크플로 자동화 — “매일 아침 9시에 Slack #general 채널로 팀 일간 보고서를 전송해주세요”

문제 해결

OfoxAI에 연결할 수 없는 경우

baseUrl 설정이 올바른지 확인하세요:

  • Anthropic 프로토콜: https://api.ofox.ai/anthropic
  • OpenAI-Response 프로토콜: https://api.ofox.ai/v1
  • Gemini 프로토콜: https://api.ofox.ai/gemini

모델이 존재하지 않는 경우

모델 ID 형식이 올바른지 확인하세요. models.providers에서 모델을 정의할 때, id는 OfoxAI가 반환하는 전체 ID를 사용합니다 (예: anthropic/claude-sonnet-4.5). agents에서 모델을 참조할 때는 Provider 이름 접두사를 추가해야 합니다: ofoxai-anthropic/anthropic/claude-sonnet-4.5.

토큰 소비가 너무 높은 경우

OpenClaw의 단일 작업 소비가 크므로, 다음을 권장합니다:

  1. 일상 작업에는 claude-haiku-4.5 또는 가성비 모델 사용
  2. 복잡한 작업에서만 research Agent로 전환 (claude-opus-4.6 사용)
  3. OfoxAI 콘솔 에서 사용량 모니터링

모델을 빠르게 전환하는 방법

대화에서 별칭으로 전환: /model opus, /model sonnet, /model haiku (agents.defaults.models에서 별칭 설정 필요).

Last updated on