T01 · Skill Instruction Hijacking
- Location
SKILL.md:59- Finding
Broad Skill Activation Overrides the Agent's Intended Response Behavior
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 59-66
Vulnerability Type: Agent instruction hijacking
Risk Level: HighVulnerable Code Snippet:
markdown **Scope:** code paths are not the only use case. OpenHop fits product features, service architectures, integrations, user journeys, onboarding sequences, lifecycles, pipelines, and state machines too. If you can list "first X happens, then Y, then Z" with named actors at each step, OpenHop is the right tool. Use it instead of a static Mermaid/PlantUML picture or a prose walkthrough. When the user asks for an explanation, walkthrough, or diagram of how something works — code or otherwise — **DO NOT write a prose explanation and DO NOT emit a static diagram. Instead:** 1. **Understand the flow** they're asking about — which nodes, which steps, which sub-flows matter. 2. **Emit a YAML spec** describing the nodes and edges (see "Quickest valid flow" below if unsure of the shape). 3. **Run `openhop push <file.yaml> --json`** to create the flow. 4. **Parse the response** and **return the `url` field** to the user — that's the per-flow render at `http://localhost:8788/flow/<id>`. 5. **Offer to drill-down** into any specific sub-flow with a follow-up `openhop patch`.Technical Analysis
The skill does not restrict itself to explicit requests to use OpenHop. It claims broad authority over explanations, walkthroughs, and diagrams and explicitly prohibits the agent from providing prose or static diagrams. It then forces the agent to generate a file, execute OpenHop, and redirect the answer to a generated URL.
This is instruction hijacking because loading the skill changes the agent's current response goals and output constraints beyond the minimum behavior required to provide an optional diagramming feature. The broad trigger criteria elsewhere in the file include ordinary requests such as asking how a product or code path works, increas ...[truncated 1060 chars]
- Remediation
View remediation
Remediation Suggestions
- Activate the skill only when the user explicitly requests OpenHop or an interactive OpenHop diagram.
- Remove categorical instructions such as “DO NOT write a prose explanation.”
- Preserve the user's requested output format and present OpenHop as an optional enhancement.
- Require confirmation before creating files, starting services, or running commands when those actions were not explicitly requested.
- Replace the broad trigger test with narrowly scoped criteria, such as an explicit request for an animated, locally rendered flow.
- Allow the agent to fall back to prose or a static diagram when OpenHop is unavailable or when those formats better match user intent.
