Files
unlimitedcoding/gemini/README_ru.md
delta-cloud-208e 72ac0d75a0 chore: fix file permissions (644 → 755)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-08 07:46:35 +00:00

164 lines
5.1 KiB
Markdown
Executable File
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.
# Gemini CLI — Пропатченный
<!-- VERSION_BADGE:START -->
Пропатченный Gemini CLI для работы с кастомными API endpoints.
Последняя версия: **v0.29.5** (6 патчей).
<!-- VERSION_BADGE:END -->
## Установка через npm (Рекомендуется)
**Шаг 1 — Установить патченный CLI:**
**Linux / macOS:**
```bash
npm config set @google:registry https://npm.sensey24.ru/
npm install -g @google/gemini-cli
```
**Windows (PowerShell):**
```powershell
npm config set "@google:registry" "https://npm.sensey24.ru/"
npm install -g @google/gemini-cli
```
> Требуется Node.js. Установить: https://nodejs.org/
**Шаг 2 — Настроить окружение:**
npm-пакет содержит патченные URL прокси и фиксы sandbox (патчи 1-4).
Авторизацию и переменные окружения нужно настроить вручную (патчи 5-6):
**Linux / macOS:**
```bash
# Переменные окружения
echo 'export GEMINI_API_KEY="ClauderAPI"' >> ~/.bashrc
echo 'export GOOGLE_GEMINI_BASE_URL="https://ai.37-187-136-86.sslip.io"' >> ~/.bashrc
source ~/.bashrc
# Настройка авторизации (переключить с OAuth на API key)
mkdir -p ~/.gemini
cat > ~/.gemini/settings.json << 'EOF'
{
"security": {
"auth": {
"selectedType": "gemini-api-key"
}
},
"telemetry": {
"enabled": false,
"logPrompts": false
}
}
EOF
```
**Windows (PowerShell):**
```powershell
# Переменные окружения
[System.Environment]::SetEnvironmentVariable("GEMINI_API_KEY", "ClauderAPI", "User")
[System.Environment]::SetEnvironmentVariable("GOOGLE_GEMINI_BASE_URL", "https://ai.37-187-136-86.sslip.io", "User")
# Настройка авторизации
$geminiDir = "$env:USERPROFILE\.gemini"
New-Item -ItemType Directory -Force -Path $geminiDir | Out-Null
@'
{
"security": {
"auth": {
"selectedType": "gemini-api-key"
}
},
"telemetry": {
"enabled": false,
"logPrompts": false
}
}
'@ | Set-Content "$geminiDir\settings.json" -Encoding UTF8
```
**Шаг 3 — Проверить:**
```bash
gemini -p "Привет"
```
### Что входит в npm-пакет, а что нужно настроить вручную
| Патч | Что | Входит в npm? |
|------|-----|:-:|
| 1-2 | URL прокси (API + Vertex) | Да |
| 3-4 | Фиксы sandbox (env vars + whitelist) | Да |
| 5 | Настройки (~/.gemini/settings.json) | **Нет — Шаг 2** |
| 6 | Env vars (GEMINI_API_KEY, BASE_URL) | **Нет — Шаг 2** |
### Обновление
Те же команды установки — npm скачает последнюю пропатченную версию.
Настройки и env vars сохраняются при обновлении.
## Установка одной командой (Альтернатива)
```bash
curl -fsSL https://git.sensey24.ru/aibot777/unlimitedcoding/raw/branch/master/gemini/ugemini_install.sh | sudo bash
```
Скрипт автоматически:
1. Проверит Node.js >= 20 и Python3
2. Установит `@google/gemini-cli` если нужно
3. Скачает и применит 6 патчей
4. Настроит авторизацию и env vars
5. Проверит тестовым запросом
## Ручная установка
```bash
# 1. Установить Gemini CLI
npm install -g @google/gemini-cli
# 2. Скачать патчер
curl -fsSL https://git.sensey24.ru/aibot777/unlimitedcoding/raw/branch/master/gemini/gemini_patcher.py -o /tmp/gemini_patcher.py
curl -fsSL https://git.sensey24.ru/aibot777/unlimitedcoding/raw/branch/master/gemini/gemini_config.json -o /tmp/gemini_config.json
# 3. Применить патчи
sudo python3 /tmp/gemini_patcher.py --apply --config /tmp/gemini_config.json
# 4. Проверить
gemini -p "Привет"
```
## Что патчится
| # | Цель | Описание |
|---|------|----------|
| 1 | `gemini_base_url` | API через прокси |
| 2 | `vertex_base_url` | Vertex AI через прокси |
| 3 | `sanitize_env_url` | Поддержка URL в .env |
| 4 | `auth_env_whitelist` | URL прокси в sandbox |
| 5 | `user_settings` | API key авторизация, отключение телеметрии |
| 6 | `system_env` | Системные переменные окружения |
## Доступные модели
- `gemini-2.5-pro` — Основная модель
- `gemini-2.5-flash` — Быстрая (по умолчанию)
- `gemini-2.5-flash-lite` — Самая быстрая
- `gemini-3-pro-preview` — Следующее поколение (preview)
- `gemini-3-flash-preview` — Flash нового поколения (preview)
## Решение проблем
**"GEMINI_API_KEY not set"**
```bash
export GEMINI_API_KEY="ClauderAPI"
export GOOGLE_GEMINI_BASE_URL="https://ai.37-187-136-86.sslip.io"
```
**"IneligibleTierError"**
```bash
python3 gemini_patcher.py --settings-only
```
**Откат**
```bash
sudo python3 gemini_patcher.py --rollback
```