Claude-skill-registry enterprise-readiness
Assess and enhance software projects for enterprise-grade security, quality, and automation. This skill should be used when evaluating projects for production readiness, implementing supply chain security (SLSA, signing, SBOMs), hardening CI/CD pipelines, establishing quality gates, reviewing code or PRs, writing documentation (ADRs, changelogs, migration guides), or pursuing OpenSSF Best Practices Badge. Aligned with OpenSSF Scorecard, Best Practices Badge (all levels), SLSA, and S2C2F. By Netresearch.
git clone https://github.com/majiayu000/claude-skill-registry
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/enterprise-readiness" ~/.claude/skills/majiayu000-claude-skill-registry-enterprise-readiness && rm -rf "$T"
skills/data/enterprise-readiness/SKILL.mdEnterprise Readiness Assessment
When to Use
- Evaluating projects for production/enterprise readiness
- Implementing supply chain security (SLSA, signing, SBOMs)
- Hardening CI/CD pipelines
- Establishing quality gates
- Pursuing OpenSSF Best Practices Badge (Passing/Silver/Gold)
- Reviewing code or PRs for quality
- Writing ADRs, changelogs, or migration guides
- Configuring Git hooks or CI pipelines
MANDATORY Requirements
CRITICAL: The following are NOT optional. Every project MUST have ALL of these. Do not skip any.
README Badges (MANDATORY)
Every project README.md MUST display these badges at the top, in this order:
<!-- Row 1: CI/Quality --> [](https://github.com/ORG/REPO/actions/workflows/ci.yml) [](https://codecov.io/gh/ORG/REPO) <!-- Row 2: Security (MANDATORY) --> [](https://securityscorecards.dev/viewer/?uri=github.com/ORG/REPO) [](https://www.bestpractices.dev/projects/PROJECT_ID)
| Badge | URL Pattern | MANDATORY |
|---|---|---|
| CI Status | | YES |
| Codecov | | YES |
| OpenSSF Scorecard | | YES |
| OpenSSF Best Practices | | YES |
CI/CD Workflows (MANDATORY)
Every GitHub project MUST have these workflows in
.github/workflows/:
| Workflow | File | Purpose | MANDATORY |
|---|---|---|---|
| CI | | Build, test, lint | YES |
| CodeQL | | Security scanning | YES |
| Scorecard | | OpenSSF Scorecard | YES |
| Dependency Review | | PR CVE check | YES |
CI Must Include (MANDATORY)
| Requirement | Implementation | MANDATORY |
|---|---|---|
| Coverage upload | after tests | YES |
| Security audit | / / | YES |
| SHA-pinned actions | All actions use full SHA with version comment | YES |
OpenSSF Registration (MANDATORY)
- Register at bestpractices.dev: https://www.bestpractices.dev/en/projects/new
- Note the Project ID assigned after registration
- Add badge to README with correct PROJECT_ID
- Run Scorecard workflow to generate initial score
Codecov Setup (MANDATORY)
- Enable Codecov for the repository at codecov.io
- Collect coverage from ALL test suites (not just unit tests):
| Test Suite | Coverage Command | Output File | MANDATORY |
|---|---|---|---|
| Unit | | | YES |
| Integration | | | YES |
| E2E | | | YES |
| Functional | | | YES |
| JavaScript | | | YES (if JS exists) |
- Upload ALL coverage files to Codecov:
- uses: codecov/codecov-action@SHA # vX.Y.Z with: token: ${{ secrets.CODECOV_TOKEN }} # MANDATORY - see below files: .Build/coverage/unit.xml,.Build/coverage/integration.xml,.Build/coverage/e2e.xml,coverage/lcov.info fail_ci_if_error: false
CODECOV_TOKEN (MANDATORY)
Never rely on tokenless uploads. They fail for protected branches and are unreliable.
| Requirement | Implementation | Why |
|---|---|---|
| Token in secrets | Add to repo or org secrets | Authentication |
| Token in workflow | | Required for protected branches |
| Org-level secret | Preferred for consistency across repos | Single point of management |
Failure without token:
Upload failed: {"message":"Token required because branch is protected"}
Get token from: https://app.codecov.io/gh/ORG/REPO/settings
Add as org secret (recommended):
# Organization-level (covers all repos) gh secret set CODECOV_TOKEN --org netresearch --visibility all # Or repository-level gh secret set CODECOV_TOKEN --repo OWNER/REPO
JavaScript Coverage (MANDATORY for projects with JS/TS)
When a project contains JavaScript or TypeScript files:
-
vitest.config.js MUST include lcov reporter for Codecov:
coverage: { provider: 'v8', reporter: ['text', 'json', 'html', 'lcov'], // lcov REQUIRED for Codecov reportsDirectory: 'coverage', } -
CI workflow MUST include JavaScript test job:
- uses: actions/setup-node@SHA # vX.Y.Z with: node-version: '22' - run: npm install - run: npm run test:coverage -
Codecov upload MUST include
coverage/lcov.info
Verification Checklist
Before marking enterprise-readiness complete, verify ALL:
- README has CI badge linking to workflow
- README has Codecov badge (not "unknown")
- README has OpenSSF Scorecard badge (correct URL with
)api.securityscorecards.dev - README has OpenSSF Best Practices badge (correct PROJECT_ID, not placeholder)
-
exists and uploads coverage.github/workflows/ci.yml -
exists.github/workflows/codeql.yml -
exists.github/workflows/scorecard.yml - Codecov shows actual coverage percentage
- Scorecard shows actual score
If any badge shows "unknown", "invalid", or placeholder ID - FIX IT. Do not proceed.
Assessment Workflow
- Discovery: Identify platform (GitHub/GitLab), languages, existing CI/CD
- Scoring: Apply checklists from references based on stack
- Badge Assessment: Check OpenSSF criteria status
- Gap Analysis: List missing controls by severity
- Implementation: Apply fixes using scripts and templates
Dependency CVE Workflow
When assessing enterprise readiness, always run dependency audit as part of discovery:
# PHP/Composer composer audit # Node.js npm audit # Python pip-audit # Go govulncheck ./...
CVE Handling Best Practice
Separate dependency updates from code changes:
| PR Type | Content | Why |
|---|---|---|
| Code changes | Business logic, bug fixes, features | Reviewable, testable in isolation |
| Dependency updates | , version bumps | Clear diff, easy rollback if issues |
Real-world example from t3x-cowriter review:
- Found 4 CVEs during enterprise assessment
- CVE fixes required
composer update typo3/cms-core typo3/cms-backend - Kept separate from code fixes (JS bug, AGENTS.md updates) for clean PR history
CVE Severity Response
| Severity | Response Time | Action |
|---|---|---|
| CRITICAL | Immediate | Hotfix PR, expedited review |
| HIGH | 24-48 hours | Priority PR, security review |
| MEDIUM | 1 week | Normal PR cycle |
| LOW | Next release | Batch with other updates |
CI Integration
Add dependency audit to CI pipeline:
# .github/workflows/ci.yml - name: Security audit run: composer audit --format=plain
Reference Files (Load Based on Stack)
| Reference | When to Load |
|---|---|
| Always (universal 60 pts) |
| GitHub-hosted projects (40 pts) |
| Go projects (20 pts) |
| Pursuing Silver badge |
| Pursuing Gold badge |
Quality & Process References (Language-Agnostic)
| Reference | When to Load |
|---|---|
| Code review, PR quality checks |
| ADRs, API docs, migration guides, changelogs |
| CI/CD pipelines, Git hooks, quality gates |
Explicit Content Triggers
When reviewing PRs or code, load
references/code-review.md for the comprehensive checklist covering test resource management, state mutation, defensive enum handling, documentation accuracy, and defensive code coverage.
When writing ADRs (Architecture Decision Records), load
references/documentation.md for templates, file organization, and required sections (Context, Decision, Consequences, Alternatives).
When writing changelogs or release notes, load
references/documentation.md for Keep a Changelog format and conventional commit mapping.
When writing API documentation or migration guides, load
references/documentation.md for structure patterns and completeness checklists.
When configuring CI/CD pipelines, load
references/ci-patterns.md for comprehensive pipeline structure, job ordering, and quality gates.
When setting up Git hooks (pre-commit/pre-push), load
references/ci-patterns.md for the hook division strategy and Lefthook configuration.
When enforcing coverage thresholds, load
references/ci-patterns.md for threshold tables and enforcement patterns.
When handling signed commits with rebase-only merge, load
references/ci-patterns.md for the local fast-forward merge workflow.
Implementation Guides
| Guide | Purpose |
|---|---|
| Getting started |
| DCO enforcement |
| Cosign/GPG signing |
| Deterministic builds |
| TLS, headers, validation |
| N/A criteria justification |
| Gold 80% branch coverage |
Automation Scripts
| Script | Purpose |
|---|---|
| Verify OpenSSF badge criteria |
| Statement coverage check |
| Branch coverage (Gold) |
| Add SPDX headers (Gold) |
| Tag signature verification |
| PR review requirements |
Document Templates
Templates in
assets/templates/:
- Project governance (Silver)GOVERNANCE.md
- Technical docs (Silver)ARCHITECTURE.md
- Contributor Covenant v3.0CODE_OF_CONDUCT.md
- Security audit (Gold)SECURITY_AUDIT.md
- N/A justificationsBADGE_EXCEPTIONS.md
CI Workflow Templates
GitHub Actions workflows in
assets/workflows/:
| Workflow | Purpose |
|---|---|
| OpenSSF Scorecard security analysis |
| Semantic code security scanning |
| PR dependency CVE/license check |
| SLSA Level 3 build attestation |
| Developer Certificate of Origin |
Copy workflows to
.github/workflows/ and pin action versions with SHA hashes.
Scoring Interpretation
| Score | Grade | Status |
|---|---|---|
| 90-100 | A | Enterprise Ready |
| 80-89 | B | Production Ready |
| 70-79 | C | Development Ready |
| 60-69 | D | Basic |
| <60 | F | Not Ready |
Code Review Quick Checklist
Before approving PRs, verify (see
references/code-review.md for details):
- One resource per test - No duplicate instances
- State mutation complete - Tracking fields updated after operations
- Defensive enum handling -
method,Valid()
case, testeddefault - Documentation accurate - Claims match benchmarks, trade-offs noted
- Platform code marked - Limitations documented, alternatives provided
- Defensive code tested - Error paths and edge cases covered
Critical Rules
- NEVER interpolate
in${{ github.event.* }}
blocks (script injection)run: - NEVER guess action versions - always fetch from GitHub API
- ALWAYS use SHA pins for actions with version comments
- ALWAYS verify commit hashes against official tags
Related Skills
| Skill | Purpose |
|---|---|
| Go code patterns, Makefile interface, testing |
| Repository setup, branch protection, auto-merge |
| Deep security audits (OWASP, XXE, SQLi) |
| Git branching, commits, PR workflows |
Resources
Contributing: Improvements to this skill should be submitted to the source repository: https://github.com/netresearch/enterprise-readiness-skill