claude-account: Linux에서 여러 Claude Code 프로필 관리

개요

claude-account는 Linux용 Claude Code를 위한 커뮤니티가 개발한 프로필 스위처입니다. 각 계정에 고유한 CLAUDE_CONFIG_DIR를 제공함으로써 사용자가 여러 격리된 계정(예: 업무용 및 개인용)을 유지할 수 있게 하며, 로그인 과정을 반복하지 않고도 신원을 전환할 수 있습니다.

핵심 기능

claude-account는 공식 Claude 실행 파일에 명령을 투명하게 전달하면서 다양한 프로필의 환경을 관리하는 shim 역할을 합니다.

계정 관리 명령

  • 계정 추가: claude account add <name>은 공식 Claude Code 로그인 흐름을 트리거합니다. 처음 추가된 프로필이 활성 프로필이 됩니다. 사용자는 이메일을 지정하거나 --sso 또는 --console과 같은 플래그를 사용해 특정 로그인 유형을 선택할 수 있습니다.
  • 계정 전환: claude account use <name>은 새로 시작된 Claude 프로세스에 대해 활성 프로필을 변경합니다. 기존 세션은 시작된 계정에 그대로 연결됩니다.
  • 검사: claude account list는 설정된 모든 프로필을 표시하고, claude account current는 활성 프로필 이름을 반환합니다(스크립팅에 적합).
  • 제거: claude account remove <name>은 해당 프로필 내에서 공식 auth logout을 실행합니다. --purge 플래그를 사용하면 해당 프로필과 연관된 모든 설정, 세션, 플러그인 및 기록이 영구적으로 삭제됩니다.

보안 및 격리

선택된 프로필이 사용되도록 하기 위해, 래퍼는 자식 Claude 프로세스에서 다음 환경 변수를 제거합니다:

  • ANTHROPIC_API_KEY
  • ANTHROPIC_AUTH_TOKEN
  • CLAUDE_CODE_OAUTH_TOKEN

사용자는 CLAUDE_ACCOUNT_PRESERVE_AUTH_ENV=1을 설정하여 이 동작을 재정의할 수 있습니다.

설치 및 요구 사항

시스템 요구 사항

  • 운영 체제: Linux
  • 전제 조건: 작동 중인 Claude Code 설치
  • 빌드 요구 사항: Rust 1.85 이상 (소스에서 빌드하는 경우)

설치 단계

  1. 릴리스 설치: 최신 릴리스를 다운로드합니다(예: claude-account-v0.1.1-x86_64-unknown-linux-gnu.tar.gz) 및 해당 SHA256 체크섬을 확인합니다. 체크섬을 검증한 후 아카이브를 추출하고 ./claude-account install을 실행합니다.
  2. PATH 설정: 설치 프로그램은 export PATH=... 라인을 제공하며, 이를 사용자의 ~/.bashrc에 추가하여 shim이 공식 Claude 실행 파일보다 우선하도록 해야 합니다.
  3. 소스 빌드: 저장소를 클론하고 cargo build --locked --release를 실행한 뒤 ./target/release/claude-account install을 실행합니다.

저장 구조

claude-accountXDG_CONFIG_HOMEXDG_DATA_HOME을 따릅니다. 기본적으로 다음 경로를 사용합니다:

  • State File: ~/.config/claude-account/state.json (프로필 이름과 경로를 저장하지만 토큰은 저장하지 않음).
  • Profile Data: ~/.local/share/claude-account/profiles/<name>/
  • Binaries: ~/.local/share/claude-account/bin/claude~/.local/share/claude-account/libexec/claude-account.

사용자는 CLAUDE_ACCOUNT_HOME 환경 변수를 설정하여 모든 데이터를 하나의 디렉터리로 통합할 수 있습니다.

커뮤니티 관점 및 대안

claude-account가 구조화된 관리 시스템을 제공하는 동안, Hacker News 커뮤니티는 계정 격리를 달성하기 위한 여러 대안 방법을 강조했습니다:

  • 환경 변수 별칭: 일부 사용자는 계정별로 CLAUDE_CONFIG_DIR를 설정하기 위해 간단한 셸 별칭이나 스크립트를 사용합니다.
  • 디렉터리 기반 전환: mise 도구 사용자는 특정 프로젝트 디렉터리 내 mise.toml 파일에 CLAUDE_CONFIG_DIR를 정의하여 계정 전환을 자동화할 수 있습니다.
  • 사용량 기반 회전: omp.sh와 같은 도구를 사용해 사용량 제한에 도달하면 자동으로 계정을 교체하는 경우가 있습니다.
  • 혼합 사용: 일부 사용자는 한 계정은 Claude Code 데스크톱 앱을, 다른 계정은 CLI를 사용함으로써 스위처가 필요 없도록 합니다.

위험에 대한 논의

커뮤니티 구성원들은 빈번한 계정 전환의 안전성과 계정 차단 가능성에 대한 우려를 제기했습니다. 그러나 프로젝트 문서는 claude-account가 자격 증명 내용을 읽거나 복사하지 않으며, 모든 인증, 토큰 갱신 및 저장은 Claude Code 자체에서 처리된다고 강조합니다.

Sources