class CcSwitch < Formula
desc "A CLI tool for managing multiple Claude API configurations and automatically switching between them"
homepage "https://github.com/Linuxdazhao/cc_auto_switch"
version "__VERSION__"
license "MIT"
if OS.mac?
if Hardware::CPU.arm?
url "https://github.com/Linuxdazhao/cc_auto_switch/releases/download/v#{version}/cc-switch-aarch64-apple-darwin.tar.gz"
sha256 "__MAC_ARM_SHA__"
else
url "https://github.com/Linuxdazhao/cc_auto_switch/releases/download/v#{version}/cc-switch-x86_64-apple-darwin.tar.gz"
sha256 "__MAC_INTEL_SHA__"
end
elsif OS.linux?
if Hardware::CPU.arm?
url "https://github.com/Linuxdazhao/cc_auto_switch/releases/download/v#{version}/cc-switch-aarch64-unknown-linux-gnu.tar.gz"
sha256 "__LINUX_ARM_SHA__"
else
url "https://github.com/Linuxdazhao/cc_auto_switch/releases/download/v#{version}/cc-switch-x86_64-unknown-linux-gnu.tar.gz"
sha256 "__LINUX_INTEL_SHA__"
end
end
def install
bin.install "cc-switch"
end
test do
assert_match "cc-switch", shell_output("#{bin}/cc-switch --help")
assert_match version.to_s, shell_output("#{bin}/cc-switch --version")
end
def caveats
<<~EOS
To use cc-switch effectively:
1. Add configurations:
cc-switch add my-config TOKEN_HERE https://api.anthropic.com
2. Switch between configurations:
cc-switch use my-config
3. Interactive mode:
cc-switch current
4. Shell completion:
# For fish
cc-switch completion fish > ~/.config/fish/completions/cc-switch.fish
# For zsh
cc-switch completion zsh > ~/.zsh/completions/_cc-switch
# For bash
cc-switch completion bash > ~/.bash_completion.d/cc-switch
For more information, visit: https://github.com/Linuxdazhao/cc_auto_switch
EOS
end
end