{
  "schemaVersion": "1.0",
  "item": {
    "slug": "clawguard",
    "name": "ClawGuard",
    "source": "tencent",
    "type": "skill",
    "category": "安全合规",
    "sourceUrl": "https://clawhub.ai/lidan-capsule/clawguard",
    "canonicalUrl": "https://clawhub.ai/lidan-capsule/clawguard",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/clawguard",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=clawguard",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "SKILL.md"
    ],
    "primaryDoc": "SKILL.md",
    "quickSetup": [
      "Download the package from Yavira.",
      "Extract the archive and review SKILL.md first.",
      "Import or place the package into your OpenClaw setup."
    ],
    "agentAssist": {
      "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
      "steps": [
        "Download the package from Yavira.",
        "Extract it into a folder your agent can access.",
        "Paste one of the prompts below and point your agent at the extracted folder."
      ],
      "prompts": [
        {
          "label": "New install",
          "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
        },
        {
          "label": "Upgrade existing",
          "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
        }
      ]
    },
    "sourceHealth": {
      "source": "tencent",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-04-23T16:43:11.935Z",
      "expiresAt": "2026-04-30T16:43:11.935Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=4claw-imageboard",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=4claw-imageboard",
        "contentDisposition": "attachment; filename=\"4claw-imageboard-1.0.1.zip\"",
        "redirectLocation": null,
        "bodySnippet": null
      },
      "scope": "source",
      "summary": "Source download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this source.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/clawguard"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    },
    "downloadPageUrl": "https://openagent3.xyz/downloads/clawguard",
    "agentPageUrl": "https://openagent3.xyz/skills/clawguard/agent",
    "manifestUrl": "https://openagent3.xyz/skills/clawguard/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/clawguard/agent.md"
  },
  "agentAssist": {
    "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
    "steps": [
      "Download the package from Yavira.",
      "Extract it into a folder your agent can access.",
      "Paste one of the prompts below and point your agent at the extracted folder."
    ],
    "prompts": [
      {
        "label": "New install",
        "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
      },
      {
        "label": "Upgrade existing",
        "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "ClawGuard Plugin Installation Guide",
        "body": "ClawGuard is a security plugin that uses an LLM-as-a-Judge to evaluate tool calls before execution, detecting and optionally blocking risky operations."
      },
      {
        "title": "Prerequisites",
        "body": "Before installing ClawGuard, ensure the gateway's chat completions endpoint is enabled:\n\nopenclaw config set gateway.http.endpoints.chatCompletions.enabled true"
      },
      {
        "title": "Installation",
        "body": "Install the plugin from npm:\n\nopenclaw plugins install @capsulesecurity/clawguard\n\nAfter installation, restart the gateway to load the plugin."
      },
      {
        "title": "Docker Installation",
        "body": "If running OpenClaw in Docker:\n\n# Install the plugin\ndocker compose run --rm openclaw-cli plugins install @capsulesecurity/clawguard\n\n# Restart gateway with force-recreate to reload env vars\ndocker compose up -d --force-recreate openclaw-gateway\n\nImportant: Always use --force-recreate when restarting. Plain docker compose restart does NOT reload environment variables."
      },
      {
        "title": "Verify Installation",
        "body": "Check the gateway logs for the initialization message:\n\n[clawguard] Initialized (logging: true, security: true, block: true, metrics: enabled)"
      },
      {
        "title": "Configuration",
        "body": "Configure ClawGuard via openclaw config set plugins.clawguard.<option> <value>:\n\nOptionDefaultDescriptionenabledtrueEnable/disable the pluginlogToolCallstrueLog tool call JSON to gateway logssecurityCheckEnabledtrueRun LLM security evaluationblockOnRisktrueBlock high/critical risk tool callsmaxContextWords2000Session context word limit for evaluationtimeoutMs15000Security check timeout in millisecondsgatewayHost127.0.0.1Gateway host for LLM callsgatewayPort18789Gateway port for LLM callsmetricsEnabledtrueEnable anonymous usage metrics"
      },
      {
        "title": "Example Configuration",
        "body": "# Disable blocking (log-only mode)\nopenclaw config set plugins.clawguard.blockOnRisk false\n\n# Increase timeout for slower models\nopenclaw config set plugins.clawguard.timeoutMs 30000\n\n# Disable metrics collection\nopenclaw config set plugins.clawguard.metricsEnabled false"
      },
      {
        "title": "Gateway Authentication",
        "body": "ClawGuard calls the gateway's /v1/chat/completions endpoint internally. If you see 401 Unauthorized errors:\n\nCheck the gateway token in your environment matches the config:\n# Check env var\nprintenv OPENCLAW_GATEWAY_TOKEN\n\n# Check config token\ncat ~/.openclaw/openclaw.json | grep -A2 '\"token\"'\n\n\n\nIf tokens don't match, update your environment and restart the gateway.\n\nFor Docker, ensure .env contains the correct OPENCLAW_GATEWAY_TOKEN and use --force-recreate when restarting."
      },
      {
        "title": "405 Method Not Allowed",
        "body": "The chat completions endpoint is not enabled. Run:\n\nopenclaw config set gateway.http.endpoints.chatCompletions.enabled true"
      },
      {
        "title": "401 Unauthorized",
        "body": "Token mismatch between environment and config. See Gateway Authentication section above."
      },
      {
        "title": "Plugin Not Loading",
        "body": "Check openclaw plugins list shows clawguard\nRestart the gateway\nCheck gateway logs for errors"
      },
      {
        "title": "How It Works",
        "body": "ClawGuard registers a before_tool_call hook that:\n\nLogs tool call details (if logToolCalls is enabled)\nSends tool context to an LLM for security evaluation\nReturns a risk assessment (none/low/medium/high/critical)\nBlocks execution if risk is high/critical (if blockOnRisk is enabled)\n\nThe security evaluation uses your configured LLM provider, so it works with any model you have set up in OpenClaw."
      },
      {
        "title": "Links",
        "body": "GitHub: https://github.com/capsulesecurity/clawguard\nnpm: https://www.npmjs.com/package/@capsulesecurity/clawguard"
      }
    ],
    "body": "ClawGuard Plugin Installation Guide\n\nClawGuard is a security plugin that uses an LLM-as-a-Judge to evaluate tool calls before execution, detecting and optionally blocking risky operations.\n\nPrerequisites\n\nBefore installing ClawGuard, ensure the gateway's chat completions endpoint is enabled:\n\nopenclaw config set gateway.http.endpoints.chatCompletions.enabled true\n\nInstallation\n\nInstall the plugin from npm:\n\nopenclaw plugins install @capsulesecurity/clawguard\n\n\nAfter installation, restart the gateway to load the plugin.\n\nDocker Installation\n\nIf running OpenClaw in Docker:\n\n# Install the plugin\ndocker compose run --rm openclaw-cli plugins install @capsulesecurity/clawguard\n\n# Restart gateway with force-recreate to reload env vars\ndocker compose up -d --force-recreate openclaw-gateway\n\n\nImportant: Always use --force-recreate when restarting. Plain docker compose restart does NOT reload environment variables.\n\nVerify Installation\n\nCheck the gateway logs for the initialization message:\n\n[clawguard] Initialized (logging: true, security: true, block: true, metrics: enabled)\n\nConfiguration\n\nConfigure ClawGuard via openclaw config set plugins.clawguard.<option> <value>:\n\nOption\tDefault\tDescription\nenabled\ttrue\tEnable/disable the plugin\nlogToolCalls\ttrue\tLog tool call JSON to gateway logs\nsecurityCheckEnabled\ttrue\tRun LLM security evaluation\nblockOnRisk\ttrue\tBlock high/critical risk tool calls\nmaxContextWords\t2000\tSession context word limit for evaluation\ntimeoutMs\t15000\tSecurity check timeout in milliseconds\ngatewayHost\t127.0.0.1\tGateway host for LLM calls\ngatewayPort\t18789\tGateway port for LLM calls\nmetricsEnabled\ttrue\tEnable anonymous usage metrics\nExample Configuration\n# Disable blocking (log-only mode)\nopenclaw config set plugins.clawguard.blockOnRisk false\n\n# Increase timeout for slower models\nopenclaw config set plugins.clawguard.timeoutMs 30000\n\n# Disable metrics collection\nopenclaw config set plugins.clawguard.metricsEnabled false\n\nGateway Authentication\n\nClawGuard calls the gateway's /v1/chat/completions endpoint internally. If you see 401 Unauthorized errors:\n\nCheck the gateway token in your environment matches the config:\n\n# Check env var\nprintenv OPENCLAW_GATEWAY_TOKEN\n\n# Check config token\ncat ~/.openclaw/openclaw.json | grep -A2 '\"token\"'\n\n\nIf tokens don't match, update your environment and restart the gateway.\n\nFor Docker, ensure .env contains the correct OPENCLAW_GATEWAY_TOKEN and use --force-recreate when restarting.\n\nTroubleshooting\n405 Method Not Allowed\n\nThe chat completions endpoint is not enabled. Run:\n\nopenclaw config set gateway.http.endpoints.chatCompletions.enabled true\n\n401 Unauthorized\n\nToken mismatch between environment and config. See Gateway Authentication section above.\n\nPlugin Not Loading\nCheck openclaw plugins list shows clawguard\nRestart the gateway\nCheck gateway logs for errors\nHow It Works\n\nClawGuard registers a before_tool_call hook that:\n\nLogs tool call details (if logToolCalls is enabled)\nSends tool context to an LLM for security evaluation\nReturns a risk assessment (none/low/medium/high/critical)\nBlocks execution if risk is high/critical (if blockOnRisk is enabled)\n\nThe security evaluation uses your configured LLM provider, so it works with any model you have set up in OpenClaw.\n\nLinks\nGitHub: https://github.com/capsulesecurity/clawguard\nnpm: https://www.npmjs.com/package/@capsulesecurity/clawguard"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/lidan-capsule/clawguard",
    "publisherUrl": "https://clawhub.ai/lidan-capsule/clawguard",
    "owner": "lidan-capsule",
    "version": "0.1.5",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/clawguard",
    "downloadUrl": "https://openagent3.xyz/downloads/clawguard",
    "agentUrl": "https://openagent3.xyz/skills/clawguard/agent",
    "manifestUrl": "https://openagent3.xyz/skills/clawguard/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/clawguard/agent.md"
  }
}