๐Ÿ–ฅ๏ธUnraid + ๐Ÿฆ€OpenClaw(๐Ÿ‹Docker) + ๐Ÿฆ™Ollama(๐Ÿค–Local Model)

Unraid ์‹œ์Šคํ…œ์—์„œ Ollama์˜ Locam LLM ์„œ๋น„์Šค๋ฅผ ์ด์šฉํ•˜์—ฌ OpenClaw๋ฅผ ๋™์ž‘์‹œ์ผœ๋ด…์‹œ๋‹ค.

  • Ollama๋Š” ์ด๋ฏธ ์„ค์น˜๋˜์–ด ์„œ๋น„์Šค ์ค‘์ธ ๊ฒƒ์„ ์ „์ œ๋กœ ํ•ฉ๋‹ˆ๋‹ค.
  • ์™ธ๋ถ€ ์ ‘๊ทผ(์—ญ๋ฐฉํ–ฅ ํ”„๋ก์‹œ ๋“ฑ)์— ๋Œ€ํ•œ ์„ค๋ช…์€ ์ƒ๋žตํ•ฉ๋‹ˆ๋‹ค.

OpenClaw ์ปจํ…Œ์ด๋„ˆ ์„ค์น˜ํ•˜๊ธฐ

Apps์—์„œ OpenClaw๋ฅผ ๊ฒ€์ƒ‰ํ•˜์—ฌ Official ์ปจํ…Œ์ด๋„ˆ๋ฅผ ๋‹ค์šด๋กœ๋“œ ํ•ฉ๋‹ˆ๋‹ค.

๋„์ปค ์„ค์ •์€ ๊ธฐ๋ณธ๊ฐ’์—์„œ ๋ช‡๊ฐ€์ง€ ๊ฑด๋“œ๋ ค์•ผ ํ•ฉ๋‹ˆ๋‹ค.

ํ•ด๋‹น ๋ ˆํฌ์ง€ํ† ๋ฆฌ ๋ฒ„์ „์€ ๊ธฐ๋ณธ๊ฐ’์ด latest ์ตœ์‹ ๋ฒ„์ „์œผ๋กœ ์„ค์ •๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

๐Ÿ”ฅ์ฃผ์˜! ์ตœ์‹ ๋ฒ„์ „์˜ OpenClaw๋Š” Discord ์„œ๋ฒ„/์ฑ„๋„์—์„œ ์‘๋‹ต๋ฐ›์ง€ ๋ชปํ•˜๋Š” ๋ฒ„๊ทธ๋ฅผ ํ™•์ธํ•˜์˜€์Šต๋‹ˆ๋‹ค -> ghcr.io/openclaw/openclaw:2026.4.15 ๋ฒ„์ „์€ Discord์˜ ์ •์ƒ ์‘๋‹ต ํ™•์ธํ•˜์˜€์Šต๋‹ˆ๋‹ค.

๐Ÿ’ก
ghcr.io/openclaw/openclaw:2026.4.15

๋ณธ ๊ฒŒ์‹œ๋ฌผ์—์„œ๋Š” Discord์™€ ์—ฐ๋™์„ ๋ชฉํ‘œ๋กœ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์•ˆ์ •๋œ ๋ฒ„์ „์ธ openclaw:2026.4.15 ๋ฒ„์ „์œผ๋กœ ์„ค์น˜ํ•ฉ๋‹ˆ๋‹ค.

์ปจํ…Œ์ด๋„ˆ์˜ ๋‚ด๋ถ€์™€ ์—ฐ๊ฒฐํ•  Unraid ๊ฒฝ๋กœ๋ฅผ ์„ค์ •ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค.

๊ธฐ๋ณธ๊ฒฝ๋กœ๋Š” /mnt/user ... ์œผ๋กœ ์„ค์ •๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค๋งŒ,

Unraid์˜ ๊ณ ์งˆ๋ณ‘์œผ๋กœ ์ผ๋ถ€ ๋„์ปค ์„œ๋น„์Šค์—์„œ๋Š” Web-Socket ์ด์Šˆ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค...๐Ÿ˜…

/mnt/user -> /mnt/cache ๋กœ ๋ณ€๊ฒฝํ•ด์ค๋‹ˆ๋‹ค.

ํ•ด๋‹น /mnt/cache ๊ฒฝ๋กœ์˜ ํด๋”์—๋Š” ์†Œ์œ ์ž, ๊ถŒํ•œ ์„ค์ •์„ ์ถ”๊ฐ€ํ•ด์ค๋‹ˆ๋‹ค.

