T08 · Insecure Dependencies
- Location
deck-studio/README.md:49- Finding
Unpinned Remote Skill Installation Creates a Supply-Chain Risk
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This design skill is not clearly malicious, but it needs review because it overstates bundled resources and includes mutable install and remote-code guidance.
Install only from a reviewed, immutable package or commit, and avoid following the unpinned npx command as written. Expect this skill to create and edit local visual artifacts and to use network access for brand assets; review generated HTML before opening or sharing it if it includes CDN scripts or Claude/browser integrations.
deck-studio/README.md:49Unpinned Remote Skill Installation Creates a Supply-Chain Risk
references/technical-specs.md:24Generated Artifacts May Execute Remote Animation Code Without Integrity Verification
The skill is instructed to activate for an extremely broad class of requests, including vague asks, and to prefer itself over generic tools. That kind of aggressive routing can cause the agent to over-invoke the skill outside its safest/intended scope, increasing the chance of prompt hijacking, misrouting, or bypass of more appropriate specialized controls.
Referenced artifact was not completely inspected
The current `SKILL.md` directory is `<skill-base>` (i.e. `XDesign/`). Every bundled resource (`references/`, `assets/`, `deck-studio/`, `scripts/`, `evals/`) re
Tool calls are chained to bypass individual safety checks or escalate capabilities beyond what any single tool call would allow.
> (27 个 CSS + 20 个 Canvas FX),加上全新的 **演讲者模式** —— 像素级
> 完美预览 + 逐字稿提词器 + 计时器。纯静态 HTML/CSS/JS,无需构建。
**作者:** lewis <sudolewis@gmail.com>
**协议:** MIT
**English docs:** [README.md](README.md)
Tool calls are chained to bypass individual safety checks or escalate capabilities beyond what any single tool call would allow.
> (27 个 CSS + 20 个 Canvas FX),加上全新的 **演讲者模式** —— 像素级
> 完美预览 + 逐字稿提词器 + 计时器。纯静态 HTML/CSS/JS,无需构建。
**作者:** lewis <sudolewis@gmail.com>
**协议:** MIT
**English docs:** [README.md](README.md)
Tool calls are chained to bypass individual safety checks or escalate capabilities beyond what any single tool call would allow.
> (27 个 CSS + 20 个 Canvas FX),加上全新的 **演讲者模式** —— 像素级
> 完美预览 + 逐字稿提词器 + 计时器。纯静态 HTML/CSS/JS,无需构建。
**作者:** lewis <sudolewis@gmail.com>
**协议:** MIT
**English docs:** [README.md](README.md)
Tool calls are chained to bypass individual safety checks or escalate capabilities beyond what any single tool call would allow.
> (27 个 CSS + 20 个 Canvas FX),加上全新的 **演讲者模式** —— 像素级
> 完美预览 + 逐字稿提词器 + 计时器。纯静态 HTML/CSS/JS,无需构建。
**作者:** lewis <sudolewis@gmail.com>
**协议:** MIT
**English docs:** [README.md](README.md)
Tool calls are chained to bypass individual safety checks or escalate capabilities beyond what any single tool call would allow.
> (27 个 CSS + 20 个 Canvas FX),加上全新的 **演讲者模式** —— 像素级
> 完美预览 + 逐字稿提词器 + 计时器。纯静态 HTML/CSS/JS,无需构建。
**作者:** lewis <sudolewis@gmail.com>
**协议:** MIT
**English docs:** [README.md](README.md)
Hidden instructions were detected in comments or invisible text. These could contain malicious directives. Manual review is recommended.
</aside>
</section>
<!-- 更多 slide ... -->
</div>
<script src="../../../assets/runtime.js"></script>
Hidden instructions were detected in comments or invisible text. These could contain malicious directives. Manual review is recommended.
</aside>
</section>
<!-- 更多 slide ... -->
</div>
<script src="../../../assets/runtime.js"></script>
Hidden instructions were detected in comments or invisible text. These could contain malicious directives. Manual review is recommended.
Hidden instructions were detected in comments or invisible text. These could contain malicious directives. Manual review is recommended.
Hidden instructions were detected in comments or invisible text. These could contain malicious directives. Manual review is recommended.
XDesign 的 references/ 引用 assets/,但 deck-studio 把资源放在自己的 deck-studio/assets/。绝对不要在 XDesign 的根目录里复制 assets——双份资源会导致主题/动画版本不一致。
<!-- 错误:在 XDesign 根目录放主题 -->
<link rel="stylesheet" href="assets/themes/aurora.css">
<!-- 正确:从 deck-studio 子目录引用 -->
Hidden instructions were detected in comments or invisible text. These could contain malicious directives. Manual review is recommended.
XDesign 的 references/ 引用 assets/,但 deck-studio 把资源放在自己的 deck-studio/assets/。绝对不要在 XDesign 的根目录里复制 assets——双份资源会导致主题/动画版本不一致。
<!-- 错误:在 XDesign 根目录放主题 -->
<link rel="stylesheet" href="assets/themes/aurora.css">
<!-- 正确:从 deck-studio 子目录引用 -->
Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).
# 1. 删除旧的(保留自定义 examples)
rm -rf deck-studio/assets deck-studio/templates deck-studio/references
rm deck-studio/SKILL.md deck-studio/README.md deck-studio/LICENSE
# 2. 重新克隆 / 下载
# (参见 tasks 目录下的 history)
Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).
# 1. 删除旧的(保留自定义 examples)
rm -rf deck-studio/assets deck-studio/templates deck-studio/references
rm deck-studio/SKILL.md deck-studio/README.md deck-studio/LICENSE
# 2. 重新克隆 / 下载
# (参见 tasks 目录下的 history)
Skill instructs the agent to omit warnings, disclaimers, or ethical commentary. Stripping safety caveats hides risk from the user and is a common jailbreak preamble.
1. **Acknowledge** the rule exists and why: "The convention is to avoid purple gradients because they've become an AI tell, but since you're asking for it..."
2. **Ask once** if they're genuinely aware: "Just confirming — you want this despite it reading as default AI style?"
3. **Honor the request** if they confirm. Document the override in the HTML reasoning block.
4. **Move on**. Don't lecture, don't warn a second time.
**The only non-negotiable exceptions** — these are safety/accessibility hard requirements, not style preferences:
- Color contrast ratios (WCAG AA)
Hidden instructions were detected in comments or invisible text. These could contain malicious directives. Manual review is recommended.
<!--
DESIGN REASONING
================
Target audience: [who sees this]
The markdown instructs the agent to tell the user a fixed Chinese sentence when structured data is detected. This imposes a language choice without user opt-in and may conflict with language or locale policies for users operating in other languages.
The manifest says the skill should not be used for "resume review" or non-visual text tasks, establishing a clear scope boundary. However, the routing table introduces a broad Review Mode for auditing arbitrary HTML and uses generic review triggers such as "review" and "audit," which can justify using the skill for review-style requests despite the manifest's prohibition on resume review.
Review Mode uses broad triggers such as 'review', 'audit this', and 'polish pass', which overlap with many general-purpose user requests. In an agent setting, ambiguous triggers can unexpectedly capture unrelated tasks, causing the skill to take over flows it was not meant to handle and potentially suppress safer task-specific behavior.
The fallback behavior maps vague requests directly into concrete modes instead of requiring strong confirmation in all ambiguous cases. This can let underspecified user input steer the agent into generating substantial outputs under the wrong mode, which is a prompt-scope problem that can be abused to trigger unintended capabilities or degrade reliability safeguards.
The invocation examples are very broad and encourage the agent to use this skill for many loosely defined visual-design requests without clear trigger boundaries or safety exclusions in the README. In an agentic environment, overbroad routing can cause the skill to activate unexpectedly, increasing the chance of inappropriate tool use, unintended content transformation, or chaining into other risky capabilities.
The description says to use the skill when the user asks for a presentation, deck, slideshow, or 'any kind of multi-slide pitch/report/sharing document,' and lists many common terms like 'presentation' and 'slides'. This is broad enough to overlap with ordinary requests and does not provide negative examples or constraints clarifying when the skill should not activate.
npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.
npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.
No suspicious patterns detected.