Back to skill
Skillv1.1.0
ClawScan security
Polymarket Command Center · ClawHub's context-aware review of the artifact, metadata, and declared behavior.
Scanner verdict
BenignMar 14, 2026, 3:27 AM
- Verdict
- benign
- Confidence
- medium
- Model
- gpt-5-mini
- Summary
- The skill is a read-only Polymarket browser that uses public Polymarket endpoints and does not request credentials; it is largely coherent with its stated purpose though there are small documentation/packaging mismatches worth reviewing.
- Guidance
- This skill appears to be what it claims: a read-only Polymarket viewer that makes outbound GET requests to gamma-api.polymarket.com and clob.polymarket.com and stores a local watchlist in ~/.openclaw/state/polymarket_watchlist.json. Before installing, review the full scripts/polymarket_commands.py to confirm there are no hidden endpoints or unexpected network calls (the provided excerpt looks clean). Note the minor inconsistencies: SKILL.md documents YAML-based config (~/.openclaw/config.yaml) and requirements.txt includes pyyaml and requests, but the visible code uses urllib and explicitly reads only the JSON watchlist file — verify whether YAML config parsing is implemented in other parts of the script. Be aware the skill will create ~/.openclaw/state and read that watchlist file; if you add slugs there, they will be read and displayed. As best practices: (1) run the code in a restricted environment or review the entire file before use, (2) confirm network endpoints are the expected Polymarket APIs, and (3) if you require a strict audit trail, ensure the skill's logs and state directory are in a location you control.
Review Dimensions
- Purpose & Capability
- okName/description describe a read-only Polymarket interface and the included code and docs show only GET requests to public Gamma and CLOB endpoints; no credentials, special binaries, or surprising external services are requested.
- Instruction Scope
- noteSKILL.md describes trending/odds/search/watchlist features and points to config via ~/.openclaw/state/polymarket_watchlist.json or ~/.openclaw/config.yaml. The provided script clearly implements watchlist reading from ~/.openclaw/state/polymarket_watchlist.json and network calls to Gamma/CLOB. There is a minor inconsistency: the docs mention YAML config support (config.yaml) but the visible script portion only shows JSON watchlist loading; the presence of requirements including pyyaml suggests YAML support was intended but not visible in the truncated file. This is a documentation vs implementation mismatch, not an outright scope creep.
- Install Mechanism
- okNo install spec — instruction-only plus a Python script and requirements.txt. No downloads from arbitrary URLs or extract steps. The code is local and will run using standard Python libraries (requirements list contains requests and pyyaml).
- Credentials
- okSkill declares no environment variables or credentials. The code creates/reads ~/.openclaw/state and reads a local watchlist JSON file — this is proportionate to the watchlist feature. No access to unrelated secrets or system-wide configs is requested.
- Persistence & Privilege
- okalways is false; skill will create and use ~/.openclaw/state (its own data directory) but does not request permanent platform-wide privileges or modify other skills. Autonomous invocation is allowed by default (platform norm) and is not combined with other red flags.
