Plugins

Plugin

PluginsėŠ” 채널, ėŖØėø ģ œź³µģž, ģ—ģ“ģ „ķŠø ķ•˜ė„¤ģŠ¤, ė„źµ¬, Skills, ģŒģ„±, ģ‹¤ģ‹œź°„ 전사, ģŒģ„± 기늄, 미디얓 ģ“ķ•“, ģƒģ„±, 웹 ź°€ģ øģ˜¤źø°, 웹 ź²€ģƒ‰ ė° źø°ķƒ€ ėŸ°ķƒ€ģž„ 기늄으딜 OpenClaw넼 ķ™•ģž„ķ•©ė‹ˆė‹¤.

ģ“ ķŽ˜ģ“ģ§€ė„¼ ģ‚¬ģš©ķ•˜ģ—¬ Pluginģ„ ģ„¤ģ¹˜ķ•˜ź³ , Gateway넼 ė‹¤ģ‹œ ģ‹œģž‘ķ•˜ź³ , ėŸ°ķƒ€ģž„ģ“ ģ“ė„¼ ė”œė“œķ–ˆėŠ”ģ§€ ķ™•ģøķ•˜ź³ , ģ¼ė°˜ģ ģø 설정 ģ‹¤ķŒØė„¼ ķ•“ź²°ķ•˜ģ‹­ģ‹œģ˜¤. ėŖ…ė ¹ ģ „ģš© ģ˜ˆģ‹œėŠ” Plugin ꓀리넼 ģ°øģ”°ķ•˜ģ‹­ģ‹œģ˜¤. ė²ˆė“¤, ź³µģ‹ 외부 ė° ģ†ŒģŠ¤ ģ „ģš© Pluginģ˜ ģƒģ„±ėœ ģøė²¤ķ† ė¦¬ėŠ” Plugin ģøė²¤ķ† ė¦¬ė„¼ ģ°øģ”°ķ•˜ģ‹­ģ‹œģ˜¤.

ģš”źµ¬ 사항

  • OpenClaw ģ²“ķ¬ģ•„ģ›ƒ ė˜ėŠ” openclaw CLI넼 ģ‚¬ģš©ķ•  수 ģžˆėŠ” ģ„¤ģ¹˜ ķ™˜ź²½
  • ģ„ ķƒķ•œ ģ†ŒģŠ¤(ClawHub, npm ė˜ėŠ” git 호스트)에 ėŒ€ķ•œ ė„¤ķŠøģ›Œķ¬ ģ•”ģ„øģŠ¤
  • 핓당 Pluginģ˜ 설정 ė¬øģ„œģ— ėŖ…ģ‹œėœ Plugin별 ģžź²© ģ¦ėŖ…, 구성 키 ė˜ėŠ” OS ė„źµ¬
  • ģ±„ė„ģ„ ģ œź³µķ•˜ėŠ” Gateway넼 ė‹¤ģ‹œ ė”œė“œķ•˜ź±°ė‚˜ ė‹¤ģ‹œ ģ‹œģž‘ķ•  수 ģžˆėŠ” ź¶Œķ•œ

