Загрузки
Установите Clavitor на свою машину.
CLI предоставляет Вашим ИИ-агентам ограниченный доступ к Вашему хранилищу. Прокси прозрачно внедряет учётные данные в HTTPS-запросы. Оба являются одиночными бинарными файлами без зависимостей.
Скачать
Clavitor CLI
Single binary. Fetch credentials, generate TOTP, store new secrets. Zero dependencies.
| Platform | Size | SHA-256 | |
|---|---|---|---|
| Linux · amd64 | 1.7 MB | b81465759ca1f82c… | Download |
| Linux · arm64 | 1.3 MB | d3cb5af3fd9c736c… | Download |
| macOS · Intel | 1.4 MB | 97f82d5a3b060d38… | Download |
| macOS · Apple Silicon | 1.2 MB | 23c9beac8fd4dfe0… | Download |
| Windows · amd64 | 1.5 MB | 25d69ebd9e8cebcd… | Download |
| Windows · 386 | 1.2 MB | a1873dc576cc479f… | Download |
| FreeBSD · amd64 | 1.5 MB | 89750dcf6e59f8f1… | Download |
Clavitor Proxy
HTTPS proxy that injects credentials into agent requests. WASM crypto, no CGO, zero dependencies.
| Platform | Size | SHA-256 | |
|---|---|---|---|
| Linux · amd64 | 2.6 MB | 10681c485f405342… | Download |
| Linux · arm64 | 2.1 MB | 467b03d5dd006420… | Download |
| macOS · Intel | 2.1 MB | 289d74cdf2e4ed5f… | Download |
| macOS · Apple Silicon | 1.7 MB | 950baa470ce40ff3… | Download |
| Windows · amd64 | 2.2 MB | 4d39567efd100a4b… | Download |
| Windows · 386 | 1.8 MB | fa3cae1a442e140e… | Download |
| FreeBSD · amd64 | 2.4 MB | ee870cc2c717bd7c… | Download |
Download SHA256SUMS · verify with sha256sum -c SHA256SUMS
Расширение для браузера
Предпочитаете заполнять учётные данные в браузере? Расширение Clavitor подставляет пароли, ключи доступа, карты и одноразовые коды в поле, которое их ожидает — при этом Ваше хранилище остаётся удалённым, без кэширования или расшифровки на Вашей машине.
Доступно сейчас для Chrome. Firefox и Safari скоро.
Настроить агент
Два шага. Менее чем за минуту от установки свежего CLI до рабочего идентификатора агента.
1. Создайте агента в Вашем хранилище
В веб-интерфейсе Вашего хранилища перейдите в Агенты → Новый. Назовите агента (например, "Claude Code") и выберите, к каким записям он может обращаться. Clavitor возвращает blob регистрации и ключ регистрации. Blob запечатан (он кодирует адрес хранилища и идентичность агента); ключ является единственным секретом, который его открывает. Обращайтесь с ключом как с паролем: передайте его напрямую на машину, где выполняется агент, затем удалите.
2. Инициализируйте CLI на машине агента
$ clavitor-cli init <enrollment-blob> Enrollment key:
CLI запрашивает ключ (он никогда не берётся из командной строки и не отображается при вводе), расшифровывает blob локально и сохраняет результат как зашифрованную локальную конфигурацию в ~/.config/clavitor/config (или $XDG_CONFIG_HOME/clavitor/config). Blob и ключ Вам больше не нужны. Следующий раздел показывает, как с этого момента агент использует CLI.
Настроить прокси
Для агентов, которые уже работают с HTTP/HTTPS — Claude Desktop, пользовательские скрипты, всё, что использует requests или fetch. Прокси располагается между агентом и вышестоящим API, разрешая плейсхолдеры clavitor://Entry/field в потоке данных, так что агент никогда не получает фактические учётные данные. См. страницу архитектуры прокси для модели угроз и деталей протокола.
Пошаговое руководство написано в разговорной манере, чтобы человек или ИИ-агент могли прочитать его от начала до конца и выполнить на реальной машине. Выберите Вашу ОС ниже — каждый раздел представляет собой отдельную шестишаговую процедуру.
Прежде чем начать: получите blob регистрации и ключ из хранилища
Вам нужны blob регистрации и его ключ регистрации из Вашего хранилища. Это единственная часть, которую может выполнить только человек — хранилище требует аппаратного касания, чтобы авторизовать нового агента.
В веб-интерфейсе хранилища перейдите в Агенты → Новый, назовите агента (например, "Локальный прокси"), выберите, к каким записям он может обращаться, и при запросе коснитесь Вашего ключа безопасности. Clavitor возвращает blob регистрации и ключ регистрации. Скопируйте оба. Шаги ниже просят Вас вставить каждый один раз, а затем забыть о них.
Linux
В приведённом ниже руководстве используется bash и предполагается, что Вы работаете на x86-64; замените arm64 на amd64, если Вы используете aarch64.
1. Скачайте бинарный файл прокси и сделайте его исполняемым. Один самодостаточный бинарный файл, без зависимостей:
$ curl -LO https://clavitor.ai/downloads/clavitor-proxy-linux-amd64 $ chmod +x clavitor-proxy-linux-amd64
2. Двоичный файл на диске. Теперь привяжите его к Вашему хранилищу. Прокси читает blob и ключ из stdin (никогда не из командной строки, чтобы они не попали в Вашу историю оболочки). Вставьте каждый из "Прежде чем начать", когда появится запрос (ключ при вводе не отображается), затем подтвердите хост хранилища, который он Вам показывает:
$ ./clavitor-proxy-linux-amd64 init
Paste enrollment blob, then press Enter:
<paste-the-blob-here>
Enrollment key:
<paste-the-key-here>
This token enrolls the agent against vault:
<vault-host>
Your key authenticated the blob — NOT this host. If you did not get
this blob from your own vault operator, answering yes hands your
agent's credential resolution to whoever did.
Enroll against <vault-host>? [yes/no] yes
Enrolled against vault https://<vault-host>
Vault ID <vault-id>
Config /path/to/clavitor.conf
Try: clavitor-proxy ca > ca.pem then clavitor-proxy serveЧто только что произошло: blob расшифрован локально ключом (без сетевого вызова), а адрес хранилища + идентичность агента + ключ расшифрования учётных данных записаны в зашифрованный файл clavitor.conf рядом с двоичным файлом (режим 0600). Blob и ключ Вам больше не нужны. Если ввод передан через конвейер, а не набран, на подтверждение хоста нельзя ответить, поэтому сначала задайте CLAVITOR_PROXY_CONFIRM_VAULT=<vault-host>.
3. Экспортируйте корневой сертификат прокси. Прокси будет терминировать каждое HTTPS-соединение, которое делает Ваш агент, и перевыпускать сертификат для каждого вышестоящего хоста на лету. Без доверия к его корневому сертификату эти сертификаты не пройдут проверку:
$ ./clavitor-proxy-linux-amd64 ca > clavitor-proxy-ca.pem
4. Установите корневой сертификат в системное хранилище доверенных сертификатов. В 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's requests, Go's net/http и т. д.) принимает сертификаты прокси как легитимные.
5. Запустите прокси. Он привязывается к 127.0.0.1:1983 и работает в режиме переднего плана; Ctrl-C остановит его:
$ ./clavitor-proxy-linux-amd64 serve clavitor-proxy <version> listening on 127.0.0.1:1983 Point your agent at: HTTPS_PROXY=http://clavitor:<token>@127.0.0.1:1983 Token redacted above; it is stored 0600 at /path/to/proxy-auth. e.g. export HTTPS_PROXY="http://clavitor:$(cat /path/to/proxy-auth)@127.0.0.1:1983"
Для постоянной настройки создайте unit systemd, указывающий на тот же бинарный файл, чтобы он перезапускался при перезагрузке — см. документацию по прокси для примера unit.
6. Направьте Вашего агента на прокси и выполните сквозную проверку. В другой оболочке, в папке, где находится двоичный файл (файл proxy-auth там — токен доступа прокси; serve выводит эту строку):
$ export HTTPS_PROXY="http://clavitor:$(cat proxy-auth)@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
Если Вы получите JSON-ответ от OpenAI, значит, всё настроено. Прокси разрешил clavitor://OpenAI/key в хранилище, используя ключ расшифровки учётных данных из шага 2, подставил реальный ключ в заголовок Authorization и перенаправил запрос вышестоящему серверу. Ваш код агента содержит только плейсхолдер; реальный ключ никогда не покидает память процесса прокси.
macOS
В приведённом ниже руководстве используется zsh (оболочка по умолчанию в macOS) и предполагается Apple Silicon; замените amd64 на arm64, если Вы используете Intel Mac.
1. Скачайте бинарный файл прокси и сделайте его исполняемым. Один самодостаточный бинарный файл, без зависимостей:
$ curl -LO https://clavitor.ai/downloads/clavitor-proxy-darwin-arm64 $ chmod +x clavitor-proxy-darwin-arm64
Если macOS Gatekeeper впервые откажется запускать бинарный файл, щелкните его правой кнопкой мыши в Finder, выберите Открыть и подтвердите — это зарегистрирует исключение. После этого вызов из командной строки будет работать.
2. Двоичный файл на диске. Теперь привяжите его к Вашему хранилищу. Прокси читает blob и ключ из stdin (никогда не из командной строки, чтобы они не попали в Вашу историю оболочки). Вставьте каждый из "Прежде чем начать", когда появится запрос (ключ при вводе не отображается), затем подтвердите хост хранилища, который он Вам показывает:
$ ./clavitor-proxy-darwin-arm64 init
Paste enrollment blob, then press Enter:
<paste-the-blob-here>
Enrollment key:
<paste-the-key-here>
This token enrolls the agent against vault:
<vault-host>
Your key authenticated the blob — NOT this host. If you did not get
this blob from your own vault operator, answering yes hands your
agent's credential resolution to whoever did.
Enroll against <vault-host>? [yes/no] yes
Enrolled against vault https://<vault-host>
Vault ID <vault-id>
Config /path/to/clavitor.conf
Try: clavitor-proxy ca > ca.pem then clavitor-proxy serveЧто только что произошло: blob расшифрован локально ключом (без сетевого вызова), а адрес хранилища + идентичность агента + ключ расшифрования учётных данных записаны в зашифрованный файл clavitor.conf рядом с двоичным файлом (режим 0600). Blob и ключ Вам больше не нужны. Если ввод передан через конвейер, а не набран, на подтверждение хоста нельзя ответить, поэтому сначала задайте CLAVITOR_PROXY_CONFIRM_VAULT=<vault-host>.
3. Экспортируйте корневой сертификат прокси. Прокси будет терминировать каждое HTTPS-соединение, которое делает Ваш агент, и перевыпускать сертификат для каждого вышестоящего хоста на лету. Без доверия к его корневому сертификату эти сертификаты не пройдут проверку:
$ ./clavitor-proxy-darwin-arm64 ca > clavitor-proxy-ca.pem
4. Установите корневой сертификат в Системный Keychain. Одна команда, запрашивает Ваш пароль 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 <version> listening on 127.0.0.1:1983 Point your agent at: HTTPS_PROXY=http://clavitor:<token>@127.0.0.1:1983 Token redacted above; it is stored 0600 at /path/to/proxy-auth. e.g. export HTTPS_PROXY="http://clavitor:$(cat /path/to/proxy-auth)@127.0.0.1:1983"
Для постоянной настройки установите его как агент launchd, чтобы он запускался при входе в систему и перезапускался при сбое.
6. Направьте Вашего агента на прокси и выполните сквозную проверку. В другой оболочке, в папке, где находится двоичный файл (файл proxy-auth там — токен доступа прокси; serve выводит эту строку):
$ export HTTPS_PROXY="http://clavitor:$(cat proxy-auth)@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
Если Вы получите JSON-ответ от OpenAI, значит, всё настроено. Прокси разрешил clavitor://OpenAI/key в хранилище, используя ключ расшифровки учётных данных из шага 2, подставил реальный ключ в заголовок Authorization и перенаправил запрос вышестоящему серверу. Ваш код агента содержит только плейсхолдер; реальный ключ никогда не покидает память процесса прокси.
Windows
В приведённом ниже руководстве используется PowerShell и предполагается 64-разрядная Windows; замените windows-386.exe на windows-amd64.exe, если Вы используете 32-разрядную версию.
1. Скачайте бинарный файл прокси. Один самодостаточный .exe, без зависимостей:
> Invoke-WebRequest https://clavitor.ai/downloads/clavitor-proxy-windows-amd64.exe `
-OutFile clavitor-proxy.exeWindows SmartScreen может показать предупреждение при первом запуске неподписанного бинарного файла — нажмите Дополнительные сведения → Запустить в любом случае, чтобы разрешить его.
2. Двоичный файл на диске. Теперь привяжите его к Вашему хранилищу. Прокси читает blob и ключ из stdin (никогда не из командной строки, чтобы они не попали в Вашу историю PowerShell). Вставьте каждый из "Прежде чем начать", когда появится запрос (ключ при вводе не отображается), затем подтвердите хост хранилища, который он Вам показывает:
> .\clavitor-proxy.exe init
Paste enrollment blob, then press Enter:
<paste-the-blob-here>
Enrollment key:
<paste-the-key-here>
This token enrolls the agent against vault:
<vault-host>
Your key authenticated the blob — NOT this host. If you did not get
this blob from your own vault operator, answering yes hands your
agent's credential resolution to whoever did.
Enroll against <vault-host>? [yes/no] yes
Enrolled against vault https://<vault-host>
Vault ID <vault-id>
Config C:\path\to\clavitor.conf
Try: clavitor-proxy ca > ca.pem then clavitor-proxy serveЧто только что произошло: blob расшифрован локально ключом (без сетевого вызова), а адрес хранилища + идентичность агента + ключ расшифрования учётных данных записаны в зашифрованный файл clavitor.conf рядом с двоичным файлом. Blob и ключ Вам больше не нужны. Если ввод передан через конвейер, а не набран, на подтверждение хоста нельзя ответить, поэтому сначала задайте CLAVITOR_PROXY_CONFIRM_VAULT=<vault-host>.
3. Экспортируйте корневой сертификат прокси. Прокси будет терминировать каждое HTTPS-соединение, которое делает Ваш агент, и перевыпускать сертификат для каждого вышестоящего хоста на лету. Без доверия к его корневому сертификату эти сертификаты не пройдут проверку:
> .\clavitor-proxy.exe ca > clavitor-proxy-ca.pem
4. Установите корневой сертификат в хранилище доверенных корневых сертификатов локального компьютера. Откройте повышенный PowerShell (щелкните правой кнопкой мыши PowerShell → Запуск от имени администратора) и выполните:
> certutil -addstore -f "ROOT" clavitor-proxy-ca.pem
После этого Edge, .NET, curl.exe и большинство HTTP-клиентов на машине принимают сертификаты прокси. (Firefox поддерживает свой собственный набор доверенных сертификатов; если Вы тестируете через Firefox, импортируйте корневой сертификат отдельно в разделе Настройки → Конфиденциальность и безопасность → Сертификаты → Просмотреть сертификаты → Центры сертификации → Импорт.)
5. Запустите прокси. Он привязывается к 127.0.0.1:1983 и работает в режиме переднего плана; Ctrl-C остановит его:
> .\clavitor-proxy.exe serve clavitor-proxy <version> listening on 127.0.0.1:1983 Point your agent at: HTTPS_PROXY=http://clavitor:<token>@127.0.0.1:1983 Token redacted above; it is stored 0600 at C:\path\to\proxy-auth. e.g. export HTTPS_PROXY="http://clavitor:$(cat C:\path\to\proxy-auth)@127.0.0.1:1983"
Для постоянной настройки зарегистрируйте его как службу Windows или запланированную задачу, чтобы он запускался при загрузке.
6. Направьте Вашего агента на прокси и выполните сквозную проверку. В другом окне PowerShell, в папке, где находится двоичный файл (файл proxy-auth там — токен доступа прокси):
> $env:HTTPS_PROXY = "http://clavitor:$(Get-Content proxy-auth)@127.0.0.1:1983"
> curl.exe -H "Authorization: Bearer clavitor://OpenAI/key" `
https://api.openai.com/v1/models(Явно используйте curl.exe — псевдоним curl в PowerShell указывает на 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
Если Вы получите JSON-ответ от OpenAI, значит, всё настроено. Прокси разрешил clavitor://OpenAI/key в хранилище, используя ключ расшифровки учётных данных из шага 2, подставил реальный ключ в заголовок 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. Любой секрет.
Ваше хранилище, Ваши области доступа, Ваш журнал аудита. Никаких переменных среды, никаких файлов конфигурации, никаких секретов в логах.