Back to skill

Security audit

Perfly

Security checks for vulnerabilities and agentic risk

Overview

This skill sends selected coding-work summaries to Perfly, with clear limits on what can be inspected and submitted.

Install this only if you intend to use Perfly Agent Sync and are comfortable sending concise worklog metadata to Perfly. Avoid including confidential branch names, issue keys, or commit titles if those identifiers reveal sensitive project information.

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
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (5)

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
90% confidence
Finding

The text states that this package contains the 'English canonical skill instructions,' which imposes a specific language in the skill description. Under the policy, forcing a specific language without offering a user language choice or documenting a justified locale constraint is a natural-language policy violation.

Content

No source excerpt is available for this finding.

External Transmission

Medium
Category
Data Exfiltration
Confidence
50% confidence
Finding

Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

Content

Scanner excerpt · README.md (reported line 16)May include surrounding context.

Configure the hosted Perfly MCP endpoint in the user's MCP client:

text
https://api.perfly.dev/mcp

OAuth discovery is the recommended setup. Manual bearer tokens are fallback-only for headless, SSH, devcontainer, CI, or remote sandbox workflows that cannot complete browser OAuth.

External Transmission

Medium
Category
Data Exfiltration
Confidence
89% confidence
Finding

The skill instructs the agent to transmit user-derived worklog metadata to an external hosted endpoint, which is a real data exfiltration boundary even if the destination is the intended Perfly service. The risk is moderated by explicit privacy limits, preview-before-write, and a ban on uploading source code or secrets, but the skill still enables outbound transfer of potentially sensitive project metadata such as branch names, commit titles, and issue keys.

Content

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

Production MCP endpoint:

text
https://api.perfly.dev/mcp

Prefer MCP OAuth discovery when the client supports browser authorization. The user should only need to add the hosted MCP endpoint.

Autonomous Decision Making

Medium
Category
Excessive Agency
Confidence
80% 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 65)May include surrounding context.

md
If the user asks to include sensitive material, summarize at a higher level and explain that Perfly Agent Sync accepts summary metadata only.

If MCP is unavailable, explain how to set up Perfly Agent Sync with the hosted MCP endpoint first. Do not ask the user to paste an ingestion token directly into chat; if OAuth cannot work in the user's environment, direct them to create a fallback token in the Perfly app setup page.

Vague Triggers

Low
Category
Not specified by scanner
Confidence
89% confidence
Finding

The manifest description is broad enough to match generic requests about coding summaries or worklogs, which can cause the skill to activate in contexts beyond its intended scope. In this skill, overbroad activation is notable because the declared tools can submit work items to an external Perfly service, increasing the chance of unintended data sharing or user confusion about when outbound syncing may occur.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.