Files
knowledge-base/claude-memory/cliproxy_code_server.md
2026-04-18 00:00:41 +00:00

35 lines
2.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
name: CLIProxy на code-server (10.0.0.179)
description: Claude Code использует CLIProxy OAuth — процедура обновления токена при протухании
type: project
---
Claude Code на code-server (LXC 132, IP 10.0.0.179) работает через локальный CLIProxy (порт 8317, cliproxy.service).
**Проблема:** OAuth токен (batlaew@gmail.com) протухает каждые ~8 часов. CLIProxy может не обновить refresh_token автоматически → клиент переходит в suspended → Claude Code перестаёт работать.
**Why:** CLIProxy использует OAuth через claude.ai, а не прямой API. Это бесплатно (подписка Pro), но требует периодического обновления токена.
## Процедура обновления токена
1. Остановить сервис: `systemctl stop cliproxy.service`
2. Запустить логин: `/usr/local/bin/cli-proxy-api -config /root/.cli-proxy-api/config.yaml -claude-login -no-browser`
3. CLIProxy покажет URL для SSH-туннеля и ссылку авторизации
4. На локальной машине сделать SSH-туннель: `ssh -L 54545:127.0.0.1:54545 root@202.71.12.186`
5. Открыть ссылку авторизации в браузере, залогиниться batlaew@gmail.com
6. После callback — токен обновится в `/root/.cli-proxy-api/claude-batlaew@gmail.com.json`
7. Запустить сервис: `systemctl start cliproxy.service`
## Конфигурация
- settings.json: `apiBaseUrl: http://localhost:8317`, `apiKey: sk-cliproxyapi-local`
- Env: `ANTHROPIC_BASE_URL=http://localhost:8317`
- Токен файл: `/root/.cli-proxy-api/claude-batlaew@gmail.com.json`
- API keys в config.yaml: `sk-clawdbot-proxy`, `sk-f4ab6903a58a4cb4b2b453ae2bbf2c6e`
## Альтернатива (fallback)
Прямой API: ключ `ANTHROPIC_API_KEY=sk-ant-api03-vMW...` доступен в env. Для переключения: в settings.json поменять apiBaseUrl на `https://api.anthropic.com` и apiKey на прямой ключ. Но это платно.
## TODO
- Выяснить, почему auto-refresh не срабатывает (проверить после следующего протухания)
- Рассмотреть cron для принудительного рефреша до истечения токена