nextlevelbuilder / nextlevelbuilder/ui-ux-pro-max-skill
NLPM Automated Audit: 2 bugs + 3 security fixes (score 85/100)
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 129k
- Forks
- 13.7k
- Avg merge
- 23h 27m
- Merged PRs (30d)
- 23
Description
Automated audit: This issue was created by NLPM, a natural language programming linter, running via claude-code-action. All findings are provided in good faith — please evaluate them on their merits.
About This Audit
NLPM (Natural Language Programming Manager) scored this plugin's NL artifacts (skills, manifests, CLAUDE.md) on a 100-point scale and ran a security scan across executable surfaces (scripts, CLI source, package manifests).
Overall NL Score: 85/100 — well above the default 70-point threshold. This is a high-quality plugin with good structure and content depth.
Security: CLEAR — no Critical or High findings. Three Medium and two Low findings were found, three of which have straightforward code-level fixes.
Bugs Found (2)
Bug 1 — Priority: High
File: .claude/skills/slides/SKILL.md line 14
Issue: Raw template variable <args>$ARGUMENTS</args> left unsubstituted in the rendered skill body — a copy-paste artifact from a template generator. Renders as literal XML-like text visible to LLM consumers.
PR: #287
Bug 2 — Priority: Medium
File: .claude-plugin/plugin.json
Issue: Marketplace description claims "67 styles, 15 stacks" but the actual styles.csv has 84 entries and the description's own enumeration lists exactly 12 stacks (not 15). This sets incorrect expectations for users browsing the Claude marketplace.
PR: #282
Security Fixes Submitted (3 Medium)
Security Fix 1 — Medium
File: .claude/skills/brand/scripts/sync-brand-to-tokens.cjs line 253
Issue: execSync with a backtick template string. All variables are currently hardcoded constants, but the pattern is fragile — any future variable substitution with user input would create shell injection with no warning.
Fix: Replace with execFileSync('node', [...args]) to eliminate the shell-expansion surface.
PR: #283
Security Fix 2 — Medium
File: .claude/skills/ui-styling/scripts/shadcn_add.py line 101
Issue: npx shadcn@latest add silently downloads whatever npm publishes as latest on each run. No version pinning means each invocation may install a different (unverified) package.
Fix: Add a helper that reads the pinned version from the project's package.json, falling back to a documented default.
PR: #284
Security Fix 3 — Medium
File: cli/src/utils/github.ts line 72
Issue: downloadRelease() fetches a ZIP from GitHub releases and writes it to disk with no integrity check. A compromised release asset would be silently installed into user projects.
Fix: Add opt-in SHA-256 verification via a companion .sha256 asset; backward-compatible (no behavior change until a checksum file is uploaded to releases).
PR: #288
Informational (Not Submitted as PRs)
These are quality observations, not bugs. Sharing for awareness:
ui-ux-pro-max/SKILL.mdusesname: ui-ux-pro-maxwithout theckm:namespace prefix used by all other skills in this pluginui-ux-pro-max/SKILL.mdStep 1 contains "React Native (this project's only tech stack)" — a project-scoped note accidentally left in a published generic skillbanner-design/SKILL.mdanddesign/SKILL.mdreference external skills (ai-artist,ai-multimodal,chrome-devtools, etc.) that are not bundled in this plugin
Thank you for maintaining this plugin — the design intelligence database is genuinely well-built and the skill content quality is strong. These findings are all minor rough edges on an otherwise excellent project.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Review the cited files and existing PRs #282, #283, #284, #287, and #288, starting with the audit findings in this issue. Done means each reported bug or security concern has been evaluated and the corresponding change is merged or otherwise resolved, with the marketplace metadata and affected scripts, skill, and CLI behavior verified.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- github, javascript, node.js, python, typescript
- Domain
- cli, documentation, security, tooling
- Issue type
- Bug
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Clearly specified
- Newbie friendliness
- 15/100