This directory contains scripts for building Claude Code executables for all supported platforms.
Main build script that:
- Downloads the
@anthropic-ai/claude-codepackage from npm - Extracts and copies required files (cli.js, yoga.wasm, vendor/)
- Builds executables for specified platforms
- Cleans up temporary files
Usage:
# Build for all platforms
bun run scripts/fetch-and-build.js
# Build for specific platform
bun run scripts/fetch-and-build.js linux
bun run scripts/fetch-and-build.js macos
bun run scripts/fetch-and-build.js windows
bun run scripts/fetch-and-build.js current # Current platform onlyLow-level script that builds executables from existing source files. This is called automatically by fetch-and-build.js.
Prepares the CLI source for bundling by embedding assets using Bun's native embedding features.
The following npm scripts are available in package.json:
# Build executables for all platforms
npm run build:executables
# Build for specific platforms
npm run build:executables:current
npm run build:executables:linux
npm run build:executables:macos
npm run build:executables:windowsAll executables are created in the src-tauri/binaries/ directory with the following naming convention:
claude-code-linux-x64- Standard Linux x64 (glibc)claude-code-linux-x64-modern- Modern CPUs (AVX2+)claude-code-linux-x64-baseline- Older CPUs (pre-2013)claude-code-linux-arm64- ARM64 Linuxclaude-code-linux-x64-musl- Alpine Linux (musl)claude-code-linux-x64-musl-modern- Alpine + modern CPUsclaude-code-linux-x64-musl-baseline- Alpine + older CPUsclaude-code-linux-arm64-musl- ARM64 Alpine
claude-code-macos-x64- Intel Macclaude-code-macos-x64-modern- Intel Mac (modern CPUs)claude-code-macos-x64-baseline- Intel Mac (older CPUs)claude-code-macos-arm64- Apple Silicon Mac
claude-code-windows-x64.exe- Windows x64claude-code-windows-x64-modern.exe- Windows x64 (modern CPUs)claude-code-windows-x64-baseline.exe- Windows x64 (older CPUs)
- Embedded Assets: All executables include embedded yoga.wasm and ripgrep binaries
- Optimizations: Built with minification and sourcemaps
- Cross-platform: Supports all major operating systems and architectures
- CPU Variants: Modern variants for newer CPUs (2013+), baseline for compatibility
- Self-contained: No external dependencies required at runtime
- Tauri Integration: Automatic sidecar binary naming for seamless Tauri integration
- Bun: Required for building (uses Bun's native compilation features)
- npm: Used to download the Claude Code package
- tar: For extracting the package (standard on Unix systems)