T09 · Insecure Skill Coding Practices
- Location
SKILL.md:145- Finding
Access Token Exposed Through Plaintext Configuration and Command-Line Arguments
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This skill appears to be an interior-design helper, but it asks users to handle an account token insecurely and run missing local scripts, so it needs review before use.
Review this before installing or using it. Do not put a real Kujiale access token in a project-root .kjlconfig.json or pass it on the command line; prefer an environment variable or secret manager. Because the referenced scripts are missing, do not download replacement scripts from an unauthenticated source or run files placed under ./scripts unless you have reviewed their origin and contents.
SKILL.md:145Access Token Exposed Through Plaintext Configuration and Command-Line Arguments
SKILL.md:222Unpinned Third-Party Dependency Installation
SKILL.md:84Documented Workflow Invokes Scripts Missing From the Distributed Project
The description says to use the skill for '需要设计创作、UI设计、海报制作、品牌视觉' even though the document otherwise describes an interior-design tool. These broad creative triggers overlap with common design requests and are not constrained by explicit activation boundaries or negative examples for those domains.
The manifest description says the skill should be used for 'UI设计、海报制作、品牌视觉', but the rest of the file consistently documents only Kujiale interior-design flows such as floorplan search, style selection, layout, and rendering. This is a semantic mismatch between claimed purpose and actual behavior, which appears limited to home/interior design operations.
The description explicitly says '支持中文交互', presenting a language constraint in the primary skill metadata. There is no accompanying opt-in, alternative language support, or clear justification that the skill must operate only in Chinese for compliance or regional reasons.
The trigger section states '需要设计创作、UI设计、海报制作、品牌视觉时使用', which is broad everyday language and does not define when the skill should or should not activate beyond a generic exclusion. This can cause accidental matching for many unrelated creative requests.
The skill explicitly tells users to create a local configuration file containing an access token and does not present a prominent warning at the point of setup. In an agent/tooling context with read/write/exec capabilities, plaintext credentials in project files are at elevated risk of accidental disclosure through source control, filesystem reads, debugging output, or later automation steps.
The natural-language feature note highlights '中文交互' as a core capability, reinforcing a single-language expectation. Because no alternative language choice or opt-in is described nearby, this may conflict with language/locale neutrality expectations.
The setup flow instructs users to store an access token in a local JSON file, while the security section recommends environment variables instead. This contradiction increases the chance that users will persist secrets in plaintext files that may be committed, shared, or exposed through tooling, logs, or workspace access.
No suspicious patterns detected.