T08 · Insecure Dependencies
- Location
requirements.txt:1- Finding
Unpinned and Unnecessary Third-Party Dependencies
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
The package is not malware, but it needs Review because it labels itself as academic writing while generating persuasive patient-facing medication reminders with unsupported medical claims.
Install only after the publisher narrows the description and activation guidance to medication reminder drafting, removes unsupported statistics and categorical dosing claims, and adds clear requirements for clinician/human review before any patient-facing use. Use an isolated environment and avoid installing the unnecessary unpinned dependencies.
requirements.txt:1Unpinned and Unnecessary Third-Party Dependencies
scripts/main.py:213Unsupported Medical Claims in Patient-Facing Reminder Messages
The skill metadata and top-level description present the tool as suitable for academic writing workflows, while the body of the skill clearly implements patient-facing medication reminder generation using behavioral persuasion techniques. This mismatch can cause improper invocation, bypass expected review boundaries, and lead users or agents to apply a health-influencing tool in contexts where medical, safety, or compliance review would otherwise be required.
YARA rule matched a hack tool or exploit indicator (offensive tools, reconnaissance, privilege escalation, or exploit frameworks).
],
Tone.URGENT: [
"[Execute immediately] {greeting}{time_prompt} Immediately execute your medication plan! If {time}, then {action} must be performed immediately!",
]
},
Principle.REWARD: {
Tone.GENTLE: [
"[{medication} reminder] {greeting}{time_prompt} please {action}. After taking the medicine, you can drink a cup of tea of your choice. This is a reward for being responsible for yourself.",
"[Health Reward] {greeting} Complete today's medication, and you will be one step closer to recovery! {time_prompt} Please {action} to give yourself a affirmation.",
"[Small luck] {greeting}{time_prompt} please {action}. Give yourself a small reward when you're done, you deserve it!"
],
Tone.FIRM: [
"【Instant Feedback】{greeting}{time_prompt} please {action}. Every pill is the fuel for your body’s recovery, so you can realize this health immediately!",
The manifest and introductory sections describe two contradictory purposes: academic writing workflow support and generation of medication adherence reminders. Contradictory documentation is dangerous because downstream systems, reviewers, or orchestration logic may classify the skill incorrectly, reducing scrutiny for health-related persuasive content and increasing the chance of unsafe deployment.
The activation guidance is broad and inconsistent, encouraging use for generic academic-writing tasks even though the implemented capability is specialized generation of patient medication reminders. Over-broad trigger conditions increase the chance that an agent selects this skill in inappropriate contexts, exposing users to manipulative health messaging or outputs outside intended governance.
The skill generates patient-facing health-related reminder messages and explicitly uses behavioral persuasion methods, but it does not prominently warn users about the health, ethical, and compliance implications of such content. Without clear warning and limitations, users may treat the output as routine copy generation rather than sensitive health communication that may require clinical, legal, or policy review.
This JSON audit/result file includes natural-language skill-use labels such as "Use medication adherence message gen for academic writing workflows..." that read like activation guidance, but they do not define clear trigger phrases, exclusions, or invocation boundaries. In a manifest/config-like file, this kind of broad wording can overlap with ordinary requests about academic writing and create ambiguity about when the skill should or should not be invoked.
The label says "Use this skill for academic writing tasks that require explicit assumptions, bounded scope, and a reproducible output format," which is still a wide class of common tasks rather than a specific trigger. Because the file is JSON and SQP-1 applies to manifest-style files, this broad phrasing qualifies as a vague activation description without explicit constraints or exclusions.
The generator defaults the language parameter to Language.ZH, which means users receive Chinese content unless they explicitly override it. This is a natural-language locale policy concern because the skill imposes a specific language by default rather than first obtaining the user's language preference.
The command-line interface sets --language to zh by default, causing the tool to generate Chinese reminders even when no language preference was provided. Forcing a locale in user-facing text without opt-in matches the policy's language/locale violation criteria.
Dependencies lack version pinning, allowing potential malicious package updates. Consider pinning versions.
dataclasses
enum
Dependencies lack version pinning, allowing potential malicious package updates. Consider pinning versions.
dataclasses
enum
No suspicious patterns detected.