Back to skill

Security audit

Xiamen Tide Calculator

Security checks for vulnerabilities and agentic risk

Overview

This skill is a disclosed Xiamen tide and beachcombing calculator with local Python scripts and no evidence of credential access, exfiltration, persistence, or destructive behavior.

Install only if you want a local Xiamen tide/beachcombing helper. Use a virtual environment for the zhdate dependency, treat the guidance as advisory, and confirm any outing with official tide tables, weather forecasts, and on-site conditions.

Vulnerability Patterns
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (9)

Intent-Code Divergence

Medium
Confidence
97% confidence
Finding
The guide makes materially inconsistent claims about core functionality: the metadata/description promises automatic solar-to-lunar conversion, current-date detection, and leap-month handling, while the Notes and Future Improvement sections say these capabilities are not implemented and require manual handling. In a date-sensitive safety-adjacent skill, users may trust unsupported automation, leading to incorrect tide calculations, mistimed outings, and unsafe beachcombing decisions.

Intent-Code Divergence

Medium
Confidence
97% confidence
Finding
The documentation advertises capabilities such as automatic Gregorian-to-lunar conversion, current-date auto-detection, and leap-month handling, but later states these are future improvements and currently require manual handling. This mismatch can cause downstream agents or users to rely on nonexistent functionality, producing incorrect tide and safety guidance in a skill whose outputs influence real-world coastal activity.

Vague Triggers

Medium
Confidence
89% confidence
Finding
The skill advertises triggers such as 'Is today good for beachcombing?' and 'Best beachcombing time', which are broad, natural-language requests that can overlap with generic assistant queries. This can cause the skill to activate outside a narrowly bounded domain and steer responses into specialized advice unexpectedly, increasing prompt-scope and routing risk even though the content itself is not overtly malicious.

Vague Triggers

Medium
Confidence
86% confidence
Finding
The mode-selection section includes ambiguous invocation examples like 'Tide schedule', 'Beachcombing advice', and 'Where is good for beachcombing?', which are generic enough to match many ordinary requests. In an agent environment, such broad matching can lead to unintended tool/skill selection and overbroad execution for queries that did not clearly request this specific Xiamen tide workflow.

Vague Triggers

Medium
Confidence
85% confidence
Finding
The beachcombing advice triggers are broad phrases like 'Best time for beachcombing' and 'Beachcombing advice,' which can match ordinary conversation without clear user intent to invoke the skill. Over-broad activation can cause accidental invocation, unexpected advice generation, and user confusion, especially when the advice concerns timing and safety around tides.

Vague Triggers

Low
Confidence
82% confidence
Finding
The multi-day trigger examples such as 'Which day next week is best for beachcombing?' are not tightly scoped to Xiamen or to the skill, so they may overlap with general travel or planning conversations. This increases the chance of unintended activation and delivery of location-specific recommendations outside the appropriate context.

Vague Triggers

Medium
Confidence
83% confidence
Finding
The trigger phrase "赶海建议" is overly broad and lacks clear scope, location, or parameter boundaries. In an agent environment, ambiguous activation can cause the skill to intercept loosely related queries and return tide/safety advice without sufficient context, increasing the risk of misleading recommendations.

Vague Triggers

Medium
Confidence
81% confidence
Finding
The phrase "赶海最佳时间" does not specify place, date, or comparison range, making activation ambiguous. This can lead the skill to answer with assumed defaults or stale context, which is especially problematic because the response may influence trip timing and safety decisions around tides.

Hidden Instructions

High
Category
Prompt Injection
Content
This project is licensed under the **MIT License**. See the [LICENSE](LICENSE) file for details.

## 👨‍💻 Author

**Ke Yingjie** - [GitHub](https://github.com/kingwingshome)
Confidence
87% confidence
Finding
A hidden or zero-width Unicode character in documentation can be used to conceal instructions, alter displayed content, or evade reviewer and scanner visibility. In a skill ecosystem where markdown may be ingested by agents or tooling, hidden text increases the risk of prompt/instruction smuggling or deceptive presentation even if the surrounding README content appears benign.

Static analysis

No suspicious patterns detected.