{"id":34453,"name":"opentemplate","description":"All-in-one Python template. One click. Everything included.","url":"https://github.com/open-nudge/opentemplate","last_synced_at":"2025-09-05T06:13:18.517Z","repository":{"id":299132495,"uuid":"1002117105","full_name":"open-nudge/opentemplate","owner":"open-nudge","description":"All-in-one Python template. One click. Everything included.","archived":false,"fork":false,"pushed_at":"2025-08-25T22:26:16.000Z","size":11268,"stargazers_count":24,"open_issues_count":3,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-08-26T00:25:50.857Z","etag":null,"topics":["attestations","automation","best-practices","github-actions","hardened","intuitive","legal","linter","nudging","one-click","performance","pre-commit","python","reuse","sbom","security","simple","slsa","template"],"latest_commit_sha":null,"homepage":"https://open-nudge.github.io/opentemplate/","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/open-nudge.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.md","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":"CITATION.cff","codeowners":"CODEOWNERS","security":"SECURITY-DEPENDENCY.md","support":"SUPPORT.md","governance":"GOVERNANCE.md","roadmap":"ROADMAP.md","authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-06-14T18:47:16.000Z","updated_at":"2025-08-25T22:26:18.000Z","dependencies_parsed_at":"2025-06-30T16:31:35.729Z","dependency_job_id":"5b54bf77-aed4-4bef-af53-fa4535e3ecd8","html_url":"https://github.com/open-nudge/opentemplate","commit_stats":null,"previous_names":["open-nudge/opentemplate"],"tags_count":6,"template":true,"template_full_name":null,"purl":"pkg:github/open-nudge/opentemplate","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/open-nudge%2Fopentemplate","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/open-nudge%2Fopentemplate/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/open-nudge%2Fopentemplate/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/open-nudge%2Fopentemplate/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/open-nudge","download_url":"https://codeload.github.com/open-nudge/opentemplate/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/open-nudge%2Fopentemplate/sbom","scorecard":{"id":926033,"data":{"date":"2025-08-23T03:19:52Z","repo":{"name":"github.com/open-nudge/opentemplate","commit":"3096ff6f4e6885d2ed20552fd2da41b9d044ab20"},"scorecard":{"version":"v5.2.1","commit":"ab2f6e92482462fe66246d9e32f642855a691dc1"},"score":6.5,"checks":[{"name":"Security-Policy","score":10,"reason":"security policy file detected","details":["Info: security policy file detected: SECURITY.md:1","Info: Found linked content: SECURITY.md:1","Info: Found disclosure, vulnerability, and/or timelines in security policy: SECURITY.md:1","Info: Found text in security policy: SECURITY.md:1"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#security-policy"}},{"name":"Code-Review","score":0,"reason":"Found 0/30 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#code-review"}},{"name":"Dependency-Update-Tool","score":10,"reason":"update tool detected","details":["Info: detected update tool: RenovateBot: .github/renovate.json:1"],"documentation":{"short":"Determines if the project uses a dependency update tool.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#dependency-update-tool"}},{"name":"Maintained","score":0,"reason":"project was created within the last 90 days. Please review its contents carefully","details":["Warn: Repository was created within the last 90 days."],"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#maintained"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#binary-artifacts"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#dangerous-workflow"}},{"name":"Pinned-Dependencies","score":6,"reason":"dependency not pinned by hash detected -- score normalized to 6","details":["Warn: third-party GitHubAction not pinned by hash: .github/workflows/cache-item-reusable.yml:94: update your workflow using https://app.stepsecurity.io/secureworkflow/open-nudge/opentemplate/cache-item-reusable.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/generation-update-reusable.yml:50: update your workflow using https://app.stepsecurity.io/secureworkflow/open-nudge/opentemplate/generation-update-reusable.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/generation-update-reusable.yml:54: update your workflow using https://app.stepsecurity.io/secureworkflow/open-nudge/opentemplate/generation-update-reusable.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/generation-update-reusable.yml:80: update your workflow using https://app.stepsecurity.io/secureworkflow/open-nudge/opentemplate/generation-update-reusable.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/pre-commit-reusable.yml:63: update your workflow using https://app.stepsecurity.io/secureworkflow/open-nudge/opentemplate/pre-commit-reusable.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/pre-commit-reusable.yml:67: update your workflow using https://app.stepsecurity.io/secureworkflow/open-nudge/opentemplate/pre-commit-reusable.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/pre-commit-reusable.yml:100: update your workflow using https://app.stepsecurity.io/secureworkflow/open-nudge/opentemplate/pre-commit-reusable.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/release-sbom-run-reusable.yml:187: update your workflow using https://app.stepsecurity.io/secureworkflow/open-nudge/opentemplate/release-sbom-run-reusable.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/release-sbom-run-reusable.yml:191: update your workflow using https://app.stepsecurity.io/secureworkflow/open-nudge/opentemplate/release-sbom-run-reusable.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/release-sbom-run-reusable.yml:200: update your workflow using https://app.stepsecurity.io/secureworkflow/open-nudge/opentemplate/release-sbom-run-reusable.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/release-sbom-run-reusable.yml:205: update your workflow using https://app.stepsecurity.io/secureworkflow/open-nudge/opentemplate/release-sbom-run-reusable.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/release-sboms-reusable.yml:204: update your workflow using https://app.stepsecurity.io/secureworkflow/open-nudge/opentemplate/release-sboms-reusable.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/run-reusable.yml:188: update your workflow using https://app.stepsecurity.io/secureworkflow/open-nudge/opentemplate/run-reusable.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/run-reusable.yml:192: update your workflow using https://app.stepsecurity.io/secureworkflow/open-nudge/opentemplate/run-reusable.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/run-reusable.yml:200: update your workflow using https://app.stepsecurity.io/secureworkflow/open-nudge/opentemplate/run-reusable.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/security-osv-scanner-reusable.yml:80: update your workflow using https://app.stepsecurity.io/secureworkflow/open-nudge/opentemplate/security-osv-scanner-reusable.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/security-semgrep-reusable.yml:71: update your workflow using https://app.stepsecurity.io/secureworkflow/open-nudge/opentemplate/security-semgrep-reusable.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/security-semgrep-reusable.yml:78: update your workflow using https://app.stepsecurity.io/secureworkflow/open-nudge/opentemplate/security-semgrep-reusable.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/security-semgrep-reusable.yml:88: update your workflow using https://app.stepsecurity.io/secureworkflow/open-nudge/opentemplate/security-semgrep-reusable.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/template-setup.yml:59: update your workflow using https://app.stepsecurity.io/secureworkflow/open-nudge/opentemplate/template-setup.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/template-setup.yml:77: update your workflow using https://app.stepsecurity.io/secureworkflow/open-nudge/opentemplate/template-setup.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/template-test.yml:71: update your workflow using https://app.stepsecurity.io/secureworkflow/open-nudge/opentemplate/template-test.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/template-test.yml:75: update your workflow using https://app.stepsecurity.io/secureworkflow/open-nudge/opentemplate/template-test.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/template-test.yml:87: update your workflow using https://app.stepsecurity.io/secureworkflow/open-nudge/opentemplate/template-test.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/template-setup.yml:266","Info:  39 out of  39 GitHub-owned GitHubAction dependencies pinned","Info:  33 out of  57 third-party GitHubAction dependencies pinned","Info:   0 out of   1 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#cii-best-practices"}},{"name":"Token-Permissions","score":10,"reason":"GitHub workflow tokens follow principle of least privilege","details":["Info: jobLevel 'contents' permission set to 'read': .github/workflows/cache-item-reusable.yml:59","Info: jobLevel 'contents' permission set to 'read': .github/workflows/cache-reusable.yml:62","Info: jobLevel 'contents' permission set to 'read': .github/workflows/cache-reusable.yml:77","Info: jobLevel 'contents' permission set to 'read': .github/workflows/cache-test.yml:29","Info: jobLevel 'contents' permission set to 'read': .github/workflows/cache.yml:29","Info: jobLevel 'contents' permission set to 'read': .github/workflows/citation-renovate.yml:31","Info: jobLevel 'contents' permission set to 'read': .github/workflows/citation-reusable.yml:18","Info: jobLevel 'contents' permission set to 'read': .github/workflows/citation.yml:34","Info: jobLevel 'contents' permission set to 'read': .github/workflows/commit-renovate.yml:31","Info: jobLevel 'contents' permission set to 'read': .github/workflows/commit-reusable.yml:18","Info: jobLevel 'contents' permission set to 'read': .github/workflows/commit.yml:28","Info: jobLevel 'contents' permission set to 'read': .github/workflows/docs-renovate.yml:31","Info: jobLevel 'contents' permission set to 'read': .github/workflows/docs-reusable.yml:18","Info: jobLevel 'contents' permission set to 'read': .github/workflows/docs.yml:37","Info: jobLevel 'contents' permission set to 'read': .github/workflows/generation-renovate.yml:31","Info: jobLevel 'contents' permission set to 'read': .github/workflows/generation-reusable.yml:18","Info: jobLevel 'contents' permission set to 'read': .github/workflows/generation-update-reusable.yml:24","Info: jobLevel 'contents' permission set to 'read': .github/workflows/generation-update-test.yml:34","Info: jobLevel 'contents' permission set to 'read': .github/workflows/generation-update.yml:25","Info: jobLevel 'contents' permission set to 'read': .github/workflows/generation.yml:28","Info: jobLevel 'contents' permission set to 'read': .github/workflows/github-actionlint.yml:32","Info: jobLevel 'contents' permission set to 'read': .github/workflows/github-actions-reusable.yml:18","Info: jobLevel 'contents' permission set to 'read': .github/workflows/github-actions.yml:27","Info: jobLevel 'contents' permission set to 'read': .github/workflows/github-all-renovate.yml:30","Info: jobLevel 'contents' permission set to 'read': .github/workflows/github-all-renovate.yml:41","Info: jobLevel 'contents' permission set to 'read': .github/workflows/github-all-renovate.yml:52","Info: jobLevel 'contents' permission set to 'read': .github/workflows/github-all-renovate.yml:63","Info: jobLevel 'contents' permission set to 'read': .github/workflows/github-renovate-reusable.yml:18","Info: jobLevel 'contents' permission set to 'read': .github/workflows/github-renovate.yml:29","Info: jobLevel 'contents' permission set to 'read': .github/workflows/github-reusable.yml:18","Info: jobLevel 'contents' permission set to 'read': .github/workflows/github-workflows-reusable.yml:18","Info: jobLevel 'contents' permission set to 'read': .github/workflows/github-workflows.yml:26","Info: jobLevel 'contents' permission set to 'read': .github/workflows/github.yml:27","Info: jobLevel 'actions' permission set to 'read': .github/workflows/harden.yml:323","Warn: jobLevel 'security-events' permission set to 'write': .github/workflows/harden.yml:325","Info: jobLevel 'contents' permission set to 'read': .github/workflows/harden.yml:327","Info: jobLevel 'contents' permission set to 'read': .github/workflows/harden.yml:38","Info: jobLevel 'contents' permission set to 'read': .github/workflows/ini-renovate.yml:31","Info: jobLevel 'contents' permission set to 'read': .github/workflows/ini-reusable.yml:18","Info: jobLevel 'contents' permission set to 'read': .github/workflows/ini.yml:35","Info: jobLevel 'contents' permission set to 'read': .github/workflows/json-renovate.yml:31","Info: jobLevel 'contents' permission set to 'read': .github/workflows/json-reusable.yml:18","Info: jobLevel 'contents' permission set to 'read': .github/workflows/json.yml:34","Info: jobLevel 'contents' permission set to 'read': .github/workflows/legal-renovate.yml:31","Info: jobLevel 'contents' permission set to 'read': .github/workflows/legal-reusable.yml:18","Info: jobLevel 'contents' permission set to 'read': .github/workflows/legal.yml:28","Info: jobLevel 'contents' permission set to 'read': .github/workflows/markdown-renovate.yml:31","Info: jobLevel 'contents' permission set to 'read': .github/workflows/markdown-reusable.yml:18","Info: jobLevel 'contents' permission set to 'read': .github/workflows/markdown.yml:36","Info: jobLevel 'contents' permission set to 'read': .github/workflows/policy.yml:32","Info: jobLevel 'contents' permission set to 'read': .github/workflows/pre-commit-config.yml:33","Info: jobLevel 'contents' permission set to 'read': .github/workflows/pre-commit-hooks.yml:33","Info: jobLevel 'contents' permission set to 'read': .github/workflows/pre-commit-reusable.yml:24","Info: jobLevel 'contents' permission set to 'read': .github/workflows/pre-commit-update.yml:25","Info: jobLevel 'contents' permission set to 'read': .github/workflows/pre-commit.yml:29","Info: jobLevel 'contents' permission set to 'read': .github/workflows/prose.yml:36","Info: jobLevel 'pull-requests' permission set to 'read': .github/workflows/pull-request.yml:34","Info: jobLevel 'contents' permission set to 'read': .github/workflows/pyproject-renovate.yml:31","Info: jobLevel 'contents' permission set to 'read': .github/workflows/pyproject-reusable.yml:18","Info: jobLevel 'contents' permission set to 'read': .github/workflows/pyproject.yml:34","Info: jobLevel 'contents' permission set to 'read': .github/workflows/pytest-renovate.yml:31","Info: jobLevel 'contents' permission set to 'read': .github/workflows/pytest-reusable.yml:18","Info: jobLevel 'contents' permission set to 'read': .github/workflows/pytest.yml:34","Info: jobLevel 'contents' permission set to 'read': .github/workflows/python-renovate.yml:31","Info: jobLevel 'contents' permission set to 'read': .github/workflows/python-reusable.yml:18","Info: jobLevel 'contents' permission set to 'read': .github/workflows/python.yml:34","Info: jobLevel 'contents' permission set to 'read': .github/workflows/release-check-renovate.yml:31","Info: jobLevel 'contents' permission set to 'read': .github/workflows/release-check-reusable.yml:18","Info: jobLevel 'contents' permission set to 'read': .github/workflows/release-check.yml:28","Info: jobLevel 'actions' permission set to 'read': .github/workflows/release-sarifs-reusable.yml:41","Warn: jobLevel 'security-events' permission set to 'write': .github/workflows/release-sarifs-reusable.yml:43","Info: jobLevel 'contents' permission set to 'read': .github/workflows/release-sarifs-reusable.yml:45","Info: jobLevel 'actions' permission set to 'read': .github/workflows/release-sarifs-reusable.yml:24","Warn: jobLevel 'security-events' permission set to 'write': .github/workflows/release-sarifs-reusable.yml:26","Info: jobLevel 'contents' permission set to 'read': .github/workflows/release-sarifs-reusable.yml:28","Info: jobLevel 'contents' permission set to 'read': .github/workflows/release-sbom-run-reusable.yml:94","Info: jobLevel 'contents' permission set to 'read': .github/workflows/release-sboms-reusable.yml:19","Info: found token with 'none' permissions: .github/workflows/release-sboms-reusable.yml:1","Info: jobLevel 'contents' permission set to 'read': .github/workflows/release-sboms-reusable.yml:114","Info: jobLevel 'contents' permission set to 'read': .github/workflows/release-sboms-reusable.yml:180","Info: jobLevel 'contents' permission set to 'read': .github/workflows/release-sboms-test.yml:32","Info: jobLevel 'contents' permission set to 'read': .github/workflows/release-slsa-provenance-reusable.yml:32","Info: jobLevel 'actions' permission set to 'read': .github/workflows/release-slsa-provenance-reusable.yml:79","Info: jobLevel 'actions' permission set to 'read': .github/workflows/release-slsa-provenance-test.yml:30","Warn: jobLevel 'contents' permission set to 'write': .github/workflows/release-slsa-provenance-test.yml:31","Warn: jobLevel 'contents' permission set to 'write': .github/workflows/release-upload.yml:23","Info: jobLevel 'contents' permission set to 'read': .github/workflows/release.yml:32","Info: jobLevel 'contents' permission set to 'read': .github/workflows/release.yml:54","Warn: jobLevel 'contents' permission set to 'write': .github/workflows/release.yml:61","Info: jobLevel 'contents' permission set to 'read': .github/workflows/release.yml:91","Info: jobLevel 'pull-requests' permission set to 'read': .github/workflows/release.yml:112","Info: jobLevel 'contents' permission set to 'read': .github/workflows/release.yml:111","Info: jobLevel 'actions' permission set to 'read': .github/workflows/release.yml:42","Warn: jobLevel 'security-events' permission set to 'write': .github/workflows/release.yml:44","Info: jobLevel 'contents' permission set to 'read': .github/workflows/release.yml:46","Info: jobLevel 'actions' permission set to 'read': .github/workflows/release.yml:236","Warn: jobLevel 'contents' permission set to 'write': .github/workflows/release.yml:237","Warn: jobLevel 'contents' permission set to 'write': .github/workflows/release.yml:250","Info: jobLevel 'contents' permission set to 'read': .github/workflows/renovate.yml:26","Info: jobLevel 'contents' permission set to 'read': .github/workflows/run-check-reusable.yml:68","Info: jobLevel 'contents' permission set to 'read': .github/workflows/run-reusable.yml:114","Info: jobLevel 'actions' permission set to 'read': .github/workflows/security-osv-scanner-reusable.yml:39","Warn: jobLevel 'security-events' permission set to 'write': .github/workflows/security-osv-scanner-reusable.yml:41","Info: jobLevel 'contents' permission set to 'read': .github/workflows/security-osv-scanner-reusable.yml:43","Warn: jobLevel 'security-events' permission set to 'write': .github/workflows/security-osv-scanner-update.yml:23","Info: jobLevel 'contents' permission set to 'read': .github/workflows/security-osv-scanner-update.yml:25","Info: jobLevel 'actions' permission set to 'read': .github/workflows/security-osv-scanner-update.yml:21","Info: jobLevel 'contents' permission set to 'read': .github/workflows/security-osv-scanner.yml:33","Info: jobLevel 'actions' permission set to 'read': .github/workflows/security-osv-scanner.yml:29","Warn: jobLevel 'security-events' permission set to 'write': .github/workflows/security-osv-scanner.yml:31","Info: jobLevel 'contents' permission set to 'read': .github/workflows/security-scorecard-reusable.yml:39","Info: jobLevel 'actions' permission set to 'read': .github/workflows/security-scorecard-reusable.yml:35","Info: jobLevel 'actions' permission set to 'read': .github/workflows/security-scorecard-test.yml:29","Warn: jobLevel 'security-events' permission set to 'write': .github/workflows/security-scorecard-test.yml:31","Info: jobLevel 'contents' permission set to 'read': .github/workflows/security-scorecard-test.yml:33","Info: jobLevel 'actions' permission set to 'read': .github/workflows/security-scorecard-update.yml:21","Warn: jobLevel 'security-events' permission set to 'write': .github/workflows/security-scorecard-update.yml:23","Info: jobLevel 'contents' permission set to 'read': .github/workflows/security-scorecard-update.yml:25","Info: jobLevel 'contents' permission set to 'read': .github/workflows/security-secrets.yml:24","Warn: jobLevel 'security-events' permission set to 'write': .github/workflows/security-semgrep-renovate.yml:31","Info: jobLevel 'contents' permission set to 'read': .github/workflows/security-semgrep-renovate.yml:33","Info: jobLevel 'actions' permission set to 'read': .github/workflows/security-semgrep-renovate.yml:29","Info: jobLevel 'contents' permission set to 'read': .github/workflows/security-semgrep-reusable.yml:43","Info: jobLevel 'actions' permission set to 'read': .github/workflows/security-semgrep-reusable.yml:39","Warn: jobLevel 'security-events' permission set to 'write': .github/workflows/security-semgrep-reusable.yml:41","Warn: jobLevel 'security-events' permission set to 'write': .github/workflows/security-semgrep-update.yml:23","Info: jobLevel 'contents' permission set to 'read': .github/workflows/security-semgrep-update.yml:25","Info: jobLevel 'actions' permission set to 'read': .github/workflows/security-semgrep-update.yml:21","Info: jobLevel 'actions' permission set to 'read': .github/workflows/security-semgrep.yml:29","Warn: jobLevel 'security-events' permission set to 'write': .github/workflows/security-semgrep.yml:31","Info: jobLevel 'contents' permission set to 'read': .github/workflows/security-semgrep.yml:33","Info: jobLevel 'contents' permission set to 'read': .github/workflows/shell-renovate.yml:31","Info: jobLevel 'contents' permission set to 'read': .github/workflows/shell-reusable.yml:18","Info: jobLevel 'contents' permission set to 'read': .github/workflows/shell.yml:34","Warn: jobLevel 'contents' permission set to 'write': .github/workflows/template-setup.yml:21","Info: jobLevel 'contents' permission set to 'read': .github/workflows/template-setup.yml:125","Info: jobLevel 'contents' permission set to 'read': .github/workflows/template-setup.yml:312","Info: jobLevel 'actions' permission set to 'read': .github/workflows/template-setup.yml:325","Warn: jobLevel 'security-events' permission set to 'write': .github/workflows/template-setup.yml:327","Info: jobLevel 'contents' permission set to 'read': .github/workflows/template-setup.yml:329","Info: jobLevel 'contents' permission set to 'read': .github/workflows/template-test.yml:25","Info: jobLevel 'contents' permission set to 'read': .github/workflows/template-test.yml:102","Warn: jobLevel 'contents' permission set to 'write': .github/workflows/template-update-reusable.yml:18","Warn: jobLevel 'contents' permission set to 'write': .github/workflows/template-update.yml:25","Info: jobLevel 'contents' permission set to 'read': .github/workflows/tests-renovate.yml:31","Info: jobLevel 'contents' permission set to 'read': .github/workflows/tests-reusable.yml:50","Info: jobLevel 'contents' permission set to 'read': .github/workflows/tests-reusable.yml:80","Info: jobLevel 'contents' permission set to 'read': .github/workflows/tests.yml:38","Info: jobLevel 'contents' permission set to 'read': .github/workflows/text-renovate.yml:34","Info: jobLevel 'contents' permission set to 'read': .github/workflows/text-reusable.yml:18","Info: jobLevel 'contents' permission set to 'read': .github/workflows/text.yml:34","Info: jobLevel 'contents' permission set to 'read': .github/workflows/toml-renovate.yml:31","Info: jobLevel 'contents' permission set to 'read': .github/workflows/toml-reusable.yml:18","Info: jobLevel 'contents' permission set to 'read': .github/workflows/toml.yml:34","Info: jobLevel 'contents' permission set to 'read': .github/workflows/typing-renovate.yml:31","Info: jobLevel 'contents' permission set to 'read': .github/workflows/typing-reusable.yml:18","Info: jobLevel 'contents' permission set to 'read': .github/workflows/typing.yml:34","Info: jobLevel 'contents' permission set to 'read': .github/workflows/yaml-renovate.yml:31","Info: jobLevel 'contents' permission set to 'read': .github/workflows/yaml-reusable.yml:18","Info: jobLevel 'contents' permission set to 'read': .github/workflows/yaml.yml:35","Info: found token with 'none' permissions: .github/workflows/cache-item-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/cache-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/cache-test.yml:1","Info: found token with 'none' permissions: .github/workflows/cache.yml:1","Info: found token with 'none' permissions: .github/workflows/citation-renovate.yml:1","Info: found token with 'none' permissions: .github/workflows/citation-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/citation.yml:1","Info: found token with 'none' permissions: .github/workflows/commit-renovate.yml:1","Info: found token with 'none' permissions: .github/workflows/commit-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/commit.yml:1","Info: found token with 'none' permissions: .github/workflows/docs-renovate.yml:1","Info: found token with 'none' permissions: .github/workflows/docs-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/docs.yml:1","Info: found token with 'none' permissions: .github/workflows/generation-renovate.yml:1","Info: found token with 'none' permissions: .github/workflows/generation-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/generation-update-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/generation-update-test.yml:1","Info: found token with 'none' permissions: .github/workflows/generation-update.yml:1","Info: found token with 'none' permissions: .github/workflows/generation.yml:1","Info: found token with 'none' permissions: .github/workflows/github-actionlint.yml:1","Info: found token with 'none' permissions: .github/workflows/github-actions-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/github-actions.yml:1","Info: found token with 'none' permissions: .github/workflows/github-all-renovate.yml:1","Info: found token with 'none' permissions: .github/workflows/github-renovate-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/github-renovate.yml:1","Info: found token with 'none' permissions: .github/workflows/github-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/github-workflows-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/github-workflows.yml:1","Info: found token with 'none' permissions: .github/workflows/github.yml:1","Info: found token with 'none' permissions: .github/workflows/harden.yml:1","Info: found token with 'none' permissions: .github/workflows/ini-renovate.yml:1","Info: found token with 'none' permissions: .github/workflows/ini-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/ini.yml:1","Info: found token with 'none' permissions: .github/workflows/json-renovate.yml:1","Info: found token with 'none' permissions: .github/workflows/json-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/json.yml:1","Info: found token with 'none' permissions: .github/workflows/labeler.yml:1","Info: found token with 'none' permissions: .github/workflows/legal-renovate.yml:1","Info: found token with 'none' permissions: .github/workflows/legal-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/legal.yml:1","Info: found token with 'none' permissions: .github/workflows/markdown-renovate.yml:1","Info: found token with 'none' permissions: .github/workflows/markdown-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/markdown.yml:1","Info: found token with 'none' permissions: .github/workflows/policy.yml:1","Info: found token with 'none' permissions: .github/workflows/pre-commit-config.yml:1","Info: found token with 'none' permissions: .github/workflows/pre-commit-hooks.yml:1","Info: found token with 'none' permissions: .github/workflows/pre-commit-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/pre-commit-update.yml:1","Info: found token with 'none' permissions: .github/workflows/pre-commit.yml:1","Info: found token with 'none' permissions: .github/workflows/prose.yml:1","Info: found token with 'none' permissions: .github/workflows/pull-request.yml:1","Info: found token with 'none' permissions: .github/workflows/pyproject-renovate.yml:1","Info: found token with 'none' permissions: .github/workflows/pyproject-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/pyproject.yml:1","Info: found token with 'none' permissions: .github/workflows/pytest-renovate.yml:1","Info: found token with 'none' permissions: .github/workflows/pytest-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/pytest.yml:1","Info: found token with 'none' permissions: .github/workflows/python-renovate.yml:1","Info: found token with 'none' permissions: .github/workflows/python-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/python.yml:1","Info: found token with 'none' permissions: .github/workflows/release-check-renovate.yml:1","Info: found token with 'none' permissions: .github/workflows/release-check-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/release-check.yml:1","Info: found token with 'none' permissions: .github/workflows/release-sarifs-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/release-sbom-attest-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/release-sbom-run-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/release-sboms-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/release-sboms-test.yml:1","Info: found token with 'none' permissions: .github/workflows/release-slsa-provenance-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/release-slsa-provenance-test.yml:1","Info: found token with 'none' permissions: .github/workflows/release-upload.yml:1","Info: found token with 'none' permissions: .github/workflows/release.yml:1","Info: found token with 'none' permissions: .github/workflows/renovate.yml:1","Info: found token with 'none' permissions: .github/workflows/run-check-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/run-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/security-osv-scanner-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/security-osv-scanner-update.yml:1","Info: found token with 'none' permissions: .github/workflows/security-osv-scanner.yml:1","Info: found token with 'none' permissions: .github/workflows/security-scorecard-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/security-scorecard-test.yml:1","Info: found token with 'none' permissions: .github/workflows/security-scorecard-update.yml:1","Info: found token with 'none' permissions: .github/workflows/security-secrets.yml:1","Info: found token with 'none' permissions: .github/workflows/security-semgrep-renovate.yml:1","Info: found token with 'none' permissions: .github/workflows/security-semgrep-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/security-semgrep-update.yml:1","Info: found token with 'none' permissions: .github/workflows/security-semgrep.yml:1","Info: found token with 'none' permissions: .github/workflows/shell-renovate.yml:1","Info: found token with 'none' permissions: .github/workflows/shell-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/shell.yml:1","Info: found token with 'none' permissions: .github/workflows/stale.yml:1","Info: found token with 'none' permissions: .github/workflows/template-setup.yml:1","Info: found token with 'none' permissions: .github/workflows/template-test.yml:1","Info: found token with 'none' permissions: .github/workflows/template-update-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/template-update.yml:1","Info: found token with 'none' permissions: .github/workflows/tests-renovate.yml:1","Info: found token with 'none' permissions: .github/workflows/tests-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/tests.yml:1","Info: found token with 'none' permissions: .github/workflows/text-renovate.yml:1","Info: found token with 'none' permissions: .github/workflows/text-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/text.yml:1","Info: found token with 'none' permissions: .github/workflows/toml-renovate.yml:1","Info: found token with 'none' permissions: .github/workflows/toml-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/toml.yml:1","Info: found token with 'none' permissions: .github/workflows/typing-renovate.yml:1","Info: found token with 'none' permissions: .github/workflows/typing-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/typing.yml:1","Info: found token with 'none' permissions: .github/workflows/yaml-renovate.yml:1","Info: found token with 'none' permissions: .github/workflows/yaml-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/yaml.yml:1"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#token-permissions"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#vulnerabilities"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 30 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#sast"}},{"name":"License","score":9,"reason":"license file detected","details":["Info: project has a license file: LICENSE.md:0","Warn: project license file does not contain an FSF or OSI license."],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#license"}},{"name":"Signed-Releases","score":10,"reason":"2 out of the last 2 releases have a total of 2 signed artifacts.","details":["Info: provenance for release artifact: attestation-sbom-github-04653011a252ec62bfce5c76f0629ec6db58a8bc.intoto.jsonl: https://github.com/open-nudge/opentemplate/releases/tag/v0.1.5","Info: provenance for release artifact: attestation-sbom-github-3006e6878ed7f8af5f28f1a83155decd46b96f9f.intoto.jsonl: https://github.com/open-nudge/opentemplate/releases/tag/v0.1.3"],"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#signed-releases"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/release.yml:132"],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#packaging"}},{"name":"Branch-Protection","score":3,"reason":"branch protection is not maximal on development and all release branches","details":["Info: 'allow deletion' disabled on branch 'main'","Info: 'force pushes' disabled on branch 'main'","Warn: 'branch protection settings apply to administrators' is disabled on branch 'main'","Info: 'stale review dismissal' is required to merge on branch 'main'","Warn: branch 'main' does not require approvers","Info: codeowner review is required on branch 'main'","Warn: 'last push approval' is disabled on branch 'main'","Warn: no status checks found to merge onto branch 'main'","Info: PRs are required in order to make changes on branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#branch-protection"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#fuzzing"}},{"name":"Contributors","score":3,"reason":"project has 1 contributing companies or organizations -- score normalized to 3","details":["Info: found contributions from: open-nudge"],"documentation":{"short":"Determines if the project has a set of contributors from multiple organizations (e.g., companies).","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#contributors"}},{"name":"CI-Tests","score":10,"reason":"30 out of 30 merged PRs checked by a CI test -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project runs tests before pull requests are merged.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#ci-tests"}}]},"last_synced_at":"2025-08-26T00:25:51.782Z","repository_id":299132495,"created_at":"2025-08-26T00:25:51.782Z","updated_at":"2025-08-26T00:25:51.782Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273719212,"owners_count":25155670,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-05T02:00:09.113Z","response_time":402,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"owner":{"login":"open-nudge","name":"opennudge","uuid":"155011011","kind":"organization","description":"","email":"opensource@opennudge.com","website":null,"location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/155011011?v=4","repositories_count":1,"last_synced_at":"2025-04-25T19:38:49.625Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/open-nudge","funding_links":[],"total_stars":0,"followers":0,"following":0,"created_at":"2025-02-24T23:22:13.215Z","updated_at":"2025-04-25T19:38:49.625Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/open-nudge","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/open-nudge/repositories"},"packages":[{"id":11806297,"name":"opentemplate","ecosystem":"pypi","description":"All-in-one Python template. One click. Everything included.","homepage":"https://open-nudge.github.io/opentemplate","licenses":"other","normalized_licenses":["GPL-1.0+"],"repository_url":"https://github.com/open-nudge/opentemplate","keywords_array":[],"namespace":null,"versions_count":2,"first_release_published_at":"2025-06-16T14:34:57.000Z","latest_release_published_at":"2025-07-13T12:01:08.000Z","latest_release_number":"0.4.3","last_synced_at":"2025-08-26T00:40:33.769Z","created_at":"2025-06-16T14:46:31.889Z","updated_at":"2025-08-26T01:24:34.025Z","registry_url":"https://pypi.org/project/opentemplate/","install_command":"pip install opentemplate --index-url https://pypi.org/simple","documentation_url":"https://open-nudge.github.io/opentemplate","metadata":{"funding":null,"documentation":"https://open-nudge.github.io/opentemplate","classifiers":["Development Status :: 2 - Pre-Alpha","Intended Audience :: Developers","Programming Language :: Python","Programming Language :: Python :: 3 :: Only","Programming Language :: Python :: 3.11","Programming Language :: Python :: 3.12","Programming Language :: Python :: 3.13","Topic :: Software Development :: Libraries","Topic :: Software Development :: Libraries :: Python Modules","Typing :: Typed"],"normalized_name":"opentemplate","project_status":null},"repo_metadata":{"id":299132495,"uuid":"1002117105","full_name":"open-nudge/opentemplate","owner":"open-nudge","description":"All-in-one Python template. One click. Everything included.","archived":false,"fork":false,"pushed_at":"2025-08-25T22:26:16.000Z","size":11268,"stargazers_count":24,"open_issues_count":3,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-08-26T00:25:50.857Z","etag":null,"topics":["attestations","automation","best-practices","github-actions","hardened","intuitive","legal","linter","nudging","one-click","performance","pre-commit","python","reuse","sbom","security","simple","slsa","template"],"latest_commit_sha":null,"homepage":"https://open-nudge.github.io/opentemplate/","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/open-nudge.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.md","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":"CITATION.cff","codeowners":"CODEOWNERS","security":"SECURITY-DEPENDENCY.md","support":"SUPPORT.md","governance":"GOVERNANCE.md","roadmap":"ROADMAP.md","authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-06-14T18:47:16.000Z","updated_at":"2025-08-25T22:26:18.000Z","dependencies_parsed_at":"2025-06-30T16:31:35.729Z","dependency_job_id":"5b54bf77-aed4-4bef-af53-fa4535e3ecd8","html_url":"https://github.com/open-nudge/opentemplate","commit_stats":null,"previous_names":["open-nudge/opentemplate"],"tags_count":6,"template":true,"template_full_name":null,"purl":"pkg:github/open-nudge/opentemplate","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/open-nudge%2Fopentemplate","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/open-nudge%2Fopentemplate/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/open-nudge%2Fopentemplate/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/open-nudge%2Fopentemplate/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/open-nudge","download_url":"https://codeload.github.com/open-nudge/opentemplate/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/open-nudge%2Fopentemplate/sbom","scorecard":{"id":926033,"data":{"date":"2025-08-23T03:19:52Z","repo":{"name":"github.com/open-nudge/opentemplate","commit":"3096ff6f4e6885d2ed20552fd2da41b9d044ab20"},"scorecard":{"version":"v5.2.1","commit":"ab2f6e92482462fe66246d9e32f642855a691dc1"},"score":6.5,"checks":[{"name":"Security-Policy","score":10,"reason":"security policy file detected","details":["Info: security policy file detected: SECURITY.md:1","Info: Found linked content: SECURITY.md:1","Info: Found disclosure, vulnerability, and/or timelines in security policy: SECURITY.md:1","Info: Found text in security policy: SECURITY.md:1"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#security-policy"}},{"name":"Code-Review","score":0,"reason":"Found 0/30 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#code-review"}},{"name":"Dependency-Update-Tool","score":10,"reason":"update tool detected","details":["Info: detected update tool: RenovateBot: .github/renovate.json:1"],"documentation":{"short":"Determines if the project uses a dependency update tool.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#dependency-update-tool"}},{"name":"Maintained","score":0,"reason":"project was created within the last 90 days. Please review its contents carefully","details":["Warn: Repository was created within the last 90 days."],"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#maintained"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#binary-artifacts"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#dangerous-workflow"}},{"name":"Pinned-Dependencies","score":6,"reason":"dependency not pinned by hash detected -- score normalized to 6","details":["Warn: third-party GitHubAction not pinned by hash: .github/workflows/cache-item-reusable.yml:94: update your workflow using https://app.stepsecurity.io/secureworkflow/open-nudge/opentemplate/cache-item-reusable.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/generation-update-reusable.yml:50: update your workflow using https://app.stepsecurity.io/secureworkflow/open-nudge/opentemplate/generation-update-reusable.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/generation-update-reusable.yml:54: update your workflow using https://app.stepsecurity.io/secureworkflow/open-nudge/opentemplate/generation-update-reusable.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/generation-update-reusable.yml:80: update your workflow using https://app.stepsecurity.io/secureworkflow/open-nudge/opentemplate/generation-update-reusable.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/pre-commit-reusable.yml:63: update your workflow using https://app.stepsecurity.io/secureworkflow/open-nudge/opentemplate/pre-commit-reusable.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/pre-commit-reusable.yml:67: update your workflow using https://app.stepsecurity.io/secureworkflow/open-nudge/opentemplate/pre-commit-reusable.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/pre-commit-reusable.yml:100: update your workflow using https://app.stepsecurity.io/secureworkflow/open-nudge/opentemplate/pre-commit-reusable.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/release-sbom-run-reusable.yml:187: update your workflow using https://app.stepsecurity.io/secureworkflow/open-nudge/opentemplate/release-sbom-run-reusable.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/release-sbom-run-reusable.yml:191: update your workflow using https://app.stepsecurity.io/secureworkflow/open-nudge/opentemplate/release-sbom-run-reusable.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/release-sbom-run-reusable.yml:200: update your workflow using https://app.stepsecurity.io/secureworkflow/open-nudge/opentemplate/release-sbom-run-reusable.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/release-sbom-run-reusable.yml:205: update your workflow using https://app.stepsecurity.io/secureworkflow/open-nudge/opentemplate/release-sbom-run-reusable.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/release-sboms-reusable.yml:204: update your workflow using https://app.stepsecurity.io/secureworkflow/open-nudge/opentemplate/release-sboms-reusable.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/run-reusable.yml:188: update your workflow using https://app.stepsecurity.io/secureworkflow/open-nudge/opentemplate/run-reusable.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/run-reusable.yml:192: update your workflow using https://app.stepsecurity.io/secureworkflow/open-nudge/opentemplate/run-reusable.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/run-reusable.yml:200: update your workflow using https://app.stepsecurity.io/secureworkflow/open-nudge/opentemplate/run-reusable.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/security-osv-scanner-reusable.yml:80: update your workflow using https://app.stepsecurity.io/secureworkflow/open-nudge/opentemplate/security-osv-scanner-reusable.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/security-semgrep-reusable.yml:71: update your workflow using https://app.stepsecurity.io/secureworkflow/open-nudge/opentemplate/security-semgrep-reusable.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/security-semgrep-reusable.yml:78: update your workflow using https://app.stepsecurity.io/secureworkflow/open-nudge/opentemplate/security-semgrep-reusable.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/security-semgrep-reusable.yml:88: update your workflow using https://app.stepsecurity.io/secureworkflow/open-nudge/opentemplate/security-semgrep-reusable.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/template-setup.yml:59: update your workflow using https://app.stepsecurity.io/secureworkflow/open-nudge/opentemplate/template-setup.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/template-setup.yml:77: update your workflow using https://app.stepsecurity.io/secureworkflow/open-nudge/opentemplate/template-setup.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/template-test.yml:71: update your workflow using https://app.stepsecurity.io/secureworkflow/open-nudge/opentemplate/template-test.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/template-test.yml:75: update your workflow using https://app.stepsecurity.io/secureworkflow/open-nudge/opentemplate/template-test.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/template-test.yml:87: update your workflow using https://app.stepsecurity.io/secureworkflow/open-nudge/opentemplate/template-test.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/template-setup.yml:266","Info:  39 out of  39 GitHub-owned GitHubAction dependencies pinned","Info:  33 out of  57 third-party GitHubAction dependencies pinned","Info:   0 out of   1 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#cii-best-practices"}},{"name":"Token-Permissions","score":10,"reason":"GitHub workflow tokens follow principle of least privilege","details":["Info: jobLevel 'contents' permission set to 'read': .github/workflows/cache-item-reusable.yml:59","Info: jobLevel 'contents' permission set to 'read': .github/workflows/cache-reusable.yml:62","Info: jobLevel 'contents' permission set to 'read': .github/workflows/cache-reusable.yml:77","Info: jobLevel 'contents' permission set to 'read': .github/workflows/cache-test.yml:29","Info: jobLevel 'contents' permission set to 'read': .github/workflows/cache.yml:29","Info: jobLevel 'contents' permission set to 'read': .github/workflows/citation-renovate.yml:31","Info: jobLevel 'contents' permission set to 'read': .github/workflows/citation-reusable.yml:18","Info: jobLevel 'contents' permission set to 'read': .github/workflows/citation.yml:34","Info: jobLevel 'contents' permission set to 'read': .github/workflows/commit-renovate.yml:31","Info: jobLevel 'contents' permission set to 'read': .github/workflows/commit-reusable.yml:18","Info: jobLevel 'contents' permission set to 'read': .github/workflows/commit.yml:28","Info: jobLevel 'contents' permission set to 'read': .github/workflows/docs-renovate.yml:31","Info: jobLevel 'contents' permission set to 'read': .github/workflows/docs-reusable.yml:18","Info: jobLevel 'contents' permission set to 'read': .github/workflows/docs.yml:37","Info: jobLevel 'contents' permission set to 'read': .github/workflows/generation-renovate.yml:31","Info: jobLevel 'contents' permission set to 'read': .github/workflows/generation-reusable.yml:18","Info: jobLevel 'contents' permission set to 'read': .github/workflows/generation-update-reusable.yml:24","Info: jobLevel 'contents' permission set to 'read': .github/workflows/generation-update-test.yml:34","Info: jobLevel 'contents' permission set to 'read': .github/workflows/generation-update.yml:25","Info: jobLevel 'contents' permission set to 'read': .github/workflows/generation.yml:28","Info: jobLevel 'contents' permission set to 'read': .github/workflows/github-actionlint.yml:32","Info: jobLevel 'contents' permission set to 'read': .github/workflows/github-actions-reusable.yml:18","Info: jobLevel 'contents' permission set to 'read': .github/workflows/github-actions.yml:27","Info: jobLevel 'contents' permission set to 'read': .github/workflows/github-all-renovate.yml:30","Info: jobLevel 'contents' permission set to 'read': .github/workflows/github-all-renovate.yml:41","Info: jobLevel 'contents' permission set to 'read': .github/workflows/github-all-renovate.yml:52","Info: jobLevel 'contents' permission set to 'read': .github/workflows/github-all-renovate.yml:63","Info: jobLevel 'contents' permission set to 'read': .github/workflows/github-renovate-reusable.yml:18","Info: jobLevel 'contents' permission set to 'read': .github/workflows/github-renovate.yml:29","Info: jobLevel 'contents' permission set to 'read': .github/workflows/github-reusable.yml:18","Info: jobLevel 'contents' permission set to 'read': .github/workflows/github-workflows-reusable.yml:18","Info: jobLevel 'contents' permission set to 'read': .github/workflows/github-workflows.yml:26","Info: jobLevel 'contents' permission set to 'read': .github/workflows/github.yml:27","Info: jobLevel 'actions' permission set to 'read': .github/workflows/harden.yml:323","Warn: jobLevel 'security-events' permission set to 'write': .github/workflows/harden.yml:325","Info: jobLevel 'contents' permission set to 'read': .github/workflows/harden.yml:327","Info: jobLevel 'contents' permission set to 'read': .github/workflows/harden.yml:38","Info: jobLevel 'contents' permission set to 'read': .github/workflows/ini-renovate.yml:31","Info: jobLevel 'contents' permission set to 'read': .github/workflows/ini-reusable.yml:18","Info: jobLevel 'contents' permission set to 'read': .github/workflows/ini.yml:35","Info: jobLevel 'contents' permission set to 'read': .github/workflows/json-renovate.yml:31","Info: jobLevel 'contents' permission set to 'read': .github/workflows/json-reusable.yml:18","Info: jobLevel 'contents' permission set to 'read': .github/workflows/json.yml:34","Info: jobLevel 'contents' permission set to 'read': .github/workflows/legal-renovate.yml:31","Info: jobLevel 'contents' permission set to 'read': .github/workflows/legal-reusable.yml:18","Info: jobLevel 'contents' permission set to 'read': .github/workflows/legal.yml:28","Info: jobLevel 'contents' permission set to 'read': .github/workflows/markdown-renovate.yml:31","Info: jobLevel 'contents' permission set to 'read': .github/workflows/markdown-reusable.yml:18","Info: jobLevel 'contents' permission set to 'read': .github/workflows/markdown.yml:36","Info: jobLevel 'contents' permission set to 'read': .github/workflows/policy.yml:32","Info: jobLevel 'contents' permission set to 'read': .github/workflows/pre-commit-config.yml:33","Info: jobLevel 'contents' permission set to 'read': .github/workflows/pre-commit-hooks.yml:33","Info: jobLevel 'contents' permission set to 'read': .github/workflows/pre-commit-reusable.yml:24","Info: jobLevel 'contents' permission set to 'read': .github/workflows/pre-commit-update.yml:25","Info: jobLevel 'contents' permission set to 'read': .github/workflows/pre-commit.yml:29","Info: jobLevel 'contents' permission set to 'read': .github/workflows/prose.yml:36","Info: jobLevel 'pull-requests' permission set to 'read': .github/workflows/pull-request.yml:34","Info: jobLevel 'contents' permission set to 'read': .github/workflows/pyproject-renovate.yml:31","Info: jobLevel 'contents' permission set to 'read': .github/workflows/pyproject-reusable.yml:18","Info: jobLevel 'contents' permission set to 'read': .github/workflows/pyproject.yml:34","Info: jobLevel 'contents' permission set to 'read': .github/workflows/pytest-renovate.yml:31","Info: jobLevel 'contents' permission set to 'read': .github/workflows/pytest-reusable.yml:18","Info: jobLevel 'contents' permission set to 'read': .github/workflows/pytest.yml:34","Info: jobLevel 'contents' permission set to 'read': .github/workflows/python-renovate.yml:31","Info: jobLevel 'contents' permission set to 'read': .github/workflows/python-reusable.yml:18","Info: jobLevel 'contents' permission set to 'read': .github/workflows/python.yml:34","Info: jobLevel 'contents' permission set to 'read': .github/workflows/release-check-renovate.yml:31","Info: jobLevel 'contents' permission set to 'read': .github/workflows/release-check-reusable.yml:18","Info: jobLevel 'contents' permission set to 'read': .github/workflows/release-check.yml:28","Info: jobLevel 'actions' permission set to 'read': .github/workflows/release-sarifs-reusable.yml:41","Warn: jobLevel 'security-events' permission set to 'write': .github/workflows/release-sarifs-reusable.yml:43","Info: jobLevel 'contents' permission set to 'read': .github/workflows/release-sarifs-reusable.yml:45","Info: jobLevel 'actions' permission set to 'read': .github/workflows/release-sarifs-reusable.yml:24","Warn: jobLevel 'security-events' permission set to 'write': .github/workflows/release-sarifs-reusable.yml:26","Info: jobLevel 'contents' permission set to 'read': .github/workflows/release-sarifs-reusable.yml:28","Info: jobLevel 'contents' permission set to 'read': .github/workflows/release-sbom-run-reusable.yml:94","Info: jobLevel 'contents' permission set to 'read': .github/workflows/release-sboms-reusable.yml:19","Info: found token with 'none' permissions: .github/workflows/release-sboms-reusable.yml:1","Info: jobLevel 'contents' permission set to 'read': .github/workflows/release-sboms-reusable.yml:114","Info: jobLevel 'contents' permission set to 'read': .github/workflows/release-sboms-reusable.yml:180","Info: jobLevel 'contents' permission set to 'read': .github/workflows/release-sboms-test.yml:32","Info: jobLevel 'contents' permission set to 'read': .github/workflows/release-slsa-provenance-reusable.yml:32","Info: jobLevel 'actions' permission set to 'read': .github/workflows/release-slsa-provenance-reusable.yml:79","Info: jobLevel 'actions' permission set to 'read': .github/workflows/release-slsa-provenance-test.yml:30","Warn: jobLevel 'contents' permission set to 'write': .github/workflows/release-slsa-provenance-test.yml:31","Warn: jobLevel 'contents' permission set to 'write': .github/workflows/release-upload.yml:23","Info: jobLevel 'contents' permission set to 'read': .github/workflows/release.yml:32","Info: jobLevel 'contents' permission set to 'read': .github/workflows/release.yml:54","Warn: jobLevel 'contents' permission set to 'write': .github/workflows/release.yml:61","Info: jobLevel 'contents' permission set to 'read': .github/workflows/release.yml:91","Info: jobLevel 'pull-requests' permission set to 'read': .github/workflows/release.yml:112","Info: jobLevel 'contents' permission set to 'read': .github/workflows/release.yml:111","Info: jobLevel 'actions' permission set to 'read': .github/workflows/release.yml:42","Warn: jobLevel 'security-events' permission set to 'write': .github/workflows/release.yml:44","Info: jobLevel 'contents' permission set to 'read': .github/workflows/release.yml:46","Info: jobLevel 'actions' permission set to 'read': .github/workflows/release.yml:236","Warn: jobLevel 'contents' permission set to 'write': .github/workflows/release.yml:237","Warn: jobLevel 'contents' permission set to 'write': .github/workflows/release.yml:250","Info: jobLevel 'contents' permission set to 'read': .github/workflows/renovate.yml:26","Info: jobLevel 'contents' permission set to 'read': .github/workflows/run-check-reusable.yml:68","Info: jobLevel 'contents' permission set to 'read': .github/workflows/run-reusable.yml:114","Info: jobLevel 'actions' permission set to 'read': .github/workflows/security-osv-scanner-reusable.yml:39","Warn: jobLevel 'security-events' permission set to 'write': .github/workflows/security-osv-scanner-reusable.yml:41","Info: jobLevel 'contents' permission set to 'read': .github/workflows/security-osv-scanner-reusable.yml:43","Warn: jobLevel 'security-events' permission set to 'write': .github/workflows/security-osv-scanner-update.yml:23","Info: jobLevel 'contents' permission set to 'read': .github/workflows/security-osv-scanner-update.yml:25","Info: jobLevel 'actions' permission set to 'read': .github/workflows/security-osv-scanner-update.yml:21","Info: jobLevel 'contents' permission set to 'read': .github/workflows/security-osv-scanner.yml:33","Info: jobLevel 'actions' permission set to 'read': .github/workflows/security-osv-scanner.yml:29","Warn: jobLevel 'security-events' permission set to 'write': .github/workflows/security-osv-scanner.yml:31","Info: jobLevel 'contents' permission set to 'read': .github/workflows/security-scorecard-reusable.yml:39","Info: jobLevel 'actions' permission set to 'read': .github/workflows/security-scorecard-reusable.yml:35","Info: jobLevel 'actions' permission set to 'read': .github/workflows/security-scorecard-test.yml:29","Warn: jobLevel 'security-events' permission set to 'write': .github/workflows/security-scorecard-test.yml:31","Info: jobLevel 'contents' permission set to 'read': .github/workflows/security-scorecard-test.yml:33","Info: jobLevel 'actions' permission set to 'read': .github/workflows/security-scorecard-update.yml:21","Warn: jobLevel 'security-events' permission set to 'write': .github/workflows/security-scorecard-update.yml:23","Info: jobLevel 'contents' permission set to 'read': .github/workflows/security-scorecard-update.yml:25","Info: jobLevel 'contents' permission set to 'read': .github/workflows/security-secrets.yml:24","Warn: jobLevel 'security-events' permission set to 'write': .github/workflows/security-semgrep-renovate.yml:31","Info: jobLevel 'contents' permission set to 'read': .github/workflows/security-semgrep-renovate.yml:33","Info: jobLevel 'actions' permission set to 'read': .github/workflows/security-semgrep-renovate.yml:29","Info: jobLevel 'contents' permission set to 'read': .github/workflows/security-semgrep-reusable.yml:43","Info: jobLevel 'actions' permission set to 'read': .github/workflows/security-semgrep-reusable.yml:39","Warn: jobLevel 'security-events' permission set to 'write': .github/workflows/security-semgrep-reusable.yml:41","Warn: jobLevel 'security-events' permission set to 'write': .github/workflows/security-semgrep-update.yml:23","Info: jobLevel 'contents' permission set to 'read': .github/workflows/security-semgrep-update.yml:25","Info: jobLevel 'actions' permission set to 'read': .github/workflows/security-semgrep-update.yml:21","Info: jobLevel 'actions' permission set to 'read': .github/workflows/security-semgrep.yml:29","Warn: jobLevel 'security-events' permission set to 'write': .github/workflows/security-semgrep.yml:31","Info: jobLevel 'contents' permission set to 'read': .github/workflows/security-semgrep.yml:33","Info: jobLevel 'contents' permission set to 'read': .github/workflows/shell-renovate.yml:31","Info: jobLevel 'contents' permission set to 'read': .github/workflows/shell-reusable.yml:18","Info: jobLevel 'contents' permission set to 'read': .github/workflows/shell.yml:34","Warn: jobLevel 'contents' permission set to 'write': .github/workflows/template-setup.yml:21","Info: jobLevel 'contents' permission set to 'read': .github/workflows/template-setup.yml:125","Info: jobLevel 'contents' permission set to 'read': .github/workflows/template-setup.yml:312","Info: jobLevel 'actions' permission set to 'read': .github/workflows/template-setup.yml:325","Warn: jobLevel 'security-events' permission set to 'write': .github/workflows/template-setup.yml:327","Info: jobLevel 'contents' permission set to 'read': .github/workflows/template-setup.yml:329","Info: jobLevel 'contents' permission set to 'read': .github/workflows/template-test.yml:25","Info: jobLevel 'contents' permission set to 'read': .github/workflows/template-test.yml:102","Warn: jobLevel 'contents' permission set to 'write': .github/workflows/template-update-reusable.yml:18","Warn: jobLevel 'contents' permission set to 'write': .github/workflows/template-update.yml:25","Info: jobLevel 'contents' permission set to 'read': .github/workflows/tests-renovate.yml:31","Info: jobLevel 'contents' permission set to 'read': .github/workflows/tests-reusable.yml:50","Info: jobLevel 'contents' permission set to 'read': .github/workflows/tests-reusable.yml:80","Info: jobLevel 'contents' permission set to 'read': .github/workflows/tests.yml:38","Info: jobLevel 'contents' permission set to 'read': .github/workflows/text-renovate.yml:34","Info: jobLevel 'contents' permission set to 'read': .github/workflows/text-reusable.yml:18","Info: jobLevel 'contents' permission set to 'read': .github/workflows/text.yml:34","Info: jobLevel 'contents' permission set to 'read': .github/workflows/toml-renovate.yml:31","Info: jobLevel 'contents' permission set to 'read': .github/workflows/toml-reusable.yml:18","Info: jobLevel 'contents' permission set to 'read': .github/workflows/toml.yml:34","Info: jobLevel 'contents' permission set to 'read': .github/workflows/typing-renovate.yml:31","Info: jobLevel 'contents' permission set to 'read': .github/workflows/typing-reusable.yml:18","Info: jobLevel 'contents' permission set to 'read': .github/workflows/typing.yml:34","Info: jobLevel 'contents' permission set to 'read': .github/workflows/yaml-renovate.yml:31","Info: jobLevel 'contents' permission set to 'read': .github/workflows/yaml-reusable.yml:18","Info: jobLevel 'contents' permission set to 'read': .github/workflows/yaml.yml:35","Info: found token with 'none' permissions: .github/workflows/cache-item-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/cache-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/cache-test.yml:1","Info: found token with 'none' permissions: .github/workflows/cache.yml:1","Info: found token with 'none' permissions: .github/workflows/citation-renovate.yml:1","Info: found token with 'none' permissions: .github/workflows/citation-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/citation.yml:1","Info: found token with 'none' permissions: .github/workflows/commit-renovate.yml:1","Info: found token with 'none' permissions: .github/workflows/commit-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/commit.yml:1","Info: found token with 'none' permissions: .github/workflows/docs-renovate.yml:1","Info: found token with 'none' permissions: .github/workflows/docs-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/docs.yml:1","Info: found token with 'none' permissions: .github/workflows/generation-renovate.yml:1","Info: found token with 'none' permissions: .github/workflows/generation-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/generation-update-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/generation-update-test.yml:1","Info: found token with 'none' permissions: .github/workflows/generation-update.yml:1","Info: found token with 'none' permissions: .github/workflows/generation.yml:1","Info: found token with 'none' permissions: .github/workflows/github-actionlint.yml:1","Info: found token with 'none' permissions: .github/workflows/github-actions-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/github-actions.yml:1","Info: found token with 'none' permissions: .github/workflows/github-all-renovate.yml:1","Info: found token with 'none' permissions: .github/workflows/github-renovate-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/github-renovate.yml:1","Info: found token with 'none' permissions: .github/workflows/github-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/github-workflows-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/github-workflows.yml:1","Info: found token with 'none' permissions: .github/workflows/github.yml:1","Info: found token with 'none' permissions: .github/workflows/harden.yml:1","Info: found token with 'none' permissions: .github/workflows/ini-renovate.yml:1","Info: found token with 'none' permissions: .github/workflows/ini-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/ini.yml:1","Info: found token with 'none' permissions: .github/workflows/json-renovate.yml:1","Info: found token with 'none' permissions: .github/workflows/json-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/json.yml:1","Info: found token with 'none' permissions: .github/workflows/labeler.yml:1","Info: found token with 'none' permissions: .github/workflows/legal-renovate.yml:1","Info: found token with 'none' permissions: .github/workflows/legal-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/legal.yml:1","Info: found token with 'none' permissions: .github/workflows/markdown-renovate.yml:1","Info: found token with 'none' permissions: .github/workflows/markdown-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/markdown.yml:1","Info: found token with 'none' permissions: .github/workflows/policy.yml:1","Info: found token with 'none' permissions: .github/workflows/pre-commit-config.yml:1","Info: found token with 'none' permissions: .github/workflows/pre-commit-hooks.yml:1","Info: found token with 'none' permissions: .github/workflows/pre-commit-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/pre-commit-update.yml:1","Info: found token with 'none' permissions: .github/workflows/pre-commit.yml:1","Info: found token with 'none' permissions: .github/workflows/prose.yml:1","Info: found token with 'none' permissions: .github/workflows/pull-request.yml:1","Info: found token with 'none' permissions: .github/workflows/pyproject-renovate.yml:1","Info: found token with 'none' permissions: .github/workflows/pyproject-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/pyproject.yml:1","Info: found token with 'none' permissions: .github/workflows/pytest-renovate.yml:1","Info: found token with 'none' permissions: .github/workflows/pytest-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/pytest.yml:1","Info: found token with 'none' permissions: .github/workflows/python-renovate.yml:1","Info: found token with 'none' permissions: .github/workflows/python-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/python.yml:1","Info: found token with 'none' permissions: .github/workflows/release-check-renovate.yml:1","Info: found token with 'none' permissions: .github/workflows/release-check-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/release-check.yml:1","Info: found token with 'none' permissions: .github/workflows/release-sarifs-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/release-sbom-attest-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/release-sbom-run-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/release-sboms-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/release-sboms-test.yml:1","Info: found token with 'none' permissions: .github/workflows/release-slsa-provenance-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/release-slsa-provenance-test.yml:1","Info: found token with 'none' permissions: .github/workflows/release-upload.yml:1","Info: found token with 'none' permissions: .github/workflows/release.yml:1","Info: found token with 'none' permissions: .github/workflows/renovate.yml:1","Info: found token with 'none' permissions: .github/workflows/run-check-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/run-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/security-osv-scanner-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/security-osv-scanner-update.yml:1","Info: found token with 'none' permissions: .github/workflows/security-osv-scanner.yml:1","Info: found token with 'none' permissions: .github/workflows/security-scorecard-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/security-scorecard-test.yml:1","Info: found token with 'none' permissions: .github/workflows/security-scorecard-update.yml:1","Info: found token with 'none' permissions: .github/workflows/security-secrets.yml:1","Info: found token with 'none' permissions: .github/workflows/security-semgrep-renovate.yml:1","Info: found token with 'none' permissions: .github/workflows/security-semgrep-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/security-semgrep-update.yml:1","Info: found token with 'none' permissions: .github/workflows/security-semgrep.yml:1","Info: found token with 'none' permissions: .github/workflows/shell-renovate.yml:1","Info: found token with 'none' permissions: .github/workflows/shell-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/shell.yml:1","Info: found token with 'none' permissions: .github/workflows/stale.yml:1","Info: found token with 'none' permissions: .github/workflows/template-setup.yml:1","Info: found token with 'none' permissions: .github/workflows/template-test.yml:1","Info: found token with 'none' permissions: .github/workflows/template-update-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/template-update.yml:1","Info: found token with 'none' permissions: .github/workflows/tests-renovate.yml:1","Info: found token with 'none' permissions: .github/workflows/tests-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/tests.yml:1","Info: found token with 'none' permissions: .github/workflows/text-renovate.yml:1","Info: found token with 'none' permissions: .github/workflows/text-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/text.yml:1","Info: found token with 'none' permissions: .github/workflows/toml-renovate.yml:1","Info: found token with 'none' permissions: .github/workflows/toml-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/toml.yml:1","Info: found token with 'none' permissions: .github/workflows/typing-renovate.yml:1","Info: found token with 'none' permissions: .github/workflows/typing-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/typing.yml:1","Info: found token with 'none' permissions: .github/workflows/yaml-renovate.yml:1","Info: found token with 'none' permissions: .github/workflows/yaml-reusable.yml:1","Info: found token with 'none' permissions: .github/workflows/yaml.yml:1"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#token-permissions"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#vulnerabilities"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 30 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#sast"}},{"name":"License","score":9,"reason":"license file detected","details":["Info: project has a license file: LICENSE.md:0","Warn: project license file does not contain an FSF or OSI license."],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#license"}},{"name":"Signed-Releases","score":10,"reason":"2 out of the last 2 releases have a total of 2 signed artifacts.","details":["Info: provenance for release artifact: attestation-sbom-github-04653011a252ec62bfce5c76f0629ec6db58a8bc.intoto.jsonl: https://github.com/open-nudge/opentemplate/releases/tag/v0.1.5","Info: provenance for release artifact: attestation-sbom-github-3006e6878ed7f8af5f28f1a83155decd46b96f9f.intoto.jsonl: https://github.com/open-nudge/opentemplate/releases/tag/v0.1.3"],"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#signed-releases"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/release.yml:132"],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#packaging"}},{"name":"Branch-Protection","score":3,"reason":"branch protection is not maximal on development and all release branches","details":["Info: 'allow deletion' disabled on branch 'main'","Info: 'force pushes' disabled on branch 'main'","Warn: 'branch protection settings apply to administrators' is disabled on branch 'main'","Info: 'stale review dismissal' is required to merge on branch 'main'","Warn: branch 'main' does not require approvers","Info: codeowner review is required on branch 'main'","Warn: 'last push approval' is disabled on branch 'main'","Warn: no status checks found to merge onto branch 'main'","Info: PRs are required in order to make changes on branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#branch-protection"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#fuzzing"}},{"name":"Contributors","score":3,"reason":"project has 1 contributing companies or organizations -- score normalized to 3","details":["Info: found contributions from: open-nudge"],"documentation":{"short":"Determines if the project has a set of contributors from multiple organizations (e.g., companies).","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#contributors"}},{"name":"CI-Tests","score":10,"reason":"30 out of 30 merged PRs checked by a CI test -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project runs tests before pull requests are merged.","url":"https://github.com/ossf/scorecard/blob/ab2f6e92482462fe66246d9e32f642855a691dc1/docs/checks.md#ci-tests"}}]},"last_synced_at":"2025-08-26T00:25:51.782Z","repository_id":299132495,"created_at":"2025-08-26T00:25:51.782Z","updated_at":"2025-08-26T00:25:51.782Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":272158070,"owners_count":24883599,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-25T02:00:12.092Z","response_time":1107,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"},"owner_record":{"login":"open-nudge","name":"opennudge","uuid":"155011011","kind":"organization","description":"","email":"opensource@opennudge.com","website":null,"location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/155011011?v=4","repositories_count":1,"last_synced_at":"2025-04-25T19:38:49.625Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/open-nudge","funding_links":[],"total_stars":0,"followers":0,"following":0,"created_at":"2025-02-24T23:22:13.215Z","updated_at":"2025-04-25T19:38:49.625Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/open-nudge","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/open-nudge/repositories"},"tags":[{"name":"v0.1.5","sha":"04653011a252ec62bfce5c76f0629ec6db58a8bc","kind":"commit","published_at":"2025-07-13T11:56:02.000Z","download_url":"https://codeload.github.com/open-nudge/opentemplate/tar.gz/v0.1.5","html_url":"https://github.com/open-nudge/opentemplate/releases/tag/v0.1.5","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/open-nudge/opentemplate@v0.1.5","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/open-nudge%2Fopentemplate/tags/v0.1.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/open-nudge%2Fopentemplate/tags/v0.1.5/manifests"},{"name":"v0.1.4","sha":"49e64ee1c0d8c0b5d017f01801547e058e5b16ab","kind":"commit","published_at":"2025-07-13T11:36:25.000Z","download_url":"https://codeload.github.com/open-nudge/opentemplate/tar.gz/v0.1.4","html_url":"https://github.com/open-nudge/opentemplate/releases/tag/v0.1.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/open-nudge/opentemplate@v0.1.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/open-nudge%2Fopentemplate/tags/v0.1.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/open-nudge%2Fopentemplate/tags/v0.1.4/manifests"},{"name":"v0.1.3","sha":"3006e6878ed7f8af5f28f1a83155decd46b96f9f","kind":"commit","published_at":"2025-06-16T14:25:14.000Z","download_url":"https://codeload.github.com/open-nudge/opentemplate/tar.gz/v0.1.3","html_url":"https://github.com/open-nudge/opentemplate/releases/tag/v0.1.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/open-nudge/opentemplate@v0.1.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/open-nudge%2Fopentemplate/tags/v0.1.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/open-nudge%2Fopentemplate/tags/v0.1.3/manifests"},{"name":"v0.1.2","sha":"072a432f02c1bfe2b03703d6faf8ae512b00374b","kind":"commit","published_at":"2025-06-16T13:58:47.000Z","download_url":"https://codeload.github.com/open-nudge/opentemplate/tar.gz/v0.1.2","html_url":"https://github.com/open-nudge/opentemplate/releases/tag/v0.1.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/open-nudge/opentemplate@v0.1.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/open-nudge%2Fopentemplate/tags/v0.1.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/open-nudge%2Fopentemplate/tags/v0.1.2/manifests"},{"name":"v0.1.1","sha":"ffc23157b60d8d3dadb626d5ef52349baec74dfd","kind":"commit","published_at":"2025-06-16T13:46:58.000Z","download_url":"https://codeload.github.com/open-nudge/opentemplate/tar.gz/v0.1.1","html_url":"https://github.com/open-nudge/opentemplate/releases/tag/v0.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/open-nudge/opentemplate@v0.1.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/open-nudge%2Fopentemplate/tags/v0.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/open-nudge%2Fopentemplate/tags/v0.1.1/manifests"},{"name":"v0.1.0","sha":"87bc37513a823aad3268886003ce6e71a1052f29","kind":"commit","published_at":"2025-06-16T13:00:26.000Z","download_url":"https://codeload.github.com/open-nudge/opentemplate/tar.gz/v0.1.0","html_url":"https://github.com/open-nudge/opentemplate/releases/tag/v0.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/open-nudge/opentemplate@v0.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/open-nudge%2Fopentemplate/tags/v0.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/open-nudge%2Fopentemplate/tags/v0.1.0/manifests"}]},"repo_metadata_updated_at":"2025-08-26T01:24:34.024Z","dependent_packages_count":0,"downloads":22,"downloads_period":"last-month","dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":50.61471037684168,"dependent_packages_count":8.983075281838365,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":29.798892829340023},"purl":"pkg:pypi/opentemplate","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/pypi/opentemplate","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/pypi/opentemplate","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/pypi/opentemplate/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-08-15T02:09:24.989Z","issues_count":24,"pull_requests_count":22,"avg_time_to_close_issue":8340.304347826086,"avg_time_to_close_pull_request":1034.909090909091,"issues_closed_count":23,"pull_requests_closed_count":22,"pull_request_authors_count":1,"issue_authors_count":2,"avg_comments_per_issue":0.041666666666666664,"avg_comments_per_pull_request":0.0,"merged_pull_requests_count":22,"bot_issues_count":1,"bot_pull_requests_count":0,"past_year_issues_count":24,"past_year_pull_requests_count":22,"past_year_avg_time_to_close_issue":8340.304347826086,"past_year_avg_time_to_close_pull_request":1034.909090909091,"past_year_issues_closed_count":23,"past_year_pull_requests_closed_count":22,"past_year_pull_request_authors_count":1,"past_year_issue_authors_count":2,"past_year_avg_comments_per_issue":0.041666666666666664,"past_year_avg_comments_per_pull_request":0.0,"past_year_bot_issues_count":1,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":22,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/open-nudge%2Fopentemplate/issues","maintainers":[{"login":"szymonmaszke","count":45,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/szymonmaszke"}],"active_maintainers":[{"login":"szymonmaszke","count":45,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/szymonmaszke"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/opentemplate/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/opentemplate/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/opentemplate/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/opentemplate/related_packages","maintainers":[{"uuid":"opennudge","login":"opennudge","name":null,"email":null,"url":null,"packages_count":7,"html_url":"https://pypi.org/user/opennudge/","role":null,"created_at":"2025-06-16T14:47:08.856Z","updated_at":"2025-06-16T14:47:08.856Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/opennudge/packages"}],"registry":{"name":"pypi.org","url":"https://pypi.org","ecosystem":"pypi","default":true,"packages_count":725006,"maintainers_count":308320,"namespaces_count":0,"keywords_count":238006,"github":"pypi","metadata":{"funded_packages_count":50519},"icon_url":"https://github.com/pypi.png","created_at":"2022-04-04T15:19:23.364Z","updated_at":"2025-09-05T05:40:58.860Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/namespaces"}}],"commits":{"id":10472779,"full_name":"open-nudge/opentemplate","default_branch":"main","committers":[{"name":"Szymon Maszke","email":"github@maszke.co","login":"szymonmaszke","count":19},{"name":"github-actions[bot]","email":"github-actions[bot]","login":"github-actions[bot]","count":1}],"total_commits":20,"total_committers":2,"total_bot_commits":1,"total_bot_committers":1,"mean_commits":10.0,"dds":0.050000000000000044,"past_year_committers":[{"name":"Szymon Maszke","email":"github@maszke.co","login":"szymonmaszke","count":19},{"name":"github-actions[bot]","email":"github-actions[bot]","login":"github-actions[bot]","count":1}],"past_year_total_commits":20,"past_year_total_committers":2,"past_year_total_bot_commits":1,"past_year_total_bot_committers":1,"past_year_mean_commits":10.0,"past_year_dds":0.050000000000000044,"last_synced_at":"2025-06-27T04:36:58.034Z","last_synced_commit":"baf5a895079023f2161cb4140cf2853ac5fc1d80","created_at":"2025-06-26T12:08:20.571Z","updated_at":"2025-06-27T04:36:58.034Z","commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/open-nudge%2Fopentemplate/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2025-09-05T00:00:10.343Z","repositories_count":5480019,"commits_count":853389012,"contributors_count":31098138,"owners_count":906558,"icon_url":"https://github.com/github.png","host_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories"}},"issues_stats":{"full_name":"open-nudge/opentemplate","html_url":"https://github.com/open-nudge/opentemplate","last_synced_at":"2025-08-26T01:25:00.369Z","status":"error","issues_count":24,"pull_requests_count":22,"avg_time_to_close_issue":8340.304347826086,"avg_time_to_close_pull_request":1034.909090909091,"issues_closed_count":23,"pull_requests_closed_count":22,"pull_request_authors_count":1,"issue_authors_count":2,"avg_comments_per_issue":0.041666666666666664,"avg_comments_per_pull_request":0.0,"merged_pull_requests_count":22,"bot_issues_count":1,"bot_pull_requests_count":0,"past_year_issues_count":24,"past_year_pull_requests_count":22,"past_year_avg_time_to_close_issue":8340.304347826086,"past_year_avg_time_to_close_pull_request":1034.909090909091,"past_year_issues_closed_count":23,"past_year_pull_requests_closed_count":22,"past_year_pull_request_authors_count":1,"past_year_issue_authors_count":2,"past_year_avg_comments_per_issue":0.041666666666666664,"past_year_avg_comments_per_pull_request":0.0,"past_year_bot_issues_count":1,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":22,"created_at":"2025-06-26T12:08:20.728Z","updated_at":"2025-08-29T23:27:29.853Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/open-nudge%2Fopentemplate","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/open-nudge%2Fopentemplate/issues","issue_labels_count":{"easy":30,"high":29,"low":4,"normal":3,"template":2,"security":2,"config":2,"medium":1,"hard":1},"pull_request_labels_count":{"fix":40,"actions":23,"config":17,"deps":16,"feat":9,"tests":7,"docs":6,"security":4,"src":4,"python":3,"legal":2},"issue_author_associations_count":{"MEMBER":26,"CONTRIBUTOR":8,"NONE":2},"pull_request_author_associations_count":{"MEMBER":44,"CONTRIBUTOR":6},"issue_authors":{"szymonmaszke":34,"github-actions[bot]":2},"pull_request_authors":{"szymonmaszke":50},"host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2025-08-31T00:00:11.523Z","repositories_count":8447538,"issues_count":20889155,"pull_requests_count":52982947,"authors_count":8091196,"icon_url":"https://github.com/github.png","host_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories","owners_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/owners","authors_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors"},"past_year_issue_labels_count":{"easy":30,"high":29,"low":4,"normal":3,"template":2,"security":2,"config":2,"medium":1,"hard":1},"past_year_pull_request_labels_count":{"fix":40,"actions":23,"config":17,"deps":16,"feat":9,"tests":7,"docs":6,"security":4,"src":4,"python":3,"legal":2},"past_year_issue_author_associations_count":{"MEMBER":26,"CONTRIBUTOR":8,"NONE":2},"past_year_pull_request_author_associations_count":{"MEMBER":44,"CONTRIBUTOR":6},"past_year_issue_authors":{"szymonmaszke":34,"github-actions[bot]":2},"past_year_pull_request_authors":{"szymonmaszke":50},"maintainers":[{"login":"szymonmaszke","count":70,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/szymonmaszke"}],"active_maintainers":[{"login":"szymonmaszke","count":70,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/szymonmaszke"}]},"events":{"total":{"CreateEvent":36,"ReleaseEvent":4,"IssuesEvent":43,"WatchEvent":20,"DeleteEvent":19,"PushEvent":23,"PullRequestEvent":46},"last_year":{"CreateEvent":36,"ReleaseEvent":4,"IssuesEvent":43,"WatchEvent":20,"DeleteEvent":19,"PushEvent":23,"PullRequestEvent":46}},"keywords":["attestations","automation","best-practices","github-actions","hardened","intuitive","legal","linter","nudging","one-click","performance","pre-commit","python","reuse","sbom","security","simple","slsa","template"],"dependencies":[{"ecosystem":"actions","filepath":".github/actions/git-setup/action.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:48.357Z","updated_at":"2025-06-14T21:53:48.357Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/actions/git-setup/action.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/actions/pdm-compatibility/action.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:48.429Z","updated_at":"2025-06-14T21:53:48.429Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/actions/pdm-compatibility/action.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/actions/pdm-setup/action.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:48.472Z","updated_at":"2025-06-14T21:53:48.472Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/actions/pdm-setup/action.yml","dependencies":[{"id":23623537939,"package_name":"pdm-project/setup-pdm","ecosystem":"actions","requirements":"94a823180e06fcde4ad29308721954a521c96ed0","direct":true,"kind":"composite","optional":false},{"id":23623538295,"package_name":"open-nudge/opentemplate/.github/actions/pdm-compatibility","ecosystem":"actions","requirements":"main","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/actions/pull-request/action.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:49.762Z","updated_at":"2025-06-14T21:53:49.762Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/actions/pull-request/action.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/actions/release-sbom-setup/action.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:49.807Z","updated_at":"2025-06-14T21:53:49.807Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/actions/release-sbom-setup/action.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/actions/sarif-upload/action.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:49.851Z","updated_at":"2025-06-14T21:53:49.851Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/actions/sarif-upload/action.yml","dependencies":[{"id":23623538369,"package_name":"actions/upload-artifact","ecosystem":"actions","requirements":"ea165f8d65b6e75b540449e92b4886f43607fa02","direct":true,"kind":"composite","optional":false},{"id":23623538370,"package_name":"github/codeql-action/upload-sarif","ecosystem":"actions","requirements":"fca7ace96b7d713c7035871441bd52efbe39e27e","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/actions/template-setup/action.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:49.999Z","updated_at":"2025-06-14T21:53:49.999Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/actions/template-setup/action.yml","dependencies":[{"id":23623538372,"package_name":"pdm-project/setup-pdm","ecosystem":"actions","requirements":"94a823180e06fcde4ad29308721954a521c96ed0","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/cache-item-reusable.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:50.058Z","updated_at":"2025-06-14T21:53:50.058Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/cache-item-reusable.yml","dependencies":[{"id":23623538507,"package_name":"step-security/harden-runner","ecosystem":"actions","requirements":"0634a2670c59f64b4a01f0f96f84700a4088b9f0","direct":true,"kind":"composite","optional":false},{"id":23623538515,"package_name":"actions/checkout","ecosystem":"actions","requirements":"11bd71901bbe5b1630ceea73d27597364c9af683","direct":true,"kind":"composite","optional":false},{"id":23623538516,"package_name":"open-nudge/opentemplate/.github/actions/pdm-setup","ecosystem":"actions","requirements":"main","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/cache-reusable.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:50.248Z","updated_at":"2025-06-14T21:53:50.248Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/cache-reusable.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/cache-test.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:50.292Z","updated_at":"2025-06-14T21:53:50.292Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/cache-test.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/cache.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:50.337Z","updated_at":"2025-06-14T21:53:50.337Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/cache.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/citation-renovate.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:50.381Z","updated_at":"2025-06-14T21:53:50.381Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/citation-renovate.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/citation-reusable.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:50.425Z","updated_at":"2025-06-14T21:53:50.425Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/citation-reusable.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/citation.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:50.470Z","updated_at":"2025-06-14T21:53:50.470Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/citation.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/code-renovate.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:50.516Z","updated_at":"2025-06-14T21:53:50.516Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/code-renovate.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/code-reusable.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:50.562Z","updated_at":"2025-06-14T21:53:50.562Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/code-reusable.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/code.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:50.609Z","updated_at":"2025-06-14T21:53:50.609Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/code.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/commit-renovate.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:50.655Z","updated_at":"2025-06-14T21:53:50.655Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/commit-renovate.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/commit-reusable.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:50.702Z","updated_at":"2025-06-14T21:53:50.702Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/commit-reusable.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/commit.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:50.746Z","updated_at":"2025-06-14T21:53:50.746Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/commit.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/docs-renovate.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:50.789Z","updated_at":"2025-06-14T21:53:50.789Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/docs-renovate.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/docs-reusable.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:50.831Z","updated_at":"2025-06-14T21:53:50.831Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/docs-reusable.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/docs.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:50.907Z","updated_at":"2025-06-14T21:53:50.907Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/docs.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/generation-renovate.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:50.950Z","updated_at":"2025-06-14T21:53:50.950Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/generation-renovate.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/generation-reusable.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:50.995Z","updated_at":"2025-06-14T21:53:50.995Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/generation-reusable.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/generation-update-reusable.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:51.037Z","updated_at":"2025-06-14T21:53:51.037Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/generation-update-reusable.yml","dependencies":[{"id":23623539253,"package_name":"step-security/harden-runner","ecosystem":"actions","requirements":"0634a2670c59f64b4a01f0f96f84700a4088b9f0","direct":true,"kind":"composite","optional":false},{"id":23623539254,"package_name":"actions/checkout","ecosystem":"actions","requirements":"11bd71901bbe5b1630ceea73d27597364c9af683","direct":true,"kind":"composite","optional":false},{"id":23623539255,"package_name":"open-nudge/opentemplate/.github/actions/git-setup","ecosystem":"actions","requirements":"main","direct":true,"kind":"composite","optional":false},{"id":23623539256,"package_name":"open-nudge/opentemplate/.github/actions/pdm-setup","ecosystem":"actions","requirements":"main","direct":true,"kind":"composite","optional":false},{"id":23623539257,"package_name":"open-nudge/opentemplate/.github/actions/pull-request","ecosystem":"actions","requirements":"main","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/generation-update-test.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:51.092Z","updated_at":"2025-06-14T21:53:51.092Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/generation-update-test.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/generation-update.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:51.144Z","updated_at":"2025-06-14T21:53:51.144Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/generation-update.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/generation.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:51.188Z","updated_at":"2025-06-14T21:53:51.188Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/generation.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/github-actionlint.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:51.233Z","updated_at":"2025-06-14T21:53:51.233Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/github-actionlint.yml","dependencies":[{"id":23623539301,"package_name":"step-security/harden-runner","ecosystem":"actions","requirements":"0634a2670c59f64b4a01f0f96f84700a4088b9f0","direct":true,"kind":"composite","optional":false},{"id":23623539302,"package_name":"actions/checkout","ecosystem":"actions","requirements":"11bd71901bbe5b1630ceea73d27597364c9af683","direct":true,"kind":"composite","optional":false},{"id":23623539303,"package_name":"docker://rhysd/actionlint","ecosystem":"actions","requirements":"1.7.1","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/github-actions-reusable.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:51.702Z","updated_at":"2025-06-14T21:53:51.702Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/github-actions-reusable.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/github-actions.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:51.746Z","updated_at":"2025-06-14T21:53:51.746Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/github-actions.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/github-all-renovate.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:51.791Z","updated_at":"2025-06-14T21:53:51.791Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/github-all-renovate.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/github-renovate-reusable.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:51.873Z","updated_at":"2025-06-14T21:53:51.873Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/github-renovate-reusable.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/github-renovate.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:51.950Z","updated_at":"2025-06-14T21:53:51.950Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/github-renovate.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/github-reusable.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:51.994Z","updated_at":"2025-06-14T21:53:51.994Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/github-reusable.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/github-workflows-reusable.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:52.037Z","updated_at":"2025-06-14T21:53:52.037Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/github-workflows-reusable.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/github-workflows.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:52.083Z","updated_at":"2025-06-14T21:53:52.083Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/github-workflows.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/github.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:52.132Z","updated_at":"2025-06-14T21:53:52.132Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/github.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/harden.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:52.175Z","updated_at":"2025-06-14T21:53:52.175Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/harden.yml","dependencies":[{"id":23623539465,"package_name":"step-security/harden-runner","ecosystem":"actions","requirements":"0634a2670c59f64b4a01f0f96f84700a4088b9f0","direct":true,"kind":"composite","optional":false},{"id":23623539466,"package_name":"actions/checkout","ecosystem":"actions","requirements":"11bd71901bbe5b1630ceea73d27597364c9af683","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/ini-renovate.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:52.231Z","updated_at":"2025-06-14T21:53:52.231Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/ini-renovate.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/ini-reusable.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:52.275Z","updated_at":"2025-06-14T21:53:52.275Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/ini-reusable.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/ini.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:52.318Z","updated_at":"2025-06-14T21:53:52.318Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/ini.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/labeler.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:52.361Z","updated_at":"2025-06-14T21:53:52.361Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/labeler.yml","dependencies":[{"id":23623539505,"package_name":"step-security/harden-runner","ecosystem":"actions","requirements":"0634a2670c59f64b4a01f0f96f84700a4088b9f0","direct":true,"kind":"composite","optional":false},{"id":23623539506,"package_name":"actions/checkout","ecosystem":"actions","requirements":"11bd71901bbe5b1630ceea73d27597364c9af683","direct":true,"kind":"composite","optional":false},{"id":23623539507,"package_name":"actions/labeler","ecosystem":"actions","requirements":"8558fd74291d67161a8a78ce36a881fa63b766a9","direct":true,"kind":"composite","optional":false},{"id":23623539508,"package_name":"github/issue-labeler","ecosystem":"actions","requirements":"c1b0f9f52a63158c4adc09425e858e87b32e9685","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/legal-renovate.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:52.680Z","updated_at":"2025-06-14T21:53:52.680Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/legal-renovate.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/legal-reusable.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:52.722Z","updated_at":"2025-06-14T21:53:52.722Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/legal-reusable.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/legal.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:52.768Z","updated_at":"2025-06-14T21:53:52.768Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/legal.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/markdown-renovate.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:52.811Z","updated_at":"2025-06-14T21:53:52.811Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/markdown-renovate.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/markdown-reusable.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:52.854Z","updated_at":"2025-06-14T21:53:52.854Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/markdown-reusable.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/markdown.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:52.962Z","updated_at":"2025-06-14T21:53:52.962Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/markdown.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/policy.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:53.014Z","updated_at":"2025-06-14T21:53:53.014Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/policy.yml","dependencies":[{"id":23623539715,"package_name":"step-security/harden-runner","ecosystem":"actions","requirements":"0634a2670c59f64b4a01f0f96f84700a4088b9f0","direct":true,"kind":"composite","optional":false},{"id":23623539716,"package_name":"actions/checkout","ecosystem":"actions","requirements":"11bd71901bbe5b1630ceea73d27597364c9af683","direct":true,"kind":"composite","optional":false},{"id":23623539717,"package_name":"siderolabs/conform","ecosystem":"actions","requirements":"43d9fb6d85d5f01b391245805eefd258db160197","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/pre-commit-config.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:53.099Z","updated_at":"2025-06-14T21:53:53.099Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/pre-commit-config.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/pre-commit-hooks.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:53.142Z","updated_at":"2025-06-14T21:53:53.142Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/pre-commit-hooks.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/pre-commit-reusable.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:53.185Z","updated_at":"2025-06-14T21:53:53.185Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/pre-commit-reusable.yml","dependencies":[{"id":23623540155,"package_name":"step-security/harden-runner","ecosystem":"actions","requirements":"0634a2670c59f64b4a01f0f96f84700a4088b9f0","direct":true,"kind":"composite","optional":false},{"id":23623540159,"package_name":"actions/checkout","ecosystem":"actions","requirements":"11bd71901bbe5b1630ceea73d27597364c9af683","direct":true,"kind":"composite","optional":false},{"id":23623540162,"package_name":"open-nudge/opentemplate/.github/actions/git-setup","ecosystem":"actions","requirements":"main","direct":true,"kind":"composite","optional":false},{"id":23623540165,"package_name":"open-nudge/opentemplate/.github/actions/pdm-setup","ecosystem":"actions","requirements":"main","direct":true,"kind":"composite","optional":false},{"id":23623540166,"package_name":"open-nudge/opentemplate/.github/actions/pull-request","ecosystem":"actions","requirements":"main","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/pre-commit-update.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:53.250Z","updated_at":"2025-06-14T21:53:53.250Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/pre-commit-update.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/pre-commit.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:53.293Z","updated_at":"2025-06-14T21:53:53.293Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/pre-commit.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/prose.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:53.336Z","updated_at":"2025-06-14T21:53:53.336Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/prose.yml","dependencies":[{"id":23623540691,"package_name":"actions/checkout","ecosystem":"actions","requirements":"11bd71901bbe5b1630ceea73d27597364c9af683","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/pull-request.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:53.393Z","updated_at":"2025-06-14T21:53:53.393Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/pull-request.yml","dependencies":[{"id":23623540697,"package_name":"step-security/harden-runner","ecosystem":"actions","requirements":"0634a2670c59f64b4a01f0f96f84700a4088b9f0","direct":true,"kind":"composite","optional":false},{"id":23623540698,"package_name":"amannn/action-semantic-pull-request","ecosystem":"actions","requirements":"0723387faaf9b38adef4775cd42cfd5155ed6017","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/pyproject-renovate.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:53.448Z","updated_at":"2025-06-14T21:53:53.448Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/pyproject-renovate.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/pyproject-reusable.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:53.491Z","updated_at":"2025-06-14T21:53:53.491Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/pyproject-reusable.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/pyproject.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:53.536Z","updated_at":"2025-06-14T21:53:53.536Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/pyproject.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/python-renovate.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:53.582Z","updated_at":"2025-06-14T21:53:53.582Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/python-renovate.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/python-reusable.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:53.626Z","updated_at":"2025-06-14T21:53:53.626Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/python-reusable.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/python.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:53.671Z","updated_at":"2025-06-14T21:53:53.671Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/python.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/release-check-renovate.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:53.717Z","updated_at":"2025-06-14T21:53:53.717Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/release-check-renovate.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/release-check-reusable.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:53.761Z","updated_at":"2025-06-14T21:53:53.761Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/release-check-reusable.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/release-check.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:53.804Z","updated_at":"2025-06-14T21:53:53.804Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/release-check.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/release-sarifs-reusable.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:53.847Z","updated_at":"2025-06-14T21:53:53.847Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/release-sarifs-reusable.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/release-sbom-attest-reusable.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:53.896Z","updated_at":"2025-06-14T21:53:53.896Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/release-sbom-attest-reusable.yml","dependencies":[{"id":23623540711,"package_name":"step-security/harden-runner","ecosystem":"actions","requirements":"0634a2670c59f64b4a01f0f96f84700a4088b9f0","direct":true,"kind":"composite","optional":false},{"id":23623540712,"package_name":"actions/download-artifact","ecosystem":"actions","requirements":"d3f86a106a0bac45b974a628896c90dbdf5c8093","direct":true,"kind":"composite","optional":false},{"id":23623540713,"package_name":"actions/attest-sbom","ecosystem":"actions","requirements":"115c3be05ff3974bcbd596578934b3f9ce39bf68","direct":true,"kind":"composite","optional":false},{"id":23623540726,"package_name":"actions/upload-artifact","ecosystem":"actions","requirements":"ea165f8d65b6e75b540449e92b4886f43607fa02","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/release-sbom-run-reusable.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:54.059Z","updated_at":"2025-06-14T21:53:54.059Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/release-sbom-run-reusable.yml","dependencies":[{"id":23623540729,"package_name":"step-security/harden-runner","ecosystem":"actions","requirements":"0634a2670c59f64b4a01f0f96f84700a4088b9f0","direct":true,"kind":"composite","optional":false},{"id":23623540730,"package_name":"actions/checkout","ecosystem":"actions","requirements":"11bd71901bbe5b1630ceea73d27597364c9af683","direct":true,"kind":"composite","optional":false},{"id":23623540731,"package_name":"open-nudge/opentemplate/.github/actions/git-setup","ecosystem":"actions","requirements":"main","direct":true,"kind":"composite","optional":false},{"id":23623540732,"package_name":"open-nudge/opentemplate/.github/actions/pdm-setup","ecosystem":"actions","requirements":"main","direct":true,"kind":"composite","optional":false},{"id":23623540733,"package_name":"open-nudge/opentemplate/.github/actions/pdm-compatibility","ecosystem":"actions","requirements":"main","direct":true,"kind":"composite","optional":false},{"id":23623540734,"package_name":"open-nudge/opentemplate/.github/actions/release-sbom-setup","ecosystem":"actions","requirements":"main","direct":true,"kind":"composite","optional":false},{"id":23623540735,"package_name":"actions/upload-artifact","ecosystem":"actions","requirements":"ea165f8d65b6e75b540449e92b4886f43607fa02","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/release-sboms-reusable.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:54.116Z","updated_at":"2025-06-14T21:53:54.116Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/release-sboms-reusable.yml","dependencies":[{"id":23623540738,"package_name":"step-security/harden-runner","ecosystem":"actions","requirements":"0634a2670c59f64b4a01f0f96f84700a4088b9f0","direct":true,"kind":"composite","optional":false},{"id":23623540739,"package_name":"actions/checkout","ecosystem":"actions","requirements":"11bd71901bbe5b1630ceea73d27597364c9af683","direct":true,"kind":"composite","optional":false},{"id":23623540740,"package_name":"open-nudge/opentemplate/.github/actions/release-sbom-setup","ecosystem":"actions","requirements":"main","direct":true,"kind":"composite","optional":false},{"id":23623540741,"package_name":"actions/upload-artifact","ecosystem":"actions","requirements":"ea165f8d65b6e75b540449e92b4886f43607fa02","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/release-sboms-test.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:54.171Z","updated_at":"2025-06-14T21:53:54.171Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/release-sboms-test.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/release-slsa-provenance-reusable.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:54.215Z","updated_at":"2025-06-14T21:53:54.215Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/release-slsa-provenance-reusable.yml","dependencies":[{"id":23623540743,"package_name":"step-security/harden-runner","ecosystem":"actions","requirements":"0634a2670c59f64b4a01f0f96f84700a4088b9f0","direct":true,"kind":"composite","optional":false},{"id":23623540744,"package_name":"actions/download-artifact","ecosystem":"actions","requirements":"d3f86a106a0bac45b974a628896c90dbdf5c8093","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/release-slsa-provenance-test.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:54.273Z","updated_at":"2025-06-14T21:53:54.273Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/release-slsa-provenance-test.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/release-upload.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:54.316Z","updated_at":"2025-06-14T21:53:54.316Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/release-upload.yml","dependencies":[{"id":23623540746,"package_name":"step-security/harden-runner","ecosystem":"actions","requirements":"0634a2670c59f64b4a01f0f96f84700a4088b9f0","direct":true,"kind":"composite","optional":false},{"id":23623540747,"package_name":"actions/checkout","ecosystem":"actions","requirements":"11bd71901bbe5b1630ceea73d27597364c9af683","direct":true,"kind":"composite","optional":false},{"id":23623540748,"package_name":"actions/download-artifact","ecosystem":"actions","requirements":"d3f86a106a0bac45b974a628896c90dbdf5c8093","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/release.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:54.370Z","updated_at":"2025-06-14T21:53:54.370Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/release.yml","dependencies":[{"id":23623540749,"package_name":"step-security/harden-runner","ecosystem":"actions","requirements":"0634a2670c59f64b4a01f0f96f84700a4088b9f0","direct":true,"kind":"composite","optional":false},{"id":23623540750,"package_name":"actions/download-artifact","ecosystem":"actions","requirements":"d3f86a106a0bac45b974a628896c90dbdf5c8093","direct":true,"kind":"composite","optional":false},{"id":23623540751,"package_name":"pypa/gh-action-pypi-publish","ecosystem":"actions","requirements":"76f52bc884231f62b9a034ebfe128415bbaabdfc","direct":true,"kind":"composite","optional":false},{"id":23623540752,"package_name":"actions/upload-artifact","ecosystem":"actions","requirements":"ea165f8d65b6e75b540449e92b4886f43607fa02","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/renovate.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:54.439Z","updated_at":"2025-06-14T21:53:54.439Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/renovate.yml","dependencies":[{"id":23623540753,"package_name":"step-security/harden-runner","ecosystem":"actions","requirements":"0634a2670c59f64b4a01f0f96f84700a4088b9f0","direct":true,"kind":"composite","optional":false},{"id":23623540754,"package_name":"actions/checkout","ecosystem":"actions","requirements":"11bd71901bbe5b1630ceea73d27597364c9af683","direct":true,"kind":"composite","optional":false},{"id":23623540755,"package_name":"suzuki-shunsuke/github-action-renovate-config-validator","ecosystem":"actions","requirements":"c22827f47f4f4a5364bdba19e1fe36907ef1318e","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/run-check-reusable.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:54.666Z","updated_at":"2025-06-14T21:53:54.666Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/run-check-reusable.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/run-reusable.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:54.724Z","updated_at":"2025-06-14T21:53:54.724Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/run-reusable.yml","dependencies":[{"id":23623540762,"package_name":"step-security/harden-runner","ecosystem":"actions","requirements":"0634a2670c59f64b4a01f0f96f84700a4088b9f0","direct":true,"kind":"composite","optional":false},{"id":23623540763,"package_name":"actions/checkout","ecosystem":"actions","requirements":"11bd71901bbe5b1630ceea73d27597364c9af683","direct":true,"kind":"composite","optional":false},{"id":23623540764,"package_name":"open-nudge/opentemplate/.github/actions/git-setup","ecosystem":"actions","requirements":"main","direct":true,"kind":"composite","optional":false},{"id":23623540765,"package_name":"open-nudge/opentemplate/.github/actions/pdm-setup","ecosystem":"actions","requirements":"main","direct":true,"kind":"composite","optional":false},{"id":23623540766,"package_name":"open-nudge/opentemplate/.github/actions/pdm-compatibility","ecosystem":"actions","requirements":"main","direct":true,"kind":"composite","optional":false},{"id":23623540767,"package_name":"actions/download-artifact","ecosystem":"actions","requirements":"d3f86a106a0bac45b974a628896c90dbdf5c8093","direct":true,"kind":"composite","optional":false},{"id":23623540768,"package_name":"actions/upload-artifact","ecosystem":"actions","requirements":"ea165f8d65b6e75b540449e92b4886f43607fa02","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/security-osv-scanner-reusable.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:54.780Z","updated_at":"2025-06-14T21:53:54.780Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/security-osv-scanner-reusable.yml","dependencies":[{"id":23623540771,"package_name":"step-security/harden-runner","ecosystem":"actions","requirements":"0634a2670c59f64b4a01f0f96f84700a4088b9f0","direct":true,"kind":"composite","optional":false},{"id":23623540772,"package_name":"actions/checkout","ecosystem":"actions","requirements":"11bd71901bbe5b1630ceea73d27597364c9af683","direct":true,"kind":"composite","optional":false},{"id":23623540773,"package_name":"google/osv-scanner/actions/scanner","ecosystem":"actions","requirements":"a2a23858b9650035f019219937f91ae615474b4d","direct":true,"kind":"composite","optional":false},{"id":23623540780,"package_name":"open-nudge/opentemplate/.github/actions/sarif-upload","ecosystem":"actions","requirements":"main","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/security-osv-scanner-update.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:55.337Z","updated_at":"2025-06-14T21:53:55.337Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/security-osv-scanner-update.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/security-osv-scanner.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:55.391Z","updated_at":"2025-06-14T21:53:55.391Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/security-osv-scanner.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/security-scorecard-reusable.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:55.436Z","updated_at":"2025-06-14T21:53:55.436Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/security-scorecard-reusable.yml","dependencies":[{"id":23623540782,"package_name":"step-security/harden-runner","ecosystem":"actions","requirements":"0634a2670c59f64b4a01f0f96f84700a4088b9f0","direct":true,"kind":"composite","optional":false},{"id":23623540783,"package_name":"actions/checkout","ecosystem":"actions","requirements":"11bd71901bbe5b1630ceea73d27597364c9af683","direct":true,"kind":"composite","optional":false},{"id":23623540784,"package_name":"ossf/scorecard-action","ecosystem":"actions","requirements":"05b42c624433fc40578a4040d5cf5e36ddca8cde","direct":true,"kind":"composite","optional":false},{"id":23623540785,"package_name":"actions/upload-artifact","ecosystem":"actions","requirements":"ea165f8d65b6e75b540449e92b4886f43607fa02","direct":true,"kind":"composite","optional":false},{"id":23623540786,"package_name":"github/codeql-action/upload-sarif","ecosystem":"actions","requirements":"fca7ace96b7d713c7035871441bd52efbe39e27e","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/security-scorecard-test.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:55.491Z","updated_at":"2025-06-14T21:53:55.491Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/security-scorecard-test.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/security-scorecard-update.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:55.537Z","updated_at":"2025-06-14T21:53:55.537Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/security-scorecard-update.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/security-secrets.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:55.581Z","updated_at":"2025-06-14T21:53:55.581Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/security-secrets.yml","dependencies":[{"id":23623540790,"package_name":"step-security/harden-runner","ecosystem":"actions","requirements":"0634a2670c59f64b4a01f0f96f84700a4088b9f0","direct":true,"kind":"composite","optional":false},{"id":23623540791,"package_name":"actions/checkout","ecosystem":"actions","requirements":"11bd71901bbe5b1630ceea73d27597364c9af683","direct":true,"kind":"composite","optional":false},{"id":23623540792,"package_name":"trufflesecurity/trufflehog","ecosystem":"actions","requirements":"90694bf9af66e7536abc5824e7a87246dbf933cb","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/security-semgrep-renovate.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:55.637Z","updated_at":"2025-06-14T21:53:55.637Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/security-semgrep-renovate.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/security-semgrep-reusable.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:55.680Z","updated_at":"2025-06-14T21:53:55.680Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/security-semgrep-reusable.yml","dependencies":[{"id":23623540797,"package_name":"step-security/harden-runner","ecosystem":"actions","requirements":"0634a2670c59f64b4a01f0f96f84700a4088b9f0","direct":true,"kind":"composite","optional":false},{"id":23623540798,"package_name":"actions/checkout","ecosystem":"actions","requirements":"11bd71901bbe5b1630ceea73d27597364c9af683","direct":true,"kind":"composite","optional":false},{"id":23623540799,"package_name":"open-nudge/opentemplate/.github/actions/pdm-setup","ecosystem":"actions","requirements":"main","direct":true,"kind":"composite","optional":false},{"id":23623540800,"package_name":"open-nudge/opentemplate/.github/actions/pdm-compatibility","ecosystem":"actions","requirements":"main","direct":true,"kind":"composite","optional":false},{"id":23623540801,"package_name":"open-nudge/opentemplate/.github/actions/sarif-upload","ecosystem":"actions","requirements":"main","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/security-semgrep-update.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:55.740Z","updated_at":"2025-06-14T21:53:55.740Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/security-semgrep-update.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/security-semgrep.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:55.784Z","updated_at":"2025-06-14T21:53:55.784Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/security-semgrep.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/shell-renovate.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:55.827Z","updated_at":"2025-06-14T21:53:55.827Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/shell-renovate.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/shell-reusable.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:55.872Z","updated_at":"2025-06-14T21:53:55.872Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/shell-reusable.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/shell.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:55.917Z","updated_at":"2025-06-14T21:53:55.917Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/shell.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/stale.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:55.962Z","updated_at":"2025-06-14T21:53:55.962Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/stale.yml","dependencies":[{"id":23623540822,"package_name":"step-security/harden-runner","ecosystem":"actions","requirements":"0634a2670c59f64b4a01f0f96f84700a4088b9f0","direct":true,"kind":"composite","optional":false},{"id":23623540823,"package_name":"actions/stale","ecosystem":"actions","requirements":"5bef64f19d7facfb25b37b414482c7164d639639","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/template-setup.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:56.016Z","updated_at":"2025-06-14T21:53:56.016Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/template-setup.yml","dependencies":[{"id":23623540824,"package_name":"step-security/harden-runner","ecosystem":"actions","requirements":"0634a2670c59f64b4a01f0f96f84700a4088b9f0","direct":true,"kind":"composite","optional":false},{"id":23623540825,"package_name":"actions/checkout","ecosystem":"actions","requirements":"11bd71901bbe5b1630ceea73d27597364c9af683","direct":true,"kind":"composite","optional":false},{"id":23623540826,"package_name":"open-nudge/opentemplate/.github/actions/template-setup","ecosystem":"actions","requirements":"main","direct":true,"kind":"composite","optional":false},{"id":23623540827,"package_name":"open-nudge/opentemplate/.github/actions/git-setup","ecosystem":"actions","requirements":"main","direct":true,"kind":"composite","optional":false},{"id":23623540830,"package_name":"actions/setup-python","ecosystem":"actions","requirements":"a26af69be951a213d495a4c3e4e4022e16d87065","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/template-test.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:56.130Z","updated_at":"2025-06-14T21:53:56.130Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/template-test.yml","dependencies":[{"id":23623540834,"package_name":"step-security/harden-runner","ecosystem":"actions","requirements":"0634a2670c59f64b4a01f0f96f84700a4088b9f0","direct":true,"kind":"composite","optional":false},{"id":23623540835,"package_name":"actions/checkout","ecosystem":"actions","requirements":"11bd71901bbe5b1630ceea73d27597364c9af683","direct":true,"kind":"composite","optional":false},{"id":23623540836,"package_name":"open-nudge/opentemplate/.github/actions/git-setup","ecosystem":"actions","requirements":"main","direct":true,"kind":"composite","optional":false},{"id":23623540837,"package_name":"open-nudge/opentemplate/.github/actions/template-setup","ecosystem":"actions","requirements":"main","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/template-update-reusable.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:56.187Z","updated_at":"2025-06-14T21:53:56.187Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/template-update-reusable.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/template-update.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:56.239Z","updated_at":"2025-06-14T21:53:56.239Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/template-update.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/tests-renovate.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:56.283Z","updated_at":"2025-06-14T21:53:56.283Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/tests-renovate.yml","dependencies":[]},{"ecosystem":"actions","filepath":".github/workflows/tests-reusable.yml","sha":null,"kind":"manifest","created_at":"2025-06-14T21:53:56.326Z","updated_at":"2025-06-14T21:53:56.326Z","repository_link":"https://github.com/open-nudge/opentemplate/blob/main/.github/workflows/tests-reusable.yml","dependencies":[]}],"score":7.124478262493424,"created_at":"2025-09-04T15:51:07.840Z","updated_at":"2025-10-07T08:14:25.218Z","avatar_url":"https://github.com/open-nudge.png","language":"Shell","category":null,"sub_category":null,"monthly_downloads":22,"funding_links":[],"readme_doi_urls":[],"works":{},"citation_counts":{},"total_citations":0,"keywords_from_contributors":[],"project_url":"https://science.ecosyste.ms/api/v1/projects/34453","html_url":"https://science.ecosyste.ms/projects/34453","bibtex_url":"https://science.ecosyste.ms/projects/34453/export.bibtex","apalike_url":"https://science.ecosyste.ms/projects/34453/export.apalike"}