OpenClaw๋กœ ๋ธ”๋กœ๊ทธ๋ฅผ ์“ฐ๋ฉด ์ค‘์š”ํ•œ ๊ฑด ๋ฌธ์žฅ๋ ฅ๋ณด๋‹ค ์šด์˜ ๋ฃจํ”„๋‹ค. ๊ฐ™์€ ํ’ˆ์งˆ์„ ๋ฐ˜๋ณตํ•ด์„œ ๋‚ด๋ณด๋‚ด๋ ค๋ฉด, ์ฃผ์ œ ์„ ์ •๋ถ€ํ„ฐ ์‹œ๊ฐํ™”ยท๊ฒ€์ˆ˜๊นŒ์ง€ ๋‹จ๊ณ„๋ฅผ ๊ณ ์ •ํ•ด์•ผ ํ•œ๋‹ค. ์ด ๊ธ€์€ ์šฐ๋ฆฌ๊ฐ€ ์‹ค์ œ๋กœ ์“ฐ๋Š” ๋ธ”๋กœ๊ทธ ์ž‘์„ฑ ๋ฃจํ”„๋ฅผ Excalidraw ์Šคํ‚ฌ ํ™œ์šฉ๊นŒ์ง€ ํฌํ•จํ•ด ์ •๋ฆฌํ•œ ์‹คํ–‰ ๊ฐ€์ด๋“œ๋‹ค.

์•ˆ๋‚ด: ๋ณธ๋ฌธ์€ ์ƒ์„ฑํ˜• AI๋ฅผ ํ™œ์šฉํ•ด ์ดˆ์•ˆ์„ ๋งŒ๋“ค๊ณ , ์‹ค์ œ ์šด์˜ ๊ธฐ์ค€์œผ๋กœ ํŽธ์ง‘ยท๊ฒ€์ˆ˜ํ–ˆ์Šต๋‹ˆ๋‹ค.

Agent/๐Ÿš€ OpenClaw/images/OpenClaw-27-blog-flow.png

ํ•œ ์ค„ ๊ฒฐ๋ก 

๋ธ”๋กœ๊ทธ ํ’ˆ์งˆ์€ โ€œ์ž˜ ์“ด ํ•œ ํŽธโ€์ด ์•„๋‹ˆ๋ผ ๊ฐ™์€ ๋ฃจํ”„๋ฅผ ๋ฐ˜๋ณต ๊ฐ€๋Šฅํ•œ ์ƒํƒœ๋กœ ์šด์˜ํ•˜๋А๋ƒ์—์„œ ๊ฐˆ๋ฆฐ๋‹ค.

์™œ OpenClaw ๋ฃจํ”„๊ฐ€ ์œ ๋ฆฌํ•œ๊ฐ€

OpenClaw๋Š” ์ฑ„ํŒ… ์ปจํ…์ŠคํŠธ์™€ ํŒŒ์ผ ์ž‘์—…์ด ๋ถ„๋ฆฌ๋˜์ง€ ์•Š์•„, ๊ธฐํš-์ž‘์„ฑ-์ˆ˜์ •์ด ํ•œ ํ๋ฆ„์œผ๋กœ ์ด์–ด์ง„๋‹ค. ํŠนํžˆ Quartz ์šด์˜์—์„œ ๋งํฌ/์ธ๋ฑ์Šค/์‹œ๊ฐ์ž๋ฃŒ๋ฅผ ํ•œ ์„ธ์…˜ ์•ˆ์— ์™„๊ฒฐํ•˜๊ธฐ ์‰ฝ๋‹ค.

์‹ค์ „ ๋ฃจํ”„ 5๋‹จ๊ณ„

1) ์ฃผ์ œ ์ •์˜

๋…์ž ๋ฌธ์ œ 1๊ฐœ, ์™„๋ฃŒ ์กฐ๊ฑด 1๊ฐœ๋ฅผ ๋จผ์ € ๊ณ ์ •ํ•œ๋‹ค.

2) ๊ทผ๊ฑฐ ์ˆ˜์ง‘

์ฃผ์žฅ ์งํ›„์— ๊ณต์‹ ๋งํฌ๋ฅผ ๋ฐฐ์น˜ํ•ด ์‹ ๋ขฐ์™€ ๊ฐ€๋…์„ฑ์„ ๋™์‹œ์— ํ™•๋ณดํ•œ๋‹ค.

3) ์ดˆ์•ˆ ์ž‘์„ฑ

์„œ์ˆ ํ˜• ํ๋ฆ„์œผ๋กœ ์ฝํžˆ๊ฒŒ ์“ฐ๊ณ , ์ฒดํฌ๋ฆฌ์ŠคํŠธ๋Š” ์‹คํ–‰์ด ํ•„์š”ํ•œ ์ง€์ ์—๋งŒ ๋‘”๋‹ค.

4) Excalidraw ์‹œ๊ฐํ™” (ํ•ต์‹ฌ)

