OpenClaw 웹 데이터 수집기: AI 에이전트 기반 구조화 추출

💡 핵심 요약 (Executive Summary)

본 가이드는 llm openclaw 핵심 가이드 및 실전 아키텍처의 핵심 개념, 실전 구성 명령어 및 아키텍처 베스트 프랙티스를 다룹니다. 클라우드 네이티브 및 인프라 엔지니어링 실무에 즉시 활용 가능하도록 체계적으로 정리했습니다.

📑 Table of Contents
Docs
Installation
bash
curl -fsSL https://openclaw.ai/install.sh | bash
# openclaw port: http://localhost:18789/
# ollama port: http://localhost:11434/
Reference & Guidelines (NOTE)

아래에서 등장하는 Settings는 ~/.openclaw/openclaw.json 에서 수정 가능 (재시작: ollama launch openclaw)

Samples:

bash
{
  "agents": {
    "defaults": {
      "compaction": {
        "reserveTokensFloor": 4096
      },
      "model": {
        "primary": "ollama/llama3-extended:latest"
      },
      "workspace": "/Users/gimmyeonghan/.openclaw/workspace"
    }
  },
  "gateway": {
    "auth": {
      "mode": "token",
      "token": "239b95be7550ffffde7276a981f559b4c059b9290f2540d8"
    },
    "bind": "loopback",
    "controlUi": {
      "allowedOrigins": [
        "https://claw.fredric18.uk"
      ]
    },
    "mode": "local",
    "port": 18789,
    "tailscale": {
      "mode": "off",
      "resetOnExit": false
    }
  },
  "meta": {
    "lastTouchedAt": "2026-07-02T04:44:20.249Z",
    "lastTouchedVersion": "2026.6.11"
  },
  "models": {
    "mode": "merge",
    "providers": {
      "ollama": {
        "api": "ollama",
        "apiKey": "ollama-local",
        "baseUrl": "http://127.0.0.1:11434",
        "models": [
          {
            "contextWindow": 32768,
            "cost": {
              "cacheRead": 0,
              "cacheWrite": 0,
              "input": 0,
              "output": 0
            },
            "id": "llama3-extended:latest",
            "input": [
              "text"
            ],
            "name": "llama3-extended:latest",
            "params": {
              "num_ctx": 32768
            }
          },
          {
            "compat": {
              "supportsTools": true,
              "supportsUsageInStreaming": true
            },
            "contextWindow": 131072,
            "cost": {
              "cacheRead": 0,
              "cacheWrite": 0,
              "input": 0,
              "output": 0
            },
            "id": "gemma4:latest",
            "input": [
              "text"
            ],
            "maxTokens": 8192,
            "name": "gemma4:latest",
            "params": {
              "num_ctx": 131072
            },
            "reasoning": true
          }
        ]
      }
    }
  },
  "plugins": {
    "entries": {
      "ollama": {
        "enabled": true
      }
    }
  },
  "session": {
    "dmScope": "per-channel-peer"
  },
  "skills": {
    "entries": {
      "1password": {
        "enabled": false
      },
      "apple-notes": {
        "enabled": false
      },
      "apple-reminders": {
        "enabled": false
      },
      "bear-notes": {
        "enabled": false
      },
      "blogwatcher": {
        "enabled": false
      },
      "blucli": {
        "enabled": false
      },
      "camsnap": {
        "enabled": false
      },
      "clawhub": {
        "enabled": false
      },
      "coding-agent": {
        "enabled": false
      },
      "discord": {
        "enabled": false
      },
      "eightctl": {
        "enabled": false
      },
      "gemini": {
        "enabled": false
      },
      "gh-issues": {
        "enabled": false
      },
      "gifgrep": {
        "enabled": false
      },
      "github": {
        "enabled": false
      },
      "gog": {
        "enabled": false
      },
      "goplaces": {
        "enabled": false
      },
      "himalaya": {
        "enabled": false
      },
      "imsg": {
        "enabled": false
      },
      "mcporter": {
        "enabled": false
      },
      "model-usage": {
        "enabled": false
      },
      "nano-pdf": {
        "enabled": false
      },
      "obsidian": {
        "enabled": false
      },
      "openai-whisper": {
        "enabled": false
      },
      "openai-whisper-api": {
        "enabled": false
      },
      "openhue": {
        "enabled": false
      },
      "oracle": {
        "enabled": false
      },
      "ordercli": {
        "enabled": false
      },
      "peekaboo": {
        "enabled": false
      },
      "sag": {
        "enabled": false
      },
      "session-logs": {
        "enabled": false
      },
      "sherpa-onnx-tts": {
        "enabled": false
      },
      "slack": {
        "enabled": false
      },
      "songsee": {
        "enabled": false
      },
      "sonoscli": {
        "enabled": false
      },
      "spotify-player": {
        "enabled": false
      },
      "summarize": {
        "enabled": false
      },
      "things-mac": {
        "enabled": false
      },
      "tmux": {
        "enabled": false
      },
      "trello": {
        "enabled": false
      },
      "video-frames": {
        "enabled": false
      },
      "voice-call": {
        "enabled": false
      },
      "wacli": {
        "enabled": false
      },
      "xurl": {
        "enabled": false
      }
    }
  },
  "tools": {
    "profile": "coding",
    "web": {
      "search": {
        "enabled": true,
        "provider": "ollama"
      }
    }
  },
  "wizard": {
    "lastRunAt": "2026-07-02T04:02:50.527Z",
    "lastRunCommand": "doctor",
    "lastRunMode": "local",
    "lastRunVersion": "2026.6.11"
  }
}
Cloudflare Setup 후…
bash
# cloudflare
sudo cloudflared service install eyJhIjoiN2U3ZG...
  • 새로운 디바이스 접속 허용
    1. 액세스 토큰
