Shared development tooling for all managed repositories. Structured as a
Python package with CLI entry points (vrg-*), distributed as a
host-level developer tool per
docs/specs/host-level-tool.md.
cd vergil-tooling
uv sync --group dev
export PATH="$(pwd)/.venv/bin:$PATH"- uses: actions/checkout@v4
with:
repository: vergil-project/vergil-tooling
ref: v1.2
path: .vergil-tooling
- name: Set up vergil-tooling
run: |
cd .vergil-tooling && uv sync --frozen
echo "$GITHUB_WORKSPACE/.vergil-tooling/.venv/bin" >> "$GITHUB_PATH"vrg-commit— Standards-compliant conventional commitsvrg-submit-pr— Standards-compliant PR creation (manual merge)vrg-release— Mechanized end-to-end release workflowvrg-finalize-pr— Merge a PR and run post-merge cleanupvrg-validate— Unified validation driver (via vrg-container-run)vrg-ensure-label— Idempotent GitHub label creation
Raw git and gh commands are blocked in AI agent sessions by
vrg-hook-guard, a Claude Code PreToolUse hook. Each repo ships a
thin shell shim at .claude/hooks/guard.sh that calls
vrg-hook-guard to enforce the vrg-git/vrg-gh wrapper policy.
Tag releases on main using semantic versioning. The release process
publishes both a full tag (v1.2.0) and a rolling v{major}.{minor} tag
(v1.2) that always points to the latest patch. Consuming repos pin to the
v{major}.{minor} tag in CI.