다운로드
컴퓨터에 Clavitor를 설치해 보세요.
CLI는 에이전트에게 볼트에 대한 범위 지정 접근 권한을 제공해요. 프록시는 HTTPS 요청에 자격 증명을 투명하게 주입해요. 두 도구 모두 종속성이 없는 단일 바이너리예요.
다운로드
No binaries published yet. Run make publish-dev in clavitor-cli and clavitor-proxy to populate this page locally.
브라우저 확장 프로그램
브라우저에서 자격 증명을 입력하는 걸 선호하시나요? Clavitor 확장 프로그램은 비밀번호, 패스키, 카드, 일회용 코드를 필요한 입력란에 자동으로 채워 넣어요. 볼트는 원격으로 유지되며, 컴퓨터에 캐시되거나 복호화되는 데이터는 없어요.
지금 Chrome에서 사용할 수 있어요. Firefox와 Safari도 곧 출시될 예정이에요.
에이전트 설정하기
두 단계면 끝나요. CLI를 새로 설치한 후 작동하는 에이전트 신원을 만들기까지 1분도 채 걸리지 않아요.
1. 볼트에서 에이전트 만들기
볼트의 웹 UI에서 Agents → New로 이동해요. 에이전트 이름(예: "Claude Code")을 지정하고 접근할 수 있는 항목을 선택해요. Clavitor는 설정 토큰을 반환하는데, 이는 볼트 주소, 에이전트 신원, 필요한 암호화 키를 인코딩한 단일 문자열이에요.
이 토큰은 일회용이며 수명이 짧아요(기본값 15분). 비밀번호처럼 다뤄야 해요. 에이전트가 실행되는 컴퓨터에 직접 전달한 다음 폐기해요.
2. 에이전트 컴퓨터에서 CLI 초기화하기
$ clavitor-cli init <setup-token>
토큰이 디코딩되어 암호화된 로컬 설정으로 저장돼요(기본값 ~/.config/clavitor/agent.clv — 파일 권한 0600). 원본 토큰은 사용되어 더 이상 재사용할 수 없어요. 다음 섹션에서는 에이전트가 이 시점부터 CLI를 사용하는 방법을 설명해요.
프록시 설정하기
이미 HTTP/HTTPS를 사용하는 에이전트(Claude Desktop, 사용자 지정 스크립트, requests 또는 fetch를 사용하는 모든 것)를 위한 기능이에요. 프록시는 에이전트와 업스트림 API 사이에 위치하여 네트워크 상에서 clavitor://Entry/field 플레이스홀더를 확인하므로 에이전트가 실제 자격 증명을 보유하지 않아요. 위협 모델 및 프로토콜 세부 정보는 프록시 아키텍처 페이지를 참고해요.
이 가이드는 사람이나 AI 에이전트가 처음부터 끝까지 읽고 실제 컴퓨터에서 실행할 수 있도록 대화체로 작성되었어요. 아래에서 운영체제를 선택해요. 각 섹션은 독립적인 6단계 절차로 구성되어 있어요.
시작하기 전: 볼트에서 설정 토큰 받기
볼트에서 설정 토큰을 받아야 해요. 이 부분은 사람만 할 수 있는 유일한 단계예요. 볼트는 새 에이전트를 승인하기 위해 하드웨어 키 터치가 필요하거든요.
볼트의 웹 UI에서 Agents → New로 이동하여 에이전트 이름(예: "Local Proxy")을 지정하고, 접근할 수 있는 항목을 선택한 다음, 메시지가 표시되면 하드웨어 키를 터치해요. Clavitor는 TTL이 15분인 일회용 설정 토큰을 반환해요. 이 토큰을 복사해요. 아래의 나머지 단계에서는 이 토큰을 한 번 붙여넣은 다음 더 이상 신경 쓰지 않아도 돼요.
Linux
아래 가이드는 bash를 사용하며 x86-64 환경을 가정해요. aarch64 환경이라면 amd64 대신 arm64를 사용해요.
1. 프록시 바이너리를 다운로드하고 실행 가능하게 만들어요. 종속성이 없는 단일 독립 실행형 바이너리예요.
$ curl -LO https://clavitor.ai/downloads/clavitor-proxy-linux-amd64 $ chmod +x clavitor-proxy-linux-amd64
2. 바이너리가 디스크에 있어요. 이제 볼트에 연결해요. 프록시는 stdin에서 설정 토큰을 읽어요(명령줄에서는 절대 읽지 않으므로 셸 기록에 유출되지 않아요). 메시지가 표시되면 '시작하기 전'에서 복사한 토큰을 붙여넣어요.
$ ./clavitor-proxy-linux-amd64 init Paste enrollment token, then press Enter: <paste-the-token-here> ✓ Authenticated.
방금 일어난 일: 토큰이 로컬에서 복호화되었고(네트워크 호출 없음), 볼트 주소 + 에이전트 신원 + 자격 증명 복호화 키가 ~/.config/clavitor-proxy/agent.clv(모드 0600)의 암호화된 사이드카에 기록되었으며, 토큰 자체는 이제 사용되었어요. 더 이상 필요하지 않아요.
3. 프록시의 루트 CA를 내보내요. 프록시는 에이전트가 만드는 모든 HTTPS 연결을 종료하고 각 업스트림 호스트에 대한 인증서를 즉석에서 재발급해요. 루트 CA를 신뢰하지 않으면 해당 인증서의 유효성 검사가 실패해요.
$ ./clavitor-proxy-linux-amd64 ca > clavitor-proxy-ca.pem
4. 시스템 신뢰 저장소에 CA를 설치해요. Debian/Ubuntu 및 파생 배포판의 경우:
$ sudo cp clavitor-proxy-ca.pem /usr/local/share/ca-certificates/clavitor-proxy-ca.crt $ sudo update-ca-certificates
update-ca-certificates는 1 added를 출력해야 해요. 이제부터 컴퓨터의 모든 HTTPS 클라이언트(curl, Python의 requests, Go의 net/http 등)는 프록시의 인증서를 유효한 것으로 수락해요.
5. 프록시를 시작해요. 127.0.0.1:1983에 바인딩되어 포그라운드에서 실행돼요. Ctrl-C를 누르면 중지돼요.
$ ./clavitor-proxy-linux-amd64 serve clavitor-proxy listening on 127.0.0.1:1983
영구적인 설정을 위해 재부팅 시 다시 시작되도록 동일한 바이너리를 가리키는 systemd 유닛을 추가해요. 참조 유닛은 프록시 문서를 참고해요.
6. 에이전트가 프록시를 가리키도록 설정하고 엔드투엔드를 검증해요. 다른 셸에서 다음을 실행해요.
$ export HTTPS_PROXY=http://127.0.0.1:1983 $ curl -H "Authorization: Bearer clavitor://OpenAI/key" https://api.openai.com/v1/models
실제로 프록시를 떠나 OpenAI 서버에 도달하는 것, 즉 에이전트가 절대 보지 못하는 요청은 다음과 같아요.
GET /v1/models HTTP/1.1 Host: api.openai.com Authorization: Bearer sk-proj-abc123def456ghi789… ← real key, injected by the proxy User-Agent: curl/8.4.0
OpenAI에서 JSON 응답을 받으면 모든 것이 제대로 연결된 거예요. 프록시는 2단계의 자격 증명 복호화 키를 사용하여 볼트에서 clavitor://OpenAI/key를 확인하고, 실제 키를 Authorization 헤더에 대체한 다음 요청을 업스트림으로 전달했어요. 에이전트 코드에는 플레이스홀더만 포함되어 있으며, 실제 키는 프록시의 프로세스 메모리를 절대 벗어나지 않아요.
macOS
아래 가이드는 zsh(macOS의 기본 셸)를 사용하며 Apple Silicon 환경을 가정해요. Intel Mac을 사용 중이라면 arm64 대신 amd64를 사용해요.
1. 프록시 바이너리를 다운로드하고 실행 가능하게 만들어요. 종속성이 없는 단일 독립 실행형 바이너리예요.
$ curl -LO https://clavitor.ai/downloads/clavitor-proxy-darwin-arm64 $ chmod +x clavitor-proxy-darwin-arm64
처음 실행할 때 macOS Gatekeeper가 바이너리 실행을 거부하면, Finder에서 마우스 오른쪽 버튼으로 클릭하고 열기를 선택한 다음 확인해요. 이렇게 하면 예외가 등록돼요. 그 후에는 명령줄 호출이 작동해요.
2. 바이너리가 디스크에 있어요. 이제 볼트에 연결해요. 프록시는 stdin에서 설정 토큰을 읽어요(명령줄에서는 절대 읽지 않으므로 셸 기록에 유출되지 않아요). 메시지가 표시되면 '시작하기 전'에서 복사한 토큰을 붙여넣어요.
$ ./clavitor-proxy-darwin-arm64 init Paste enrollment token, then press Enter: <paste-the-token-here> ✓ Authenticated.
방금 일어난 일: 토큰이 로컬에서 복호화되었고(네트워크 호출 없음), 볼트 주소 + 에이전트 신원 + 자격 증명 복호화 키가 ~/.config/clavitor-proxy/agent.clv(모드 0600)의 암호화된 사이드카에 기록되었으며, 토큰 자체는 이제 사용되었어요. 더 이상 필요하지 않아요.
3. 프록시의 루트 CA를 내보내요. 프록시는 에이전트가 만드는 모든 HTTPS 연결을 종료하고 각 업스트림 호스트에 대한 인증서를 즉석에서 재발급해요. 루트 CA를 신뢰하지 않으면 해당 인증서의 유효성 검사가 실패해요.
$ ./clavitor-proxy-darwin-arm64 ca > clavitor-proxy-ca.pem
4. 시스템 키체인에 CA를 설치해요. 명령어 한 줄이면 되며, sudo 비밀번호를 물어봐요.
$ sudo security add-trusted-cert -d -r trustRoot \
-k /Library/Keychains/System.keychain clavitor-proxy-ca.pem이후에는 Safari, curl, Swift, Python, Go 및 컴퓨터의 대부분의 다른 HTTPS 클라이언트가 프록시의 인증서를 수락해요. (일부 언어 런타임은 자체 신뢰 번들을 제공하므로 별도 설정이 필요해요. 해당되는 경우 인증서 오류가 표시돼요.)
5. 프록시를 시작해요. 127.0.0.1:1983에 바인딩되어 포그라운드에서 실행돼요. Ctrl-C를 누르면 중지돼요.
$ ./clavitor-proxy-darwin-arm64 serve clavitor-proxy listening on 127.0.0.1:1983
영구적인 설정을 위해 로그인 시 시작되고 충돌 시 다시 시작되도록 launchd 에이전트로 설치해요.
6. 에이전트가 프록시를 가리키도록 설정하고 엔드투엔드를 검증해요. 다른 셸에서 다음을 실행해요.
$ export HTTPS_PROXY=http://127.0.0.1:1983 $ curl -H "Authorization: Bearer clavitor://OpenAI/key" https://api.openai.com/v1/models
실제로 프록시를 떠나 OpenAI 서버에 도달하는 것, 즉 에이전트가 절대 보지 못하는 요청은 다음과 같아요.
GET /v1/models HTTP/1.1 Host: api.openai.com Authorization: Bearer sk-proj-abc123def456ghi789… ← real key, injected by the proxy User-Agent: curl/8.4.0
OpenAI에서 JSON 응답을 받으면 모든 것이 제대로 연결된 거예요. 프록시는 2단계의 자격 증명 복호화 키를 사용하여 볼트에서 clavitor://OpenAI/key를 확인하고, 실제 키를 Authorization 헤더에 대체한 다음 요청을 업스트림으로 전달했어요. 에이전트 코드에는 플레이스홀더만 포함되어 있으며, 실제 키는 프록시의 프로세스 메모리를 절대 벗어나지 않아요.
Windows
아래 가이드는 PowerShell을 사용하며 64비트 Windows 환경을 가정해요. 32비트 환경이라면 windows-amd64.exe 대신 windows-386.exe를 사용해요.
1. 프록시 바이너리를 다운로드해요. 종속성이 없는 단일 독립 실행형 .exe예요.
> Invoke-WebRequest https://clavitor.ai/downloads/clavitor-proxy-windows-amd64.exe `
-OutFile clavitor-proxy.exe서명되지 않은 바이너리를 처음 실행할 때 Windows SmartScreen에 경고가 표시될 수 있어요. 추가 정보 → 실행을 클릭하여 허용해요.
2. 바이너리가 디스크에 있어요. 이제 볼트에 연결해요. 프록시는 stdin에서 설정 토큰을 읽어요(명령줄에서는 절대 읽지 않으므로 PowerShell 기록에 유출되지 않아요). 메시지가 표시되면 '시작하기 전'에서 복사한 토큰을 붙여넣어요.
> .\clavitor-proxy.exe init Paste enrollment token, then press Enter: <paste-the-token-here> ✓ Authenticated.
방금 일어난 일: 토큰이 로컬에서 복호화되었고(네트워크 호출 없음), 볼트 주소 + 에이전트 신원 + 자격 증명 복호화 키가 %APPDATA%\clavitor-proxy\agent.clv의 암호화된 사이드카에 기록되었으며, 토큰 자체는 이제 사용되었어요. 더 이상 필요하지 않아요.
3. 프록시의 루트 CA를 내보내요. 프록시는 에이전트가 만드는 모든 HTTPS 연결을 종료하고 각 업스트림 호스트에 대한 인증서를 즉석에서 재발급해요. 루트 CA를 신뢰하지 않으면 해당 인증서의 유효성 검사가 실패해요.
> .\clavitor-proxy.exe ca > clavitor-proxy-ca.pem
4. 로컬 컴퓨터 신뢰 루트 저장소에 CA를 설치해요. 관리자 권한 PowerShell을 열고(PowerShell 마우스 오른쪽 버튼 클릭 → 관리자 권한으로 실행) 다음을 실행해요.
> certutil -addstore -f "ROOT" clavitor-proxy-ca.pem
이후에는 Edge, .NET, curl.exe 및 컴퓨터의 대부분의 HTTP 클라이언트가 프록시의 인증서를 수락해요. (Firefox는 자체 신뢰 저장소를 유지해요. Firefox를 통해 테스트하는 경우 설정 → 개인 정보 및 보안 → 인증서 → 인증서 보기 → 인증 기관 → 가져오기에서 CA를 별도로 가져와야 해요.)
5. 프록시를 시작해요. 127.0.0.1:1983에 바인딩되어 포그라운드에서 실행돼요. Ctrl-C를 누르면 중지돼요.
> .\clavitor-proxy.exe serve clavitor-proxy listening on 127.0.0.1:1983
영구적인 설정을 위해 부팅 시 시작되도록 Windows 서비스 또는 예약된 작업으로 등록해요.
6. 에이전트가 프록시를 가리키도록 설정하고 엔드투엔드를 검증해요. 다른 PowerShell 창에서 다음을 실행해요.
> $env:HTTPS_PROXY = "http://127.0.0.1:1983"
> curl.exe -H "Authorization: Bearer clavitor://OpenAI/key" `
https://api.openai.com/v1/models(명시적으로 curl.exe를 사용해요. PowerShell의 curl 별칭은 프록시 환경 변수를 다르게 처리하는 Invoke-WebRequest를 가리켜요.) 실제로 프록시를 떠나 OpenAI 서버에 도달하는 것, 즉 에이전트가 절대 보지 못하는 요청은 다음과 같아요.
GET /v1/models HTTP/1.1 Host: api.openai.com Authorization: Bearer sk-proj-abc123def456ghi789… ← real key, injected by the proxy User-Agent: curl/8.4.0
OpenAI에서 JSON 응답을 받으면 모든 것이 제대로 연결된 거예요. 프록시는 2단계의 자격 증명 복호화 키를 사용하여 볼트에서 clavitor://OpenAI/key를 확인하고, 실제 키를 Authorization 헤더에 대체한 다음 요청을 업스트림으로 전달했어요. 에이전트 코드에는 플레이스홀더만 포함되어 있으며, 실제 키는 프록시의 프로세스 메모리를 절대 벗어나지 않아요.
Claude Code 스킬 설치하기
CLI에는 Claude Code에게 볼트 사용 방법을 가르치는 기본 제공 스킬 정의가 포함되어 있어요. 명령어 한 줄이면 설치돼요.
# Install globally (all projects) $ clavitor-cli skill > ~/.claude/skills/clavitor.md # Or install for a specific project $ clavitor-cli skill > /path/to/project/.claude/skills/clavitor.md
스킬은 바이너리에 내장되어 있어요. 새 릴리스를 다운로드하여 업데이트해요.
사용하기
이제 에이전트가 자격 증명을 가져오고, TOTP 코드를 생성하고, 새 시크릿을 저장할 수 있어요. 모든 접근은 볼트의 감사 로그에 기록돼요.
# Fetch a credential $ clavitor-cli get github # Generate a TOTP code $ clavitor-cli totp github # Store a new credential $ clavitor-cli put credential "AWS Prod" --username admin --password s3cret # List all entries $ clavitor-cli list
CLI 호출 한 번. 모든 시크릿.
내 볼트, 내 범위, 내 감사 로그. 환경 변수도, 설정 파일도, 로그에 시크릿이 남는 일도 없어요.