빠넸 ģ‹œģž‘

  • Plugin 찾기

    공개 Plugin ķŒØķ‚¤ģ§€ė„¼ ClawHubģ—ģ„œ ź²€ģƒ‰ķ•˜ģ‹­ģ‹œģ˜¤.

    bash
    openclaw plugins search "calendar"

    ClawHubėŠ” ģ»¤ė®¤ė‹ˆķ‹° Pluginģ„ ź²€ģƒ‰ķ•˜ėŠ” źø°ė³ø ź²½ė”œģž…ė‹ˆė‹¤. ģ¶œģ‹œ ģ „ķ™˜ źø°ź°„ģ—ėŠ” ģ¼ė°˜ģ ģø 접두사 ģ—†ėŠ” ķŒØķ‚¤ģ§€ ģ‚¬ģ–‘ģ“ ź³µģ‹ Plugin ID와 ģ¼ģ¹˜ķ•˜ģ§€ ģ•ŠėŠ” ķ•œ npmģ—ģ„œ ź³„ģ† ģ„¤ģ¹˜ė©ė‹ˆė‹¤. ė²ˆė“¤ Pluginź³¼ ģ¼ģ¹˜ķ•˜ėŠ” ģ›ģ‹œ @openclaw/* ģ‚¬ģ–‘ģ€ 핓당 ė²ˆė“¤ ģ‚¬ė³øģœ¼ė”œ ķ™•ģøė©ė‹ˆė‹¤. ķŠ¹ģ • ģ†ŒģŠ¤ź°€ ķ•„ģš”ķ•œ 경우 ėŖ…ģ‹œģ  ģ†ŒģŠ¤ 접두사넼 ģ‚¬ģš©ķ•˜ģ‹­ģ‹œģ˜¤.

  • Plugin ģ„¤ģ¹˜

    bash
    # ClawHubģ—ģ„œ ģ„¤ģ¹˜ķ•©ė‹ˆė‹¤.openclaw plugins install clawhub:<package> # npmģ—ģ„œ ģ„¤ģ¹˜ķ•©ė‹ˆė‹¤.openclaw plugins install npm:<package> # gitģ—ģ„œ ģ„¤ģ¹˜ķ•©ė‹ˆė‹¤.openclaw plugins install git:github.com/<owner>/<repo>@<ref> # 딜컬 개발 ģ²“ķ¬ģ•„ģ›ƒģ—ģ„œ ģ„¤ģ¹˜ķ•©ė‹ˆė‹¤.openclaw plugins install ./my-pluginopenclaw plugins install --link ./my-plugin

    Plugin ģ„¤ģ¹˜ėŠ” ģ½”ė“œė„¼ ģ‹¤ķ–‰ķ•˜ėŠ” 것처럼 ģ·Øźø‰ķ•˜ģ‹­ģ‹œģ˜¤. ģž¬ķ˜„ ź°€ėŠ„ķ•œ ķ”„ė”œė•ģ…˜ ģ„¤ģ¹˜ė„¼ ģœ„ķ•“ ź³ ģ •ėœ ė²„ģ „ģ„ ź¶Œģž„ķ•©ė‹ˆė‹¤. ClawHub ķŒØķ‚¤ģ§€ģ™€ OpenClawģ˜ ė²ˆė“¤/ź³µģ‹ ģ¹“ķƒˆė”œź·øėŠ” 신뢰할 수 ģžˆėŠ” ģ†ŒģŠ¤ģž…ė‹ˆė‹¤. 새 ģž„ģ˜ npm, git, 딜컬 경딜/ģ•„ģ¹“ģ“ėøŒ, npm-pack: ė˜ėŠ” ė§ˆģ¼“ķ”Œė ˆģ“ģŠ¤ ģ†ŒģŠ¤ėŠ” ģ†ŒģŠ¤ė„¼ ź²€ķ† ķ•˜ź³  ģ‹ ė¢°ķ•œ 후 ė¹„ėŒ€ķ™”ķ˜• ģ„¤ģ¹˜ģ—ģ„œ --forceģ“ ķ•„ģš”ķ•©ė‹ˆė‹¤.

  • 구성 ė° ķ™œģ„±ķ™”

    plugins.entries.<id>.config ģ•„ėž˜ģ—ģ„œ Plugin별 ģ„¤ģ •ģ„ źµ¬ģ„±ķ•˜ģ‹­ģ‹œģ˜¤. 아직 ķ™œģ„±ķ™”ė˜ģ§€ ģ•Šģ€ 경우 Pluginģ„ ķ™œģ„±ķ™”ķ•˜ģ‹­ģ‹œģ˜¤.

    bash
    openclaw plugins enable <plugin-id>

    plugins.allowģ“ ģ„¤ģ •ėœ 경우 Pluginģ„ ė”œė“œķ•˜ė ¤ė©“ ģ„¤ģ¹˜ėœ Plugin IDź°€ 핓당 ėŖ©ė”ģ— ģžˆģ–“ģ•¼ ķ•©ė‹ˆė‹¤. openclaw plugins installģ€ ģ„¤ģ¹˜ėœ ID넼 기씓 plugins.allow ėŖ©ė”ģ— ģ¶”ź°€ķ•˜ź³  ė™ģ¼ķ•œ ID넼 plugins.denyģ—ģ„œ ģ œź±°ķ•˜ėÆ€ė”œ ėŖ…ģ‹œģ ģœ¼ė”œ ģ„¤ģ¹˜ķ•œ Pluginģ„ ė‹¤ģ‹œ ģ‹œģž‘ķ•œ 후 ė”œė“œķ•  수 ģžˆģŠµė‹ˆė‹¤.

  • Gateway ė‹¤ģ‹œ ė”œė“œ

    Plugin ģ½”ė“œė„¼ ģ„¤ģ¹˜, ģ—…ė°ģ“ķŠø ė˜ėŠ” ģ œź±°ķ•˜ė ¤ė©“ Gateway넼 ė‹¤ģ‹œ ģ‹œģž‘ķ•“ģ•¼ ķ•©ė‹ˆė‹¤. 구성 ė‹¤ģ‹œ ė”œė“œź°€ ķ™œģ„±ķ™”ėœ ź“€ė¦¬ķ˜• GatewayėŠ” ė³€ź²½ėœ Plugin ģ„¤ģ¹˜ ė ˆģ½”ė“œė„¼ ź°ģ§€ķ•˜ź³  ģžė™ģœ¼ė”œ ė‹¤ģ‹œ ģ‹œģž‘ķ•©ė‹ˆė‹¤. 그렇지 ģ•Šģœ¼ė©“ 직접 ė‹¤ģ‹œ ģ‹œģž‘ķ•˜ģ‹­ģ‹œģ˜¤.

    bash
    openclaw gateway restart

    ķ™œģ„±ķ™”/ė¹„ķ™œģ„±ķ™”ėŠ” 구성과 ģ½œė“œ ė ˆģ§€ģŠ¤ķŠøė¦¬ė„¼ ģ—…ė°ģ“ķŠøķ•©ė‹ˆė‹¤. ė¼ģ“ėøŒ ėŸ°ķƒ€ģž„ ķ‘œė©“ģ„ ķ™•ģøķ•˜ėŠ” ź°€ģž„ ėŖ…ķ™•ķ•œ ė°©ė²•ģ€ ģ—¬ģ „ķžˆ ėŸ°ķƒ€ģž„ ź²€ģ‚¬ģž…ė‹ˆė‹¤.

  • ėŸ°ķƒ€ģž„ ė“±ė” ķ™•ģø

    bash
    openclaw plugins inspect <plugin-id> --runtime --json

    ė“±ė”ėœ ė„źµ¬, ķ›…, ģ„œė¹„ģŠ¤, Gateway ė©”ģ„œė“œ ė˜ėŠ” Plugin ģ†Œģœ  CLI ėŖ…ė ¹ģ„ ķ™•ģøķ•˜ė ¤ė©“ --runtimeģ„ ģ‚¬ģš©ķ•˜ģ‹­ģ‹œģ˜¤. ģ¼ė°˜ inspectģ€ ģ½œė“œ ė§¤ė‹ˆķŽ˜ģŠ¤ķŠø ė° ė ˆģ§€ģŠ¤ķŠøė¦¬ ź²€ģ‚¬ė§Œ ģˆ˜ķ–‰ķ•©ė‹ˆė‹¤.

  • 구성

    ģ„¤ģ¹˜ ģ†ŒģŠ¤ ģ„ ķƒ

    ģ†ŒģŠ¤ ģ‚¬ģš© ģ‹œģ  ģ˜ˆģ‹œ
    ClawHub OpenClaw ė„¤ģ“ķ‹°ėøŒ ź²€ģƒ‰, 검사, 버전 ė©”ķƒ€ė°ģ“ķ„° ė° ģ„¤ģ¹˜ ķžŒķŠøź°€ ķ•„ģš”ķ•œ 경우 openclaw plugins install clawhub:<package>
    npm npm ė ˆģ§€ģŠ¤ķŠøė¦¬ ė˜ėŠ” dist-tag ģ›Œķ¬ķ”Œė”œź°€ 직접 ķ•„ģš”ķ•œ 경우 openclaw plugins install npm:<package>
    git ģ €ģž„ģ†Œģ˜ ėøŒėžœģ¹˜, 태그 ė˜ėŠ” ģ»¤ė°‹ģ“ ķ•„ģš”ķ•œ 경우 openclaw plugins install git:github.com/<owner>/<repo>@<ref>
    딜컬 경딜 ė™ģ¼ķ•œ ėØøģ‹ ģ—ģ„œ Pluginģ„ ź°œė°œķ•˜ź±°ė‚˜ ķ…ŒģŠ¤ķŠøķ•˜ėŠ” 경우 openclaw plugins install --link ./my-plugin
    ė§ˆģ¼“ķ”Œė ˆģ“ģŠ¤ Claude ķ˜øķ™˜ ė§ˆģ¼“ķ”Œė ˆģ“ģŠ¤ Pluginģ„ ģ„¤ģ¹˜ķ•˜ėŠ” 경우 openclaw plugins install <plugin> --marketplace <source>

    접두사 ģ—†ėŠ” ķŒØķ‚¤ģ§€ ģ‚¬ģ–‘ģ—ėŠ” ķŠ¹ė³„ķ•œ ķ˜øķ™˜ģ„± ė™ģž‘ģ“ ģžˆģŠµė‹ˆė‹¤. ė²ˆė“¤ Plugin ID와 ģ¼ģ¹˜ķ•˜ėŠ” 접두사 ģ—†ėŠ” ģ“ė¦„ģ€ 핓당 ė²ˆė“¤ ģ†ŒģŠ¤ė„¼ ģ‚¬ģš©ķ•˜ź³ , ź³µģ‹ 외부 Plugin ID와 ģ¼ģ¹˜ķ•˜ėŠ” 접두사 ģ—†ėŠ” ģ“ė¦„ģ€ ź³µģ‹ ķŒØķ‚¤ģ§€ 칓탈딜그넼 ģ‚¬ģš©ķ•˜ė©°, ź·ø ė°–ģ˜ 접두사 ģ—†ėŠ” ģ‚¬ģ–‘ģ€ ģ¶œģ‹œ ģ „ķ™˜ 기간에 npmģ„ 통핓 ģ„¤ģ¹˜ė©ė‹ˆė‹¤. ė²ˆė“¤ Pluginź³¼ ģ¼ģ¹˜ķ•˜ėŠ” ģ›ģ‹œ @openclaw/* ģ‚¬ģ–‘ė„ npm ėŒ€ģ²“ 처리 전에 ė²ˆė“¤ ģ‚¬ė³øģœ¼ė”œ ķ™•ģøė©ė‹ˆė‹¤. ė²ˆė“¤ 사본 ėŒ€ģ‹  외부 npm ķŒØķ‚¤ģ§€ė„¼ ģ˜ė„ģ ģœ¼ė”œ ģ„¤ģ¹˜ķ•˜ė ¤ė©“ npm:@openclaw/<plugin>@<version>ģ„ ģ‚¬ģš©ķ•˜ģ‹­ģ‹œģ˜¤. ź²°ģ •ģ ģø ģ†ŒģŠ¤ ģ„ ķƒģ—ėŠ” clawhub:, npm:, git: ė˜ėŠ” npm-pack:ģ„ ģ‚¬ģš©ķ•˜ģ‹­ģ‹œģ˜¤. 전첓 ėŖ…ė ¹ ź³„ģ•½ģ€ openclaw pluginsģ„ ģ°øģ”°ķ•˜ģ‹­ģ‹œģ˜¤.

    npm ģ„¤ģ¹˜ģ˜ 경우 ź³ ģ •ė˜ģ§€ ģ•Šģ€ 사양과 @latestģ€ ģ“ OpenClaw ė¹Œė“œģ™€ģ˜ ķ˜øķ™˜ģ„±ģ„ ėŖ…ģ‹œķ•˜ėŠ” ģµœģ‹  ģ•ˆģ • ķŒØķ‚¤ģ§€ė„¼ ģ„ ķƒķ•©ė‹ˆė‹¤. npmģ˜ ķ˜„ģž¬ ģµœģ‹  ė¦“ė¦¬ģŠ¤ź°€ ģ“ ė¹Œė“œģ—ģ„œ ģ§€ģ›ķ•˜ėŠ” ź²ƒė³“ė‹¤ 새딜욓 openclaw.compat.pluginApi ė˜ėŠ” openclaw.install.minHostVersionģ„ ģ„ ģ–øķ•˜ė©“ OpenClawėŠ” ģ“ģ „ ģ•ˆģ • ė²„ģ „ģ„ ź²€ģƒ‰ķ•˜ź³  ķ˜øķ™˜ė˜ėŠ” ģµœģ‹  ė²„ģ „ģ„ ģ„¤ģ¹˜ķ•©ė‹ˆė‹¤. ģ •ķ™•ķ•œ 버전과 @beta ź°™ģ€ ėŖ…ģ‹œģ  채널 ķƒœź·øėŠ” ģ„ ķƒķ•œ ķŒØķ‚¤ģ§€ģ— ź³ ģ •ėœ 상태딜 ģœ ģ§€ė˜ė©° ķ˜øķ™˜ė˜ģ§€ ģ•Šģœ¼ė©“ ģ‹¤ķŒØķ•©ė‹ˆė‹¤.

    ģš“ģ˜ģž ģ„¤ģ¹˜ ģ •ģ±…

    Plugin ģ„¤ģ¹˜ ė˜ėŠ” ģ—…ė°ģ“ķŠøė„¼ ģ§„ķ–‰ķ•˜źø° 전에 신뢰할 수 ģžˆėŠ” 딜컬 ģ •ģ±… ėŖ…ė ¹ģ„ ģ‹¤ķ–‰ķ•˜ė„ė” security.installPolicyģ„ źµ¬ģ„±ķ•˜ģ‹­ģ‹œģ˜¤. ģ •ģ±…ģ€ ė©”ķƒ€ė°ģ“ķ„°ģ™€ ģŠ¤ķ…Œģ“ģ§•ėœ ģ†ŒģŠ¤ 경딜넼 받아 ģ„¤ģ¹˜ė„¼ ķ—ˆģš©ķ•˜ź±°ė‚˜ 차단할 수 ģžˆģŠµė‹ˆė‹¤. ģ“ėŠ” CLI와 Gateway 기반 ģ„¤ģ¹˜/ģ—…ė°ģ“ķŠø 경딜넼 모두 ķ¬ķ•Øķ•©ė‹ˆė‹¤. Plugin before_install ķ›…ģ€ ė‚˜ģ¤‘ģ— ģ‹¤ķ–‰ė˜ė©° Plugin ķ›…ģ“ ė”œė“œėœ OpenClaw ķ”„ė”œģ„øģŠ¤ģ—ģ„œė§Œ ģ‹¤ķ–‰ė˜ėÆ€ė”œ, ģš“ģ˜ģžź°€ ģ†Œģœ ķ•œ ģ„¤ģ¹˜ ź²°ģ •ģ—ėŠ” ėŒ€ģ‹  security.installPolicyģ„ ģ‚¬ģš©ķ•˜ģ‹­ģ‹œģ˜¤. ģ‚¬ģš© ģ¤‘ė‹Øėœ --dangerously-force-unsafe-install ķ”Œėž˜ź·øėŠ” ķ˜øķ™˜ģ„±ģ„ ģœ„ķ•“ ķ—ˆģš©ė˜ģ§€ė§Œ 아묓 ė™ģž‘ė„ ķ•˜ģ§€ ģ•ŠģŠµė‹ˆė‹¤. 즉, ģ„¤ģ¹˜ ģ •ģ±…ģ“ė‚˜ OpenClawģ˜ ė‚“ģž„ Plugin ģ¢…ģ†ģ„± ź±°ė¶€ ėŖ©ė”ģ„ ģš°ķšŒķ•˜ģ§€ ģ•ŠģŠµė‹ˆė‹¤.

    Skills와 Pluginsģ—ģ„œ 모두 ģ‚¬ģš©ķ•˜ėŠ” 공유 security.installPolicy 실행 ģŠ¤ķ‚¤ė§ˆėŠ” Skills źµ¬ģ„±ģ„ ģ°øģ”°ķ•˜ģ‹­ģ‹œģ˜¤.

    Plugin ģ •ģ±… 구성

    ģ¼ė°˜ģ ģø Plugin 구성 ķ˜•ķƒœėŠ” ė‹¤ģŒź³¼ ź°™ģŠµė‹ˆė‹¤.

    json5
    {  plugins: {    enabled: true,    allow: ["voice-call"],    deny: ["untrusted-plugin"],    load: { paths: ["~/Projects/oss/voice-call-plugin"] },    slots: { memory: "memory-core" },    entries: {      "voice-call": { enabled: true, config: { provider: "twilio" } },    },  },}

    ģ£¼ģš” ģ •ģ±… ź·œģ¹™:

    • plugins.enabled: falseģ€ ėŖØė“  Pluginģ„ ė¹„ķ™œģ„±ķ™”ķ•˜ź³  ź²€ģƒ‰/ė”œė“œ ģž‘ģ—…ģ„ ź±“ė„ˆėœė‹ˆė‹¤. ģ“ ģ„¤ģ •ģ“ ķ™œģ„±ķ™”ėœ ė™ģ•ˆ ģ˜¤ėž˜ėœ Plugin ģ°øģ”°ėŠ” ė¹„ķ™œģ„± 상태딜 ģœ ģ§€ė©ė‹ˆė‹¤. ģ˜¤ėž˜ėœ ID넼 ģ œź±°ķ•˜ė ¤ė©“ doctor 정리넼 ģ‹¤ķ–‰ķ•˜źø° 전에 Pluginģ„ ė‹¤ģ‹œ ķ™œģ„±ķ™”ķ•˜ģ‹­ģ‹œģ˜¤.
    • plugins.denyģ€ ķ—ˆģš© ėŖ©ė”ź³¼ Plugin별 ķ™œģ„±ķ™”ė³“ė‹¤ ģš°ģ„ ķ•©ė‹ˆė‹¤.
    • plugins.allowģ€ ė°°ķƒ€ģ  ķ—ˆģš© ėŖ©ė”ģž…ė‹ˆė‹¤. tools.allow에 "*"ģ“ ķ¬ķ•Øė˜ģ–“ ģžˆģ–“ė„ ķ—ˆģš© ėŖ©ė”ģ— ģ—†ėŠ” Plugin ģ†Œģœ  ė„źµ¬ėŠ” ģ‚¬ģš©ķ•  수 ģ—†ģŠµė‹ˆė‹¤.
    • plugins.entries.<id>.enabled: falseģ€ źµ¬ģ„±ģ„ ģœ ģ§€ķ•˜ė©“ģ„œ ķ•˜ė‚˜ģ˜ Pluginģ„ ė¹„ķ™œģ„±ķ™”ķ•©ė‹ˆė‹¤.
    • plugins.load.pathsģ€ ėŖ…ģ‹œģ ģø 딜컬 Plugin ķŒŒģ¼ ė˜ėŠ” 디렉터리넼 ģ¶”ź°€ķ•©ė‹ˆė‹¤. ź“€ė¦¬ķ˜• plugins install 딜컬 ź²½ė”œėŠ” Plugin 디렉터리 ė˜ėŠ” ģ•„ģ¹“ģ“ėøŒģ—¬ģ•¼ ķ•©ė‹ˆė‹¤. ė…ė¦½ķ˜• Plugin ķŒŒģ¼ģ—ėŠ” plugins.load.pathsģ„ ģ‚¬ģš©ķ•˜ģ‹­ģ‹œģ˜¤.
    • ģ›Œķ¬ģŠ¤ķŽ˜ģ“ģŠ¤ģ—ģ„œ ź°€ģ øģ˜Ø Pluginģ€ 기본적으딜 ė¹„ķ™œģ„±ķ™”ė©ė‹ˆė‹¤. 딜컬 ģ›Œķ¬ģŠ¤ķŽ˜ģ“ģŠ¤ ģ½”ė“œė„¼ ģ‚¬ģš©ķ•˜źø° 전에 ėŖ…ģ‹œģ ģœ¼ė”œ ķ™œģ„±ķ™”ķ•˜ź±°ė‚˜ ķ—ˆģš© ėŖ©ė”ģ— ģ¶”ź°€ķ•˜ģ‹­ģ‹œģ˜¤.
    • ė²ˆė“¤ Pluginģ€ źµ¬ģ„±ģ—ģ„œ ėŖ…ģ‹œģ ģœ¼ė”œ ģž¬ģ •ģ˜ķ•˜ģ§€ ģ•ŠėŠ” ķ•œ ė‚“ģž„ėœ źø°ė³ø ķ™œģ„±ķ™”/źø°ė³ø ė¹„ķ™œģ„±ķ™” ė©”ķƒ€ė°ģ“ķ„°ė„¼ ė”°ė¦…ė‹ˆė‹¤.
    • plugins.slots.<slot>(memory ė˜ėŠ” contextEngine)ģ€ ė°°ķƒ€ģ  ė²”ģ£¼ģ—ģ„œ ķ•˜ė‚˜ģ˜ Pluginģ„ ģ„ ķƒķ•©ė‹ˆė‹¤. 슬딯 ģ„ ķƒģ€ ėŖ…ģ‹œģ  ķ™œģ„±ķ™”ė”œ ź°„ģ£¼ė˜ė©°, 달리 ģ„ ķƒģ  ķ™œģ„±ķ™” ėŒ€ģƒģ“ė”ė¼ė„ ģ„ ķƒėœ Pluginģ„ 핓당 ģŠ¬ė”Æģ— ź°•ģ œė”œ ķ™œģ„±ķ™”ķ•©ė‹ˆė‹¤. plugins.deny ė° plugins.entries.<id>.enabled: falseģ€ ģ—¬ģ „ķžˆ ģ“ė„¼ ģ°Øė‹Øķ•©ė‹ˆė‹¤.
    • ė²ˆė“¤ ģ„ ķƒģ  ķ™œģ„±ķ™” Pluginģ€ ģ œź³µģž/ėŖØėø ģ°øģ”°, 채널 구성, CLI ė°±ģ—”ė“œ ė˜ėŠ” ģ—ģ“ģ „ķŠø ķ•˜ė„¤ģŠ¤ ėŸ°ķƒ€ģž„ 등 ģžģ‹ ģ“ ģ†Œģœ ķ•œ ķ‘œė©“ 중 ķ•˜ė‚˜ź°€ 구성에 ģ§€ģ •ė˜ė©“ ģžė™ģœ¼ė”œ ķ™œģ„±ķ™”ė  수 ģžˆģŠµė‹ˆė‹¤.
    • OpenAI 계엓 Codex ė¼ģš°ķŒ…ģ€ ģ œź³µģžģ™€ ėŸ°ķƒ€ģž„ Plugin 경계넼 ė¶„ė¦¬ėœ 상태딜 ģœ ģ§€ķ•©ė‹ˆė‹¤. ė ˆź±°ģ‹œ Codex ėŖØėø ģ°øģ”°ėŠ” doctorź°€ ė³µźµ¬ķ•˜ėŠ” ė ˆź±°ģ‹œ źµ¬ģ„±ģ“ė©°, ė²ˆė“¤ codex Pluginģ€ ģ •ź·œ openai/* ģ—ģ“ģ „ķŠø ģ°øģ”°, ėŖ…ģ‹œģ  agentRuntime.id: "codex" ė° ė ˆź±°ģ‹œ codex/* 참씰넼 ģœ„ķ•œ Codex 앱 ģ„œė²„ ėŸ°ķƒ€ģž„ģ„ ģ†Œģœ ķ•©ė‹ˆė‹¤.

    plugins.allowģ“ ģ„¤ģ •ė˜ģ§€ ģ•Šź³  ģ›Œķ¬ģŠ¤ķŽ˜ģ“ģŠ¤ ė˜ėŠ” ģ „ģ—­ Plugin ė£ØķŠøģ—ģ„œ ė²ˆė“¤ė˜ģ§€ ģ•Šģ€ Pluginģ“ ģžė™ ź²€ģƒ‰ė˜ė©“ ģ‹œģž‘ ė”œź·øģ— ź²€ģƒ‰ėœ Plugin ID와, ėŖ©ė”ģ“ ģ§§ģ€ 경우 ģµœģ†Œ plugins.allow ģŠ¤ė‹ˆķŽ«ź³¼ ķ•Øź»˜ plugins.allow is empty; discovered non-bundled plugins may auto-load: ...ģ“ źø°ė”ė©ė‹ˆė‹¤. 신뢰할 수 ģžˆėŠ” Pluginģ„ openclaw.json에 ė³µģ‚¬ķ•˜źø° 전에 ėŖ©ė”ģ— ģžˆėŠ” Plugin ID에 ėŒ€ķ•“ openclaw plugins list --enabled --verbose ė˜ėŠ” openclaw plugins inspect <id>ģ„ ģ‹¤ķ–‰ķ•˜ģ‹­ģ‹œģ˜¤. ģ§„ė‹Øģ—ģ„œ Pluginģ“ without install/load-path provenanceģ„ ė”œė“œķ–ˆė‹¤ź³  ķ‘œģ‹œķ•˜ėŠ” ź²½ģš°ģ—ė„ ė™ģ¼ķ•œ 신뢰 ź³ ģ •ģ“ ģ ģš©ė©ė‹ˆė‹¤. 핓당 Plugin ID넼 ź²€ģ‚¬ķ•œ ė‹¤ģŒ plugins.allow에 ź³ ģ •ķ•˜ź±°ė‚˜ 신뢰할 수 ģžˆėŠ” ģ†ŒģŠ¤ģ—ģ„œ ė‹¤ģ‹œ ģ„¤ģ¹˜ķ•˜ģ—¬ OpenClawź°€ ģ„¤ģ¹˜ 출처넼 źø°ė”ķ•˜ė„ė” ķ•˜ģ‹­ģ‹œģ˜¤.

    구성 ź²€ģ¦ģ—ģ„œ ģ˜¤ėž˜ėœ Plugin ID, ķ—ˆģš© ėŖ©ė”/ė„źµ¬ ė¶ˆģ¼ģ¹˜ ė˜ėŠ” ė ˆź±°ģ‹œ ė²ˆė“¤ Plugin 경딜넼 ė³“ź³ ķ•˜ė©“ openclaw doctor ė˜ėŠ” openclaw doctor --fixģ„ ģ‹¤ķ–‰ķ•˜ģ‹­ģ‹œģ˜¤.

    Plugin ķ˜•ģ‹ ģ“ķ•“

    OpenClawėŠ” 두 가지 Plugin ķ˜•ģ‹ģ„ ģøģ‹ķ•©ė‹ˆė‹¤.

    ķ˜•ģ‹ ė”œė“œ ė°©ģ‹ ģ‚¬ģš© ģ‹œģ 
    ė„¤ģ“ķ‹°ėøŒ OpenClaw Plugin openclaw.plugin.jsonź³¼ ķ”„ė”œģ„øģŠ¤ 낓에 ė”œė“œė˜ėŠ” ėŸ°ķƒ€ģž„ ėŖØė“ˆ OpenClaw ģ „ģš© ėŸ°ķƒ€ģž„ źø°ėŠ„ģ„ ģ„¤ģ¹˜ķ•˜ź±°ė‚˜ ė¹Œė“œķ•˜ėŠ” 경우
    ķ˜øķ™˜ ė²ˆė“¤ OpenClaw Plugin ģøė²¤ķ† ė¦¬ģ— ė§¤ķ•‘ėœ Codex, Claude ė˜ėŠ” Cursor Plugin ė ˆģ“ģ•„ģ›ƒ ķ˜øķ™˜ė˜ėŠ” Skills, ėŖ…ė ¹, ķ›… ė˜ėŠ” ė²ˆė“¤ ė©”ķƒ€ė°ģ“ķ„°ė„¼ ģž¬ģ‚¬ģš©ķ•˜ėŠ” 경우

    두 ķ˜•ģ‹ 모두 openclaw plugins list, openclaw plugins inspect, openclaw plugins enable ė° openclaw plugins disable에 ķ‘œģ‹œė©ė‹ˆė‹¤. ė²ˆė“¤ ķ˜øķ™˜ģ„± ź²½ź³„ėŠ” Plugin ė²ˆė“¤ģ„ ģ°øģ”°ķ•˜ź³ , ė„¤ģ“ķ‹°ėøŒ Plugin ģž‘ģ„± ė°©ė²•ģ€ Plugin ė¹Œė“œė„¼ ģ°øģ”°ķ•˜ģ‹­ģ‹œģ˜¤.

    Plugin ķ›…

    PluginsėŠ” 두 가지 API넼 통핓 ėŸ°ķƒ€ģž„ģ— ķ›…ģ„ ė“±ė”ķ•  수 ģžˆģŠµė‹ˆė‹¤.

    • api.on(...) ėŸ°ķƒ€ģž„ ģˆ˜ėŖ… 주기 ģ“ė²¤ķŠøģš© ķ˜•ģ‹ķ™”ėœ ķ›…ģž…ė‹ˆė‹¤. 미들웨얓, ģ •ģ±…, ė©”ģ‹œģ§€ ģž¬ģž‘ģ„±, ķ”„ė”¬ķ”„ķŠø 구성 ė° ė„źµ¬ ģ œģ–“ģ— ź¶Œģž„ė˜ėŠ” ķ‘œė©“ģž…ė‹ˆė‹¤.
    • api.registerHook(...)ģ€ 훅에 ģ„¤ėŖ…ėœ ė‚“ė¶€ ķ›… ģ‹œģŠ¤ķ…œģš©ģž…ė‹ˆė‹¤. 주딜 ź“‘ė²”ģœ„ķ•œ ėŖ…ė ¹/ģˆ˜ėŖ… 주기 ė¶€ģˆ˜ ķšØź³¼ģ™€ 기씓 HOOK ģŠ¤ķƒ€ģ¼ ģžė™ķ™”ģ™€ģ˜ ķ˜øķ™˜ģ„±ģ„ ģœ„ķ•œ ź²ƒģž…ė‹ˆė‹¤.

    ź°„ė‹Øķ•œ ź·œģ¹™: ķ•øė“¤ėŸ¬ģ— ģš°ģ„ ģˆœģœ„, 병합 ģ˜ėÆø 첓계 ė˜ėŠ” 차단/ģ·Øģ†Œ ė™ģž‘ģ“ ķ•„ģš”ķ•˜ė©“ ķ˜•ģ‹ķ™”ėœ ķ›…ģ„ ģ‚¬ģš©ķ•˜ģ‹­ģ‹œģ˜¤. command:new, command:reset, message:sent ė˜ėŠ” ģ“ģ™€ ģœ ģ‚¬ķ•œ ź“‘ė²”ģœ„ķ•œ ģ“ė²¤ķŠøģ— ė‹Øģˆœķžˆ ė°˜ģ‘ķ•œė‹¤ė©“ api.registerHook으딜 ģ¶©ė¶„ķ•©ė‹ˆė‹¤.

    Pluginģ—ģ„œ ź“€ė¦¬ķ•˜ėŠ” ė‚“ė¶€ ķ›…ģ€ openclaw hooks list에 plugin:<id>ź³¼ ķ•Øź»˜ ķ‘œģ‹œė©ė‹ˆė‹¤. openclaw hooksģ„ ķ†µķ•“ģ„œėŠ” ķ™œģ„±ķ™”ķ•˜ź±°ė‚˜ ė¹„ķ™œģ„±ķ™”ķ•  수 ģ—†ģŠµė‹ˆė‹¤. ėŒ€ģ‹  Pluginģ„ ķ™œģ„±ķ™”ķ•˜ź±°ė‚˜ ė¹„ķ™œģ„±ķ™”ķ•˜ģ‹­ģ‹œģ˜¤.

    ķ™œģ„± Gateway ķ™•ģø

    openclaw plugins list ė° ģ¼ė°˜ openclaw plugins inspectģ€ ģ½œė“œ 구성, ė§¤ė‹ˆķŽ˜ģŠ¤ķŠø ė° ė ˆģ§€ģŠ¤ķŠøė¦¬ 상태넼 ģ½ģŠµė‹ˆė‹¤. ģ“ėÆø 실행 ģ¤‘ģø Gatewayź°€ ė™ģ¼ķ•œ Plugin ģ½”ė“œė„¼ ź°€ģ øģ™”ģŒģ„ ģ¦ėŖ…ķ•˜ģ§€ėŠ” ģ•ŠģŠµė‹ˆė‹¤.

    Pluginģ“ ģ„¤ģ¹˜ėœ 것으딜 ķ‘œģ‹œė˜ģ§€ė§Œ ģ‹¤ģ‹œź°„ ģ±„ķŒ… ķŠøėž˜ķ”½ģ—ģ„œ ģ‚¬ģš©ė˜ģ§€ ģ•ŠėŠ” 경우:

    bash
    openclaw gateway status --deep --require-rpcopenclaw plugins inspect <plugin-id> --runtime --jsonopenclaw gateway restart

    ź“€ė¦¬ķ˜• GatewayėŠ” Plugin ģ†ŒģŠ¤ė„¼ ė³€ź²½ķ•˜ėŠ” Plugin ģ„¤ģ¹˜, ģ—…ė°ģ“ķŠø ė° 제거 변경 후 ģžė™ģœ¼ė”œ ė‹¤ģ‹œ ģ‹œģž‘ė©ė‹ˆė‹¤. VPS ė˜ėŠ” ģ»Øķ…Œģ“ė„ˆ ģ„¤ģ¹˜ģ—ģ„œėŠ” ģˆ˜ė™ ģž¬ģ‹œģž‘ģ“ ėž˜ķ¼ė‚˜ ź°ė…ģžė§Œģ“ ģ•„ė‹ˆė¼ ģ±„ė„ģ„ ģ œź³µķ•˜ėŠ” ģ‹¤ģ œ openclaw gateway run ģžģ‹ ķ”„ė”œģ„øģŠ¤ė„¼ ėŒ€ģƒģœ¼ė”œ ķ•˜ėŠ”ģ§€ ķ™•ģøķ•˜ģ‹­ģ‹œģ˜¤.

    문제 ķ•“ź²°

    ģ¦ģƒ ķ™•ģø ķ•“ź²° 방법
    Pluginģ“ plugins list에 ķ‘œģ‹œė˜ģ§€ė§Œ ėŸ°ķƒ€ģž„ ķ›…ģ“ ģ‹¤ķ–‰ė˜ģ§€ ģ•ŠģŒ openclaw plugins inspect <id> --runtime --jsonģ„ ģ‚¬ģš©ķ•˜ź³  gateway status --deep --require-rpc으딜 ķ™œģ„± Gateway넼 ķ™•ģøķ•˜ģ‹­ģ‹œģ˜¤ ģ„¤ģ¹˜, ģ—…ė°ģ“ķŠø, 구성 ė˜ėŠ” ģ†ŒģŠ¤ 변경 후 ģ‹¤ģ‹œź°„ Gateway넼 ė‹¤ģ‹œ ģ‹œģž‘ķ•˜ģ‹­ģ‹œģ˜¤
    중복 채널 ė˜ėŠ” ė„źµ¬ ģ†Œģœ ź¶Œ ģ§„ė‹Øģ“ ķ‘œģ‹œėØ openclaw plugins list --enabled --verboseģ„ ģ‹¤ķ–‰ķ•˜ź³  --runtime --json으딜 ģ˜ģ‹¬ė˜ėŠ” 각 Pluginģ„ ź²€ģ‚¬ķ•œ 후 채널/ė„źµ¬ ģ†Œģœ ź¶Œģ„ ė¹„źµķ•˜ģ‹­ģ‹œģ˜¤ ģ†Œģœ ģž ķ•˜ė‚˜ė„¼ ė¹„ķ™œģ„±ķ™”ķ•˜ź±°ė‚˜, ģ˜¤ėž˜ėœ ģ„¤ģ¹˜ė„¼ ģ œź±°ķ•˜ź±°ė‚˜, ģ˜ė„ģ ģø ėŒ€ģ²“ģ—ėŠ” ė§¤ė‹ˆķŽ˜ģŠ¤ķŠø preferOverģ„ ģ‚¬ģš©ķ•˜ģ‹­ģ‹œģ˜¤
    źµ¬ģ„±ģ—ģ„œ Pluginģ“ ėˆ„ė½ė˜ģ—ˆė‹¤ź³  ķ‘œģ‹œėØ Plugin ģøė²¤ķ† ė¦¬ģ—ģ„œ ė²ˆė“¤ķ˜•, ź³µģ‹ 외부 ė˜ėŠ” ģ†ŒģŠ¤ ģ „ģš©ģøģ§€ ķ™•ģøķ•˜ģ‹­ģ‹œģ˜¤ 외부 ķŒØķ‚¤ģ§€ė„¼ ģ„¤ģ¹˜ķ•˜ź±°ė‚˜, ė²ˆė“¤ Pluginģ„ ķ™œģ„±ķ™”ķ•˜ź±°ė‚˜, ģ˜¤ėž˜ėœ źµ¬ģ„±ģ„ ģ œź±°ķ•˜ģ‹­ģ‹œģ˜¤
    ģ„¤ģ¹˜ 중 źµ¬ģ„±ģ“ ģœ ķšØķ•˜ģ§€ ģ•ŠģŒ ź²€ģ¦ ė©”ģ‹œģ§€ė„¼ ģ½ź³  ģ˜¤ėž˜ėœ Plugin 상태넼 ź°€ė¦¬ķ‚¤ėŠ” 경우 openclaw doctor --fixģ„ ģ‹¤ķ–‰ķ•˜ģ‹­ģ‹œģ˜¤ DoctorėŠ” ķ•­ėŖ©ģ„ ė¹„ķ™œģ„±ķ™”ķ•˜ź³  ģœ ķšØķ•˜ģ§€ ģ•Šģ€ ķŽ˜ģ“ė”œė“œė„¼ ģ œź±°ķ•˜ģ—¬ ģœ ķšØķ•˜ģ§€ ģ•Šģ€ Plugin źµ¬ģ„±ģ„ 격리할 수 ģžˆģŠµė‹ˆė‹¤
    ģ˜ģ‹¬ģŠ¤ėŸ¬ģš“ ģ†Œģœ ź¶Œ ė˜ėŠ” ź¶Œķ•œģœ¼ė”œ ģøķ•“ Plugin ź²½ė”œź°€ 차단됨 구성 오넘 ģ•žģ— ķ‘œģ‹œėœ ģ§„ė‹Øģ„ ź²€ģ‚¬ķ•˜ģ‹­ģ‹œģ˜¤ ķŒŒģ¼ ģ‹œģŠ¤ķ…œ ģ†Œģœ ź¶Œ/ź¶Œķ•œģ„ ģˆ˜ģ •ķ•œ 후 openclaw plugins registry --refreshģ„ ģ‹¤ķ–‰ķ•˜ģ‹­ģ‹œģ˜¤
    OPENCLAW_NIX_MODE=1ģ“ ģˆ˜ėŖ… 주기 ėŖ…ė ¹ģ„ 차단함 ģ„¤ģ¹˜ź°€ Nixģ—ģ„œ ź“€ė¦¬ė˜ėŠ”ģ§€ ķ™•ģøķ•˜ģ‹­ģ‹œģ˜¤ Plugin 변경 ėŖ…ė ¹ģ„ ģ‚¬ģš©ķ•˜ėŠ” ėŒ€ģ‹  Nix ģ†ŒģŠ¤ģ—ģ„œ Plugin ģ„ ķƒģ„ ė³€ź²½ķ•˜ģ‹­ģ‹œģ˜¤
    ėŸ°ķƒ€ģž„ģ— ģ¢…ģ†ģ„± ź°€ģ øģ˜¤źø°ź°€ ģ‹¤ķŒØķ•Ø Pluginģ“ npm/git/ClawHub넼 통핓 ģ„¤ģ¹˜ė˜ģ—ˆėŠ”ģ§€ ė˜ėŠ” 딜컬 ź²½ė”œģ—ģ„œ ė”œė“œė˜ģ—ˆėŠ”ģ§€ ķ™•ģøķ•˜ģ‹­ģ‹œģ˜¤ openclaw plugins update <id>ģ„ ģ‹¤ķ–‰ķ•˜ź±°ė‚˜, ģ†ŒģŠ¤ė„¼ ė‹¤ģ‹œ ģ„¤ģ¹˜ķ•˜ź±°ė‚˜, 딜컬 Plugin ģ¢…ģ†ģ„±ģ„ 직접 ģ„¤ģ¹˜ķ•˜ģ‹­ģ‹œģ˜¤

    ģ˜¤ėž˜ėœ Plugin 구성에 ė” ģ“ģƒ ź²€ģƒ‰ķ•  수 ģ—†ėŠ” 채널 Pluginģ“ ģ—¬ģ „ķžˆ ģ§€ģ •ė˜ģ–“ ģžˆģœ¼ė©“ 구성 ź²€ģ¦ģ€ 핓당 채널 키넼 ģ‹¬ź°ķ•œ 오넘 ėŒ€ģ‹  경고딜 ė‚®ģ¶”ėÆ€ė”œ Gateway ģ‹œģž‘ ģ‹œ 다넸 ėŖØė“  ģ±„ė„ģ„ ź³„ģ† ģ œź³µķ•  수 ģžˆģŠµė‹ˆė‹¤. ģ˜¤ėž˜ėœ Plugin ė° 채널 ķ•­ėŖ©ģ„ ģ œź±°ķ•˜ė ¤ė©“ openclaw doctor --fixģ„ ģ‹¤ķ–‰ķ•˜ģ‹­ģ‹œģ˜¤. ģ˜¤ėž˜ėœ Pluginģ“ė¼ėŠ” ģ¦ź±°ź°€ ģ—†ėŠ” ģ•Œ 수 ģ—†ėŠ” 채널 ķ‚¤ėŠ” ģ˜¤ķƒ€ź°€ ė“œėŸ¬ė‚˜ė„ė” ģ—¬ģ „ķžˆ ź²€ģ¦ģ— ģ‹¤ķŒØķ•©ė‹ˆė‹¤.

    ģ˜ė„ģ ģø 채널 ėŒ€ģ²“ģ˜ 경우 źø°ė³ø 설정 Pluginģ€ ė ˆź±°ģ‹œ ė˜ėŠ” ģš°ģ„ ģˆœģœ„ź°€ ė” ė‚®ģ€ Plugin ID와 ķ•Øź»˜ channelConfigs.<channel-id>.preferOverģ„ 선언핓야 ķ•©ė‹ˆė‹¤. 두 Pluginģ“ 모두 ėŖ…ģ‹œģ ģœ¼ė”œ ķ™œģ„±ķ™”ėœ 경우 OpenClawėŠ” 핓당 ģš”ģ²­ģ„ ģœ ģ§€ķ•˜ź³  ģ†Œģœ ģž ķ•˜ė‚˜ė„¼ ģžė™ģœ¼ė”œ ģ„ ķƒķ•˜ėŠ” ėŒ€ģ‹  중복 채널/ė„źµ¬ ģ§„ė‹Øģ„ ė³“ź³ ķ•©ė‹ˆė‹¤.

    ģ„¤ģ¹˜ėœ ķŒØķ‚¤ģ§€ź°€ requires compiled runtime output for TypeScript entry ...ģ“ė¼ź³  ė³“ź³ ķ•˜ė©“ 핓당 ķŒØķ‚¤ģ§€ėŠ” ėŸ°ķƒ€ģž„ģ— OpenClawź°€ ķ•„ģš”ė”œ ķ•˜ėŠ” JavaScript ķŒŒģ¼ ģ—†ģ“ ź²Œģ‹œėœ ź²ƒģž…ė‹ˆė‹¤. ź²Œģ‹œģžź°€ ģ»“ķŒŒģ¼ėœ JavaScript넼 ė°°ķ¬ķ•œ 후 ģ—…ė°ģ“ķŠøķ•˜ź±°ė‚˜ ė‹¤ģ‹œ ģ„¤ģ¹˜ķ•˜ź³ , ź·øė•Œź¹Œģ§€ėŠ” Pluginģ„ ė¹„ķ™œģ„±ķ™”ķ•˜ź±°ė‚˜ ģ œź±°ķ•˜ģ‹­ģ‹œģ˜¤.

    ģ°Øė‹Øėœ Plugin 경딜 ģ†Œģœ ź¶Œ

    진단에 blocked plugin candidate: suspicious ownership (... uid=1000, expected uid=0 or root) ģ“ė¼ź³  ķ‘œģ‹œė˜ź³  ģ“ģ–“ģ„œ ź²€ģ¦ģ— plugin present but blockedģ“ ķ‘œģ‹œė˜ė©“ OpenClawź°€ Plugin ķŒŒģ¼ģ„ ė”œė“œķ•˜ėŠ” ķ”„ė”œģ„øģŠ¤ģ™€ 다넸 Unix ģ‚¬ģš©ģžź°€ ģ†Œģœ ķ•œ Plugin ķŒŒģ¼ģ„ ģ°¾ģ€ ź²ƒģž…ė‹ˆė‹¤. Plugin źµ¬ģ„±ģ€ ź·øėŒ€ė”œ ģœ ģ§€ķ•˜ź³  ķŒŒģ¼ ģ‹œģŠ¤ķ…œ ģ†Œģœ ź¶Œģ„ ģˆ˜ģ •ķ•˜ź±°ė‚˜ 상태 디렉터리넼 ģ†Œģœ ķ•œ ė™ģ¼ķ•œ ģ‚¬ģš©ģžė”œ OpenClaw넼 ģ‹¤ķ–‰ķ•˜ģ‹­ģ‹œģ˜¤.

    Docker ģ„¤ģ¹˜ģ˜ 경우 ź³µģ‹ ģ“ėÆøģ§€ėŠ” node(uid 1000)으딜 ģ‹¤ķ–‰ė˜ėÆ€ė”œ ķ˜øģŠ¤ķŠøģ— ė°”ģøė“œ 마욓트된 OpenClaw 구성 ė° ģž‘ģ—… 공간 ė””ė ‰ķ„°ė¦¬ėŠ” ģ¼ė°˜ģ ģœ¼ė”œ uid 1000ģ“ ģ†Œģœ ķ•“ģ•¼ ķ•©ė‹ˆė‹¤.

    bash
    sudo chown -R 1000:1000 /path/to/openclaw-config /path/to/openclaw-workspace

    OpenClaw넼 ģ˜ė„ģ ģœ¼ė”œ root딜 ģ‹¤ķ–‰ķ•˜ėŠ” 경우 ź“€ė¦¬ķ˜• Plugin ė£ØķŠøģ˜ ģ†Œģœ ź¶Œģ„ ėŒ€ģ‹  root딜 ė³µźµ¬ķ•˜ģ‹­ģ‹œģ˜¤.

    bash
    sudo chown -R root:root /path/to/openclaw-config/npm

    ģ†Œģœ ź¶Œģ„ ģˆ˜ģ •ķ•œ 후 영구 ģ €ģž„ėœ Plugin ė ˆģ§€ģŠ¤ķŠøė¦¬ź°€ 복구된 ķŒŒģ¼ź³¼ ģ¼ģ¹˜ķ•˜ė„ė” openclaw doctor --fix ė˜ėŠ” openclaw plugins registry --refreshģ„ ė‹¤ģ‹œ ģ‹¤ķ–‰ķ•˜ģ‹­ģ‹œģ˜¤.

    느린 Plugin ė„źµ¬ 설정

    ė„źµ¬ė„¼ ģ¤€ė¹„ķ•˜ėŠ” ė™ģ•ˆ ģ—ģ“ģ „ķŠø ķ„“ģ“ 멈춘 것처럼 ė³“ģ“ė©“ 추적 ė”œź¹…ģ„ ķ™œģ„±ķ™”ķ•˜ź³  Plugin ė„źµ¬ ķŒ©ķ„°ė¦¬ ķƒ€ģ“ė° ģ¤„ģ„ ķ™•ģøķ•˜ģ‹­ģ‹œģ˜¤.

    bash
    openclaw config set logging.level traceopenclaw logs --follow

    ė‹¤ģŒģ„ ģ°¾ģœ¼ģ‹­ģ‹œģ˜¤.

    text
    [trace:plugin-tools] ķŒ©ķ„°ė¦¬ ķƒ€ģ“ė° ...

    ģš”ģ•½ģ—ėŠ” ģ“ ķŒ©ķ„°ė¦¬ ģ‹œź°„ź³¼ ź°€ģž„ 느린 Plugin ė„źµ¬ ķŒ©ķ„°ė¦¬ź°€ ė‚˜ģ—“ė˜ė©°, ģ—¬źø°ģ—ėŠ” Plugin ID, ģ„ ģ–øėœ ė„źµ¬ ģ“ė¦„, ź²°ź³¼ ķ˜•ķƒœ ė° ė„źµ¬ź°€ ģ„ ķƒ ģ‚¬ķ•­ģøģ§€ 여부가 ķ¬ķ•Øė©ė‹ˆė‹¤. ė‹Øģ¼ ķŒ©ķ„°ė¦¬ģ— ģµœģ†Œ 1sź°€ ź±øė¦¬ź±°ė‚˜ 전첓 Plugin ė„źµ¬ ķŒ©ķ„°ė¦¬ 준비에 ģµœģ†Œ 5sź°€ 걸리멓 느린 ģ¤„ģ“ 경고딜 ģŠ¹ź²©ė©ė‹ˆė‹¤.

    OpenClawėŠ” ė™ģ¼ķ•œ 유효 ģš”ģ²­ ģ»Øķ…ģŠ¤ķŠøė”œ 반복적으딜 ķ•“ģ„ķ•  ė•Œ ģ„±ź³µķ•œ Plugin ė„źµ¬ ķŒ©ķ„°ė¦¬ 결과넼 ģŗģ‹œķ•©ė‹ˆė‹¤. ģŗģ‹œ ķ‚¤ģ—ėŠ” 유효 ėŸ°ķƒ€ģž„ 구성, ģž‘ģ—… 공간 ė° ģ—ģ“ģ „ķŠø ID, ģƒŒė“œė°•ģŠ¤ ģ •ģ±…, ėøŒė¼ģš°ģ € 설정, 전달 ģ»Øķ…ģŠ¤ķŠø, ģš”ģ²­ģž ID ė° ģ†Œģœ ź¶Œ ģƒķƒœź°€ ķ¬ķ•Øė˜ėÆ€ė”œ 핓당 신뢰할 수 ģžˆėŠ” ķ•„ė“œģ— ģ˜ģ”“ķ•˜ėŠ” ķŒ©ķ„°ė¦¬ėŠ” ģ»Øķ…ģŠ¤ķŠøź°€ 변경될 ė•Œ ė‹¤ģ‹œ ģ‹¤ķ–‰ė©ė‹ˆė‹¤. ķƒ€ģ“ė°ģ“ ź³„ģ† ė†’ź²Œ ģœ ģ§€ė˜ė©“ Pluginģ“ ė„źµ¬ ģ •ģ˜ė„¼ ė°˜ķ™˜ķ•˜źø° 전에 ė¹„ģš©ģ“ ė§Žģ“ ė“œėŠ” ģž‘ģ—…ģ„ ģˆ˜ķ–‰ķ•˜ź³  ģžˆģ„ 수 ģžˆģŠµė‹ˆė‹¤.

    ķ•œ Pluginģ“ ķƒ€ģ“ė°ģ˜ ėŒ€ė¶€ė¶„ģ„ ģ°Øģ§€ķ•˜ė©“ 핓당 ėŸ°ķƒ€ģž„ ė“±ė”ģ„ ź²€ģ‚¬ķ•˜ģ‹­ģ‹œģ˜¤.

    bash
    openclaw plugins inspect <plugin-id> --runtime --json

    그런 ė‹¤ģŒ 핓당 Pluginģ„ ģ—…ė°ģ“ķŠø, ģž¬ģ„¤ģ¹˜ ė˜ėŠ” ė¹„ķ™œģ„±ķ™”ķ•˜ģ‹­ģ‹œģ˜¤. Plugin ģž‘ģ„±ģžėŠ” ė¹„ģš©ģ“ ė§Žģ“ ė“œėŠ” ģ¢…ģ†ģ„± ė”œė“œė„¼ ė„źµ¬ ķŒ©ķ„°ė¦¬ ė‚“ė¶€ģ—ģ„œ ģˆ˜ķ–‰ķ•˜ģ§€ 말고 ė„źµ¬ 실행 경딜 ė’¤ė”œ ģ“ė™ķ•“ģ•¼ ķ•©ė‹ˆė‹¤.

    ģ¢…ģ†ģ„± 루트, ķŒØķ‚¤ģ§€ ė©”ķƒ€ė°ģ“ķ„° ź²€ģ¦, ė ˆģ§€ģŠ¤ķŠøė¦¬ ė ˆģ½”ė“œ, ģ‹œģž‘ ģ‹œ ė‹¤ģ‹œ ė”œė“œ ė™ģž‘ ė° ė ˆź±°ģ‹œ 정리에 ėŒ€ķ•“ģ„œėŠ” Plugin ģ¢…ģ†ģ„± ķ•“ģ„ģ„ ģ°øģ”°ķ•˜ģ‹­ģ‹œģ˜¤.

    ꓀련 ķ•­ėŖ©

    Was this useful?
    On this page

    On this page