claude-anyteam
v0.8.4
Published
Beautiful zero-friction installer for claude-anyteam in Claude Code.
Maintainers
Readme
claude-anyteam (npm installer)
A Node-powered bootstrap for the Python claude-anyteam tool. The npm package installs uv + the Python tool, then delegates the ~/.claude/settings.json + ~/.claude.json writes to claude-anyteam install so the Python installer is the single source of truth for prereq checks (tmux/psmux required, Codex CLI 0.120+, Gemini CLI, and Kimi CLI warned-if-missing), teammateMode handling, and install-state tracking.
Quick start
Run exactly this:
npx --yes claude-anyteamThe setup flow shows the banner immediately, checks python3, installs uv if needed, installs or reuses claude-anyteam, runs claude-anyteam install --assume-yes via uv, and registers the Claude Code plugin when claude is on your PATH.
What it does
claude-anyteam:
- shows a banner immediately
- checks for
python3 - installs
uvautomatically if it is missing - installs
claude-anyteamwithuv tool install, or reuses an existing install if it is already available - runs
uv tool run --from claude-anyteam claude-anyteam install --assume-yes— the Python installer verifies a terminal multiplexer (tmux or psmux) is on PATH, probes for the OpenAI Codex CLI, Gemini CLI, and Kimi CLI (non-blocking warning if missing; Codex also checks the 0.120 floor), writes~/.claude/settings.json+~/.claude.json, and records an install-state file for symmetric uninstall - best-effort installs the
claude-anyteamClaude Code plugin (or reports the exact manual commands ifclaudeis unavailable)
If the Python tool is already present in uv's tool bin directory, setup reuses it and re-runs claude-anyteam install (idempotent).
The Python installer owns these files:
~/.claude/settings.json— addsenv.CLAUDE_CODE_TEAMMATE_COMMAND+env.CLAUDE_ANYTEAM_BINARY+env.CLAUDE_ANYTEAM_GEMINI_BINARY+env.CLAUDE_ANYTEAM_KIMI_BINARY~/.claude.json— setsteammateModeto"tmux"~/.claude/plugins/data/claude-anyteam-claude-anyteam/install-state.json— receipt soclaude-anyteam uninstallreverses everything cleanly.
Install / run
Explicit setup (recommended)
npx --yes claude-anyteamIf the package is installed globally, run either binary — both invoke the same setup flow:
claude-anyteam
# or
claude-anyteam-setupGlobal install
npm install -g claude-anyteam
claude-anyteamThe npm postinstall hook is best-effort only:
- silent on success
- non-interactive
- prints a one-line hint if setup could not finish automatically (so
npm installnever blocks on a missing prereq — user re-runsnpx claude-anyteamto see the full diagnostics)
Result
After a successful run, ~/.claude/settings.json contains absolute paths like:
{
"env": {
"CLAUDE_CODE_TEAMMATE_COMMAND": "/Users/you/.local/bin/claude-anyteam-spawn-shim",
"CLAUDE_ANYTEAM_BINARY": "/Users/you/.local/bin/claude-anyteam",
"CLAUDE_ANYTEAM_GEMINI_BINARY": "/Users/you/.local/bin/gemini-anyteam",
"CLAUDE_ANYTEAM_KIMI_BINARY": "/Users/you/.local/bin/kimi-anyteam"
}
}And ~/.claude.json has teammateMode: "tmux" so Claude Code routes teammates through the pane backend.
Then restart Claude Code.
Provider CLIs are optional at setup time but required when you spawn that prefix:
codex-*→ OpenAI Codex CLI 0.120+ (npm install -g @openai/codex, then runcodexto sign in)gemini-*→ Gemini CLI (npm install -g @google/gemini-cli, then rungeminior configureGEMINI_API_KEY/Vertex)kimi-*→ Kimi CLI (pip install kimi-clior the upstream installer, then runkimi login)
Running the installer again is safe: it reuses an existing claude-anyteam tool install, the Python installer is idempotent, and the Claude Code plugin is verified rather than reinstalled when it is already present.
Maintainer note
For local development, you can point the installer at a non-PyPI package spec:
CLAUDE_ANYTEAM_PYTHON_PACKAGE=/absolute/path/to/claude-anyteam \
node ./bin/setup.js