#!/bin/bash # # Purpose : Install Claude Code using the official native installer set -euo pipefail # Check if Claude Code is already installed if command -v claude &>/dev/null; then echo "Claude Code is already installed: $(claude --version)" else echo "Installing Claude Code..." curl -fsSL https://claude.ai/install.sh | bash fi # The native installer places the binary in ~/.local/bin LINE='export PATH="$HOME/.local/bin:$PATH"' if grep -qF "$LINE" ~/.bashrc; then echo "~/.local/bin already on PATH in .bashrc" else echo "$LINE" >> ~/.bashrc echo "~/.local/bin added to PATH in .bashrc" fi # sandbox/setup.sh turns on Claude Code's sandbox in this file, so it must exist SETTINGS_FILE="$HOME/.claude/settings.json" if [ -f "$SETTINGS_FILE" ]; then echo "Claude Code settings already exist at $SETTINGS_FILE" else echo "Writing Claude Code settings to $SETTINGS_FILE..." mkdir -p "$(dirname "$SETTINGS_FILE")" echo '{}' > "$SETTINGS_FILE" fi echo "Done. Run 'configure claude' to log in."