T08 · Insecure Dependencies
- Location
scripts/add_daily_pm_cron.sh:30- Finding
Unpinned Package Execution in a Recurring Agent Task
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
The skill mostly matches its repo-management purpose, but its optional cron helper creates persistent agent automation and embeds a hardcoded unpinned npx command that should be reviewed before use.
Install only if you want this skill to change repo PM files and possibly add a recurring OpenClaw task. Review both scripts first, avoid the cron helper unless you understand which agent credentials it will use, remove or replace the hardcoded `apps/telegram && npx tsc --noEmit` check, and choose your own timezone, agent, and schedule.
scripts/add_daily_pm_cron.sh:30Unpinned Package Execution in a Recurring Agent Task
The skill explicitly tells users to execute local shell scripts that modify repository state and may install a recurring cron job, but it does not clearly foreground that these actions change files and system scheduling. In a security-sensitive agent setting, hidden or underexplained side effects can lead users to run automation without reviewing what will be changed, increasing the risk of persistence, unwanted task execution, or policy violations if the scripts are altered or unsafe.
This script creates a persistent scheduled job immediately via openclaw cron add with no confirmation, dry-run, or explicit opt-in beyond invoking the script. In the context of a repo-management skill, that means a user or agent can unintentionally install ongoing automation that repeatedly inspects repository state and posts reports, creating lasting side effects and possible privacy or operational issues.
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.
The documentation's example uses --tz Europe/Minsk, which imposes a locale-specific setting in the natural-language usage guidance. The file does not explicitly frame timezone selection as user-configurable guidance or prompt the user to choose their own locale, so it can be read as forcing a specific locale by default.
The script defaults to Europe/Minsk, which imposes a specific locale-related setting unless the user notices and overrides it. This can violate language/locale policy expectations because the locale choice is preselected rather than explicitly opted into.
No suspicious patterns detected.