Skills/ClawHub/shopify-blog-seo-optimizer

shopify-blog-seo-optimizer@1.0.1

CAUTION· install only

Publisher claims: "Audit Shopify articles, research E-E-A-T gaps, and preview approved HTML improvements" Observed in sandbox: no network, touches nothing outside the project, writes no memory.

Registry ClawHubPublisher lvsao · publishing for 118 daysInstalls 676Last detonated 33 h ago

Coverage

Nothing executable in the bundle ran; the trace covers the install step only.
Tested
every file read, file written and host contacted by what ran
Not tested
use of the skill by an agent

Is [email protected] safe to install?

KillerSkills ran it in the KillerSkills honeypot sandbox (1 scenario; nothing executable in the bundle ran; the trace covers the install step only) on 2026-11-10 and scored it 73/100 (Caution). It is not known to be malicious, but it has behaviour or code a security policy should decide on before install. Notable findings: Access to sensitive file paths; HTML comment carrying imperative instructions to the agent; Credential pass-through configuration. Summary: no network, touches nothing outside the project, writes no memory.

Behavior trace

Honeypot run · 0 s · 1 scenarios · 0 deviations
t+CategoryObserved action
0.0sprocessno install scripts in bundle
0.0sprocessscript backend runs setup only
0.0sprocessscript backend runs setup only
0.0sprocessno install scripts to re-run

Static findings

MEDIUM
File type combined with upload actionscripts/shopify-blog-seo-admin.mjs:22 · File type combined with upload action — agent may exfiltrate local data filesnode shopify-blog-seo-admin.mjs report --input audit-plan.json --output report.htmlFix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.
AST07
MEDIUM
File type combined with upload actionscripts/shopify-blog-seo-admin.mjs:376 · File type combined with upload action — agent may exfiltrate local data filesconsole.log(JSON.stringify({ ok: true, output: path.resolve(output), previewMode: plan.preview?.mode || "theme-like-fallback", approvalRequired: true }, null, 2));Fix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.
AST07
HIGH
Access to sensitive file pathsscripts/lib/shopify-dev-dashboard-auth.mjs:44 · Access to sensitive file paths — SSH keys, AWS credentials, env files, or system filesreturn { ...env, SHOPIFY_STORE_DOMAIN: domain, SHOPIFY_API_VERSION: "2026-04" };Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.
AST05
MEDIUM
Access to sensitive file pathstests/test-shopify-blog-seo-optimizer.mjs:17 · Access to sensitive file paths — SSH keys, AWS credentials, env files, or system filesassert.throws(() => validatePublicUrl("file:///etc/passwd"), /Only HTTP and HTTPS/);Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.
AST05
CRITICAL
HTML comment carrying imperative instructions to the agentreferences/onboarding-guide.md:1 · HTML comment carrying imperative instructions to the agentGENERATED FILE: edit shared/shopify-admin-onboarding/core.md or manifest.json, then run node scripts/sync-onboarding.mjs --write.Fix: Keep SKILL.md to visible, descriptive text. Remove comments and encoded text that address the agent.
AST01
LOW
Authorization escalation languagereferences/onboarding-guide.md:9 · Authorization escalation language · informational: not an instruction fileThis skill needs Admin access; a public Article URL is only a locator, not an authorization path.Fix: Remove the text that addresses the agent rather than the reader; describe behavior, do not instruct.
AST01
MEDIUM
npx invocation of non-well-known packagescripts/shopify-blog-seo-admin.mjs:333 · npx invocation of non-well-known package — may execute untrusted codeinstall: "npx skills add lvsao/shopify-skill-hub --skill shopify-blog-seo-optimizer",Fix: Pin versions and sources; vendor anything fetched at install time.
AST06
MEDIUM
File type combined with upload actionscripts/shopify-blog-seo-admin.mjs:401 · File type combined with upload action — agent may exfiltrate local data files… combined report before asking for approval." }; if (output === "-") console.log(JSON.stringify(value, null, 2)); else { await writeJson(output, value); console.log(JSON.stringify({ ok: true, output: path.resolve(output), articleId: result…Fix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.
AST07
MEDIUM
File type combined with upload actionscripts/shopify-blog-seo-admin.mjs:21 · File type combined with upload action — agent may exfiltrate local data filesnode shopify-blog-seo-admin.mjs report --audit audit.json --candidate candidate.json --output report.htmlFix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.
AST07
MEDIUM
File type combined with upload actionSKILL.md:157 · File type combined with upload action — agent may exfiltrate local data filesnode <absolute-path-to-skill>/scripts/shopify-blog-seo-admin.mjs report --audit audit.json --candidate candidate.json --output shopify-blog-seo-report.htmlFix: Remove the call, or declare the host in frontmatter and explain in the README what is sent and why.
AST07
MEDIUM
URL with embedded credentialstests/test-shopify-blog-seo-optimizer.mjs:18 · URL with embedded credentials — may be phishing or credential leakingassert.throws(() => validatePublicUrl("https://user:[email protected]/article"), /Credential-bearing/);Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.
AST07
HIGH
Credential pass-through configurationSKILL.md:91 · Credential pass-through configuration — agent relays sensitive credentials- `407`: fix proxy credentials in the runtime secret store; never paste them in chat.Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.
AST02
MEDIUM
npx invocation of non-well-known packageSKILL.md:103 · npx invocation of non-well-known package — may execute untrusted codenpx skills add lvsao/shopify-skill-hub --skill shopify-blog-seo-optimizerFix: Pin versions and sources; vendor anything fetched at install time.
AST06

Cost to the agent

Instructions loaded
≈3,110 tok
1 file · 12 in bundle

Tokens estimated at four characters each. Skills load their instruction text when triggered; the figure is what that costs.

Known vulnerabilities

Vulnerability advisories (OSV) cover npm and PyPI packages; this registry has no advisory database.

What would make this Verified

7 points to 80 · weights: behavior 45%, static 25%, prompt 15%, publisher 15%
  1. Unclaimed publisher≈ +8 on the totalClaim lvsao: a verified publisher gets +50 on publisher trust. It is free and usually instant with GitHub sign-in.
  2. Hidden instructions≈ +6 on the totalRemove HTML comments, zero-width characters and white-on-white text that carry instructions. Everything the agent is meant to read should be visible to the person reading the file.
  3. Access to sensitive file paths≈ +4 on the totalStop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.
  4. Credential pass-through configuration≈ +4 on the totalStop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.
  5. File type combined with upload action≈ +2 on the totalRemove the call, or declare the host in frontmatter and explain in the README what is sent and why.
  6. npx invocation of non-well-known package≈ +2 on the totalPin versions and sources; vendor anything fetched at install time.
Publish a new version to ClawHub, then queue it here. Not your skill? Claim the handle to get verdict changes by email.Claim lvsaoPropose a patch to the maintainer
shopify-blog-seo-optimizer@1.0.1 safety verdict: Caution (install only) — KillerSkills