diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index 8a32aee..40daefd 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -113,3 +113,59 @@ jobs:
gh release upload "${{ needs.release.outputs.tag }}" \
parsec-${{ needs.release.outputs.version }}-${{ matrix.target }}.${{ matrix.archive }} \
--clobber
+
+ snapshot-docs:
+ name: Snapshot Versioned Docs
+ needs: release
+ if: needs.release.outputs.created == 'true'
+ runs-on: ubuntu-latest
+ permissions:
+ contents: write
+ steps:
+ - uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4
+ with:
+ ref: main
+
+ - name: Create versioned docs snapshot
+ env:
+ VERSION: ${{ needs.release.outputs.version }}
+ run: |
+ mkdir -p "docs/v/${VERSION}/guide" "docs/v/${VERSION}/reference"
+
+ for file in index.html guide/index.html reference/index.html; do
+ sed \
+ -e 's/data-doc-version="latest"/data-doc-version="'"${VERSION}"'"/' \
+ -e 's||\n |' \
+ -e 's|href="/git-parsec/"|href="/git-parsec/v/'"${VERSION}"'/"|g' \
+ -e 's|href="/git-parsec/#|href="/git-parsec/v/'"${VERSION}"'/#|g' \
+ -e 's|href="/git-parsec/reference/|href="/git-parsec/v/'"${VERSION}"'/reference/|g' \
+ -e 's|href="/git-parsec/guide/|href="/git-parsec/v/'"${VERSION}"'/guide/|g' \
+ -e 's|src="demo.gif"|src="/git-parsec/demo.gif"|' \
+ "docs/${file}" > "docs/v/${VERSION}/${file}"
+ done
+
+ - name: Update versions.json
+ env:
+ VERSION: ${{ needs.release.outputs.version }}
+ run: |
+ DATE=$(date -u +%Y-%m-%d)
+ jq --arg ver "$VERSION" --arg date "$DATE" \
+ '.latest = $ver | .versions = [{"version": $ver, "date": $date, "path": ("/git-parsec/v/" + $ver + "/")}] + .versions' \
+ docs/versions.json > docs/versions.json.tmp
+ mv docs/versions.json.tmp docs/versions.json
+
+ - name: Update sitemap.xml
+ env:
+ VERSION: ${{ needs.release.outputs.version }}
+ run: |
+ DATE=$(date -u +%Y-%m-%d)
+ sed -i '/<\/urlset>/i \
+ \n https://erishforg.github.io/git-parsec/v/'"${VERSION}"'/\n '"${DATE}"'\n never\n 0.3\n \n \n https://erishforg.github.io/git-parsec/v/'"${VERSION}"'/guide/\n '"${DATE}"'\n never\n 0.3\n \n \n https://erishforg.github.io/git-parsec/v/'"${VERSION}"'/reference/\n '"${DATE}"'\n never\n 0.3\n ' docs/sitemap.xml
+
+ - name: Commit and push versioned docs
+ run: |
+ git config user.name "github-actions[bot]"
+ git config user.email "41898282+github-actions[bot]@users.noreply.github.com"
+ git add docs/v/ docs/versions.json docs/sitemap.xml
+ git commit -m "docs: snapshot versioned docs for v${VERSION}"
+ git push origin main
diff --git a/.gitignore b/.gitignore
index dc58b7b..b7202fd 100644
--- a/.gitignore
+++ b/.gitignore
@@ -6,4 +6,5 @@ Cargo.lock
.env
.parsec/
.omc/
+.claude/
demo.mp4
diff --git a/CLAUDE.md b/CLAUDE.md
new file mode 100644
index 0000000..2d804b9
--- /dev/null
+++ b/CLAUDE.md
@@ -0,0 +1,90 @@
+# CLAUDE.md — git-parsec Project Instructions
+
+## Project Overview
+
+- **Name**: git-parsec (binary: `parsec`)
+- **Language**: Rust (edition 2021)
+- **Repo**: https://github.com/erishforG/git-parsec
+- **Docs site**: https://erishforg.github.io/git-parsec/ (GitHub Pages from `docs/` on `main`)
+
+## Branch Strategy
+
+- **Main branch**: `main` — production, auto-releases on push
+- **Dev branch**: `develop` — development work
+- PRs go from `develop` → `main`
+- Default branch prefix: `feature/`
+
+## Release Process
+
+### How Releases Work
+
+Releases are **fully automated via CI** (`.github/workflows/release.yml`). The workflow triggers on every push to `main` and:
+
+1. Reads version from `Cargo.toml`
+2. Checks if a git tag for that version already exists
+3. If new: creates git tag, publishes to crates.io, creates GitHub Release, builds binaries, and snapshots versioned docs
+
+### NEVER Create Tags Manually
+
+**Do NOT run `git tag` or create tags manually.** The CI workflow handles tag creation automatically. Manually creating tags will cause the release workflow to skip (it checks `if tag exists → skip`).
+
+### How to Release a New Version
+
+1. Bump `version` in `Cargo.toml`
+2. Ensure all changes are on `develop`
+3. Merge `develop` → `main` via PR
+4. CI does the rest automatically
+
+### Pre-Release Checklist (MANDATORY)
+
+**CRITICAL: Do NOT merge to `main` without completing ALL items below. Skipping README or docs updates has caused issues in the past.**
+
+Before merging to `main`, verify:
+
+- [ ] `Cargo.toml` version bumped
+- [ ] **`README.md` updated** — new commands, changed flags, feature descriptions, command count
+- [ ] **`docs/` pages updated** — this is the public-facing site, must reflect current version
+ - `docs/index.html` — feature list, command count, examples
+ - `docs/guide/index.html` — installation, workflows, new features
+ - `docs/reference/index.html` — all commands with correct options/examples
+ - `softwareVersion` in structured data (`
+