T08 · Insecure Dependencies
- Location
SKILL.md:27- Finding
Unpinned Third-Party CLI Installation Creates a Supply-Chain Risk
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This skill is a straightforward StrawPoll CLI guide with expected account and poll-management permissions, but users should be careful with the unpinned CLI install and force-delete examples.
Install only if you trust the strawpoll-cli upstream and are comfortable granting it access to your StrawPoll API key and poll-management actions. Prefer a pinned reviewed version if available, keep the API key scoped as narrowly as StrawPoll allows, and avoid --force delete/reset commands unless you have confirmed the exact poll ID.
SKILL.md:27Unpinned Third-Party CLI Installation Creates a Supply-Chain Risk
Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.
An API key is required. Get one at strawpoll.com/account/settings.
# Store in system keyring (interactive prompt)
strawpoll auth set-key
# Or use environment variable (for scripts/CI)
The phrase 'Delete without confirmation' paired with a concrete command encourages autonomous destructive behavior with no human verification step. In a terminal automation skill, this can enable unintended deletion if an agent derives or reuses the wrong poll ID.
# Pipe results
strawpoll poll results "$POLL_ID" --plain | cut -f1,3
# Delete without confirmation
strawpoll poll delete "$POLL_ID" --force
# Results with participant breakdown
The documentation explicitly shows a force-delete workflow that bypasses confirmation and does not pair it with a prominent warning about irreversibility. In an agent skill or automation context, this increases the chance of accidental destructive actions against user polls, especially when examples are copied verbatim into scripts.
Skill establishes unauthorized persistence across sessions via cron jobs, startup scripts, or state files. Session persistence allows an attacker to maintain access beyond the current interaction.
Create commands launch an interactive wizard when run in a terminal without arguments:
# Launches wizard (poll title, options, settings)
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.
| Flag | Short | Description |
|------|-------|-------------|
| `--force` | `-f` | Skip confirmation prompt |
### `strawpoll poll results <POLL_ID>`
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.
| Flag | Short | Description |
|------|-------|-------------|
| `--force` | `-f` | Skip confirmation prompt |
### `strawpoll poll results <POLL_ID>`
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.
| Flag | Short | Description |
|------|-------|-------------|
| `--force` | `-f` | Skip confirmation prompt |
### `strawpoll poll results <POLL_ID>`
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.
| Flag | Short | Description |
|------|-------|-------------|
| `--force` | `-f` | Skip confirmation prompt |
### `strawpoll poll results <POLL_ID>`
This markdown file documents sensitive credential-handling behaviors such as --stdin for API key input and environment variables for API key/password storage, but it does not warn users about shell history, process environment exposure, or file-based keyring sensitivity. Under the markdown-file criteria for missing user warnings, credential and privacy-impacting behaviors should include some cautionary disclosure.
No suspicious patterns detected.