clawthority

Security checks across static analysis, malware telemetry, and agentic risk

Overview

Clawthority is broadly purpose-aligned as an authorization plugin, but its default safety documentation conflicts with the implementation for unrecognized sensitive actions.

Before installing, decide whether default open mode is acceptable. For stronger safety, run in closed mode, verify every tool alias is registered, review npm setup scripts and dependencies, and carefully scope any Slack or Telegram approval credentials.

Static analysis

No static analysis findings were reported for this release.

VirusTotal

VirusTotal engine telemetry is currently stale for this artifact.

View on VirusTotal

Risk analysis

Artifact-based informational review of SKILL.md, metadata, install specs, static scan signals, and capability signals. ClawScan does not execute the skill or run runtime probes.

What this means

A user may believe unrecognized sensitive tools are blocked by default when they may actually be allowed in open mode.

Why it was flagged

This claims default open mode blocks unknown_sensitive_action, but the included implementation says unknown_sensitive_action is intentionally excluded from open mode, making the default safety claim misleading.

Skill content
By default Clawthority runs in **`open` mode** — implicit permit, with a critical-forbid safety net (`shell.exec`, `code.execute`, `payment.initiate`, `credential.read`, `credential.write`, `unknown_sensitive_action`).
Recommendation

Treat open mode as fail-open for unrecognized tools; use closed mode for stronger containment and require the publisher to align the documentation and implementation.

What this means

If a dangerous tool is not correctly registered, the agent may be able to run it without human approval under the default mode.

Why it was flagged

The default mode can permit unrecognized tools, which is a material concern for an authorization boundary because misregistered high-risk tools may bypass the expected default block.

Skill content
NOTE: `unknown_sensitive_action` is intentionally excluded from OPEN mode. In OPEN mode, unrecognised tools fall through to the implicit permit
Recommendation

Use `CLAWTHORITY_MODE=closed`, register all tool aliases, and test policy coverage before relying on the plugin for high-risk tools.

What this means

Installing the plugin runs local Node/npm code on your machine.

Why it was flagged

The setup path runs package installation and build scripts locally. This is expected for a plugin, but it is still local code execution from the package source.

Skill content
git clone https://github.com/OpenAuthority/clawthority ~/.openclaw/plugins/clawthority
cd ~/.openclaw/plugins/clawthority
npm install && npm run build
Recommendation

Review the repository, package scripts, and dependencies before running npm install/build, especially in sensitive environments.

What this means

If configured, the plugin will rely on messaging-service credentials that can authorize bot actions or approval interactions.

Why it was flagged

The plugin can use Slack and Telegram credentials for human-in-the-loop approval channels. This is purpose-aligned but not declared in the registry env-var metadata.

Skill content
const botToken = process.env.TELEGRAM_BOT_TOKEN ?? policyConfig?.botToken; ... const botToken = process.env.SLACK_BOT_TOKEN ?? policyConfig?.botToken; ... const signingSecret = process.env.SLACK_SIGNING_SECRET ?? policyConfig?.signingSecret;
Recommendation

Use least-privilege bot tokens, keep secrets out of shared policy files where possible, and rotate tokens if they may have been exposed.

What this means

Approval prompts or decision metadata may pass through external messaging systems if those integrations are enabled.

Why it was flagged

The artifacts include Slack and Telegram HITL channel configuration, indicating optional external approval-channel communication. This is expected for HITL but introduces provider and channel-boundary considerations.

Skill content
resolveTelegramConfig(policyConfig) ... TELEGRAM_BOT_TOKEN ... TELEGRAM_CHAT_ID ... resolveSlackConfig(policyConfig) ... SLACK_CHANNEL_ID ... SLACK_INTERACTION_PORT
Recommendation

Only enable Slack or Telegram approvals in trusted workspaces/chats, and avoid including unnecessary sensitive payload details in approval summaries.