Auth Guard

PassAudited by VirusTotal on May 11, 2026.

Overview

Type: OpenClaw Skill Name: davidme6-auth-guard Version: 1.0.0 The 'auth-guard' skill is a security utility designed to implement a human-in-the-loop authorization layer for API operations. The core logic in auth_guard.py and cli.py facilitates a 'Zero Trust' architecture by intercepting requests and requiring manual approval via local decision files or user-configured webhooks (e.g., Feishu). The code is transparent, well-documented, and lacks any indicators of malicious intent, such as hardcoded exfiltration endpoints, obfuscation, or unauthorized persistence mechanisms.

Findings (0)

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 all external API actions are automatically protected when only integrated code paths are actually guarded.

Why it was flagged

This promises global, highest-priority, non-bypassable enforcement, but the artifacts show a library/CLI that other skills must voluntarily integrate and the registry has no automatic install/enforcement hook.

Skill content
所有外部 API 操作必须经过用户明确授权。这是最高优先级的安全层,确保没有任何自动化可以擅自使用你的授权。
Recommendation

Reword the skill to clearly state its limits, list exactly which integrations are protected, and avoid claiming universal protection unless enforcement is technically implemented.

What this means

Any local automation or agent able to run this CLI or write the decision file could approve requests, undermining the intended explicit-user-authorization barrier.

Why it was flagged

The approve command creates an authorization decision file based only on a request_id, with no visible authentication, human-presence check, or request_id path validation.

Skill content
decision_path = os.path.expanduser(f"~/.auth_guard/decisions/{args.request_id}.json") ... "approved": True ... json.dump(decision, f, indent=2)
Recommendation

Do not expose approval commands to autonomous agents; validate request IDs, restrict directory permissions, and require an out-of-band user-authenticated approval channel.

What this means

A documented protection mode may fail or be unavailable, causing users to rely on a guard that is not actually enforcing checks in that path.

Why it was flagged

The documentation advertises an HTTP server module, but the supplied manifest contains no auth_guard/server.py or package directory, so this central integration path is not supported by the reviewed artifacts.

Skill content
python -m auth_guard.server --port 8765
Recommendation

Include the server implementation and tests, or remove the HTTP API instructions until they are accurate and reviewable.

What this means

Request parameters may include private email, calendar, or business data and could be shared with the webhook provider.

Why it was flagged

Authorization details, including params, are sent to a configured webhook for notification.

Skill content
message = self._build_notification_message(request_id, service, action, params, reason, requester, priority) ... requests.post(webhook_url, json=message, timeout=10)
Recommendation

Use only trusted webhook endpoints and redact secrets or sensitive payload fields before sending notifications.

What this means

Local audit logs can reveal which services and actions were requested, and may expose sensitive operational history if the account or filesystem is shared.

Why it was flagged

The skill intentionally persists an audit trail of authorization activity in the user's home directory.

Skill content
所有授权请求都会记录到 `~/.auth_guard/audit_log.jsonl`
Recommendation

Review retention settings, lock down file permissions on ~/.auth_guard, and avoid logging sensitive parameters or tokens.