OpenClaw
Your own personal AI assistant. Any OS. Any Platform. The lobster way. π¦
Install
μ¨λ³΄λ© λ§λ²μ¬ μ€ν
Pi
- Pi: OpenClawμ ν΅μ¬μ΄μ κ·Ήλλ‘ λ¨μνλ κ°λ°μμ© AI μμ΄μ νΈ λΆμ | GeekNews
- Pi μ½λ© μμ΄μ νΈλ₯Ό λ§λ€λ©° λ°°μ΄ μ | GeekNews
Docker λ‘ μμνκΈ°
| WARNING |
| νΉμλΌλ ν¨ν· νν° κ΄λ ¨ λ¬Έμ κ° μλ€λ©΄ iptables#Docker νΈλν½ μ μ΄ νλͺ© μ μ°Έμ‘° |
dockerλ₯Ό μ€μΉν ν:
μ΄ μ€ν¬λ¦½νΈκ° νλ μΌ:
- κ²μ΄νΈμ¨μ΄ μ΄λ―Έμ§ λΉλ
- μ¨λ³΄λ© λ§λ²μ¬λ₯Ό μ€ν
- μ νμ 곡κΈμ μ€μ
- Docker Compose λ₯Ό ν΅ν΄ κ²μ΄νΈμ¨μ΄ μμ.
- κ²μ΄νΈμ¨μ΄ ν ν°μ μμ±νκ³ μ κΈ°λ‘ν©λλ€.
.env
μ νμ νκ²½ λ³μ:
- OPENCLAW_DOCKER_APT_PACKAGES - λΉλ μ€μ μΆκ° apt ν¨ν€μ§ μ€μΉ
- OPENCLAW_EXTRA_MOUNTS - μΆκ° νΈμ€νΈ λ°μΈλ© λ§μ΄νΈ μΆκ°
- OPENCLAW_HOME_VOLUME -
/home/nodeμ΄λ¦μ λ³Όλ₯¨ μ§μμ±.
κ·Έκ²μ΄ λλ νμ:
- λΈλΌμ°μ μμ http://127.0.0.1:18789/ μ μ.
- ν ν° μ»¨νΈλ‘€μ UI(μ€μ β ν ν°)μ λΆμ¬λ£μ΅λλ€.
- URLμ΄ λ€μ νμνμ κ°μ?
docker compose run --rm openclaw-cli dashboard --no-open
νΈμ€νΈμ config/workspaceλ₯Ό μμ±ν©λλ€:
-
~/.openclaw/- κ΅¬μ± λλ ν 리μ λλ€. μ¬κΈ°μλ κ²°κ΅ OpenClaw λ©λͺ¨λ¦¬, ꡬμ±, νμ¬ API ν€ λ±μ΄ ν¬ν¨λ©λλ€. -
~/.openclaw/workspace- 컨ν μ΄λ λ΄λΆμμ μ€νλ λ μμ΄μ νΈκ° μ§μ μ¬μ©ν μ μλ νμΌμ΄ κ°λ μ°¬ μμ μμ λλ ν°λ¦¬μ λλ€. μμ΄μ νΈκ° λ§λ νμΌλ μ¬κΈ°μ μ μ₯λ©λλ€.
μλμΌλ‘ μμ μ μ§ννκ³ μΆλ€λ©΄
docker build -t openclaw:local -f Dockerfile .
docker compose run --rm openclaw-cli onboard
docker compose up -d openclaw-gateway
λ§μ½ unauthorized λλ disconnected (1008): pairing required κ° μΆλ ₯ λλ€λ©΄ λμ 보λ λ§ν¬ λ° λΈλΌμ°μ μ₯μΉλ₯Ό μΉμΈν΄μΌ νλ€:
# λμ보λ λ§ν¬ μ¬μμ±
docker compose run --rm openclaw-cli dashboard --no-open
# μΉμΈ λκΈ° μ€μΈ λλ°μ΄μ€ νμΈ
docker compose run --rm openclaw-cli devices list
# λλ°μ΄μ€ μΉμΈ (μΆλ ₯λ requestId μ¬μ©)
docker compose run --rm openclaw-cli devices approve <requestId>
μ μ λ°©λ²
κ·Έλ₯ μ μνλ©΄ λμ보λμμ λ€μκ³Ό κ°μ΄ μΆλ ₯λλ€:
보μμ λ¬Έμ λ‘ μΈν΄ localhost λλ©μΈ λλ https:// μ€ν€λ§λ‘ μ μ κ°λ₯νλ€.
λ°λΌμ λ‘컬 PC ν°λ―Έλμμ SSH ν°λλ§μΌλ‘ μ μν΄μΌ νλ€:
μ΄ν http://localhost:18789 μΌλ‘ μ μνλ©΄ λλ€.
ν λ κ·Έλ¨ λ±λ‘
ν΄λΉ μ±λ΄μ΄ μλ μ±ν λ°©μ μ무거λ μ λ ₯νλ©΄ λ€μκ³Ό κ°μ΄ μΆλ ₯λλ€:
OpenClaw: access not configured.
Your Telegram user id: NNNNNNNN
Pairing code: XXXXXXXX
Ask the bot owner to approve with:
openclaw pairing approve telegram <code>
λμμλ μ½λλ₯Ό μ¬μ©νμ¬ λͺ λ Ήμ μ€ννμ.
λ§μ½ Docker 컨ν μ΄λμμ μ§μ μ€ννλ€λ©΄ λ€μ λͺ λ ΉμΌλ‘ μ€ννμ:
wakeMode
OpenClaw cron jobμ μ€ν λ°©μμ κ²°μ νλ μ€μ . λͺ
μνμ§ μμΌλ©΄ next-heartbeatκ° κΈ°λ³Έκ°.
κ°
| κ° | μ€λͺ | μ¬μ© μ¬λ‘ |
| | μ€μΌμ€ μκ°μ μ¦μ μ€ν | μ μ μλ¦Ό, μ νν νμ΄λ° νμ μ |
| | μ€μΌμ€ μκ° μ΄ν λ€μ heartbeatμμ μ€ν | λ°°ν°λ¦¬/리μμ€ μ μ½, λμ¨ν νμ΄λ° νμ© μ |
λμ λ°©μ
now
- μ€μΌμ€λ μκ°(μ: 08:00)μ κ²μ΄νΈμ¨μ΄κ° μ§μ job μ€ν
- κ²μ΄νΈμ¨μ΄ νλ‘μΈμ€κ° νμ΄λ¨Έλ₯Ό κ΄λ¦¬
- μ νν μ€ν μκ° λ³΄μ₯
next-heartbeat
- μ€μΌμ€ μκ°μ΄ μ§λλ λ°λ‘ μ€ννμ§ μμ
- λ€μ heartbeat pollμ΄ μ¬ λκΉμ§ λκΈ°
- heartbeat μ£ΌκΈ°μ λ°λΌ μ§μ° λ°μ κ°λ₯
- heartbeatκ° λΉνμ±νλμ΄ μμΌλ©΄ μμν μ€ν μ λ¨
μ£Όμμ¬ν
-
next-heartbeatλ heartbeat pollingμ΄ νμ±νλμ΄ μμ΄μΌ ν¨ - heartbeat κ°κ²©μ΄ κΈΈλ©΄ μλ¦Ό μ§μ° λ°μ
- μ μ μλ¦Όμ΄ νμνλ©΄ λ°λμ
nowμ¬μ©
μμ
{
"name": "μμΉ¨ μλ¦Ό",
"schedule": { "kind": "cron", "expr": "0 22 * * *", "tz": "UTC" },
"wakeMode": "now",
"sessionTarget": "isolated",
"payload": {
"kind": "agentTurn",
"message": "μλ¦Ό λ΄μ©"
}
}
Troubleshooting
gateway closed (1006 abnormal closure (no close frame)): no close reason
λλ°μ΄μ€ λ±λ‘μ λ€μκ³Ό κ°μ΄ μ§ννμ λ:
λ₯Ό μΉλ©΄ λ€μ μλ¬κ° μΆλ ₯λ¨:
WARN[0000] The "CLAUDE_WEB_COOKIE" variable is not set. Defaulting to a blank string.
WARN[0000] The "CLAUDE_AI_SESSION_KEY" variable is not set. Defaulting to a blank string.
WARN[0000] The "CLAUDE_WEB_SESSION_KEY" variable is not set. Defaulting to a blank string.
WARN[0000] The "CLAUDE_WEB_COOKIE" variable is not set. Defaulting to a blank string.
WARN[0000] The "CLAUDE_AI_SESSION_KEY" variable is not set. Defaulting to a blank string.
WARN[0000] The "CLAUDE_WEB_SESSION_KEY" variable is not set. Defaulting to a blank string.
Container openclaw-openclaw-cli-run-4767ca06b094 Creating
Container openclaw-openclaw-cli-run-4767ca06b094 Created
π¦ OpenClaw 2026.2.3 (unknown) β I read logs so you can keep pretending you don't have to.
β
β
[openclaw] CLI failed: Error: gateway closed (1006 abnormal closure (no close frame)): no close reason
Gateway target: ws://127.0.0.1:18789
Source: local loopback
Config: /home/node/.openclaw/openclaw.json
Bind: lan
at Object.onClose (file:///app/dist/call-BxBOsbXG.js:262:10)
at WebSocket.<anonymous> (file:///app/dist/client-i9GLCujO.js:1400:23)
at WebSocket.emit (node:events:519:28)
at WebSocket.emitClose (/app/node_modules/.pnpm/[email protected]/node_modules/ws/lib/websocket.js:263:12)
at emitErrorAndClose (/app/node_modules/.pnpm/[email protected]/node_modules/ws/lib/websocket.js:1047:13)
at ClientRequest.<anonymous> (/app/node_modules/.pnpm/[email protected]/node_modules/ws/lib/websocket.js:886:5)
at ClientRequest.emit (node:events:519:28)
at emitErrorEvent (node:_http_client:107:11)
at Socket.socketErrorListener (node:_http_client:574:5)
at Socket.emit (node:events:519:28)
μ΄ κ²½μ° gateway 컨ν μ΄λμμ μ§μ μ€ννμΈμ:
unauthorized: gateway token mismatch (set gateway.remote.token to match gateway.auth.token)
λλ°μ΄μ€ λ±λ‘μ:
λ€μκ³Ό κ°μ΄ μΆλ ₯λλ€λ©΄:
π¦ OpenClaw 2026.2.3 (unknown) β I'm not magicβI'm just extremely persistent with retries and coping strategies.
β
gateway connect failed: Error: unauthorized: gateway token mismatch (set gateway.remote.token to match gateway.auth.token)
β
[openclaw] CLI failed: Error: gateway closed (1008): unauthorized: gateway token mismatch (set gateway.remote.token to match gateway.auth.token)
Gateway target: ws://127.0.0.1:18789
Source: local loopback
Config: /home/node/.openclaw/openclaw.json
Bind: lan
at Object.onClose (file:///app/dist/call-BxBOsbXG.js:262:10)
at WebSocket.<anonymous> (file:///app/dist/client-i9GLCujO.js:1400:23)
at WebSocket.emit (node:events:519:28)
at WebSocket.emitClose (/app/node_modules/.pnpm/[email protected]/node_modules/ws/lib/websocket.js:273:10)
at Socket.socketOnClose (/app/node_modules/.pnpm/[email protected]/node_modules/ws/lib/websocket.js:1346:15)
at Socket.emit (node:events:519:28)
at TCP.<anonymous> (node:net:346:12)
token mismatchλΌκ³ λμ΅λλ€. μ°κ²°μ λμ§λ§ μΈμ¦μμ μ€ν¨νλ κ²λλ€. μ€μ νμΌμ ν ν°μ νμΈν΄λ³΄μΈμ:
# 1. 컨ν
μ΄λ λ΄λΆ μ€μ
docker compose exec openclaw-gateway cat /home/node/.openclaw/openclaw.json | grep -A2 token
# 2. νΈμ€νΈ μ€μ
cat ~/.openclaw/openclaw.json | grep -A2 token
# 3. .env νμΌ
cat .env | grep TOKEN
μμ μΈ ν ν°μ΄ λͺ¨λ λμΌν΄μΌ νλ€.
λ§μ½ ν ν°μ΄ lNXrjBP5su9SUP4spBfNTaEYZy67WmB7b25ex4yYeXAENSDW μΌ κ²½μ° λ€μκ³Ό κ°μ΄ ν ν°μ μ§μ μ§μ ν μ μλ€:
docker compose exec openclaw-gateway node dist/index.js devices list --token "lNXrjBP5su9SUP4spBfNTaEYZy67WmB7b25ex4yYeXAENSDW"
μΆλ ₯λ Pending ν
μ΄λΈμ Request 컬λΌμ UUID λ₯Ό μ¬μ©νμ¬ λ±λ‘νλ©΄ λλ€. Request UUID κ° 99a9713e-be0d-469f-bca4-25153a12a670 μΌ κ²½μ°:
docker compose exec openclaw-gateway node dist/index.js devices approve 99a9713e-be0d-469f-bca4-25153a12a670 --token "lNXrjBP5su9SUP4spBfNTaEYZy67WmB7b25ex4yYeXAENSDW"
See also
- AI Agents
- Clawdbot
- Moltbot
- OpenClaw
- Moltbook
- NanoClaw - Apple 컨ν μ΄λ 격리 νκ²½μμ μ€νλλ 500μ€μ§λ¦¬ TypeScript κΈ°λ° Claude μ΄μμ€ν΄νΈ
Favorite site
Guides
- OpenClaw: λ©μ μ μμ λ§λλ AI λΉμ | Engineering Blog by Dale Seo
- (μ€μ κ°μ΄λ) μ€νν΄λ‘(OpenClaw) μ€μΉλΆν° μ λ―Έλμ΄(Gemini) λ¬΄λ£ μ°λκΉμ§ μλ²½ κ°μ΄λ(feat. ꡬ ν΄λ‘λλ΄(Clawdbot) μ€μΉ κ°μ΄λ)
- (μ€μ κ°μ΄λ) μ€νν΄λ‘(OpenClaw. ꡬ Clawdbot)μ ν λ κ·Έλ¨(Telegram) μ±λ λ±λ‘ μλ²½ κ°μ΄λ
- OpenClaw 2νΈ - μ€μΉ λ° μ€μ μλ²½ κ°μ΄λ
- OpenClaw κ°μ΄λ: κ°μΈ AI λΉμ μ€μΉλΆν° νμ©κΉμ§