T09 · Insecure Skill Coding Practices
- Location
references/config.md:13- Finding
Plaintext API Key Disclosure Through Configuration Inspection Command
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
The skill is coherent for querying Lingxi recordings, but it handles live API credentials and private recording data with unsafe secret-display guidance and incomplete privacy controls.
Review before installing. Use this only with a Lingxi API key you are willing to grant access to recording metadata, audio URLs, transcripts, and analysis. Do not print the API key in terminal or chat; use masked checks, restrict file permissions on the OpenClaw config, and rotate any key that has already been exposed.
references/config.md:13Plaintext API Key Disclosure Through Configuration Inspection Command
The skill claims support for /lyk detail <id> and '查看指定ID录音的完整详情', but the API route table and Python examples only define two list-query endpoints with no detail endpoint or detail-fetch logic. This is not merely incomplete phrasing; the routing documentation promises a capability that the implementation instructions do not provide.
该 markdown 文件适用 SQP-1。L033 将“配置”单独作为路由到 /lyk config 的触发词,这个词在普通对话中非常常见,且未限制必须与“灵犀”或 API 配置相关,容易在无意中触发该技能。文档虽列出部分示例,但没有给出排除条件或更严格的触发范围。
The documentation explicitly instructs users to reveal and edit the API key in a local config file using shell commands, but provides no warning about shoulder-surfing, shell history, terminal logging, file permissions, or least-privilege handling. This increases the risk of credential exposure because the skill handles a live API secret and normalizes insecure viewing and manual storage practices.
The activation examples "配置灵犀" and especially "连接灵犀" are natural-language phrases that may occur in ordinary conversation, but the document does not define when they should or should not invoke this skill. There are no negative examples, context limits, or explicit trigger boundaries to prevent unintended activation.
The documented API returns highly sensitive recording artifacts, including public audio URLs, transcripts, summaries, speaker mappings, emotions, and meeting analysis, yet the skill documentation provides no privacy warning, access-control guidance, or data-handling constraints. In this context, the omission is security-relevant because users may retrieve and expose personal, commercial, or regulated conversation data without understanding the sensitivity or downstream sharing risk.
SQP-3 适用于所有文件类型。该文件中的触发示例、路由说明和决策原则均以中文固定表述为主,未说明是否支持其他语言或允许用户选择语言/locale,存在语言策略上的潜在限制。没有看到明确的用户 opt-in 或地区合规性说明来证明这种单一语言约束是必要的。
The document first states the full URL must use a path with double /api segments, but later in the implementation section it says the full URL uses only one /api. This is an active contradiction in the skill's own instructions and can cause the agent to call a different endpoint than intended.
The file uses Chinese-only instructions and specifies Chinese trigger phrases, which can amount to a language policy constraint if users are not given an opt-in or alternative locale. The document does not state that the skill is region-specific or otherwise justify limiting usage to Chinese-language interaction.
SQP-3 applies to all file types and includes language or locale policy violations. This file presents all instructions, labels, and notes exclusively in Chinese, with no indication that the user can choose another language or that the skill is intentionally restricted to a Chinese-speaking context.
No suspicious patterns detected.