Claude Code, Skill
Deslop Gpt
Test-first, evidence-backed cleanup for accumulated test, verification, and fallback bloat.
Compatibility: Not stated.
Grade C
One Medium finding. Read the findings before installing.
Not a guarantee. A hygiene check of the source at the commit shown, not a security audit.
Rescanned at commit 3913d8afeb18, unchanged since the check below.
SECRETS_PATH_CREDENTIAL
Why this grade
- SECRETS_PATH_CREDENTIAL Medium
Mentions a credential store path (~/.ssh, id_rsa, .npmrc, .aws/credentials, credentials.json, .netrc).
evals/real-world/cluster-gpu-monitor/input/.gitignore, line 24
*id_rsa*
Any High, or two or more Medium findings, give D. One Medium gives C. Low findings or a security Note give B. Each code names a finding behind the letter.
Grades are a hygiene check of the source at the commit shown, on the date checked, not a security audit or a guarantee. The free directory grades are automated. Before release, a PlugVet engineer reviews every paid report and any grade we hold back, including all F grades, against the source code and the evidence we quote.
What was checked
Plain notes from the hygiene checks.
Permissions
Note
requests shell access. The manifest names this permission.
PERMISSION_SHELL_DECLARED
evals/archive/dev-v1/grade_case.py, line 206
result = subprocess.run(
evals/dev-v2-focused/grade_focused.py, line 89
result = subprocess.run(
evals/dev-v3-evidence-edges/grade_evidence_edges.py, line 93
result = subprocess.run(
Show more
evals/dev-v4-persistence/grade_persistence.py, line 113
run = subprocess.run([sys.executable, "-m", "unittest", "discover", "-v"], cwd=workspace,
evals/dev-v4-transfer/held_back/grade_transfer.py, line 335
process = subprocess.run([sys.executable, str(Path(__file__).resolve()), "--worker", case_id, workspace],
evals/dev-v4-transfer/held_back/validate_transfer.py, line 55
process = subprocess.run([sys.executable, str(HIDDEN / "grade_transfer.py"), case_id, str(workspace)],
evals/real-world/cluster-gpu-monitor/input/scripts/check_added_secrets.py, line 49
return subprocess.run(
scripts/export_results.py, line 392
return subprocess.run(
Install and update
Note
The docs document an installer that pipes a download into a shell.
INSTALL_DOCUMENTED_INSTALLER
evals/real-world/cluster-gpu-monitor/input/docs/DEPLOYMENT.en.md, line 50
curl -LsSf https://astral.sh/uv/install.sh | sh
evals/real-world/cluster-gpu-monitor/input/docs/DEPLOYMENT.md, line 49
curl -LsSf https://astral.sh/uv/install.sh | sh
Network
Concern
can reach a host that is not written as a fixed address.
NETWORK_NO_FIXED_HOST
evals/real-world/cluster-gpu-monitor/input/compose.yaml, line 99
response = urllib.request.urlopen('http://127.0.0.1:8848/api/live', timeout=2);
evals/real-world/cluster-gpu-monitor/input/scripts/export_static_demo.py, line 275
# 这段 shim 的职责:把 fetch("/api/...") 改写成读同目录下的静态 JSON。
evals/real-world/cluster-gpu-monitor/input/web/js/api.js, line 6
const r = await fetch(new URL(url, location.origin), { credentials: "same-origin" });
Secrets
Concern
reads a credential or environment file.
SECRETS_PATH_CREDENTIAL
evals/real-world/cluster-gpu-monitor/input/.gitignore, line 19
*.env
evals/real-world/cluster-gpu-monitor/input/.gitignore, line 20
deploy/caddy/*.env
evals/real-world/cluster-gpu-monitor/input/.gitignore, line 24
*id_rsa*
Show more
evals/real-world/cluster-gpu-monitor/input/README.en.md, line 90
`~/.ssh/config`. Keep bastions, ports, keys, and host-key policy in SSH configuration;
evals/real-world/cluster-gpu-monitor/input/README.en.md, line 150
bastions change, update `ssh_alias` and `~/.ssh/config` instead. See the
evals/real-world/cluster-gpu-monitor/input/README.md, line 82
`inventory.yaml` 中的 `ssh_alias` 必须对应中心机 `~/.ssh/config` 里的条目。跳板机、端口、
evals/real-world/cluster-gpu-monitor/input/README.md, line 140
及 `~/.ssh/config`。完整字段、标签、AMD、保留期、并发和查询边界见
evals/real-world/cluster-gpu-monitor/input/compose.yaml, line 51
source: "${GPUMON_SSH_DIR:?set GPUMON_SSH_DIR in .env}"
Agent instructions
Pass
No instruction to ignore earlier instructions or to hide a step.
Obfuscation
Note
the file cap was reached before every file was read.
OBFUSCATION_FILE_CAP_REACHED
evals/dev-v4-transfer/held_back/overlays/sqlite_retire_v1/alternate_valid/test_app.py, line 1
import sqlite3
Licence
Pass
A licence file is present (LICENSE).
Maintainer activity
Pass
The latest commit is within the last 365 days.
Note
Hygiene check of commit 3913d8afeb18. requests shell access. The manifest names this permission. The docs document an installer that pipes a download into a shell. can reach a host that is not written as a fixed address. reads a credential or environment file. the file cap was reached before every file was read.
Date and source
Date checked:
github.com
Commit graded: 3913d8afeb18ed5c3cabc3ec39202ce02587ca87
This link goes to the original host. PlugVet does not host or check what you download from there, and installing it is your own decision and risk.