chown -R 99:100 /mnt/cache/appdata/openclaw
chmod -R 777 /mnt/cache/appdata/openclaw

Gateway ์„ค์ •ํ•˜๊ธฐ

OpenClaw๋Š” ์™ธ๋ถ€ ์ ‘๊ทผ ์‹œ, Gateway๋ฅผ ์ด์šฉํ•ฉ๋‹ˆ๋‹ค.

์™ธ๋ถ€์—์„œ OpenClaw์— ์—ฐ๊ฒฐํ•˜๋ ค๋ฉด SSL ์„ค์ •์ด ๋˜์–ด ์žˆ์–ด์•ผํ•ฉ๋‹ˆ๋‹ค.

(์ €๋Š” ์—ญ๋ฐฉํ–ฅ ํ”„๋ก์‹œ, ์ธ์ฆ์„œ๋ฅผ ํ†ตํ•ด ์™ธ๋ถ€์—์„œ๋Š” https๋กœ ์ ‘์†ํ•˜๊ณ , OpenClaw์˜ http ๊ฒฝ๋กœ๋กœ ์—ฐ๊ฒฐํ•˜์˜€์Šต๋‹ˆ๋‹ค.)

Gateway์—์„œ์˜ ๋ณด์•ˆํ•ญ๋ชฉ์œผ๋กœ Token ์„ค์ •ํ•  ๊ฒฝ์šฐ, openssl ์ƒ์„ฑํ‚ค๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

Unraid ํ„ฐ๋ฏธ๋„์—์„œ ์•„๋ž˜ ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅํ•˜๋ฉด Token์„ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ž˜ ๋ฉ”๋ชจํ•ด๋‘ก์‹œ๋‹ค. (๋‚˜์ค‘์— ์“ธ ์ˆ˜ ์žˆ์–ด์š” ๐Ÿ˜„)

openssl rand -hex 24

์ปจํ…Œ์ด๋„ˆ ์„ค์น˜๊ฐ€ ๋๋‚˜๋ฉด Gateway ์ถ”๊ฐ€ ์„ค์ •์„ ์ง์ ‘ ํ•ด์ค๋‹ˆ๋‹ค.

nano /mnt/cache/appdata/openclaw/config/openclaw.json

"controlUi"์˜ "dangerouslyAllowHostHeaderOriginFallback": true ๋ฅผ ์ถ”๊ฐ€ํ•ด์ค๋‹ˆ๋‹ค.

์ด๊ฒŒ ์—†์„ ๊ฒฝ์šฐ ์—ญ๋ฐฉํ–ฅ ํ”„๋ก์‹œ ์ ‘๊ทผ์ด ์•ˆ ๋ฉ๋‹ˆ๋‹ค;

"gateway": {
    "mode": "local",
    "bind": "lan",
    "controlUi": {
      "allowInsecureAuth": true,
      "dangerouslyAllowHostHeaderOriginFallback": true
    },
    "auth": {
      "mode": "token"
    }
  },

์„ค์ •์ด ๋๋‚˜๋ฉด ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์žฌ์‹œ์ž‘ ํ•ฉ๋‹ˆ๋‹ค.

OpenClaw ์ ‘์†ํ•˜๊ธฐ

OpenClaw ์›นํŽ˜์ด์ง€์— ์ ‘์†ํ•˜๋ฉด Gateway ๋Œ€์‹œ๋ณด๋“œ๊ฐ€ ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค.

์œ„์—์„œ ์ƒ์„ฑํ–ˆ๋˜ OpenSSL ํ‚ค๋ฅผ Gateway ํ† ํฐ๋ž€์— ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค.

ํ˜น์€, ์›น์ฃผ์†Œ์— ์ง์ ‘ ํ† ํฐ์„ ์ž…๋ ฅํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

http://[Unraid_๋‚ด๋ถ€_IP]:18789/?token=1๋‹จ๊ณ„์—์„œ_๋ฐœ๊ธ‰๋ฐ›์€_48์ž๋ฆฌ_ํ† ํฐ

ํ† ํฐ๊ฐ’์ด ์ปจํ…Œ์ด๋„ˆ์˜ ์„ธํŒ…๊ฐ’๊ณผ ์ผ์น˜ํ•œ๋‹ค๋ฉด, Device Pairing์„ ํ•ด์•ผํ•œ๋‹ค๋Š” ์•Œ๋ฆผ์ด ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค.

