https://clawhub.ai/api/v1/skills/pylinter-assist/file?path=SKILL.md&version=0.6.3
github.com/clawhub.ai/pylinter-assist
Scanned Thu, 28 May 2026 17:03:43 GMT
Scan ID crawl-v8mbzlrc2woyyk19uac8etkz · 1ms
F
SCORE 0 / 100
Verdict: Do not install
8 critical findings.
This skill exfiltrates environment secrets ($GITHUB_TOKEN) plus 10 other issues listed below.
8 critical2 high1 medium1 rules passed
Why grade F?
score · 0 / 100The current grade reflects 8 critical findings (any 2+ CRITs → F).
8 CRIT2 HIGH1 MED0 LOW
To reach a higher grade
- DReach Dtarget score 30
Resolve 7 of your 8 CRIT findings — any single CRIT still keeps you at D.
- CReach Ctarget score 55
Resolve all 8 CRIT findings.
- BReach Btarget score 75
Resolve all 8 CRIT.
- AReach Atarget score 95
Resolve all 8 CRIT + all 2 HIGH.
Thresholds are documented at /docs/grading. Source-of-truth is the grade() function in @skillox/scanner.
Findings · ordered by severity
critSkill references secret env var $GITHUB_TOKENThe skill instructions reference `$GITHUB_TOKEN`, which contains a credential. If an attacker can lure the agent into including this in an outbound URL or message, the credential leaks.▾
Skill references secret env var $GITHUB_TOKEN
The skill instructions reference `$GITHUB_TOKEN`, which contains a credential. If an attacker can lure the agent into including this in an outbound URL or message, the credential leaks.
301
302**REST API:**
303> **Security note:** The token passed via `-H "Authorization: token $GITHUB_TOKEN"` must← references $GITHUB_TOKEN — potential credential leak
304> be a Personal Access Token or a fine-grained token scoped to `actions:write`. Never
305> hard-code the token value in scripts; always expand it from an environment variable.
critSkill references secret env var $GITHUB_TOKENThe skill instructions reference `$GITHUB_TOKEN`, which contains a credential. If an attacker can lure the agent into including this in an outbound URL or message, the credential leaks.▾
Skill references secret env var $GITHUB_TOKEN
The skill instructions reference `$GITHUB_TOKEN`, which contains a credential. If an attacker can lure the agent into including this in an outbound URL or message, the credential leaks.
307```bash
308curl -X POST \
309 -H "Authorization: token $GITHUB_TOKEN" \← references $GITHUB_TOKEN — potential credential leak
310 https://api.github.com/repos/OWNER/REPO/actions/workflows/lint-pr.yml/dispatches \
311 -d '{"ref":"main","inputs":{"pr_number":"42","format":"markdown","post_comment":"true"}}'
critSkill references secret env var $GITHUB_TOKENThe skill instructions reference `$GITHUB_TOKEN`, which contains a credential. If an attacker can lure the agent into including this in an outbound URL or message, the credential leaks.▾
Skill references secret env var $GITHUB_TOKEN
The skill instructions reference `$GITHUB_TOKEN`, which contains a credential. If an attacker can lure the agent into including this in an outbound URL or message, the credential leaks.
364```bash
365# Basic monitoring - download report only
366lint-pr monitor owner/repo --token $GITHUB_TOKEN← references $GITHUB_TOKEN — potential credential leak
367
368# Monitor with timeout and custom polling interval
critSkill references secret env var $GITHUB_TOKENThe skill instructions reference `$GITHUB_TOKEN`, which contains a credential. If an attacker can lure the agent into including this in an outbound URL or message, the credential leaks.▾
Skill references secret env var $GITHUB_TOKEN
The skill instructions reference `$GITHUB_TOKEN`, which contains a credential. If an attacker can lure the agent into including this in an outbound URL or message, the credential leaks.
367
368# Monitor with timeout and custom polling interval
369lint-pr monitor owner/repo --token $GITHUB_TOKEN --timeout 3600 --poll-interval 60← references $GITHUB_TOKEN — potential credential leak
370```
371
critSkill references secret env var $GITHUB_TOKENThe skill instructions reference `$GITHUB_TOKEN`, which contains a credential. If an attacker can lure the agent into including this in an outbound URL or message, the credential leaks.▾
Skill references secret env var $GITHUB_TOKEN
The skill instructions reference `$GITHUB_TOKEN`, which contains a credential. If an attacker can lure the agent into including this in an outbound URL or message, the credential leaks.
378```bash
379# Monitor with Telegram notification (tokens visible in process list — use with caution)
380lint-pr monitor owner/repo --token $GITHUB_TOKEN \← references $GITHUB_TOKEN — potential credential leak
381 --callback telegram:$TELEGRAM_BOT_TOKEN:$TELEGRAM_CHAT_ID
382
critSkill references secret env var $GITHUB_TOKENThe skill instructions reference `$GITHUB_TOKEN`, which contains a credential. If an attacker can lure the agent into including this in an outbound URL or message, the credential leaks.▾
Skill references secret env var $GITHUB_TOKEN
The skill instructions reference `$GITHUB_TOKEN`, which contains a credential. If an attacker can lure the agent into including this in an outbound URL or message, the credential leaks.
382
383# Monitor with Discord notification
384lint-pr monitor owner/repo --token $GITHUB_TOKEN \← references $GITHUB_TOKEN — potential credential leak
385 --callback discord:$DISCORD_WEBHOOK_URL
386
critSkill references secret env var $GITHUB_TOKENThe skill instructions reference `$GITHUB_TOKEN`, which contains a credential. If an attacker can lure the agent into including this in an outbound URL or message, the credential leaks.▾
Skill references secret env var $GITHUB_TOKEN
The skill instructions reference `$GITHUB_TOKEN`, which contains a credential. If an attacker can lure the agent into including this in an outbound URL or message, the credential leaks.
386
387# Monitor with multiple channels
388lint-pr monitor owner/repo --token $GITHUB_TOKEN \← references $GITHUB_TOKEN — potential credential leak
389 --callback telegram:$TELEGRAM_BOT_TOKEN:$TELEGRAM_CHAT_ID \
390 --callback discord:$DISCORD_WEBHOOK_URL
critHardcoded secret detected: AWS access key IDThe skill body contains what looks like a literal `AWS access key ID`. Secrets must be read from the environment, never embedded in a published skill — embedded keys leak the moment the skill is mirrored or indexed.▾
Hardcoded secret detected: AWS access key ID
The skill body contains what looks like a literal `AWS access key ID`. Secrets must be read from the environment, never embedded in a published skill — embedded keys leak the moment the skill is mirrored or indexed.
258| Hardcoded IP address | HCS003 | ERROR | `HOST = "10.0.0.5"` |
259| Hardcoded localhost URL | HCS004 | ERROR | `"http://localhost:8000"` |
260| AWS/GCP access key | HCS005 | ERROR | `AKIAIOSFODNN7EXAMPLE` |← AWS access key ID — must be env-sourced, never inline
261| FastAPI missing docstring | FAD001 | WARNING | `@router.get("/")` without docstring |
262| useEffect missing deps | RUE001 | WARNING | React useEffect with no deps array |
highDangerous shell pattern: curl | shellThe skill contains a shell command pattern (`curl | shell`) commonly used in destructive or supply-chain attacks.▾
Dangerous shell pattern: curl | shell
The skill contains a shell command pattern (`curl | shell`) commonly used in destructive or supply-chain attacks.
12This project uses standard **pyenv + pip + venv** — no remote install scripts required.
13
14**Install pyenv (no `curl | sh`):**← curl | shell — common in destructive or supply-chain attacks
15
16```bash
highDangerous shell pattern: curl | shellThe skill contains a shell command pattern (`curl | shell`) commonly used in destructive or supply-chain attacks.▾
Dangerous shell pattern: curl | shell
The skill contains a shell command pattern (`curl | shell`) commonly used in destructive or supply-chain attacks.
166> **Security warning:** The workflow file you are about to commit runs with your
167> repository's permissions and can access secrets. Read every line of the file before
168> committing. Do not use `curl … | sh` or copy files from a branch tip (`main`) without← curl | shell — common in destructive or supply-chain attacks
169> pinning to a reviewed commit.
170
medNo capability manifest declaredThe skill ships without a `manifest.yaml` or `capabilities` block in its frontmatter. Without a manifest, the runtime cannot enforce what this skill is permitted to do.rule: no-manifest▾
No capability manifest declared
The skill ships without a `manifest.yaml` or `capabilities` block in its frontmatter. Without a manifest, the runtime cannot enforce what this skill is permitted to do.
rule:
no-manifestskillox.io/r/crawl-v8mbzlrc2woyyk19uac8etkz