Vc Bootstrap
<!-- AUTO-GENERATED from src/vc-bootstrap.md.tmpl — do not edit directly --
Claude CodeGeneric
<!-- AUTO-GENERATED from src/vc-bootstrap.md.tmpl — do not edit directly -->
# /vc-bootstrap — Machine Setup
<!-- version: 2026-06-22.1 -->
Setup for the vibe-check suite. Configures git, installs and authenticates GitHub CLI,
installs gitleaks, and generates a security-baseline `.gitignore` for your project. Installs
the vc-audit compact hook (`vc-audit-resume.js`) that automatically re-injects audit context
when Claude's context compacts mid-audit. Optionally installs a notification hook that alerts
you when Claude Code is waiting for your input (permission prompts, questions, etc.). Orients
you to the full skill suite and routes you to the right starting point. Run this in each
new project — machine-level steps (git config, GitHub CLI auth, gitleaks) skip automatically
if already done, but the `.gitignore` baseline and project routing are set up fresh each time.
Checks for updates on startup — a critical update will pause the run and prompt before continuing.
---
## Version check
Use the Bash tool to run: `curl -fsSL https://raw.githubusercontent.com/recycledwhitetrash/vibe-check/main/versions.json`
If curl fails or exits non-zero for any reason, skip this section entirely and proceed to Phase 0.
Read the JSON from stdout and check the `vc-bootstrap` entry.
<output-handlers>
**`vc-bootstrap` version matches `2026-06-22.1`**: proceed silently.
**Newer version available, `critical` is false**:
<mandatory>Call AskUserQuestion with:
- Question: "A newer version of /vc-bootstrap is available. Proceed with your current version or update now."
- Options:
- "Proceed with current version"
- "Update now"
</mandatory>
If Proceed: continue to Phase 0.
If Update now: follow the **Auto-update** steps below, then stop.
**Newer version available, `critical` is true**:
<mandatory>Call AskUserQuestion with:
- Question: "A critical update is available for /vc-bootstrap that fixes an important issue. Running the current version may produce incorrect results."
- Options:
- "Update now"
- "Continue with current version"
</mandatory>
If Update now: follow the **Auto-update** steps below, then stop.
If Continue: proceed to Phase 0.
**Fetched version is older than `2026-06-22.1`**: proceed silently. (This can happen with CDN caching or a rollback — the local version is already newer.)
</output-handlers>
**Auto-update:**
1. Run `git --version` to check whether git is installed. If git is not installed, skip the auto-update entirely and proceed to Phase 0 — git will be installed there first.
2. Run `git rev-parse --show-toplevel` to find the project root.
3. Use the Bash tool to download and overwrite the skill file in one step:
- bash/zsh: `curl -fsSL https://raw.githubusercontent.com/recycledwhitetrash/vibe-check/main/.claude/commands/vc-bootstrap.md -o "[project-root]/.claude/commands/vc-bootstrap.md"`
- PowerShell: `curl.exe -fsSL https://raw.githubusercontent.com/recycledwhitetrash/vibe-check/main/.claude/commands/vc-bootstrap.md -o "[project-root]/.claude/commands/vc-bootstrap.md"`
4. If curl exits 0: tell the user "Updated to the latest version — reloading skill from disk." Then use the Read tool to read `[project-root]/.claude/commands/vc-bootstrap.md`. Proceed to Phase 0 of the updated skill, following the instructions just read. Do not re-run the version check — the update is already complete.
5. If curl fails: tell the user auto-update failed and to update manually at https://github.com/recycledwhitetrash/vibe-check. Do not continue.
---
<artifact-write-rules>
Shell and interpreter scripts may never write to `.vibe-check/**`. Use the Edit or Write tool only.
When reading artifact content to construct an `old_string` anchor for an Edit, use the Read tool — not shell output. Shell reads are acceptable for informational purposes (line counts, file existence checks) but must never be the basis for an `old_string` value.
At the start of any phase that will Edit an artifact, use the Read tool to get the current file state before making any Edit calls. Within a phase, subsequent Edits may derive their `old_string` anchors from the content of that read — do not re-read before every individual Edit within the same phase. If a Write occurs mid-phase, re-read the file before any subsequent Edits in that phase.
</artifact-write-rules>
<edit-failure-protocol>
If the Edit tool returns "String to replace not found":
1. **Do not diagnose. Do not switch to a shell script or interpreter.** Read the error output and acknowledge it verbatim before taking any action.
2. Use the Read tool to get the current exact text of the file. Construct the shortest unique anchor (1–2 lines) from what you just read. Retry the Edit once.
3. If the retry fails: use the Read tool to read the **entire file** fresh. Use the file content you just read as the authoritative state — do not reconstruct from memory. Apply only the specific change needed, then use the Write tool to write the full corrected content derived from that Read output.
4. If the Write tool also fails: stop. Give the user the exact intended content to apply manually. Do not continue until the user confirms the file is correct.
This ladder is mandatory. Do not improvise a recovery path not in this list.
</edit-failure-protocol>
<phase id="0" name="detect">
## Phase 0 — Detect
Run all checks up front before asking the user anything.
```bash
git --version
gh --version
gitleaks version
git config --global user.name
git config --global user.email
gh auth status
git rev-parse --show-toplevel 2>&1
If git rev-parse --show-toplevel succeeded: use that path as PROJECT_ROOT for all file operations in this skill.
If it failed (git not installed or not in a git repo): use . as PROJECT_ROOT — files will be written relative to the current working directory.
Check whether PROJECT_ROOT/.vibe-check/vc-bootstrap.md exists using the Read tool.
Build a status table from the ```
Maintain Vc Bootstrap?
Let people know it's listed here — add the badge (live metrics, light/dark aware) or a plain link to your README or docs.
[Vc Bootstrap on getagentictools](https://getagentictools.com/loops/recycledwhitetrash-vc-bootstrap-machine-setup?ref=badge) npx agentictools info loops/recycledwhitetrash-vc-bootstrap-machine-setup The second line is the CLI lookup for this page — handy in READMEs and docs.