requestid๋ฅผ ๋ณต์‚ฌํ•ฉ๋‹ˆ๋‹ค.

Unraid ํ„ฐ๋ฏธ๋„์„ ์—ด๊ณ  ์•„๋ž˜ ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅํ•˜๊ฑฐ๋‚˜,

docker exec -it OpenClaw openclaw devices approve [device-paring-requied-ID]
docker exec -it OpenClaw openclaw onboard

OpenClaw ์ฝ˜์†”์—์„œ ์ง์ ‘ 'openclaw devices approve [ํŽ˜์–ด๋งID]' ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค.

OpenClaw ์„ค์ •ํ•˜๊ธฐ

ํŽ˜์–ด๋ง์ด ์™„๋ฃŒ๋˜๋ฉด ๋ณธ๊ฒฉ์ ์œผ๋กœ OpenClaw ์ดˆ๊ธฐ์„ธํŒ…์„ ํ•  ์ฐจ๋ก€์ž…๋‹ˆ๋‹ค! ๐Ÿค–

์•„๋ž˜ OpenClaw Onboard ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅํ•˜๋ฉด Setup์ด ์‹œ์ž‘๋ฉ๋‹ˆ๋‹ค.

openclaw onboard

Yes๋กœ ๋ฐ”๊พธ๊ณ  Enter๋ฅผ ๋ˆ„๋ฅด๋ฉด ๋‹ค์Œ ์Šคํ…์„ ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

์ €๋Š” QuickStart๋กœ ์ง„ํ–‰ํ•˜์˜€์Šต๋‹ˆ๋‹ค.

  • Ollama์˜ IP์ฃผ์†Œ์™€ ๊ธฐ๋ณธ LLM ๋ชจ๋ธ์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.
  • Channel์€ Discord๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

์„ค์ •์ด ๋๋‚˜๋ฉด OpenClaw ์›น๋งํฌ๋กœ ์ ‘์†ํ•ฉ๋‹ˆ๋‹ค.

Ollama์˜ ๋กœ์ปฌ๋ชจ๋ธ๋กœ gemma4๋ฅผ ์‚ฌ์šฉํ•˜์˜€๋Š”๋ฐ ์ž˜ ์—ฐ๊ฒฐ๋œ ๊ฒƒ์„ ํ™•์ธํ•˜์˜€์Šต๋‹ˆ๋‹ค.

์ฒซ ์ฑ„ํŒ…์„ ์‹œ๋„ํ•˜๋ฉด OpenClaw์˜ ์„ฑ๊ฒฉ, ์ •์ฒด์„ฑ ๋“ฑ ๊ตฌ์ฒด์ ์ธ ์„ค์ •๋“ค์„ ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

์ฑ„ํŒ…์ฐฝ์—์„œ ํ”„๋กฌํ”„ํŠธ๋งŒ์œผ๋กœ OpenClaw๊ฐ€ ์ดํ•ดํ•˜๊ณ  ์ง์ ‘ ์„ค์ •์„ ๋งˆ์น˜๋Š” ๊ณผ์ •์„ ๊ฒฝํ—˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Discord Bot ์ถ”๊ฐ€ํ•˜๊ธฐ

Discord์— OpenClaw๋ฅผ ์—ฐ๊ฒฐํ•˜๋ฉด, ์•ฑ์œผ๋กœ ๋ฉ”์‹œ์ง€๋ฅผ ๋ณด๋‚ด์„œ ๋ช…๋ นํ•˜๊ฑฐ๋‚˜ ์ƒํƒœ ๋“ฑ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Discord ๊ณ„์ •์ด ์žˆ๋‹ค๋Š” ๊ฐ€์ •ํ•˜์— Bot ์ถ”๊ฐ€๋ฅผ ์ง„ํ–‰ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

์•„๋ž˜ ๊ฐœ๋ฐœ์ž ํฌํ„ธ ํŽ˜์ด์ง€์— ๋“ค์–ด๊ฐ‘๋‹ˆ๋‹ค.

Discord for Developers
Build games, experiences, and integrations for millions of users on Discord.

[New Application] ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜์—ฌ OpenClaw ๋ด‡์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.

