T06 · System Persistence
- Location
references/smart-features.md:54- Finding
Persistent scheduled jobs autonomously browse and send messages without contemporaneous approval
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
The skill is a coherent date-night booking assistant, but it includes overbroad private-message access, sensitive local storage, and future automated messaging jobs that need user review.
Install only if you are comfortable granting this skill access to booking sites, local contact/location preferences, messaging connectors, calendar tools, and limited SMS/iMessage data. Before use, remove broad SMS-history fallbacks, require approval at delivery time for all scheduled messages, pin dependencies, and protect stored config and browser session files with restrictive permissions.
references/smart-features.md:54Persistent scheduled jobs autonomously browse and send messages without contemporaneous approval
references/sms-codes.md:42Broad SMS-history fallbacks can disclose unrelated messages and authentication codes
references/resy-flow.md:106Sensitive PII and reusable browser authentication state are saved without restrictive permissions
references/smart-features.md:193User-controlled values are interpolated directly into executable Python source
references/sms-codes.md:35Predictable shared temporary file enables symlink and race-condition attacks
SKILL.md:37Mutable latest-version package installation creates supply-chain execution risk
references/pre-evening.md:90User location and itinerary details are transmitted to additional third-party services without sufficiently specific disclosure
Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).
**Partner notifications:** Notifications are always **drafted and shown to the user for approval** before sending. The skill never sends messages autonomously. The messaging channel (iMessage/Telegram/Discord/Signal) is whatever the user configures in their OpenClaw instance — no additional credentials are stored by this skill.
**Auth state persistence:** The Resy flow optionally saves browser session state to `~/.openclaw/skills/date-night/state/resy-auth.json` to avoid re-login. This file contains session cookies. To clear: `rm -rf ~/.openclaw/skills/date-night/state/`. The skill **never asks for or stores site passwords** — it uses interactive browser login and saves only the resulting session cookies with user consent.
### Data Persistence
Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).
**Partner notifications:** Notifications are always **drafted and shown to the user for approval** before sending. The skill never sends messages autonomously. The messaging channel (iMessage/Telegram/Discord/Signal) is whatever the user configures in their OpenClaw instance — no additional credentials are stored by this skill.
**Auth state persistence:** The Resy flow optionally saves browser session state to `~/.openclaw/skills/date-night/state/resy-auth.json` to avoid re-login. This file contains session cookies. To clear: `rm -rf ~/.openclaw/skills/date-night/state/`. The skill **never asks for or stores site passwords** — it uses interactive browser login and saves only the resulting session cookies with user consent.
### Data Persistence
Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).
**Partner notifications:** Notifications are always **drafted and shown to the user for approval** before sending. The skill never sends messages autonomously. The messaging channel (iMessage/Telegram/Discord/Signal) is whatever the user configures in their OpenClaw instance — no additional credentials are stored by this skill.
**Auth state persistence:** The Resy flow optionally saves browser session state to `~/.openclaw/skills/date-night/state/resy-auth.json` to avoid re-login. This file contains session cookies. To clear: `rm -rf ~/.openclaw/skills/date-night/state/`. The skill **never asks for or stores site passwords** — it uses interactive browser login and saves only the resulting session cookies with user consent.
### Data Persistence
Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).
**Partner notifications:** Notifications are always **drafted and shown to the user for approval** before sending. The skill never sends messages autonomously. The messaging channel (iMessage/Telegram/Discord/Signal) is whatever the user configures in their OpenClaw instance — no additional credentials are stored by this skill.
**Auth state persistence:** The Resy flow optionally saves browser session state to `~/.openclaw/skills/date-night/state/resy-auth.json` to avoid re-login. This file contains session cookies. To clear: `rm -rf ~/.openclaw/skills/date-night/state/`. The skill **never asks for or stores site passwords** — it uses interactive browser login and saves only the resulting session cookies with user consent.
### Data Persistence
Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).
| ~/.openclaw/skills/date-night/history.jsonl | Date night log (restaurant, date, rating) | Low |
| ~/.openclaw/skills/date-night/state/*.json | Browser session cookies (Resy only, opt-in) | Yes — auth tokens |
To purge all skill data: rm -rf ~/.openclaw/skills/date-night/
Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).
| ~/.openclaw/skills/date-night/history.jsonl | Date night log (restaurant, date, rating) | Low |
| ~/.openclaw/skills/date-night/state/*.json | Browser session cookies (Resy only, opt-in) | Yes — auth tokens |
To purge all skill data: rm -rf ~/.openclaw/skills/date-night/
Referenced artifact was not completely inspected
| Restaurant search | [references/search-restaurants.md](references/search-restaurants.md) |
Referenced artifact was not completely inspected
| Restaurant search | [references/search-restaurants.md](references/search-restaurants.md) |
Referenced artifact was not completely inspected
| Movie booking | [references/movie-booking.md](references/movie-booking.md) |
Referenced artifact was not completely inspected
| Movie booking | [references/movie-booking.md](references/movie-booking.md) |
Referenced artifact was not completely inspected
| Event tickets | [references/event-tickets.md](references/event-tickets.md) |
Referenced artifact was not completely inspected
| Event tickets | [references/event-tickets.md](references/event-tickets.md) |
Referenced artifact was not completely inspected
| Finding movies | [references/search-movies.md](references/search-movies.md) |
Referenced artifact was not completely inspected
| Finding movies | [references/search-movies.md](references/search-movies.md) |
Referenced artifact was not completely inspected
| Finding events | [references/search-events.md](references/search-events.md) |
Referenced artifact was not completely inspected
| Modify / Cancel | [references/modify-cancel.md](references/modify-cancel.md) |
Referenced artifact was not completely inspected
| SMS verification | [references/sms-codes.md](references/sms-codes.md) |
Referenced artifact was not completely inspected
| SMS verification | [references/sms-codes.md](references/sms-codes.md) |
Referenced artifact was not completely inspected
| Pre-evening intel | [references/pre-evening.md](references/pre-evening.md) |
Referenced artifact was not completely inspected
| Smart features | [references/smart-features.md](references/smart-features.md) |
The flow explicitly instructs the agent to search the user's iMessage history for Resy verification codes, which exceeds the minimum access needed for booking and exposes unrelated private messages. In this date-night automation context, harvesting OTPs from a local message store creates a strong risk of unauthorized access to account-authentication data and broader privacy compromise.
The skill combines a long broad trigger list with open-ended natural-language examples, making invocation boundaries unclear. In a high-capability skill that performs browser automation, uses stored personal data, and may query messages or email, ambiguous activation materially raises the risk of unintended actions or data access.
The trigger list includes broad everyday phrases like date ideas, events near me, and what's playing, which can cause the skill to activate in contexts where the user did not intend browser automation, ticket workflows, or access to stored preferences. Because this skill can read local PII, fetch SMS verification codes, and drive booking actions, accidental activation increases the chance of unintended sensitive operations.
npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.
npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.