Skip to main content

Security audit tool for OpenClaw deployments

Project description

ClawShield

ClawShield is a security audit tool for OpenClaw deployments.

It performs static security analysis of OpenClaw configurations and host posture to detect common high-risk misconfigurations.

ClawShield is the first module released under the PolicyGate umbrella — a runtime policy enforcement framework for AI agents.

What ClawShield Checks Network Exposure

Public bind address (0.0.0.0, ::)

Authentication disabled while publicly exposed

Container Posture

Containers running as root

Containers running in privileged mode

Secrets Handling

API keys present in .env files

API key references inside config files

File Permissions

World-writable config files

World-readable or world-writable .env files

What ClawShield Does NOT Check

Runtime exploitability

Kernel vulnerabilities

Docker daemon hardening

Firewall configuration

Intrusion detection

Secrets entropy analysis

Cloud IAM posture

ClawShield is a static audit tool, not a runtime protection system.

Installation (Development)

Clone the repository:

git clone https://github.com/policygate/clawshield.git cd clawshield

Install locally:

pip install -e .

Usage

Run audit:

python -m clawshield path/to/openclaw.yaml

JSON mode:

python -m clawshield --json path/to/openclaw.yaml

Control exit threshold:

python -m clawshield --fail-on high path/to/openclaw.yaml

Severity ranking:

low < medium < high < critical

Exit Codes Code Meaning 0 No findings at or above threshold 1 Findings at or above threshold JSON Output Contract (v0.1) { "meta": { "schema_version": "0.1", "policy_path": "...", "warnings": [] }, "facts": [ {"key": "...", "value": "...", "source": "..."} ], "findings": [ { "rule_id": "NET-001", "title": "...", "severity": "critical", "confidence": "high", "evidence": [], "recommended_actions": ["ACT-ENABLE-AUTH"], "autofix_available": true } ] }

The JSON schema is versioned and locked via golden tests to prevent drift.

Architecture

ClawShield consists of:

Scanners → Collect facts from runtime and configuration

Policy Engine → Evaluates YAML rules against collected facts

Structured Output → Designed for automation and CI pipelines

Scanners are modular and isolated from the engine core.

Roadmap

Continuous monitoring mode

CI integration

Agent-agnostic security profile

Advanced secrets detection

Automated remediation plans

Status

Early release. Actively evolving.

Feedback and contributions welcome.

License

Apache 2.0

Security Disclaimer

ClawShield surfaces rule-based misconfigurations according to the active policy set. It does not guarantee system security.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

clawshield-0.3.0.tar.gz (22.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

clawshield-0.3.0-py3-none-any.whl (18.4 kB view details)

Uploaded Python 3

File details

Details for the file clawshield-0.3.0.tar.gz.

File metadata

  • Download URL: clawshield-0.3.0.tar.gz
  • Upload date:
  • Size: 22.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for clawshield-0.3.0.tar.gz
Algorithm Hash digest
SHA256 ac91fc2b87e07abc51e24655faa1e19954d49660c8ced2f112c4e805c7a30ff8
MD5 da65cc59bcfb2647d79e7aa091773463
BLAKE2b-256 e1193ad328df36ffbda408622e7aea758cbcc4a126de3e1d05fcf3a66293c728

See more details on using hashes here.

File details

Details for the file clawshield-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: clawshield-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 18.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for clawshield-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 0533a3ce4d5290df297b28b4d065c007bdbaa75cf38488ab51b4b4ed785fbb55
MD5 7c4f6e586de032e4a95aaa3c2dffec91
BLAKE2b-256 1754c20aefde897b1b1abe0b8d69cb41b4823fe6528252ad44a7086011e27ce7

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page