Source: docs/RELEASE.md
Release Runbook
Pre-release checks
Skill validation:
python scripts/ci_validate_skill.py --skills-root skillsUnit tests:
python -m unittest discover -s tests -p "test_*.py"Workflow split parity (native + compatibility tracks):
python skills/codex-workflows/scripts/check_workflow_parity.py --references skills/codex-workflows/references/workflows --native skills/codex-workflows/templates/codex-native/.agent/workflows --template skills/codex-workflows/templates/.agent/workflows --pack skills/codex-workflows/packs/antigravity-compat/.agent/workflowsCompatibility drift:
python skills/codex-workflows/scripts/check_compat_drift.py --manifest skills/codex-workflows/compat/manifest.json --pack skills/codex-workflows/packs/antigravity-compat/.agent --template-full skills/codex-workflows/templates/.agentCodex-native workflow quality and anti-copy threshold:
python skills/codex-workflows/scripts/check_codex_native_quality.py --native skills/codex-workflows/templates/codex-native/.agent/workflows --compat skills/codex-workflows/packs/antigravity-compat/.agent/workflows --max-similarity 0.35Codex-native structural assets:
python skills/codex-workflows/scripts/check_codex_native_assets.py --native-root skills/codex-workflows/templates/codex-native/.agent --min-agents 20 --min-skills 37Codex-native layered rules:
python skills/codex-workflows/scripts/check_codex_native_rules.py --native-root skills/codex-workflows/templates/codex-native/.agentRouter benchmark:
python skills/codex-workflows/scripts/benchmark_router.py --iterations 10000
Unified shortcut:
python scripts/codexwf.py validate --tests --docs
Automated release (recommended)
Dry-run changelog cut:
python scripts/release_automation.py --version 1.1.0
Apply changelog update + commit + tag:
python scripts/release_automation.py --version 1.1.0 --apply --commit --tag
Push branch + tag:
python scripts/release_automation.py --version 1.1.0 --apply --commit --tag --push
Optional release notes output:
python scripts/release_automation.py --version 1.1.0 --apply --notes-out docs/releases/v1.1.0.md
Behavior:
- Moves
## [Unreleased]entries into## [<version>] - <date>. - Resets
Unreleasedto a clean placeholder. - Syncs root
package.jsonversion to the release version. - Optionally commits, tags, and pushes.
GitHub Actions release
Workflow: .github/workflows/release.yml
Trigger via workflow_dispatch with:
version: semantic version (example1.1.0)push_changes:trueto push and publish GitHub Release
The workflow:
- validates skills and tests;
- runs
scripts/release_automation.pywith commit/tag; - pushes commit/tag (if enabled);
- publishes the GitHub Release with generated notes.
- on tag push, publishes npm package when
NPM_TOKENis configured.
Tag-driven publish is also enabled:
- Pushing
v*tags triggers automatic release publication. - It uses
docs/releases/<tag>.mdwhen available. - Fallback body is
CHANGELOG.mdif release notes file is missing. - npm publish enforces
package.jsonversion == tag version (vX.Y.Z). - Configure repository secret
NPM_TOKEN(publish permission) for npm automation.
Docs portal publish
Workflow: .github/workflows/docs.yml
- Triggered by changes under
website/**,docs/**, orREADME.md. - Builds
websitewith VitePress. - Pushes static output to
gh-pagesbranch. - First-time setup: in GitHub Settings > Pages, select
gh-pagesas source branch.