Back to skill

Security audit

Time Management

Security checks for vulnerabilities and agentic risk

Overview

This time-management skill is useful and local-only, but it can quietly store personal scheduling preferences and commitments without clear consent.

Install only if you are comfortable with a local planning profile under ~/time-management/. Before using it, ask the agent not to save details unless you explicitly approve, and periodically review or delete memory.md and weekly-review.md if they contain sensitive commitments or work patterns.

Vulnerability Patterns
  • Insecure Skill Coding PracticesFinds exploitable flaws such as hardcoded secrets or command injection
  • Skill Instruction HijackingAlters the agent's session goals or safety constraints when the skill loads
  • Agent Memory PoisoningWrites attacker-controlled rules into memory that affect later sessions
  • Remote Payload Retrieval and ExecutionFetches external code whose behavior can change after review
  • Embedded Malicious CodeShips malicious scripts inside the skill and executes them locally
Findings (1)

T09 · Insecure Skill Coding Practices

Warning
Location
setup.md:13
Finding
Undisclosed Persistent Storage of User Preferences and Commitments<![CDATA[ ## Vulnerability Details **File Location**: `SKILL.md:10-12, 18-26, 79-86, 119-131`; `setup.md:13-19, 49-55`; `memory-template.md:54-59` **Vulnerability Type**: Undisclosed persistent profiling and inconsistent consent enforcement **Risk Level**: Medium ### Vulnerable Code Snippets `SKILL.md:10-12`: ```markdown ## Setup On first use, read `setup.md` silently and start the conversation naturally. Never mention "setup" or file names to the user. ``` `SKILL.md:18-26`: ```markdown ## Architecture Memory lives in `~/time-management/`. See `memory-template.md` for structure. ``` ~/time-management/ ├── memory.md # Preferences + current commitments ├── weekly-review.md # Last review notes └── templates/ # User's custom templates ``` ``` `SKILL.md:79-86`: ```markdown ### 4. Weekly Review Habit Suggest weekly review on Sunday evening or Monday morning: 1. What worked last week? 2. What didn't? 3. Top 3 priorities for this week 4. Any time blocks to protect? Store notes in `~/time-management/weekly-review.md`. ``` `SKILL.md:119-131`: ```markdown ## Scope This skill ONLY: - Provides time management advice when asked - Helps plan days and weeks - Stores preferences user explicitly provides - Reads included reference files This skill NEVER: - Accesses calendar, email, or any external service - Tracks or monitors user activity - Makes network requests - Modifies files without explicit user request ``` `setup.md:13-19`: ```markdown ### 1. First: Integration (within first 2-3 exchanges) Ask how they want this skill to activate: - "Should I help with time planning whenever you mention your schedule or tasks?" - "Want me to check in about your day proactively, or only when you ask?" Save their preference in `~/time-management/memory.md` under the integration field. ``` `setup.md:49-55`: ```markdown ## What You're Saving (internally) In `~/time-management/memory.md`: - Peak energy hours - Meeting constraints - Planning preferences ...[truncated 3349 chars]
Remediation
<![CDATA[ ## Remediation Suggestions 1. **Require explicit opt-in before persistence** - Ask whether the user wants information retained across sessions before creating either local data file. - Treat answering a planning question as consent for current-session use only, not as authorization to save the answer. 2. **Disclose the storage behavior** - Explain that selected information will be stored under `~/time-management/`. - Identify the categories of information to be stored and the reason for storing them. - Do not conceal persistence behind a requirement to avoid mentioning setup or file names. 3. **Separate conversation data from saved data** - Only persist fields the user specifically selects. - Remove the instruction to save “any commitments they mention.” - Use a confirmation such as: “Would you like me to save this commitment for future planning?” 4. **Enforce consent for file updates** - Before initial file creation, obtain explicit authorization. - Define whether the initial authorization permits later updates. - If it does not, request confirmation before subsequent writes, including weekly-review updates. 5. **Minimize retained information** - Store only information necessary for the requested functionality. - Avoid free-form conversational notes where structured, narrowly scoped fields are sufficient. - Do not infer or retain sensitive preferences from unrelated conversation content. 6. **Provide retention and deletion controls** - Allow users to review, correct, export, pause, or delete stored information. - Define a retention period or periodically request confirmation that the profile should remain stored. - Ensure that pausing memory prevents all automatic updates. 7. **Align documentation with behavior** - Either enforce the promise that no files are modified without an explicit request or revise the workflow to obtain that request. - Add clear failure handling so the agent does not ...[truncated 299 chars]
Vulnerability Patterns
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (7)

Autonomous Decision Making

Medium
Category
Excessive Agency
Content
**This skill does NOT:**
- Access any external service
- Track your behavior
- Infer preferences without asking

## Related Skills
Install with `clawhub install <slug>` if user confirms:
Confidence
75% confidence
Finding
Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.

Vague Triggers

Medium
Confidence
94% confidence
Finding
The setup text tells the assistant to 'start helping naturally' when the directory is missing, but it does not define a clear user-triggered activation boundary. That can cause the skill to engage in ordinary conversation without explicit intent, increasing the chance of unexpected behavior and unanticipated collection or use of personal scheduling details.

Vague Triggers

Medium
Confidence
95% confidence
Finding
The proposed activation condition includes common language about 'schedule or tasks,' which appears frequently in normal conversation. This overlap makes accidental invocation likely, especially because the skill also asks whether it should activate proactively, creating a broad trigger surface for an assistant to steer conversations and gather details unexpectedly.

Missing User Warnings

Medium
Confidence
97% confidence
Finding
The skill instructs the assistant to save the user's activation preference to a local memory file, but it does not require notifying the user that data will be stored. Silent persistence undermines informed consent and can surprise users who do not expect local retention of behavioral preferences.

Missing User Warnings

Medium
Confidence
98% confidence
Finding
The skill lists several categories of personal information to store, including energy patterns, meeting constraints, planning preferences, and commitments, without a user-facing storage warning. These details can reveal routines, obligations, and work habits, so storing them silently creates privacy and trust risks even if the data is only kept locally.

Ssd 3

Medium
Confidence
94% confidence
Finding
The memory section directs persistence of multiple personal details and 'any commitments they mention,' which is broader than necessary for basic time-management assistance. Without minimization limits, consent, or scoping, the assistant may accumulate sensitive personal or work-related information over time, increasing privacy exposure and the consequences of unintended access.

Missing User Warnings

Low
Confidence
85% confidence
Finding
This markdown file directs the skill to create `~/time-management/memory.md`, which affects user data on disk. The description does not include any user-facing warning that the skill will store persistent information locally or modify that file over time.

Static analysis

No suspicious patterns detected.