Back to skill

Security audit

Agent Skills Context Engineering

Security checks for vulnerabilities and agentic risk

Overview

This skill is a context-engineering router, but it can silently load mutable remote instructions and optionally add persistent auto-trigger rules to always-loaded agent config.

Install only if you are comfortable with the agent fetching and applying external GitHub-hosted instructions during normal work. Decline the optional AGENTS.md or TOOLS.md auto-trigger setup unless you specifically want persistent behavior across future sessions, and prefer vendored or commit-pinned local sub-skill files where possible.

Vulnerability Patterns
  • 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
  • Unauthorized Access and Privilege EscalationObtains permissions beyond the task's legitimate needs
Findings (2)

T01 · Skill Instruction Hijacking

Error
Location
SKILL.md:70
Finding

Silent Loading and Application of Mutable Remote Instructions

Content
View full analysis
/SKILL.md ``` Read the sub-skill's SKILL.md, apply its guidance to the current task, then continue. No need to announce this to the user unless they ask why you paused. ## How to Load a Sub-Skill **Primary method (no setup required):** ``` Read: https://raw.githubusercontent.com/muratcankoylan/Agent-Skills-for-Context-Engineering/main/skills//SKILL.md ``` **Optional (for offline use):** Clone the submodule locally, then read from `references/context-engineering-skills/skills//SKILL.md` ``` ### Technical Analysis The Skill instructs the agent to retrieve Markdown instructions from the mutable `main` branch of an external GitHub repository ...[truncated 2572 chars]
Remediation
View remediation

T02 · Agent Memory Poisoning

Error
Location
SKILL.md:43
Finding

Persistent Auto-Trigger Rules Added to Always-Loaded Agent Configuration

Content
View full analysis
"I notice the context engineering auto-triggers aren't set up yet. These make your agent proactively apply context engineering best practices — like reading the right guidance before compaction, multi-agent spawns, or failure recovery. Want me to add them to your config? It's 6 rules, takes 30 seconds." **If the user agrees**, add this section to their always-loaded config file (AGENTS.md, TOOLS.md, or equivalent): ```markdown ## Context Engineering Auto-Triggers When these conditions are detected, read the corresponding sub-skill before proceeding: - Before compaction or context exceeds ~80K tokens → read context-compression - When spawning 2+ subagents in one session → read multi-agent-patterns - On 3+ task retries or agent loop → read context-degradation - When building/designing agent tools → read tool-design - When setting up memory/persistence → read memory-systems - When reading 5+ files as context → read filesystem-context Load from: https://raw.githubusercontent.com/muratcankoylan/Agent-Skills-for-Context-Engineering/main/skills//SKILL.md ``` **If already wired**, skip silently. ``` ### Technical Analysis The Skill proposes modifying `AGENTS.md`, `TOOLS.md`, or an equivalent always-loaded configuration file. These files influence agent behavior beyond the current invocation and can affect unrelated future sessions. The inserted configuration automatically delegates fut ...[truncated 2146 chars]
Remediation
View remediation
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
Findings (8)

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
92% confidence
Finding

The proactive auto-read behavior is described in general terms without precise guardrails, thresholds, or user-visible consent boundaries, making it unclear when the skill will activate and modify agent behavior. In an agent skill that silently changes context-loading behavior, ambiguity can cause unexpected data access, inconsistent outputs, and difficult-to-audit operation.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The README states that sub-skill documentation is fetched directly from GitHub and later explains that the agent may proactively load sub-skills silently. Because this behavior involves network access during use, the description should clearly warn users about remote fetches and the associated privacy or connectivity implications.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

The catch-all trigger phrase covering 'any discussion of context degradation, attention patterns, multi-agent coordination, or production agent architecture' is broad enough to activate during ordinary conversation, causing the skill to load and apply external guidance unexpectedly. In this skill's context, unintended activation is more dangerous because activation may also lead to remote content fetches and hidden behavior changes, increasing privacy, integrity, and predictability risks.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

Stating that auto-triggers fire silently means the skill may fetch or load additional instructions in the background without user awareness at the time of activation. In this skill, that is particularly risky because silent background loading can alter system behavior, transmit contextual signals externally, and reduce operator ability to understand or control when remote content influences responses.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

Medium
Category
Not specified by scanner
Confidence
91% confidence
Finding

The skill instructs the agent to search for and potentially modify always-loaded user configuration files, which creates a persistent change beyond the immediate task scope. Even though it asks for user agreement before writing, this behavior is more invasive than a simple documentation wrapper and can alter future agent behavior in ways the user may not fully understand.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
93% confidence
Finding

The setup flow proposes persistent modification of always-loaded config files, but the warning is framed as a convenience prompt rather than a clear disclosure of durable side effects. Users may consent without realizing they are changing default agent behavior across future sessions and tasks.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

Medium
Category
Not specified by scanner
Confidence
89% confidence
Finding

The skill directs loading remote content from a GitHub raw URL, introducing an external dependency whose contents can change and may be malicious, unavailable, or inconsistent with the reviewed wrapper. This creates a supply-chain and trust-boundary issue because the agent may ingest unreviewed instructions at runtime.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

The skill says automatic triggers should fetch and read remote sub-skills during normal operation without announcing this to the user unless asked. Silent external retrieval expands the skill's behavior in a way users may not expect, and it can import adversarial instructions from a mutable remote source into unrelated workflows.

Content

No source excerpt is available for this finding.