๋‚ด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์ƒ์„ฑํ•œ ๋ด‡์„ ํด๋ฆญํ•˜์—ฌ ์„ธ๋ถ€ ์„ค์ •์„ ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

  • ์™ผ์ชฝ ํƒญ์—์„œ ๋ด‡ ๋ฉ”๋‰ด๋ฅผ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.
  • [ํ† ํฐ ์ดˆ๊ธฐํ™”] ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜์—ฌ Discord ๋ด‡์˜ ํ† ํฐ์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.
  • ๐Ÿ”ฅ์ฃผ์˜! ํ† ํฐ์€ ํ˜„์žฌ ์ด ํ™”๋ฉด์—์„œ๋งŒ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค! ์ž˜ ๋ณต์‚ฌํ•ด ๋‘ก๋‹ˆ๋‹ค.

ํ™”๋ฉด์„ ๋‚ด๋ฆฌ๋ฉด, ๋ด‡์˜ ๊ธฐ๋ณธ ์„ธํŒ… ํ•ญ๋ชฉ๋“ค์ด ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค.

Privileged Gateway Intents์˜ ๋ชจ๋“  Intent ํ•ญ๋ชฉ๋“ค์„ ํ™œ์„ฑํ™”ํ•ฉ๋‹ˆ๋‹ค.

[๋ณ€๊ฒฝ ์‚ฌํ•ญ ์ €์žฅ] ๋ฒ„ํŠผ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

์™ผ์ชฝ ํƒญ์˜ OAuth2 ๋ฉ”๋‰ด๋ฅผ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

OAuth2 URL ์ƒ์„ฑ๊ธฐ์—์„œ ํŽธ์˜์ƒ '์Šค์ฝ”ํ”„: bot', '๋ด‡ ๊ถŒํ•œ: ๊ด€๋ฆฌ์ž'๋กœ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ“Œ OpenClaw ๊ฐ€์ด๋“œ์—๋Š” bot, applications.commands์™€ View Channels, Send Messages, Embed Links, Attach Files, Read Message History, Add Reactions๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค;;

๋งจ ์•„๋ž˜์— ์ƒ์„ฑ๋œ URL์˜ ์ฃผ์†Œ๋ฅผ ๋ณต์‚ฌํ•ฉ๋‹ˆ๋‹ค.

์›นํŽ˜์ด์ง€์— ์ฃผ์†Œ์ฐฝ์— ์ƒ์„ฑ๋œ URL๋กœ ์ ‘์†ํ•ฉ๋‹ˆ๋‹ค.

์ƒ์„ฑํ•œ Bot์„ ์„œ๋ฒ„์— ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

Discord ์•ฑ ์—ฐ๊ฒฐํ•˜๊ธฐ

๐Ÿ“ณDiscord ์•ฑ - ์„ค์ • - ๊ฐœ๋ฐœ์ž - ๊ฐœ๋ฐœ์ž ๋ชจ๋“œ ๋ฅผ ํ™œ์„ฑํ™” ํ•ด์ค๋‹ˆ๋‹ค.

OpenClaw Bot ์ „์šฉ ์„œ๋ฒ„์™€ ์ฑ„๋„์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.

๋ฏธ๋ฆฌ ์ฑ„๋„์„ ๋งŒ๋“  ์ƒํƒœ์—์„œ ์œ„ Bot ์ถ”๊ฐ€๋ฅผ ์ง„ํ–‰ํ•˜์˜€๋‹ค๋ฉด, ์ž๋™์œผ๋กœ ์ฑ„๋„์— OpenClaw Bot์ด ์ž…์žฅํ•˜๋Š” ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ฑ„๋„์—์„œ Bot๊ณผ ๋Œ€ํ™”ํ•˜๋ ค๋ฉด '@'๋กœ ํ•ด๋‹น Bot ๊ณ„์ •์„ ์„ ํƒํ•œ ์ƒํƒœ์—์„œ ๋Œ€ํ™”๋ฅผ ์ง„ํ–‰ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ท€์ฐฎ๋‹ค๋ฉด config ํŒŒ์ผ์—์„œ ํ•ด์ œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Unraid ํ„ฐ๋ฏธ๋„์—์„œ ์•„๋ž˜ config ํŒŒ์ผ์„ ์ˆ˜์ •ํ•ฉ๋‹ˆ๋‹ค.

nano /mnt/cache/appdata/openclaw/config/openclaw.json

"discord" ํ•ญ๋ชฉ์—์„œ "requireMention":false๋ฅผ ์ถ”๊ฐ€ํ•ด์ค๋‹ˆ๋‹ค.

  "channels": {
    "discord": {
      "enabled": true,
      "token": "[Discord Bot ํ† ํฐ]",
      "groupPolicy": "open",
      "guilds": {
        "*": {
          "requireMention": false,
          "channels": {
            "*": { "allow": true, "requireMention": false }
          }
        }
      }
    }
  },

