Back to skill

Security audit

Plan Interview

Security checks for vulnerabilities and agentic risk

Overview

This is a coherent planning skill with no bundled executable code, but users should know that approving a plan is treated as consent to begin implementation.

Install only if you are comfortable with a workflow where approving the generated plan means the agent may begin implementation immediately. For stronger supply-chain safety, pin or verify the installer and source revision before running the npx install command.

Vulnerability Patterns
  • Insecure DependenciesIntroduces malicious components through unsafe dependency sources
  • 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
Findings (1)

T08 · Insecure Dependencies

Warning
Location
SKILL.md:14
Finding
Unpinned Third-Party Skill Installation Creates a Supply-Chain Risk## Vulnerability Details **File Location**: `SKILL.md`, lines 14-18 **Vulnerability Type**: Unpinned and mutable third-party dependencies **Risk Level**: Medium ### Vulnerable Code ```markdown ## Install ```bash npx skills add pskoett/pskoett-ai-skills/plan-interview ``` ``` ### Technical Analysis The documented installation command invokes the `skills` npm package through `npx` without specifying a reviewed package version or integrity value. Depending on the local npm configuration and cache state, `npx` can download and execute the package version currently resolved from the configured registry. The command also identifies the installed Skill through a third-party repository path without pinning it to an immutable, reviewed commit. Consequently, both the installer and the Skill content may differ from the versions that existed when this audit was performed. This is a supply-chain weakness rather than evidence that the current dependency is malicious. Exploitation requires compromise or malicious replacement of a resolved package, repository, release, account, or dependency in the installation chain. ### Attack Path 1. An attacker compromises the npm package resolved as `skills`, one of its executable dependencies, the referenced repository, or an associated maintainer account. 2. The attacker publishes or introduces a malicious version while retaining the dependency names used by the documented command. 3. A user follows the installation instructions and runs `npx skills add pskoett/pskoett-ai-skills/plan-interview`. 4. `npx` resolves and executes the mutable installer package with the user's operating-system privileges. 5. The installer retrieves the mutable third-party Skill content. 6. Malicious installer code could act during installation, while malicious Skill instructions could affect later agent sessions in which the installed Skill is loaded. ### Impact Assessment The npm CLI process runs with t ...[truncated 716 chars]
Remediation
## Remediation Suggestions 1. Pin the `skills` npm package to a specifically reviewed version rather than allowing `npx` to resolve the current release. 2. Pin the referenced Skill repository to an immutable reviewed commit, tag backed by a verified commit, or cryptographically verified release artifact. 3. Where supported, verify package integrity with lockfiles, checksums, signed provenance, or registry integrity metadata. 4. Review the package manifest, lifecycle scripts, transitive dependencies, and fetched Skill files before executing the installer. 5. Use `npx` options that prevent an unexpected package from being silently installed, where compatible with the intended workflow. 6. Run installation with a least-privileged account in an isolated environment, without unrelated credentials or sensitive environment variables. 7. Document the expected package version, repository commit, checksums, and trusted source so users can verify that they are installing the audited content. 8. Re-audit the installer and Skill content before updating any pinned version or commit.
Vulnerability Patterns
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • Output HandlingUnvalidated Output Injection, Cross-Context Output, Unbounded Output
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
Findings (8)

Description-Behavior Mismatch

High
Confidence
97% confidence
Finding
The skill's stated purpose is requirements interviewing and plan generation, but it instructs the agent to automatically begin implementation immediately after approval. That expands the skill from planning into code-changing execution without a fresh, explicit user authorization step, increasing the risk of unintended modifications, especially if plan approval is interpreted as consent to act broadly.

Context-Inappropriate Capability

High
Confidence
98% confidence
Finding
Automatic implementation execution is unjustified in the context of a planning/interview skill because it converts a low-risk advisory workflow into an action-taking one. In practice, a user may approve a plan for discussion while not intending immediate repository changes, enabling overreach and accidental code edits under ambiguous consent.

Rp1

Medium
Category
MCP Rug Pull
Confidence
70% confidence
Finding
npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.

Autonomous Decision Making

Medium
Category
Excessive Agency
Content
#### Anti-Patterns to Avoid

- Do NOT ask variations of the same question
- Do NOT make major assumptions without asking
- Do NOT over-engineer plans for simple tasks

### Phase 2: Codebase Exploration
Confidence
75% 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.

Unbounded Output

Medium
Category
Output Handling
Content
#### Constraints

- **No time estimates** - describe what needs doing, not how long
- **No length limits** - plan should match task complexity
- **No silent scope reduction** - do not drop agreed features to make the plan "cleaner"
- **Don't over-iterate simple work** - use the planning depth calibration above
- Freeform structure beyond required elements
Confidence
75% confidence
Finding
Output size or generation rate is not bounded. Unbounded output enables denial-of-service through resource exhaustion, log flooding, or context-window stuffing.

Description-Behavior Mismatch

Medium
Confidence
97% confidence
Finding
The manifest repeatedly defines this skill as an interview-first workflow that gathers requirements before any codebase exploration. In Fast Mode, however, the documented procedure starts with a task-focused codebase search and only then performs an abbreviated interview, which directly conflicts with the stated behavior and sequencing.

Autonomous Decision Making

Medium
Category
Excessive Agency
Content
Guardrails:
- Do NOT oversimplify
- Do NOT remove agreed features/functionality without approval
- Include test strategy and validation/diagnostics impacts where relevant
```
Confidence
75% 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.

Scope Creep

Low
Category
Excessive Agency
Content
Then run a fresh-eyes refinement pass on the plan using those constraints.

Do not rewrite the project or expand scope unnecessarily. Improve the plan within the agreed goals.
```

## Template 4: Multi-Plan Synthesis ("Best of All Worlds")
Confidence
75% confidence
Finding
Skill's behavior or capabilities extend beyond its stated purpose. Scope creep allows an agent to perform actions unrelated to its documented functionality, increasing the attack surface.

Static analysis

No suspicious patterns detected.