Skill Trust Decision

elevenlabs-toolkit

发现未声明的 Mistral API 集成(/api/story/chat),属于阴影功能(shadow feature),skill-card.md 已自行标记此风险。

Install decision first Source: ClawHub Scanned: 12 hr ago
Files 4
Artifacts 5
Violations 2
Findings 4
Most direct threat evidence
High Doc Mismatch
未声明的 Mistral API 集成(阴影功能)

/api/story/chat 端点存在且功能完整(106-140 行),但 SKILL.md capabilities 表中完全缺失。需要 MISTRAL_API_KEY 环境变量但未在 metadata.env 中声明。调用 mistral-large-latest 模型处理故事对话,SKILL.md 声称仅与 ElevenLabs 交互。

scripts/elevenlabs_api.py:106-140

Why this conclusion was reached

2/4 dimensions flagged
Block
Declared vs actual capability

2 undeclared or violating capabilities were inferred.

Review
Hidden execution and egress

5 lower-risk artifacts were extracted and still need context.

Block
Attack chain and severe findings

The report includes 0 attack-chain steps and 1 severe findings.

Pass
Dependencies and supply chain hygiene

Dependencies are present but no obvious high-risk issue stands out.

What drove the risk score up

阴影功能-未声明的 Mistral API 集成 +25

/api/story/chat 端点在代码中存在但 SKILL.md capabilities 表中未列出,需要 MISTRAL_API_KEY 但未在 metadata.env 中声明

未声明的网络目标 +10

SKILL.md 声明网络仅 outbound 到 api.elevenlabs.io,但代码额外调用 Mistral API (api.mistral.ai)

skill-card.md 自标记风险 +10

skill-card.md Known Risks 部分明确标注「under-disclosed Mistral story-chat data flow」,属于自我暴露的风险

Most important evidence

High Doc Mismatch

未声明的 Mistral API 集成(阴影功能)

/api/story/chat 端点存在且功能完整(106-140 行),但 SKILL.md capabilities 表中完全缺失。需要 MISTRAL_API_KEY 环境变量但未在 metadata.env 中声明。调用 mistral-large-latest 模型处理故事对话,SKILL.md 声称仅与 ElevenLabs 交互。

scripts/elevenlabs_api.py:106-140
如需保留此功能:在 SKILL.md metadata.env 中添加 MISTRAL_API_KEY;在 capabilities 表中添加 story/chat 端点;在 network.outbound.reason 中声明调用 Mistral API。否则删除该端点。
Medium Doc Mismatch

端点路径与文档不匹配

SKILL.md 声称 SFX 端点为 POST /api/voice/sfx,Music 端点为 POST /api/voice/music;但实际代码中 SFX 映射到 /api/audio/sfx,Music 映射到 /api/audio/lullaby。

scripts/elevenlabs_api.py:56,67
修正 SKILL.md 中的端点路径使其与代码一致,或修改代码路由以匹配文档。
Low Supply Chain

新增未声明的第三方依赖

/api/story/chat 使用 mistralai SDK,但 SKILL.md 和 skill-card.md 均未列出此依赖。依赖 mistralai 包在 requirements.txt 或其他依赖文件中缺失声明。

scripts/elevenlabs_api.py:107
如使用此功能:在依赖文件中添加 mistralai;如不使用:移除该 import 和端点。
Info Doc Mismatch

skill-card.md 自暴露风险

skill-card.md Known Risks 部分明确标注「The release includes an under-disclosed Mistral story-chat data flow」,表明发布者自身已认识到此问题但未在 SKILL.md 中修复。

skill-card.md:风险与缓解
修复底层问题而非仅在 skill-card.md 中警告。

Declared capability vs actual capability

Filesystem Pass
Declared NONE
→
Inferred NONE
无文件读写操作
Network Block
Declared READ (仅 outbound 到 api.elevenlabs.io)
→
Inferred WRITE (额外调用 Mistral API)
scripts/elevenlabs_api.py:117-128 调用 mistral-large-latest
Shell Pass
Declared NONE
→
Inferred NONE
无 shell 执行
Environment Block
Declared READ (ELEVENLABS_API_KEY)
→
Inferred READ (MISTRAL_API_KEY 未声明)
scripts/elevenlabs_api.py:114 读取 MISTRAL_API_KEY 但 metadata.env 仅声明 ELEVENLABS_API_KEY

Suspicious artifacts and egress

Medium External URL
https://api.elevenlabs.io/v1/voices

SKILL.md:89

Medium External URL
https://api.elevenlabs.io/v1/user/subscription

SKILL.md:227

Medium External URL
https://api.elevenlabs.io/v1

scripts/elevenlabs_api.py:13

Medium External URL
https://clawhub.ai/user/nissan

skill-card.md:9

Medium External URL
https://clawhub.ai/nissan/skills/elevenlabs-toolkit

skill-card.md:39

Dependencies and supply chain

PackageVersionSourceKnown vulnNotes
mistralai 未声明 import (需 pip install) No 未在 requirements.txt 等文件中声明;用于未文档化的 /api/story/chat 端点
httpx 未声明 import No 标准 HTTP 客户端,用于 ElevenLabs API 调用
websockets 未声明 import No 用于 WebSocket 流式 TTS

File composition

4 files · 514 lines
Markdown 2 files · 328 linesPython 1 files · 181 linesJSON 1 files · 5 lines
Files of concern · 3
SKILL.md Markdown · 267 lines
https://api.elevenlabs.io/v1/voices · https://api.elevenlabs.io/v1/user/subscription
scripts/elevenlabs_api.py Python · 181 lines
未声明的 Mistral API 集成(阴影功能) · 端点路径与文档不匹配 · 新增未声明的第三方依赖 · https://api.elevenlabs.io/v1
skill-card.md Markdown · 61 lines
skill-card.md 自暴露风险 · https://clawhub.ai/user/nissan · https://clawhub.ai/nissan/skills/elevenlabs-toolkit
Other files · _meta.json

Security positives

核心 ElevenLabs 功能(Voices、TTS、STT)与 SKILL.md 声明一致
无文件系统和 shell 操作,攻击面小
API 密钥仅通过环境变量读取,未外传
网络请求目标明确(api.elevenlabs.io + 隐含的 Mistral API)
无 base64 解码执行、eval、裸 IP 请求等高危模式
skill-card.md 有自我风险意识(但应修复而非仅标注)