CI executes an unpinned npx package with a global installation
Source references: 3The validation workflow runs npx skills on pushes and pull requests, but the command pins neither the npm package version nor its integrity and uses a non-interactive global installation. When no matching local package exists, npx can resolve and execute package code from the registry.
If the current skills package release, resolution result, or dependency chain is compromised, third-party code could execute on the GitHub Actions runner and access checkout contents, job environment data, and permissions available to its GitHub token.
This workflow runs `npx skills add` on pushes and pull requests without pinning an npm package version or integrity value, using `--global -y`. If the runner resolves the package from a registry, package entry points or install scripts can execute with the CI job's authority. Impact depends on GitHub permissions, event type, and available secrets. Users can require an exact version or digest, disabled lifecycle scripts, and minimal workflow permissions.
on: push: branches: [main] pull_request: branches: [main]Show 2 other places
- uses: actions/setup-node@v4 with: node-version: "20" - name: Install skill run: npx skills add . --all --global -y - name: Install skill run: npx skills add . --all --global -y