Back to skill

Security audit

Prompt Library Manager

Security checks for vulnerabilities and agentic risk

Overview

This is a local prompt-library helper with disclosed persistence and import/export features, but users should be careful with unrestricted file paths and immediate deletes.

Install only if you are comfortable with a local prompt library stored across sessions. Avoid pointing import, --from-file, export, or --workspace at sensitive or system paths, review exported prompt data before sharing it, and treat delete as immediate because there is no enforced confirmation or recovery mechanism.

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
Vulnerability Patterns
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • System Prompt LeakageDirect Leakage, Indirect Extraction, Tool-Based Exfiltration
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • MCP Least PrivilegeUnderdeclared Capability, Wildcard Permission, Missing Permission Declaration
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
Findings (11)

Direct Prompt Extraction

High
Category
System Prompt Leakage
Confidence
85% confidence
Finding

Skill contains instructions that could directly expose system prompts, internal rules, or hidden instructions to users or external parties.

Content

Scanner excerpt · SKILL.md (reported line 54)May include surrounding context.

md
- `--format text|json|markdown` — Output format
- `--compact` — Show names only

### `use` — Fill and Output Prompt
Retrieve a prompt and fill in variable placeholders:
- `--var KEY=VALUE` — Set template variables (repeatable)
- `--copy` — Copy filled prompt to clipboard

Direct Prompt Extraction

High
Category
System Prompt Leakage
Confidence
85% confidence
Finding

Skill contains instructions that could directly expose system prompts, internal rules, or hidden instructions to users or external parties.

Content

Scanner excerpt · SKILL.md (reported line 82)May include surrounding context.

md
- `--overwrite` — Replace existing prompts with same name

### `stats` — Library Statistics
Show prompt usage stats, category counts, and most-used templates.

## Storage

Direct Prompt Extraction

High
Category
System Prompt Leakage
Confidence
85% confidence
Finding

Skill contains instructions that could directly expose system prompts, internal rules, or hidden instructions to users or external parties.

Content

Scanner excerpt · scripts/prompt-library.py (reported line 12)May include surrounding context.

python
python3 prompt-library.py use "email-summarizer" --var input="text here"
    python3 prompt-library.py update --name "email-summarizer" --template "new template"
    python3 prompt-library.py delete --name "email-summarizer"
    python3 prompt-library.py export --format json [--output prompts.json]
    python3 prompt-library.py import --file prompts.json
    python3 prompt-library.py stats

Direct Prompt Extraction

High
Category
System Prompt Leakage
Confidence
85% confidence
Finding

Skill contains instructions that could directly expose system prompts, internal rules, or hidden instructions to users or external parties.

Content

Scanner excerpt · scripts/prompt-library.py (reported line 148)May include surrounding context.

python
sp["model"] = None
        save_library(lib_path, STARTER_PROMPTS)
        return STARTER_PROMPTS
    return prompts


# ═══════════════════════════════════════════════════════════════════════

Undeclared Tool Scope

Medium
Category
MCP Least Privilege
Confidence
94% confidence
Finding

The skill clearly describes file-backed storage in memory/prompt-library.json and commands for import/export, add, update, and delete, which imply read/write file access without any declared tool scope or permission boundary. In an agent environment, undeclared file capabilities can cause the skill to be invoked with broader filesystem access than users expect, increasing the chance of unintended data exposure or modification.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The trigger phrases are broad and overlap with many ordinary requests such as 'find a prompt for', 'manage prompts', and 'list my prompts', which can cause the skill to activate outside narrowly intended situations. Overbroad activation is risky here because the skill supports reading, exporting, deleting, and reusing stored prompt content, so accidental invocation could expose or alter prompt-library data.

Content

No source excerpt is available for this finding.

Autonomous Decision Making

Medium
Category
Excessive Agency
Confidence
85% 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.

Content

Scanner excerpt · SKILL.md (reported line 68)May include surrounding context.

md
### `delete` — Remove Prompt
Delete a prompt from the library.
- `--name NAME` — Prompt to delete
- `--confirm` — Skip confirmation

### `export` — Export Library
Export all prompts for backup or sharing.

Context-Inappropriate Capability

Medium
Category
Not specified by scanner
Confidence
93% confidence
Finding

The add command accepts --from-file and reads any path provided by the caller, then stores that file's contents in the prompt library. In an agent context, this can be abused to exfiltrate sensitive local files such as SSH keys, tokens, or configuration files into agent-visible storage or later export output.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

The delete operation permanently removes prompts immediately, while the exposed --confirm flag is ignored and provides no real safeguard. In agent-driven usage, this increases the risk of accidental or induced destructive actions against stored prompt assets without any verification step.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

Medium
Category
Not specified by scanner
Confidence
91% confidence
Finding

The export command writes content to any filesystem path supplied via --output without constraining the destination. In a tool-enabled agent workflow, this could overwrite arbitrary user files, shell startup files, or other sensitive paths, causing data loss or creating a foothold for follow-on attacks.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

Medium
Category
Not specified by scanner
Confidence
88% confidence
Finding

The import command reads arbitrary local files specified by --file and parses them as JSON. Even though the parser expects JSON, this still gives an agent a primitive for probing and ingesting local file contents from unrestricted paths, which is unsafe in environments where the agent should not read arbitrary host files.

Content

No source excerpt is available for this finding.