Anthropic-совместимый клиент

Безопасный запуск произвольного Anthropic-compatible клиента с эфемерным credential environment.

РежимПротоколыПередача секрета
Безопасный запускanthropic-messagesОкружение процесса

Предварительные условия

  • Установите опубликованный пакет @unlimgpt/cli.
  • При настройке CLI при необходимости откроет вход и создаст API-ключ; секрет останется в системном хранилище.

Настройка

  • Выполните unlimgpt configure generic-anthropic, чтобы подготовить профиль и ключ.
  • Запускайте выбранную программу через unlimgpt launch anthropic: после разделителя -- укажите её установленное имя и обычные аргументы. Ключ не записывается в shell profile.
  • Если настройка выполнялась для отдельного профиля, например work, добавьте при запуске --profile work перед --: это выберет его ключ, не переключая активный профиль.

Проверка

  • В запущенном Anthropic-совместимом клиенте отправьте «Ответь одним словом: ГОТОВО», дождитесь непустого ответа и проверьте запрос в Активности API. Текст может отличаться; запрос расходует кредиты.
  • Если использовали --profile work, добавьте тот же флаг перед -- в исполняемый пример ниже, подставив своё имя профиля; иначе пример возьмёт ключ активного профиля.

Для проверки запуска нужен Python 3. Этот пример делает один платный запрос через временное окружение дочернего процесса. Если gpt-5.6-sol недоступна вашему ключу, подставьте ID доступной модели из каталога; секрет не появится в аргументах команды.

bash
unlimgpt launch anthropic -- python3 - << 'PY'
import json
import os
import urllib.request

body = {"model": "gpt-5.6-sol", "max_tokens": 64, "messages": [{"role": "user", "content": "Ответь одним словом: ГОТОВО"}], "stream": False}
request = urllib.request.Request(
    os.environ["ANTHROPIC_BASE_URL"].rstrip("/") + "/v1/messages",
    data=json.dumps(body).encode("utf-8"),
    headers={"x-api-key": os.environ["ANTHROPIC_API_KEY"], "anthropic-version": "2023-06-01", "Content-Type": "application/json"},
    method="POST",
)
with urllib.request.urlopen(request, timeout=60) as response:
    print(response.status, response.headers.get("request-id"))
    print(response.read().decode("utf-8"))
PY

Ротация

  • Сохраните ID старого ключа из unlimgpt keys list, затем создайте новый командой unlimgpt keys create --name rotated-client.
  • Заново запустите клиент через UnlimGPT, выполните запрос и проверьте его в Активности API. Только после этого отзовите старый ключ.

Отзыв

  • Отзывайте ключ на странице API-ключей после проверки нового подключения; это действие прекращает доступ старого ключа.

Откат

  • Файлы клиента не менялись: прекратите запуск через UnlimGPT и, если ключ больше не нужен, отзовите его на странице API-ключей.

Устранение неполадок

ПроблемаРешение
Клиент использует собственные имена переменных.Выберите его документированный custom endpoint/secret mechanism; не переносите ключ в argv.

Если запрос не проходит, выполните unlimgpt doctor --client generic-anthropic и откройте руководство по диагностике. Диагностика не заменяет реальный запрос.

Удаление

  • Остановите использование launcher и отзовите выделенный ключ; файловая конфигурация не создаётся.