T08 · Insecure Dependencies
- Location
SKILL.md:14- Finding
Unpinned npm Dependency Creates a Mutable Supply-Chain Risk
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This PRD-writing skill is coherent and locally scoped, with the main caution being an unpinned/global npm dependency for optional Word export.
Installers should know this is primarily a Chinese-language PRD template/generator. Use the Word export only with Markdown files you intend to convert, and prefer a local, pinned docx dependency instead of following the global npm install recommendation.
SKILL.md:14Unpinned npm Dependency Creates a Mutable Supply-Chain Risk
The declared description presents the skill primarily as a PRD generator in Markdown, with Word export as an optional secondary feature. The actual code chunk only implements the export/conversion portion: it accepts an input .md file path, parses Markdown elements (headings, tables, code blocks, lists, blockquotes, etc.), and writes a styled .docx file. There is no logic for drafting, structuring, or generating PRD content from a user request, nor any trigger-handling behavior matching phrases like “写PRD” or “产品需求文档.” While the optional .docx export aligns with part of the description, the primary declared purpose is materially broader and different from the actual behavior shown. Therefore this is a mismatch.
The manifest says to activate when the user 'wants to design/document a software feature/module/product,' which is much broader than explicit PRD-writing requests and overlaps with ordinary conversation about product ideas. It does not clearly distinguish when general design discussion should invoke the skill versus when it should not.
The listed triggers include '用户描述一个功能/模块/产品,需要结构化文档输出,' which is subjective and could match many normal requests for analysis or planning. The file does not provide negative examples or constraints clarifying when this should not activate.
The entire PRD template, including headings, status values, instructions, and checklist items, is written in Chinese and implicitly requires PRDs to be authored in that language. Under the policy, forcing a specific language without user opt-in or a documented regional/business justification is a natural-language policy violation.
The document explicitly requires '全文使用简体中文', which is a natural-language locale constraint. Under the policy, forcing a specific language without user opt-in or a clearly justified region-specific need is a violation.
The entire skill document is written in Chinese and does not indicate that users may choose another language or that the locale restriction is intentional and justified. Under SQP-3, natural-language policy violations include forcing a specific language without user opt-in.
This markdown file describes users entering custom questions into a Demo conversation and later defines analytics events tracking that interaction, but it does not warn that user inputs may be processed or logged. For markdown files, SQP-2 applies when behaviour affecting user data or privacy is described without a warning.
No suspicious patterns detected.