Claude Code, Skill
skills
Claude Code skills for AI-aware development and life organization.
Compatibility: Not stated.
Grade C
One Medium finding. Read the report before installing.
Not a guarantee. A hygiene check of the source at the commit shown, not a security audit.
SECRETS_PATH_CREDENTIAL
Why this grade
- SECRETS_PATH_CREDENTIAL Medium
Mentions a credential store path (~/.ssh, id_rsa, .npmrc, .aws/credentials, credentials.json, .netrc).
multi-account-cli/SKILL.md, line 226
cp ~/.config/gcloud/adc_work.json ~/.config/gcloud/application_default_credentials.json
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
domain-email-warming/scripts/inbox-backstop.py, line 32
p = subprocess.run(
domain-email-warming/scripts/signup-sweep.py, line 67
p = subprocess.run(argv, input=stdin, capture_output=True, text=True, timeout=60)
google-drive-organizer/SKILL.md, line 74
r = subprocess.run(cmd, capture_output=True, text=True)
Show more
google-drive-organizer/SKILL.md, line 177
r = subprocess.run(cmd, capture_output=True, text=True)
org-gmail/SKILL.md, line 116
r = subprocess.run(args, capture_output=True, text=True)
org-google-contacts/SKILL.md, line 110
r = subprocess.run(args, capture_output=True, text=True)
organizer/google-drive/SKILL.md, line 95
r = subprocess.run(cmd, capture_output=True, text=True)
organizer/google-drive/SKILL.md, line 198
r = subprocess.run(cmd, capture_output=True, text=True)
Install and update
Pass
No install-time script found, and dependencies are pinned or absent.
Network
Concern
can reach api.stripe.com. The description does not name that host. can reach api.searchads.apple.com. The description does not name that host. can reach ad.partner.gifshow.com. The description does not name that host. can reach a host that is not written as a fixed address. can reach www.stackadapt.com. The description does not name that host. can reach api.thetradedesk.com. The description does not name that host. can reach api.biz.weibo.com. The description does not name that host. can reach a
NETWORK_NO_FIXED_HOST NETWORK_UNNAMED_HOST
accept-x402-payments/SKILL.md, line 115
curl https://api.stripe.com/v1/crypto/deposit_addresses \
accept-x402-payments/SKILL.md, line 146
curl https://api.stripe.com/v1/payment_records/report_payment \
accept-x402-payments/SKILL.md, line 174
curl https://api.stripe.com/v1/crypto/deposit_addresses \
Show more
ads-apple-search/SKILL.md, line 63
curl -sS https://api.searchads.apple.com/api/v5/acls \
ads-kuaishou/SKILL.md, line 130
curl --get 'https://ad.partner.gifshow.com/track/activate' \
ads-mercadolibre/SKILL.md, line 118
curl -sS \
ads-snapchat/SKILL.md, line 205
curl -sS -X POST \
ads-snapchat/SKILL.md, line 210
curl -sS \
agent-browser-consoles/SKILL.md, line 27
curl -s http://localhost:9334/json/list # should show YOUR page
cloud-gpu-llm/SKILL.md, line 59
curl http://127.0.0.1:18081/health
deploy-app-self-host/SKILL.md, line 153
until curl -sf http://localhost:3000/<health-endpoint> > /dev/null; do sleep 2; done
deploy-app-self-host/SKILL.md, line 175
curl -sf http://localhost:3000/<health-endpoint>
deploy-app-self-host/SKILL.md, line 183
curl -o /dev/null -w '%{http_code}\n' http://localhost:3000/
deploy-app-self-host/SKILL.md, line 184
curl -o /dev/null -w '%{http_code}\n' http://localhost:3000/login
deploy-app-self-host/SKILL.md, line 218
curl -s http://localhost:3000/<health-endpoint>
browser-extension/SKILL.md, line 178
- **Zip upload without the native file chooser.** The chooser is painful to automate, and `fetch('http://localhost:…')` from the page trips Chrome's local-network permission prompt
Secrets
Concern
reads a credential or environment file.
SECRETS_ENV_READ SECRETS_PATH_CREDENTIAL SECRETS_PATH_DOTENV
ci-browser-on-ichabod/SKILL.md, line 101
const authorization = `Basic ${Buffer.from(`api:${process.env.ICHABOD_API_KEY}`).toString("base64")}`;
claude-in-cloud-browser/scripts/run.mjs, line 29
headers: { Authorization: "Basic " + Buffer.from(`api:${process.env.ICHABOD_API_KEY}`).toString("base64") },
multi-account-cli/SKILL.md, line 226
cp ~/.config/gcloud/adc_work.json ~/.config/gcloud/application_default_credentials.json
Show more
claude-in-cloud-browser/scripts/run.mjs, line 32
browserWSEndpoint: `${process.env.ICHABOD_WS_URL.replace(/\/$/, "").replace("wss://", `wss://api:${process.env.ICHABOD_API_KEY}@`)}/${engine[0]}`,
delegate-implementation/SKILL.md, line 156
const agent = new Agent({ apiKey: process.env.CURSOR_API_KEY!, model: "composer-2.5" });
domain-email-warming/scripts/provision-domain.py, line 27
TOKEN = os.environ.get("CLOUDFLARE_API_TOKEN")
domain-email-warming/scripts/reply-inbound.mjs, line 51
const env = process.env.WARM_DB_TOKEN
domain-email-warming/scripts/reply-inbound.mjs, line 52
? { ...process.env, CLOUDFLARE_API_TOKEN: process.env.WARM_DB_TOKEN }
live-site-security-sweep/SKILL.md, line 59
for p in .env .git/config .dev.vars wrangler.toml package.json; do
messaging-bot-onboarding-setup/SKILL.md, line 47
# ...edit .env.local, then:
messaging-bot-onboarding-setup/SKILL.md, line 140
SECRET=$(grep -E '^TELEGRAM_WEBHOOK_SECRET=' .env.local | cut -d= -f2-)
multi-account-cli/SKILL.md, line 238
cp ~/.config/gcloud/adc_personal.json ~/.config/gcloud/application_default_credentials.json
notion-integration/SKILL.md, line 53
cp .env.example .env # NOTION_CLIENT_ID / NOTION_CLIENT_SECRET / NOTION_REDIRECT_URI
.cursorignore, line 1
# Keep secrets and large/generated dirs out of agent context
.cursorignore, line 2
.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
paper-submission/assets/arxiv-skeleton/refs.bib, line 1
@misc{example2026,
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 055e67c7ec09. requests shell access. The manifest names this permission. can reach api.stripe.com. The description does not name that host. can reach api.searchads.apple.com. The description does not name that host. can reach ad.partner.gifshow.com. The description does not name that host. can reach a host that is not written as a fixed address. can reach www.stackadapt.com. The description does not name that host. can reach api.thetradedesk.com. The description does not name that host. can reach api.biz.weibo.com. The description does not name that host. can reach a reads a credential or environment file. the file cap was reached before every file was r
Date and source
Date checked:
github.com
Commit graded: 055e67c7ec0945d736a3ef711619bf367d9e14ab
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.