ํ…์ŠคํŠธ๋งŒ์œผ๋กœ ์ „๋‹ฌํ•˜๊ธฐ ์–ด๋ ค์šด ๊ตฌ์กฐ๋Š” Excalidraw ๋„์‹/์นด๋“œํ˜• ์ด๋ฏธ์ง€๋กœ ์••์ถ•ํ•œ๋‹ค.

Excalidraw ์Šคํ‚ฌ ํ™œ์šฉ ๋ฃจํ‹ด

  1. ๋„์‹ ๊ตฌ์กฐ ์ดˆ์•ˆ(JSON) ์ž‘์„ฑ
  2. ์•„์ด์ฝ˜/์ด๋ฏธ์ง€ ์ž์‚ฐ ํ•ด๊ฒฐ(๋น„์šฉ ๊ฐ€๋“œ)
    • reference ์ด๋ฏธ์ง€ ์šฐ์„ 
    • icon library ์šฐ์„ 
    • ๋งˆ์ง€๋ง‰ nano fallback
  3. ๋ Œ๋” ํ›„ ๋ณธ๋ฌธ ์‚ฝ์ž…
# ์Šคํ‚ฌ ๊ฒฝ๋กœ(์˜ˆ: clawhub ์„ค์น˜ ๊ฒฝ๋กœ)
SKILL_DIR="<EXCALIDRAW_SKILL_DIR>"
 
# ์•„์ด์ฝ˜/์ด๋ฏธ์ง€ ์ž์‚ฐ ๋น„์šฉ๊ฐ€๋“œ ํ•ด๊ฒฐ
python3 "$SKILL_DIR/scripts/resolve_icon_asset.py" \
  --name market \
  --out-dir /tmp/icons \
  --icon lucide:chart-line --icon tabler:chart-bar \
  --nano-prompt "minimal hand-drawn market icon, transparent background, no text"
 
# Excalidraw ๋ Œ๋”
node "$SKILL_DIR/scripts/render.js" \
  /tmp/diagram.excalidraw \
  /tmp/diagram.png

5) ๊ฒ€์ˆ˜/๋ฐœํ–‰

์ œ๋ชฉ ํŒจํ„ด, ํƒœ๊ทธ 6์ถ•, ๋งํฌ, ๋‹ค์Œ ์ฝ๊ธฐ ์—ฐ๊ฒฐ์„ ๋งˆ์ง€๋ง‰ 10%์—์„œ ๋‹ซ๋Š”๋‹ค.

ํ˜„์žฅํ˜• ๋ฏธ๋‹ˆ ์‚ฌ๋ก€

์‚ฌ๋ก€ A (์„ฑ๊ณต)

์ฃผ์ œ ๋ฌธ์žฅ/์™„๋ฃŒ ์กฐ๊ฑด์„ ๋จผ์ € ๊ณ ์ •ํ•˜๊ณ  ์ž‘์„ฑํ•œ ๊ธ€์€ ์ˆ˜์ • ํ”ผ๋“œ๋ฐฑ์ด ์งง๊ณ  ๋ช…ํ™•ํ–ˆ๋‹ค.

์‚ฌ๋ก€ B (์‹คํŒจ)

์‹œ๊ฐ์ž๋ฃŒ ์—†์ด ๊ธด ๋ฌธ์žฅ๋งŒ์œผ๋กœ ๋ฐœํ–‰ํ•œ ๊ธ€์€ ์ฒด๋ฅ˜์‹œ๊ฐ„์ด ๋‚ฎ๊ณ  ์ค‘๊ฐ„ ์ดํƒˆ์ด ๋นจ๋ž๋‹ค. ๋„์‹ 1์žฅ ์ถ”๊ฐ€ ํ›„ ์œ ์ง€์œจ์ด ๊ฐœ์„ ๋๋‹ค.

20๋ถ„ ๋„์ž… ๋ฃจํ‹ด

  • 5๋ถ„: ๋…์ž ๋ฌธ์ œ 1๋ฌธ์žฅ + ์™„๋ฃŒ ์กฐ๊ฑด 1๋ฌธ์žฅ
  • 5๋ถ„: ๊ณต์‹ ๋งํฌ 2๊ฐœ ์ˆ˜์ง‘
  • 5๋ถ„: ๋ณธ๋ฌธ 3์„น์…˜ ์ดˆ์•ˆ
  • 5๋ถ„: Excalidraw ๋„์‹ 1์žฅ ์ƒ์„ฑยท์‚ฝ์ž…

๋‹ค์Œ ์ฝ๊ธฐ

โ€ป AI ์ƒ์„ฑ ๊ฒฐ๊ณผ๋ฌผ์„ ํฌํ•จํ•œ ๋ฌธ์„œ์ž…๋‹ˆ๋‹ค. ์ตœ์ข… ๋ฐœํ–‰ ์ „ ์‚ฌ์‹ค/๋งํฌ/์šฉ์–ด๋ฅผ ๋งˆ์ง€๋ง‰์œผ๋กœ ํ™•์ธํ•˜์„ธ์š”.