'@' ํƒœ๊ทธ ์—†์ด๋„ ์ฑ„๋„์—์„œ ์ž˜ ๋Œ€๋‹ตํ•˜๋Š” ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

DM(Direct Message) ์—ฐ๊ฒฐํ•˜๊ธฐ

๐Ÿ”ฅDM(Direct Message)์„ ์‰ฝ๊ฒŒ ์—ฐ๊ฒฐํ•˜๋ ค๋ฉด, ์ž…์žฅํ•œ Bot ๊ณ„์ •์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

[+ ์•ฑ ์ถ”๊ฐ€] ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜์—ฌ ์ง์ ‘ Bot์—๊ฒŒ ๋ฉ”์‹œ์ง€๋ฅผ ๋ณด๋‚ด๋ฉด, GUI๋กœ ๊ฐ„๋‹จํžˆ DM ์„ค์ •์„ ๋งˆ์น  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ฒ˜์Œ Bot์—๊ฒŒ DM์„ ๋ณด๋‚ด๋ฉด ํŽ˜์–ด๋ง์„ ์œ„ํ•œ ์ฝ”๋“œ์™€ ๋ช…๋ น์–ด๋ฅผ ๋Œ€๋‹ตํ•ฉ๋‹ˆ๋‹ค.

OpenClaw ์ฝ˜์†”์ฐฝ์„ ์—ด์–ด์„œ ํ•ด๋‹น ๋ช…๋ น์–ด๋ฅผ ๋ณต์‚ฌํ•˜์—ฌ ์‹คํ–‰ํ•˜๋ฉด ๋“ฑ๋ก์ด ์™„๋ฃŒ๋ฉ๋‹ˆ๋‹ค.

  • openclaw config ๋ช…๋ น์–ด๋ฅผ ์ด์šฉํ•˜์—ฌ ์„œ๋ฒ„ID/์ฑ„๋„ID๋ฅผ ์„ค์ •ํ•˜๋Š” ๋ฐฉ๋ฒ•
  • config ํŒŒ์ผ์˜ discord - channels์— ์ง์ ‘ ์„œ๋ฒ„ID/์ฑ„๋„ID๋ฅผ ๋“ฑ๋กํ•˜๋Š” ๋ฐฉ๋ฒ•

๋‹ค์ค‘ Agent ์ถ”๊ฐ€ & Open WebUI ์—ฐ๊ฒฐ

Uraid์—์„œ Apps๋กœ ์„ค์น˜ํ•œ OpenClaw๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ 1๊ฐœ์˜ Agent๋งŒ ๋“ฑ๋กํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋งŒ์•ฝ ๋‹ค์–‘ํ•œ ์œ ํ˜•์˜ Agent๋“ค์„ ๊ด€๋ฆฌํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด ์•ฝ๊ฐ„์˜ ํŽธ๋ฒ•์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

nano /mnt/cache/appdata/openclaw/config/openclaw.json
  "gateway": {
    "mode": "local",
    "bind": "lan",
    "http": {
      "endpoints": {
        "chatCompletions": {
          "enabled": true
        }
      }
    },
    ...
  },
  "agents": {
    "defaults": {
      "workspace": "/root/.openclaw/workspace",
      "model": {
        "primary": "ollama/gemma4:26b-a4b-it-q4_K_M"
      },
      "models": {
        "ollama/gemma4:26b-a4b-it-q4_K_M": {
          "streaming": false
        },
        "ollama/lfm2.5-thinking:1.2b-bf16": {
          "streaming": false
        }
      }
    },
    "list": [
      {
        "id": "main",
        "model": "ollama/gemma4:26b-a4b-it-q4_K_M"
      },
      {
        "id": "light",
        "model": "ollama/lfm2.5-thinking:1.2b-bf16"
      }
    ]
  },

agent - list์— Agent๋“ค์„ ๋“ฑ๋กํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Agent๋“ค์€ ์ƒ์„ฑ ์‹œ, ๊ธฐ๋ณธ workspace๊ฐ€ default์˜ workspace/Agent ์ด๋ฆ„์˜ ํด๋” ๊ฒฝ๋กœ๋ฅผ ๋”ฐ๋ฅด๋ฏ€๋กœ ๊ฐ๊ธฐ ๋‹ค๋ฅธ workspace๋ฅผ ์šด์˜ํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด ํด๋”๋ฅผ ์ƒ์„ฑํ•ด์ค˜์•ผ ํ•ฉ๋‹ˆ๋‹ค.

