Requirements
Prebuilt companion binaries cover macOS, Linux, and Windows on amd64 and arm64. Run
caveman setup to inspect current machine support.
Unified one-liner
macOS / Linux / WSL / Git Bash- Auto-detects every supported agent installed on your machine (Claude Code, Cursor, Codex, etc.).
- For each one, runs that agent’s native install path (plugin / extension / rule file /
npx skills add). - Installs Cavecrew investigator, builder, and reviewer presets where the host supports native subagents.
- Wires Claude Code hooks and statusline badge on top, plus a Codex start-of-session hook so Codex talks caveman without asking.
- Skips anything you do not have. Safe to re-run. About 30 seconds end-to-end.
--dry-run:
Per-agent install matrix
If you want to install for one agent (or want to know exactly what command runs under the hood), use the table below. Every row also works as--only <id> to the unified installer.
On npm 12 or newer, add--allow-git=rootto any barenpx -y github:...command below. npm 12 turns off git package fetches by default, so a plainnpx -y github:JuliusBrussee/cavemanstops withnpm error code EALLOWGIT. The flag opts in just the one package you asked for:npx --allow-git=root -y github:JuliusBrussee/caveman -- --only <id>. Check withnpx --version.install.shandinstall.ps1detect the npm major and add the flag themselves starting with v3.2.0, so those work on npm 12.
Choose the install scope your agent reads.-ginstalls into the agent’s user skill directory. Without it, skills belong to the current project. The unified installer uses user scope except for Replit, whose documented filesystem location is the project’s.agents/skills.
Not in the table, with their own steps: Claude apps (claude.ai, desktop, mobile, Cowork), GitHub Copilot in VS Code, nanocoder, and dev containers.
For “auto-activates? No” agents, invoke the Caveman skill using the host’s skill menu,
/caveman where supported ($caveman in Codex), or a prompt naming the skill. Enable skills first if your host requires it.
Pick the mode new sessions start in. Put {"defaultMode": "ultracave"} (or "caveman", "megacave", "off") in ~/.config/caveman/config.json, or in a .caveman.json at a project root for just that project.
Scripted Claude Code runs (claude -p and the Agent SDK) start with caveman off whatever that file says, so tools that read Claude’s reply get plain text. Type /caveman in the prompt, or set CAVEMAN_DEFAULT_MODE=caveman (or another mode) in their environment, to turn it on.
Local runtime install
setup --install downloads the release checksum manifest and signature. It verifies the pinned public key, checks each artifact SHA-256, and installs by atomic rename under ~/.caveman/bin. A failed verification leaves the candidate binary uninstalled.
Inspect result:
First run
caveman disable claude. Use caveman wrap claude for one ephemeral session with no persistent host-config changes. An interactive first run can install missing signed binaries and continue. Non-interactive runs never silently download a runtime; prepare them with caveman setup --install.
Check direct pass-through before enabling transforms:
Build from source
Clone repository and run platform installer:caveman setup reports version drift.
Existing reviewed binaries
Every companion accepts an environment override:Update
Update JavaScript CLI through npm, then repair binary bundle:caveman@caveman, so use the full name:
Uninstall
Remove installer-managed skill integrations and native agent routing. Order matters: this step shells out tocaveman disable --all, so it needs the CLI still installed.
ANTHROPIC_BASE_URL and _CLAUDE_CODE_ASSUME_FIRST_PARTY_BASE_URL in ~/.claude/settings.json and Remote Control unavailable. The installer names any agent still routed when it finds one; recover with caveman disable --all after reinstalling the CLI, or delete those two keys by hand.
These commands do not delete local usage, CCR, or account state. Review SECURITY.md before deleting ~/.caveman or ~/.caveman-cloud.
Skills installed via npx skills add are managed by the skills CLI. Run npx skills remove caveman (or use your IDE’s skill manager). Per-repo rule files written by --with-init (.cursor/rules/, .windsurf/rules/, .clinerules/, .github/copilot-instructions.md, .opencode/AGENTS.md, AGENTS.md) must be deleted by hand if you want them removed.
Windows notes
PowerShell 5.1+ can run the root installer shim. Skills CLI may need--copy when symlink creation is unavailable. Native Windows supports local runtime binaries; tools that need OS-level network isolation should run in WSL2.
If irm | iex fails, set up plugin-skill activation by hand. This does not install the standalone hooks or the statusline. For those, run the unified Node installer afterwards:
Manual Windows plugin recovery
Test-Path "$PluginSkillDir\SKILL.md" should print True. Restart Claude Code, then run /caveman to confirm the skill loads.
Codex on Windows
- Enable symlinks first:
git config --global core.symlinks true(requires Developer Mode or admin). - Clone repo, open VS Code, go to Codex Settings > Plugins, find “Caveman” under the local marketplace, install, and reload window.
- Codex hooks are currently disabled on Windows, so use
$cavemanto start the mode manually each session.
Symlink fallback
npx skills uses symlinks by default. If symlinks fail, add --copy: