T08 · Insecure Dependencies
- Location
SKILL.md:38- Finding
Unpinned Third-Party Skill Installation Creates a Supply-Chain Risk
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
The skill matches its advertised video-pipeline purpose, but needs review because it installs multiple unpinned skills, uses unsafe shell templates, and establishes agent trust with little verification.
Review this before installing in a real production or publishing environment. Use only trusted, pinned dependency versions; validate the deployment prefix as a hostname-safe value; confirm peer identities before handshakes; and explicitly approve any YouTube, TikTok, social, webhook, or Slack destinations and credentials used by the distributor role.
SKILL.md:38Unpinned Third-Party Skill Installation Creates a Supply-Chain Risk
SKILL.md:34Unsanitized User-Controlled Prefix Can Cause Shell Command Injection
The 'auto-approved -- no manual step needed' behavior describes an autonomous trust decision for a security-sensitive action. Even if intended for convenience, removing human confirmation from trust establishment increases the chance of accidental authorization, misconfiguration, or abuse by an impersonating agent in this distributed pipeline.
Agents are private by default. Each pair that communicates must exchange handshakes. When both sides send a handshake, trust is auto-approved -- no manual step needed.
# On scripter:
The README instructs operators to establish mutual trust between agents and states that trust becomes auto-approved with no manual verification step. In a multi-agent workflow that passes scripts, assets, and publishing events, this can lead to unintended pairing with the wrong host or a spoofed agent, enabling unauthorized data exchange or command flow once both handshakes are sent.
The skill persists a setup manifest under ~/.pilot/setups, creating durable local state that includes hostnames, peer relationships, data flows, and role assignments. While this is normal for setup automation, the persistence is not disclosed or scoped, which can leave potentially sensitive operational metadata on disk longer than the user expects and available to other local processes or users depending on filesystem permissions.
pilotctl --json set-hostname -
**Step 4:** Write the setup manifest:
```bash
mkdir -p ~/.pilot/setups
cat > ~/.pilot/setups/video-production-pipeline.json << 'MANIFEST'
The skill explicitly configures a distributor role to send publish notifications to external platforms over port 443 and to post confirmations and summaries to Slack, but it does not instruct the operator to obtain informed user consent or warn that content and metadata will leave the local system. In an automation/setup skill, this omission is security-relevant because users may enable outbound integrations that transmit sensitive media, titles, metadata, or performance data to third parties without realizing it.
No suspicious patterns detected.