Operator machine kit for RevealUI Studio workstations (macOS + Linux + WSL2, WSL-first). This is not a customer runtime, product SDK, or end-user installer.
bootstrap.sh provisions the machine that runs the fleet: helper scripts, sudoers, global git hooks, and Claude/Grok launchers. Do not treat a clone of this repo as something to ship to a customer host.
VERSION is 0.3.0. This is the first recorded field for this repo. It is
not a scaffold stamp: bootstrap, shell modes (fleet/vibe/bare), and the
fleet-root rfg/rfc launcher have all shipped. Still 0.x — there is no
stable external contract. Not aligned to any other repo's number.
A default bootstrap.sh run is a privileged install. Preview first (--dry-run). It will:
- install helpers to
/usr/local/binon Linux/WSL (usessudo;~/.local/binon macOS) - write WSL sudoers for passwordless sandbox-drive mounting (
/etc/sudoers.d/wsl-revealui) - set
git config --global core.hooksPathto the fleet pre-push hook - wire fleet Claude rules when
revconis present
Do not run this on a customer machine or any host you do not want those changes on.
bootstrap.sh is the universal entry point. It detects the OS (macOS, Linux, or WSL2) and runs the platform-appropriate steps.
git clone https://github.com/RevealUIStudio/revkit.git
bash revkit/bootstrap.sh # add --dry-run to previewClone to your Windows home so WSL can reach it via /mnt/c/:
# From PowerShell
cd $env:USERPROFILE
git clone https://github.com/RevealUIStudio/revkit.git .revealuiThen bootstrap from WSL:
bash /mnt/c/Users/$USER/.revealui/bootstrap.sh
bootstrap-wsl.shstill works as a backward-compatible alias. It is now a thin shim that execsbootstrap.sh(which auto-detects WSL).
In more detail, the bootstrap also adds a ~/.bashrc/~/.zshrc hook that resolves the shell mode (fleet / vibe / bare; managed is a silent alias for fleet) and sources the matching fragments from shell/modes/*.list, links git and SSH configs via include.path (per-user identity stays machine-local in ~/.config/revkit/), applies WSL boot optimization (WSL), initializes Sandbox drive directories (if /mnt/sandbox is mounted), deploys the M-4 sudoers/filesystem security scanner to ~/.claude/hooks/, and clones/wires claude-config into ~/.claude.
Launchers: rfc <repo> starts Claude in a fleet repo (WSL-native; same bootstrap / claim / open isolation as rfg); rfg <repo> starts Grok with RevealUI MCP token loaded from revvault (see docs/rfg-launcher.md and docs/rfc-launcher.md). The old revealui tmux workspace launcher is retired (GAP-351 / ADR 2026-06-23); bootstrap.sh overwrites ~/.local/bin/revealui with a shim that prints rfg / rfc.
Upgrading from an older install: the runtime tree moved from
wsl/toshell/(andbashrc.d/toshellrc.d/). Just re-runbootstrap.sh— the rc hook is self-healing and migrates in place. No manual edit needed.
Open a new shell — you should see a ● RevKit: fleet banner (default). revkit-mode vibe switches to the product-first subset; revkit-mode bare is the no-fragment escape hatch. REVEALUI_MODE=managed still works (silent alias for fleet). Streaming safety is an overlay (revkit-mode stream-safe / RV_STREAM=1), not a fourth mode. On WSL, run wsl --shutdown from Windows to apply the boot optimization.
RevKit ships neutral, identity-free configs under shell/config/. Per-user values are kept machine-local and are not committed — on bootstrap they are seeded into ~/.config/revkit/:
~/.config/revkit/identity.gitconfig— your git name + email (seeded from your existing git identity if present)~/.config/revkit/ssh.local— your SSH host blocks
Edit those files directly; the tracked gitconfig / ssh-config Include them. There is no profile/render step — that subsystem was removed in favor of this model.
Planning tools use REVEALFLEET_PLANNING, an absolute path to your planning
checkout, independent of the fleet root and folder name. Configure it in your
shell configuration when using tracker, wb, sync-test, or private profiles.
These tools do not assume a personal planning folder. Launcher integration sync
is optional when no planning checkout is configured.
revkit/
bootstrap.sh # Universal entry point (macOS + Linux + WSL2)
bootstrap-wsl.sh # Deprecation shim → execs bootstrap.sh
bootstrap.ps1 # Windows-host PowerShell prep
lib/platform.sh # OS detector (REVKIT_OS + capability predicates)
shell/ # shellrc.d/, modes/, bin/, config/, docker/, setup-wsl-boot.sh
scripts/ # backup + private-leak-scan scripts
powershell/ # RevealUI.RevStation PowerShell module
editor-configs/zed/ # portable Zed settings + rfc task
git-hooks/ # M-11 fleet-wide pre-push hook
docs/ # documentation
tests/ # bash + Pester + platform-fixture suites
See docs/MASTER_SPEC.md for the full surface area + configuration model, and docs/MASTER_PLAN.md for status + roadmap.
MIT
rfc <repo> starts a Claude Code session whose process runs inside WSL,
rooted in a ~/revealfleet/* repo — the configuration that makes a secure,
prompt-free session possible (commands stay native instead of being wrapped in
wsl.exe, so they allowlist by real prefix and the deny-list hooks fire). On
macOS and native Linux rfc runs the session locally in the target repo.
Deployed automatically by bootstrap.sh (/usr/local/bin/rfc.sh +
shell/shellrc.d/50-rfc.sh). Per-surface wiring (WSL terminal, Zed terminal, Zed
claude-acp extension) and the Claude Desktop limitation are documented in
docs/rfc-launcher.md.