# 1. main ์›Œํฌ์ŠคํŽ˜์ด์Šค ์œ„์น˜ ์•„๋ž˜์— light ํด๋” ์ƒ์„ฑ
mkdir -p /mnt/cache/appdata/openclaw/config/workspace/light

# 2. main workspace์— ์žˆ๋Š” ์›๋ณธ ํŒŒ์ผ๋“ค์„ light ํด๋”๋กœ ๋ณต์‚ฌ
cp /mnt/cache/appdata/openclaw/config/workspace/*.md /mnt/cache/appdata/openclaw/config/workspace/light/

# Agent ๋ณ„ ๋‹ค๋ฅธ ์ธ๊ฒฉ ๋ถ€์—ฌ
nano /mnt/cache/appdata/openclaw/config/workspace/light/SOUL.md

# 3. ๊ถŒํ•œ ๋ถ€์—ฌ
chown -R 99:100 /mnt/cache/appdata/openclaw/config/workspace/light
chmod -R 777 /mnt/cache/appdata/openclaw/config/workspace/light

Open WebUI ์—ฐ๊ฒฐํ•˜๊ธฐ

  • Open WebUI๋ฅผ ์ด๋ฏธ ์„ค์น˜ํ•œ ์ƒํƒœ๋ฅผ ๊ฐ€์ •ํ•ฉ๋‹ˆ๋‹ค.

๊ธฐ๋ณธ์ ์ธ OpenClaw์˜ ์›นUI ํ™”๋ฉด์—์„œ๋Š” ์ฑ„ํŒ…์ฐฝ์ด 1๊ฐœ ๋ฟ์ž…๋‹ˆ๋‹ค.

๋‚ด๋ถ€ ๋“œ๋กญ๋ฐ•์Šค๋ฅผ ํ†ตํ•ด ๊ฐ ์„ธ์…˜ ๋ณ„, ๋ชจ๋ธ ๋ณ„ ์„ ํƒ์€ ๊ฐ€๋Šฅํ•˜์ง€๋งŒ ๊ธฐ๋Šฅ์ ์œผ๋กœ ๋งŽ์ด ๋ถ€์กฑํ•ฉ๋‹ˆ๋‹ค.

๊ฐ Agent ๋ณ„ ๋‹ค๋ฅธ ์ฑ„ํŒ…์ฐฝ์„ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด Open WebUI๋ฅผ ์‚ฌ์šฉํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

OpenClaw config ํŒŒ์ผ์˜ gateway ํ•ญ๋ชฉ์— ์•„๋ž˜ http ์„ค์ •์„ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

  • ์ด ์„ค์ •์ด ์—†์„ ๊ฒฝ์šฐ OpenClaw์—์„œ Open WebUI๋กœ ๋ชจ๋ธ ์ •๋ณด๋ฅผ ์ „๋‹ฌํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.
  "gateway": {
    "mode": "local",
    "bind": "lan",
    "http": {
      "endpoints": {
        "chatCompletions": {
          "enabled": true
        }
      }
    },

์ œ๋Œ€๋กœ ์„ค์ •์ด ์ ์šฉ๋˜์—ˆ๋Š”์ง€ ํ™•์ธํ•ด ๋ด…์‹œ๋‹ค.

# curl -H "Authorization: Bearer [OpenClaw-Token]" http://127.0.0.1:18789/v1/models

์•„๋ž˜์ฒ˜๋Ÿผ ๋ชจ๋ธ ์ •๋ณด๋“ค์ด ์ถœ๋ ฅ๋œ๋‹ค๋ฉด ์ •์ƒ์ ์œผ๋กœ ์ ์šฉ๋œ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ด์ œ Open WebUI๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

์„ค์ • - ๊ด€๋ฆฌ์ž ์„ค์ • - ์—ฐ๊ฒฐ ํ™”๋ฉด์œผ๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค.

OpenClaw๋Š” OpenAI API ๋ฐฉ์‹์œผ๋กœ ํ†ต์‹ ํ•˜๋ฏ€๋กœ OpenAI API์— ์—ฐ๊ฒฐ์„ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

OpenClaw์˜ IP/v1์œผ๋กœ URL ์ฃผ์†Œ๋ฅผ ์ž…๋ ฅํ•˜๊ณ  ์ธ์ฆํ‚ค์— ์ฒ˜์Œ OpenSSL๋กœ ๋งŒ๋“ค์—ˆ์—ˆ๋˜ ํ† ํฐํ‚ค๋ฅผ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค.

์ƒˆ๋กœ๊ณ ์นจ ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๋ฉด ์‹ค์ œ ์—ฐ๊ฒฐ์ด ๋˜๋Š”์ง€ ํ…Œ์ŠคํŠธ ๊ฒฐ๊ณผ๊ฐ€ ํŒ์—…์ฐฝ์ด ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค.

์ฑ„ํŒ…์ฐฝ์˜ ๋ชจ๋ธ ์„ ํƒ ํ•ญ๋ชฉ์— openclaw config๋กœ ์ง์ ‘ ์ถ”๊ฐ€ํ–ˆ๋˜ ๋ชจ๋ธ ๋ฆฌ์ŠคํŠธ๊ฐ€ ๋‚˜ํƒ€๋‚œ๋‹ค๋ฉด ์„ฑ๊ณต์ž…๋‹ˆ๋‹ค.

๊ฐ ์ถ”๊ฐ€ํ•œ ๋ชจ๋ธ๋“ค์ด ๊ฐ๊ธฐ ๋‹ค๋ฅธ Agent์˜ ์—ญํ• ์„ ํ•˜๋Š” ์ง€ ํ…Œ์ŠคํŠธ ํ•ด๋ณด๋ ค๋Š”๋ฐ,

workspace๋งŒ ๋‹ค๋ฅผ ๋ฟ์ด์ง€ Agent์˜ ์„ฑ๊ฒฉ ๊ฐ™์€ ๊ฒƒ์€ default ๊ฐ’์„ ๊ณต์œ ํ•˜๋Š” ๋А๋‚Œ์ž…๋‹ˆ๋‹ค๋งŒ, ๊ฐ Agent์˜ SOUL.md ํŒŒ์ผ์„ ์„ค์ •ํ•˜๋ฉด ์ ์šฉ๋˜์ง€ ์•Š์„๊นŒ ํ•ฉ๋‹ˆ๋‹ค;;

๐Ÿ”ฅ์ด ๋ถ€๋ถ„์€ ์ œ๋Œ€๋กœ ํ™•์ธํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค... ๊ทธ๋ƒฅ ๋„ˆ๋ฌด ๋น„ํšจ์œจ์ ์ด๋ผ์„œ ์‚ฌ์šฉ์„ ์•ˆ ํ•  ๊ฒƒ ๊ฐ™๊ตฐ์š” ๐Ÿ˜ญ

Cron ์ž‘์—… ์ถ”๊ฐ€ํ•˜๊ธฐ (OpenClaw - Heartbeat ์‚ฌ์šฉ)

Discord์— ์ผ๊ธฐ์˜ˆ๋ณด ์ฑ„๋„์„ ์ƒ์„ฑํ•˜์—ฌ ๋งค์ผ ์•„์นจ๋งˆ๋‹ค ์˜ค๋Š˜์˜ ๋‚ ์”จ๋ฅผ ์•Œ๋ ค์ฃผ๋Š” ๊ธฐ๋Šฅ์„ ๋งŒ๋“ค์–ด ๋ด…์‹œ๋‹ค๐ŸŒž

Agent๋‹ˆ๊นŒ ์œ„์—์„œ ์—ฐ๊ฒฐํ•œ Open WebUI๋ฅผ ํ†ตํ•ด ์ผ๊ธฐ์˜ˆ๋ณด๋ฅผ Discord๋กœ ์•Œ๋ ค์ฃผ๋Š” ์Šค์ผ€์ฅด์„ ์ง€์‹œํ–ˆ์Šต๋‹ˆ๋‹ค.

Agent ์Šค์Šค๋กœ Cron ์ž‘์—…์„ ์ƒ์„ฑํ•˜๊ณ  Discord ์ฑ„๋„๋กœ ์ „๋‹ฌํ•˜๋„๋ก ์„ค์ •๊นŒ์ง€ ์™„๋ฃŒํ•˜๋Š” ๊ฒŒ ์‹ ๊ธฐํ•ฉ๋‹ˆ๋‹ค.

์‹ค์ œ๋กœ Discord์— ์ƒ์„ฑํ•œ ์ผ๊ธฐ์˜ˆ๋ณด ์ฑ„๋„์— ๋‚ ์”จ ์„ค๋ช…์ด ๋ณด๋‚ด์ง„ ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.

์ด๋Ÿฌํ•œ Agent์˜ ์Šค์ผ€์ฅด๋งํ•˜๋Š” ์ž‘์—…์„ Cron์ด๋ผ๊ณ  ๋ถ€๋ฆ…๋‹ˆ๋‹ค.

์œ„์ฒ˜๋Ÿผ ํ”„๋กฌํ”„ํŠธ๋ฅผ ์ด์šฉํ•ด์„œ Agent์—๊ฒŒ Cron ์ž‘์—…์„ ์ƒ์„ฑํ•˜๋„๋ก ์ง€์‹œ๋„ ๊ฐ€๋Šฅํ•˜์ง€๋งŒ,

OpenClaw Control์„ ํ†ตํ•ด ์„ธ๋ถ€ ์„ค์ •์„ ์ง์ ‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Control - Cron ์ž‘์—… ํƒญ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

๋“ฑ๋ก๋œ ์ž‘์—… ๋ฆฌ์ŠคํŠธ๋ฅผ ํ™•์ธํ•˜๊ฑฐ๋‚˜ ์ถ”๊ฐ€, ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์šฐ์ธก์—์„œ ์ƒˆ ์ž‘์—…์„ ๋งŒ๋“ค๊ฑฐ๋‚˜, ๊ธฐ์กด ์ž‘์—…์˜ ํŽธ์ง‘ ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜์—ฌ ๋‚ด์šฉ์„ ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ˆ˜์ • ํ›„, ์ •ํ•ด์ง„ ์‹œ๊ฐ„์ด ๋˜์ž OpenClaw๊ฐ€ ์—ด์‹ฌํžˆ ๋‚ ์”จ ์ •๋ณด๋ฅผ ์ˆ˜์ง‘ํ•ด์„œ Discord๋กœ ๋ฉ”์‹œ์ง€๋ฅผ ๋‚ ๋ ค์ค€ ๋ชจ์Šต์ž…๋‹ˆ๋‹ค.

์ฐธ ๊ธฐํŠนํ•˜๋„ค์š”. ๐Ÿฆ€

๋งˆ๋ฌด๋ฆฌ

OpenClaw๋ฅผ ์ฒ˜์Œ๋ถ€ํ„ฐ ์„ค์น˜ํ•˜๊ณ  Ollama์˜ ๋กœ์ปฌ ๋ชจ๋ธ๊ณผ ์—ฐ๋™ํ•ด์„œ ๋Œ๋ ค๋ณด๊ธฐ๊นŒ์ง€ ๊ฝค๋‚˜ ๊ธด ์—ฌ์ •์ด์˜€์Šต๋‹ˆ๋‹ค ๐Ÿ˜€

ChatGPT๋‚˜ Gemini, Claude ๊ฐ™์€ API๋ฅผ ์‚ฌ์šฉํ•˜๋Š” LLM๋ณด๋‹ค๋Š” ๋ฌผ๋ก  ์„ฑ๋Šฅ๋ฉด์—์„œ ๋–จ์–ด์ง€๊ฒ ์ง€๋งŒ,

์ตœ๊ทผ ๋‚˜์˜จ gemma4, qwen3.6์˜ ์„ฑ๋Šฅ๋„ ๋งŽ์ด ์˜ฌ๋ผ์˜จ ์ƒํƒœ์—์„œ

Claude ์Šคํƒ€์ผ์ด๋‚˜ MoE ๊ฐ™์€ ๊ธฐ์ˆ ๋“ค์ด ์ ์šฉ๋˜๋‹ˆ ์ด์ œ๋Š” Local ๋ชจ๋ธ๋„ ์ถฉ๋ถ„ํžˆ ์“ธ๋งŒํ•œ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

OpenClaw ์„ค์ •์—์„œ Web Search ๊ธฐ๋Šฅ๋„ ์ ์ ˆํžˆ ๋ถ™์—ฌ์„œ ์‹ค์‹œ๊ฐ„ ์ •๋ณด๋“ค์„ ์ทจํ•ฉํ•˜๊ณ  ๋ถ„์„ํ•˜๋„๋ก ์‹œํ‚ค๋ฉด ๊ฐœ์ธ์šฉ AI Agent๋กœ ๊ฝค๋‚˜ ๊ทธ๋Ÿด๋“ฏํ•œ ์„ฑ๋Šฅ์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ์ง€ ์•Š์„๊นŒ ์‹ถ๋„ค์š” ๐Ÿ˜บ

์ถ”ํ›„์—๋Š” Hermes Agent๋‚˜ Coding Agent๋“ค๋„ ๋‹ค๋ค„๋ณด๊ณ  ๋น„๊ตํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

root@cyberpunk:~#