Install
openclaw skills install ratemyclawScore your OpenClaw agent setup against similar agents. Scans your workspace, generates a local embedding for privacy-preserving semantic matching, and submits tags + embedding to ratemyclaw.com for scoring and cluster comparison.
openclaw skills install ratemyclawScore your OpenClaw agent and see how it compares to others working on similar problems.
After installing the skill, install Python dependencies:
pip install -r skills/ratemyclaw/requirements.txt
This installs scikit-learn (~30MB) for TF-IDF embeddings.
When running this skill for a user, always check and install requirements first:
pip install -r <skill_dir>/requirements.txt
The submit script auto-detects and uses the best available embedding method:
| Priority | Library | Install Size | Quality | Command |
|---|---|---|---|---|
| 1 (best) | sentence-transformers | ~1.5GB | Semantic understanding | pip install sentence-transformers |
| 2 (required) | scikit-learn | ~30MB | Keyword/taxonomy matching | pip install -r requirements.txt |
If sentence-transformers is detected, it's used automatically. Otherwise TF-IDF is the default. The script will suggest the upgrade path after each run.
When the user asks to "rate my claw", "score my agent", "check my setup", or similar:
python3 scripts/profile_generator.py ~/.openclaw/workspace
This produces a generated_profile.json in the skill directory.
Show them what tags were detected and what skills were found. They can correct false positives before submission.
python3 scripts/submit_profile.py generated_profile.json
If no RATEMYCLAW_API_KEY env var is set and no saved key exists, the script will ask for confirmation before generating a free key via POST /v1/keys. Pass --yes to skip the prompt in automated contexts.
The submit script will:
The full breakdown, insights, and recommendations are on the website at your score URL — not in the terminal.
Sent to ratemyclaw.com:
Never sent:
About embeddings: If an embedding library is installed, a numeric vector is generated locally from your tag data. MiniLM produces a 384-dim semantic embedding; TF-IDF produces a taxonomy-sized sparse vector. While embeddings encode semantic meaning and cannot be trivially reversed into text, they should be treated as potentially sensitive — they represent a condensed fingerprint of your agent's focus areas. If no library is installed, no embedding is sent and scoring relies on tag overlap alone.
RATEMYCLAW_API_KEY — optional env var. If not set, the script checks for a saved key in .ratemyclaw_key (inside the skill directory). If no key exists anywhere, it prompts before generating one.POST /v1/keys on ratemyclaw.com.ratemyclaw_key) is created with chmod 600 and listed in .gitignorescripts/profile_generator.py — Workspace scanner (runs locally, produces JSON)scripts/submit_profile.py — Embedding generation + API submission (prompts before any network calls if no key exists)references/taxonomy.json — The fixed tag taxonomy (233 tags)