Back to skill

Security audit

Safe Evolver

Security checks for vulnerabilities and agentic risk

Overview

This skill is a local agent-history logging and analysis helper with no hidden exfiltration or destructive behavior, but its logs may contain sensitive data if users provide it.

Install only if you are comfortable with a local tool storing agent interaction history. Configure log and history paths deliberately, avoid passing secrets, tokens, private file contents, or sensitive command output into recordInteraction, and clear or protect the generated log/history files when they are no longer needed.

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
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
Findings (10)

Credential Access

High
Category
Privilege Escalation
Confidence
60% confidence
Finding

Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.

Content

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

md
},
    {
      tool: 'read',
      path: '/etc/passwd',
      success: true,
      duration: 0.05
    }

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

The skill explicitly promotes recording tool calls, responses, errors, and audit history but does not warn that these records may contain secrets, personal data, file contents, or command outputs. In an agent context, runtime history often includes highly sensitive material, so normalizing broad logging without minimization or redaction creates a real privacy and data-exposure risk.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
92% confidence
Finding

The example shows placing an API key directly in configuration without any warning about secret handling, storage, or exposure. Users may copy this pattern into code, commit credentials to source control, or leak them through logs and reports generated by the same skill.

Content

No source excerpt is available for this finding.

Ssd 3

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

The audit example uses includeAllData: true and elsewhere encourages storing full interaction details, including user content, tool calls, responses, and errors. In an agent skill, this can capture prompts, credentials, proprietary data, filesystem paths, command output, and other sensitive material, creating a significant leakage risk through logs, reports, or exports.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
91% confidence
Finding

The documentation says reports can be stored in memory, written to log files, and exported, but does not warn about persistence, access control, or privacy implications. Because the reports aggregate interaction history and possibly tool output, exporting them can materially increase the blast radius of any sensitive data captured during operation.

Content

No source excerpt is available for this finding.

Ssd 3

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

logEvolution() appends full improvement objects to a log file and also adds them to accumulated history, which is later serialized to disk. Even if the logged object is not directly user input, it is derived from runtime behavior and can still encode sensitive operational details or references to prior interactions, creating a durable disclosure path.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

The skill persists runtime interaction data to disk automatically in recordInteraction() without any consent, notice, minimization, or retention control beyond a global history cap. Because data is stored verbatim, sensitive prompts, tool outputs, tokens, or user content can be retained locally and exposed through filesystem access, backups, or later inspection.

Content

No source excerpt is available for this finding.

Ssd 3

Medium
Category
Not specified by scanner
Confidence
97% confidence
Finding

recordInteraction() stores arbitrary user/agent data into this.history and writes it as plain JSON to disk, creating a straightforward sensitive-data retention channel. In an agent-evolution skill, runtime history is especially likely to contain prompts, responses, error traces, and tool inputs/outputs, so the context makes plaintext logging more dangerous rather than less.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
93% confidence
Finding

Most of the user-facing documentation, feature descriptions, examples, and changelog notes are written in Chinese, with no indication that other languages are supported or that the language is intentionally region-specific. This can violate a language-choice policy when the skill forces a specific locale without offering user opt-in.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
85% confidence
Finding

This JavaScript file contains natural-language comments and console output entirely in Chinese, including the visible runtime messages shown to users during execution. Under the policy, forcing a specific language without user opt-in can be a natural-language policy violation when no alternative locale choice or justification is provided.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.