Safeguard
Security Guides•

How do I use OpenSSF Scorecard to check my own dependency hygiene?

Run OpenSSF Scorecard on your own repository and read five checks that matter for dependencies: update tool, pinning, tokens, vulnerabilities, policy.

Safeguard Security Team
4 min read

Run the Scorecard command line against your own repository and read five checks first: Dependency-Update-Tool, Pinned-Dependencies, Token-Permissions, Vulnerabilities and Security-Policy. Each scores from 0 to 10, and the detailed output explains what to change. Start there, fix the cheapest items, and treat the score as a prompt for questions.

What Scorecard is

OpenSSF Scorecard is an automated tool that assesses open source projects for security practices. It runs a set of checks, each scored from 0 to 10, and combines them into an aggregate weighted by risk. Maintainers can use it to improve their projects, and consumers use it to judge dependencies.

Using it on yourself is the cheap way to see your project the way an outside reviewer would.

Run it

Install via Docker, a release binary, Homebrew or similar. Without a token you hit GitHub rate limits, so set a personal access token in GITHUB_AUTH_TOKEN.

scorecard --repo=github.com/OWNER/REPO --show-details

--checks=Pinned-Dependencies,Token-Permissions runs only named checks, and --format=json changes the output. The project also provides a GitHub Action, a REST API and README badges for ongoing use.

The five checks for dependency hygiene

CheckWhat it looks atA typical fix
Dependency-Update-ToolWhether a tool helps keep dependencies updatedAdd a Dependabot or Renovate config
Pinned-DependenciesWhether dependencies are declared and pinnedPin workflow actions to commit SHAs, use lockfiles for builds
Token-PermissionsWhether workflow tokens are read-onlySet top level permissions to read and raise per job
VulnerabilitiesWhether the project has unfixed known vulnerabilities, via OSVMerge the fix or document why it does not apply
Security-PolicyWhether a security policy file existsAdd SECURITY.md

Other checks cover code review, branch protection, signed releases and dangerous workflow patterns. They matter, but start with the five above because they map directly to dependency work.

A note on the pinning check

For a library, Pinned-Dependencies can seem to conflict with advice to use ranges. They do not. Library ranges in the manifest are for users. The check is looking at how your build and workflows fetch things, such as unpinned actions and container images. GitHub's own hardening guide recommends pinning actions to a full commit SHA, and says to grant the workflow token only the permissions it needs.

Read the score with care

A score is a conversation starter. Some checks do not fit every project. A new repository may score low on Maintained simply because Scorecard looks for a project that is at least 90 days old. Do not chase 10 on every check. Chase the ones that reduce real risk and write down why you accept the rest.

Equally, a high score does not make you immune. Scorecard measures practices, not the content of your code.

Make it a habit

  1. Run it once now and save the output.
  2. Fix the three cheapest items this week.
  3. Add the GitHub Action so the score updates on its own.
  4. Re-read the details quarterly.

Quick check

Is a low Scorecard score a vulnerability?

No. It signals missing practices, which raise the chance of problems. Treat it as a to-do list.

Can I run Scorecard on a private repository?

The documentation I reviewed describes GitHub, GitLab and GitHub Enterprise Server, but check the project's page for the access and token setup that applies to you.

Safeguard adds ongoing dependency scanning and policy gates on top of one-off checks like this. Try the free scan.

Sources

Last reviewed: 19 October 2026.

Never miss an update

Weekly insights on software supply chain security, delivered to your inbox.

Self-healing security runs on Safeguard.

Your first fix PR is minutes away.

No sales call required, even your agent can complete the purchase over MCP.