Competitor Analyzer

WarnAudited by ClawScan on May 10, 2026.

Overview

The skill’s competitor-research purpose is coherent, but its script can execute unintended local Python code if given a crafted company name or URL.

Only install or run this after the input-handling bug is fixed, especially if an agent might pass in company names from webpages, messages, or other untrusted sources. The public web-search behavior itself is expected for a competitor-analysis tool, but the script should safely treat the company name as data, not executable code.

Findings (2)

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

If the agent or user runs the script with attacker-controlled text as the company name or URL, it could execute commands on the local machine under the user’s privileges.

Why it was flagged

The user-controlled company/search text flows into Python source code inside single quotes instead of being passed as data. A crafted value containing quote/parenthesis characters could break out of the string and run arbitrary Python code locally.

Skill content
COMPANY="${1:?Usage: ./analyze.sh <company_name_or_url>}" ... local query="$1" ... python3 -c "import urllib.parse; print(urllib.parse.quote('$query'))"
Recommendation

Do not run this script on untrusted company names until fixed. Pass the query to Python as an argument, for example `python3 -c 'import sys, urllib.parse; print(urllib.parse.quote(sys.argv[1]))' "$query"`, and consider validating or rejecting control characters.

What this means

The skill may fail or rely on local Python even though the registry does not advertise that requirement.

Why it was flagged

The included script invokes `curl` and `python3`, and SKILL.md only explicitly lists `curl`. The missing binary declarations can surprise users or cause runtime failures, though there is no hidden installer or remote dependency download.

Skill content
Required binaries (all must exist): none; Required binaries (at least one): none
Recommendation

Declare `curl` and `python3` in the skill metadata and SKILL.md, or remove the Python dependency by using a safer built-in URL-encoding approach.