skill-repo-skill defines the standard structure for all Netresearch skill repositories. It provides reusable CI workflows, validation tooling, migration scripts, and templates consumed by 29+ skill repos.
skills/skill-repo/SKILL.md contains the AI skill instructions for creating and maintaining skill repositories.
Located in .github/workflows/, these are called by other skill repos via uses: netresearch/skill-repo-skill/.github/workflows/<name>.yml@main:
validate.yml-- Main validation pipeline. Runs structure checks, frontmatter validation, licensing, metadata consistency, markdown/YAML lint, ShellCheck, Python lint, and checkpoint schema validation.release.yml-- Triggered onv*tags. Validates tag matchesplugin.jsonversion, packages each skill standalone and full plugin with checksums.pr-quality.yml-- PR quality gates (auto-approve coordination, etc.).harness-verify.yml-- Verifies AGENTS.md / harness consistency.eval-validate.yml-- Validates skill evaluation files.validate-agents.yml-- ValidatesAGENTS.mdcontent.dependency-audit.yml-- Composer audit, SAST, dependency review.npm-pack-smoke.yml-- Verifies the npm tarball ships the right files.ci-python.yml-- Reusable Python lint/test pipeline.tests.yml-- Runs a skill repo's own suite undertests/: shell, Python, and PHP (PHP toolchain andcomposer installonly when the PHP glob matches). Reports whether a repo shippingskills/*/scripts/ran any test at all; fatal only when the caller setsrequire_tests.
Auto-merge for Dependabot/Renovate PRs is delegated to netresearch/.github/.github/workflows/auto-merge-deps.yml@main via the local caller auto-merge-deps-caller.yml; it is not hosted in this repo.
skills/skill-repo/scripts/validate-skill.sh-- Core validation: SKILL.md structure, frontmatter, licensing (split model), composer.json/plugin.json metadata consistency.skills/skill-repo/scripts/migrate-licensing.sh-- Migrates repos from single LICENSE to split licensing (LICENSE-MIT + LICENSE-CC-BY-SA-4.0).Build/Scripts/check-plugin-version.sh-- Validates plugin.json version format.
skills/skill-repo/scripts/bump-version.sh/check-version-parity.sh/sync-plugin-manifest.sh-- Single-repo version surfaces: bump, parity check, manifest projection.skills/skill-repo/scripts/roll-changelog.py-- Shape-aware CHANGELOG rollover (all five fleet heading shapes, fence-aware, fails on a no-op roll).skills/skill-repo/scripts/fleet-release-github.sh-- Fleet release driver for the public GitHub org; shared host-neutral engine infleet-release-common.sh(private-host fleets vendor the engine and ship their own driver in their own infrastructure), default repo list infleet-repos-github.txt. Flow and guarantees:skills/skill-repo/references/release-discipline.md.
skills/skill-repo/templates/ provides starter files for bootstrapping new skill repos (README, licenses, workflows, composer.json).
Build/hooks/ contains pre-commit and pre-push hooks for local development.
Consuming skill repo
-> calls validate.yml (reusable workflow)
-> sparse-checks out validation tools from this repo
-> runs validate-skill.sh against the calling repo
-> runs markdown lint, YAML lint, ShellCheck, ruff
-> reports results as CI annotations
All skill repos use split licensing:
- Code (scripts, workflows, configs) -> MIT
- Content (skill definitions, docs, references) -> CC-BY-SA-4.0
- SPDX expression:
(MIT AND CC-BY-SA-4.0)