bash
# 서버 실행환경에서 복제
     ✓ OpenClaw is running

       Open the Web UI:
         http://127.0.0.1:18789/#token=239b95be7550ffffde7276a981f559b4c059b9290f2540d8
  1. 화면에 토큰 삽입시 노출되는 origin 관련 에러 fix

    1. 서버의 UI에서 설정>인프라>Control UI Allowed Origins 검색
    2. 사용 도메인 입력 후 저장
    3. 장치 페어링 경고 fix
`bash
openclaw devices list
 │
 ◇

 🦞 OpenClaw 2026.6.1 (2e08f0f) — The lobster in your shell. 🦞

 │
 ◇
 Pending (1)
 ┌──────────────────────────────────────┬─────────────────────────┬────────────────────────────────────────────────────────────────────┬────────────────────┬──────────┬─────────────┐
 │ Request                              │ Device                  │ Requested                                                          │ Approved           │ Age      │ Status      │
 ├──────────────────────────────────────┼─────────────────────────┼────────────────────────────────────────────────────────────────────┼────────────────────┼──────────┼─────────────┤
 │ 6c9d38fc-1a90-4ce6-bec1-8b5994befe09 │ c8fd6709ea8968190242dec │ roles: operator; scopes: operator.admin, operator.approvals,       │ none               │ just now │ new pairing │
 │                                      │ fdeecad90e65ade1b7bc6c3 │ operator.pairing, operator.read, operator.write                    │                    │          │             │
 │                                      │ 9458885afe7fdaddb9      │                                                                    │                    │          │             │
 └──────────────────────────────────────┴─────────────────────────┴────────────────────────────────────────────────────────────────────┴────────────────────┴──────────┴─────────────┘
 Paired (3)
 ┌────────────────────────────────────────────────────────────┬────────────┬───────────────────────────────────────────────────────────────────────────────┬────────────┬────────────┐
 │ Device                                                     │ Roles      │ Scopes                                                                        │ Tokens     │ IP         │
 ├────────────────────────────────────────────────────────────┼────────────┼───────────────────────────────────────────────────────────────────────────────┼────────────┼────────────┤
 │ 19ec60ef7576f2cc5f657b510293f50941f31642388b7bc925b4b54eaa │ operator   │ operator.admin, operator.read, operator.write, operator.approvals, operator.  │ operator   │            │
 │ 17712a                                                     │            │ pairing                                                                       │            │            │
 │ e0f7ef281c6cfaa33c65fe7b7fa014ace12f846ab275b5ae6126196c74 │ operator   │ operator.pairing                                                              │ operator   │            │
 │ dd409c                                                     │            │                                                                               │            │            │
 │ 3e489bccb92978578ee608b423ef56a6a72fe17245c7e20e9cbdafc8f5 │ operator   │ operator.admin, operator.read, operator.write, operator.approvals, operator.  │ operator   │            │
 │ c6d55c                                                     │            │ pairing                                                                       │            │            │
 └────────────────────────────────────────────────────────────┴────────────┴───────────────────────────────────────────────────────────────────────────────┴────────────┴────────────┘
 `

 openclaw devices approve 6c9d38fc-1a90-4ce6-bec1-8b5994befe09
prompt
│
     ◇

     🦞 OpenClaw 2026.6.1 (2e08f0f) — I'll refactor your busywork like it owes me money.

     │
     ◇
     │
     gateway connect failed: GatewayClientRequestError: scope upgrade pending approval (requestId: c4fdd42f-7c5f-49fb-83f6-b76f1ae63711)
     ◇
     Direct scope access failed; using local fallback.
     Approved c8fd6709ea8968190242decfdeecad90e65ade1b7bc6c39458885afe7fdaddb9 (6c9d38fc-1a90-4ce6-bec1-8b5994befe09)
     `
Model Change
bash
openclaw models set ollama/llama3
openclaw models status
Destroy
Reference & Guidelines (NOTE)

openclaw는 종료가 불가능하므로, 삭제 방법만 명시함.

bash
openclaw uninstall --all --yes
rm -rf ~/.openclaw
  • 같이 설치된 ollama가 멈추지 않을때 참조
Trouble Shooting
Compaction Reserve Token Floor
문제: 채팅창에 다음과 같이 표시됨
bash
⚠️ Auto-compaction could not recover this turn. I kept this conversation mapped to the current session. Please try again, use /compact, or use /new to start a fresh session.

To prevent this, increase your compaction buffer by setting agents.defaults.compaction.reserveTokensFloor to 20000 or higher in your config.
Solution

1. UI에서 설정>AI 및 에이전트>Compaction Reserve Token Floor 를 검색
2. 100000 으로 설정 후 저장
3. 이걸로 해결되지 않는다면, Openclaw설정 문제가 아니라 Model(Ollama 등)의 제한문제임

  1. Model의 컨텍스트 크기를 늘림:
  2. 적용

    bash
    ollama launch openclaw --model llama3-extended
  3. 프롬프트 세션에서

    bash
    /reset

4. 기본적으로 20000\~ 30000 이 적정선.

Comments

Leave a Reply

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