versioning-by-impact
Use when completing a task and deciding whether repository changes require a semantic version bump and changelog entry before commit/push.
- License 许可
- MIT
- 所属仓库
- rexleimo/aios
- 最近更新
- 2026-11-07
- Stars
- ★ 62
- Forks
- 11
01 前言 Front Matter
- name
- versioning-by-impact
- tags
- [ "general", "release" ]
- scopes
- [ "global", "project" ]
- clients
- [ "codex", "claude", "gemini", "opencode", "hermes", "workbuddy", "pi", "zcode", "qoder" ]
- description
- Use when completing a task and deciding whether repository changes require a semantic version bump and changelog entry before commit/push.
- repoTargets
- [ "codex", "claude", "gemini", "opencode", "hermes", "workbuddy", "pi", "zcode", "qoder" ]
- defaultInstall
- { "global": true, "project": false }
- installCatalogName
- versioning-by-impact
03 SKILL.md 正文
Versioning by Impact
Overview
Apply Semantic Versioning decisions from actual change impact, not from task size.
Impact Rules
none: no repository file changes.patch: backward-compatible fixes, docs updates, translation/content updates, non-breaking refactors.minor: backward-compatible new features or new capabilities.major: any breaking change to CLI behavior, config contract, file layout contract, or documented usage.
Release Ordering (submodule first)
A host release archives the rex-harness submodule work tree, so the version it
announces only exists if that submodule commit is itself a published
(tarball-bearing) rex-harness release.
- Release rex-harness first: tag
vX.Y.Z, push, let its release workflow produce the GitHub Release asset. Then cut the host release whose gitlink points at that tagged commit. - Never cut a host release over an untagged submodule commit. The host changelog would cite a rex-harness version that exists nowhere on the rex-harness remote, standalone rex-harness consumers get nothing, and the bundled kernel cannot be traced back to a release point.
- If an already-published host release turns out to cite an untagged submodule version, retroactively tag and release that submodule commit: the gap is a traceability defect in shipped artifacts, not a cosmetic one.
The gate is enforced by scripts/release-preflight.sh (and the .ps1 twin) via
scripts/check-release-submodule.mjs; it fails closed when the tag state cannot
be proven.
Required Output Format
Always report these 4 fields in final handoff:
Version Impact: none|patch|minor|majorRecommended Version: vX.Y.Z -> vA.B.C(orno change)Why: <one-sentence reason>Release Notes:short bullet list
When a release is requested, also state whether the submodule commit is already a published rex-harness release, and in which order the two tags must go out.
Repository Commands
- Read current version:
cat VERSION - Bump version + changelog entry:
scripts/release-version.sh <patch|minor|major> "summary" - Preview only:
scripts/release-version.sh --dry-run <patch|minor|major> "summary" - Refresh the machine-readable LLM index after any version/changelog/post change:
node scripts/generate-llms-txt.mjs(verify only: add--check).docs-site/llms.txtis generated fromsite-sources/llms.src.mdplusVERSION,CHANGELOG.mdandblog-site/*.md; a hand-edited copy drifts (the live file once advertised v5.20.0 while v6.2.0 was shipping, and listed 24 of 68 published posts).
Default Behavior
If impact is none, do not bump version.
If impact is patch|minor|major, update both VERSION and CHANGELOG.md before commit.
04 同仓库更多 Skills
verification-loop
Evidence-before-assertions workflow. Use before claiming work is done, before release, and after any behavior change in scripts/skills/MCP.
typesafe-ai
Build AI-powered software with TypeSafe: small units of AI intelligence you can use like programming primitives. Its System One models, including Jev, turn natural language and application state into typed judgments and probabilities that code can combine. Use when a feature needs programmable common sense, when brainstorming what AI could make possible in an app, or when an LLM prompt-and-parse step could become a structured decision. Applications include routing, ranking, extraction, verification, and interactive experiences; these are starting points, not the limits. Read live docs and cookbooks to find useful patterns and discover new combinations.
skill-opt-lite
Train and optimize skill documents using the SkillOpt methodology — the agent acts as both target and optimizer, running tasks, reflecting on failures, proposing edits, and validating improvements in a self-contained training loop. TRIGGER: optimize skill, train skill, improve skill, skill training, skill optimization, SkillOpt, skill evolution, skill iteration loop, skill feedback loop, skill tuning.
skill-constraints
Enforce browser automation safety constraints — tool usage order, anti-detection rules, screenshot discipline, and human-in-the-loop checks. Use when setting up or verifying browser/MCP tool operations, NOT for every skill execution.
seo-geo-page-optimization
Use when improving a single page for SEO and AI answer-engine visibility (GEO), especially when you need faster first-screen conversion and clearer traffic funnels.
security-scan
Lightweight security hygiene for agent configs (skills/hooks/MCP/settings). Use before enabling automation, after config changes, and before release.