Update AI setup rules and documentation
This commit is contained in:
127
README.md
127
README.md
@@ -1,41 +1,122 @@
|
||||
# AI Launcher
|
||||
# AI Setup
|
||||
|
||||
Единый набор инструментов для установки и запуска популярных ИИ-помощников для кодинга в терминале.
|
||||
Набор shell-лаунчеров для локальной установки и запуска нескольких AI coding CLI из единой точки входа.
|
||||
|
||||
Скрипт `ai-setup.sh` автоматически скачивает, настраивает и подготавливает для работы агентов от разных провайдеров (Anthropic, OpenAI, DeepSeek, Moonshot/Kimi и Google Gemini).
|
||||
Главный скрипт - `ai-setup.sh`. Он настраивает пользовательские директории, обновляет глобальные правила агентов и полностью перегенерирует standalone-скрипты в `~/.local/bin`.
|
||||
|
||||
## Что реально устанавливается и генерируется
|
||||
|
||||
`ai-setup.sh` работает с такими путями:
|
||||
|
||||
- `~/.local/bin` - standalone-лаунчеры и вспомогательные скрипты.
|
||||
- `~/.config/ai-setup` - сохранённые ключи и глобальные правила.
|
||||
- `~/.npm-global` - пользовательский npm prefix.
|
||||
|
||||
После запуска генерируются или обновляются:
|
||||
|
||||
- `~/.local/bin/ai-claude`
|
||||
- `~/.local/bin/ai-gpt`
|
||||
- `~/.local/bin/ai-deepseek`
|
||||
- `~/.local/bin/ai-kimi`
|
||||
- `~/.local/bin/ai-gemini`
|
||||
- `~/.local/bin/ai-api-helpers.sh`
|
||||
- `~/.local/bin/claude-gpt-effort-proxy.py`
|
||||
|
||||
Все генерируемые standalone-скрипты полностью перезаписываются текущей эталонной версией из `ai-setup.sh`. Старое содержимое не сливается и не дописывается.
|
||||
|
||||
Также скрипт при отсутствии скачивает `~/.local/bin/claude-code-proxy`, но текущий `ai-gpt` запускает нативный Codex CLI и не использует старую proxy-логику через `ANTHROPIC_BASE_URL`.
|
||||
|
||||
## Установка
|
||||
|
||||
Перейдите в папку с проектом и запустите скрипт:
|
||||
Запускать от обычного пользователя, не через `sudo`:
|
||||
|
||||
```bash
|
||||
bash ai-setup.sh
|
||||
```
|
||||
|
||||
## Доступные ИИ-агенты
|
||||
Скрипт прямо запрещает запуск от root. При этом, если Node.js не найден, он может попытаться установить Node.js через `apt-get` или `dnf` и тогда попросит `sudo` уже внутри этого шага.
|
||||
|
||||
После установки вам будут доступны независимые команды:
|
||||
После установки, если shell ещё не видит новые команды:
|
||||
|
||||
* `ai-claude` — оригинальный Claude Code (от Anthropic)
|
||||
* `ai-gpt` — OpenAI Codex
|
||||
* `ai-deepseek` — DeepSeek (проверяет и сохраняет ваш API-ключ)
|
||||
* `ai-kimi` — Kimi K2.6 через Artemox API
|
||||
* `ai-gemini` — Gemini (через Antigravity CLI)
|
||||
```bash
|
||||
exec bash
|
||||
```
|
||||
|
||||
> **💡 Совет по Gemini:** Для `ai-gemini` настоятельно рекомендуется использовать отдельный Google-аккаунт, чтобы избежать потенциальных блокировок основного аккаунта.
|
||||
## Требования
|
||||
|
||||
## Особенности
|
||||
- `bash`
|
||||
- `curl`
|
||||
- `python3`
|
||||
- Node.js/npm для npm-глобальных инструментов
|
||||
|
||||
* **Безопасность:** Скрипт не использует `sudo`. Все устанавливается локально в директорию пользователя (`~/.npm-global` и `~/.local/bin`).
|
||||
* **Ключи доступа:** API ключи (например, для DeepSeek) хранятся в `~/.config/claude-launcher/` с безопасными правами доступа (только для чтения пользователем).
|
||||
* **Автоматизация:** Зависимости (Node.js) устанавливаются автоматически при их отсутствии.
|
||||
Если Node.js отсутствует, скрипт пытается поставить его автоматически для систем с `apt-get` или `dnf`. Для остальных систем Node.js нужно поставить вручную.
|
||||
|
||||
## Глобальные правила
|
||||
## Команды
|
||||
|
||||
Данные правила применяются ко **всем агентам** (Claude, GPT, DeepSeek, Kimi, Gemini), работающим в этом репозитории:
|
||||
- `ai-claude` - запускает оригинальный Claude Code через `claude`.
|
||||
- `ai-gpt` - запускает нативный OpenAI Codex CLI, при отсутствии пытается поставить его через `https://chatgpt.com/codex/install.sh`.
|
||||
- `ai-deepseek` - запускает Claude Code через DeepSeek Anthropic-compatible API, проверяет и сохраняет DeepSeek API key.
|
||||
- `ai-kimi` - запускает нативный Kimi Code CLI, при отсутствии пытается поставить его через `https://code.kimi.com/kimi-code/install.sh`, настраивает Artemox provider и модель `kimi-k2.6`.
|
||||
- `ai-gemini` - запускает нативный Antigravity CLI `agy`, при отсутствии пытается поставить его через `https://antigravity.google/cli/install.sh`.
|
||||
|
||||
1. **Стиль общения:** Только русский язык, дружелюбная манера (на "ты"). Юмор, мат, сарказм - приветствуются.
|
||||
2. **Запрет на самостоятельные коммиты:** Никаких `git commit` без прямой команды пользователя.
|
||||
3. **Отображение изменений (Plain git diff):** Оставлять файлы в рабочей директории (unstaged). Запрещено использовать `git add`.
|
||||
4. **Типографика:** Всегда использовать только короткое дефис-тире ("-").
|
||||
5. **Контекст проекта:** Обязательно изучать содержимое всех `.md` файлов проекта перед началом работы.
|
||||
Для `ai-gemini` скрипт в конце отдельно предупреждает использовать отдельный Google-аккаунт.
|
||||
|
||||
## Ключи и конфиги
|
||||
|
||||
- DeepSeek key хранится в `~/.config/ai-setup/deepseek_key` с правами `600`.
|
||||
- Artemox/Kimi key хранится в `~/.config/ai-setup/kimi_key` с правами `600`.
|
||||
- Kimi config пишется в `${KIMI_CODE_HOME:-$HOME/.kimi-code}/config.toml`.
|
||||
- Глобальные правила пишутся в `~/.config/ai-setup/global_rules.md`.
|
||||
|
||||
При запуске лаунчеры вызывают helper `_build_ai_sys_prompt`. Он обновляет native rule-файлы:
|
||||
|
||||
- `~/.codex/AGENTS.md`
|
||||
- `~/.kimi-code/AGENTS.md`
|
||||
- `~/.claude/CLAUDE.md`
|
||||
- `~/.gemini/GEMINI.md`
|
||||
|
||||
В native rule-файлы попадают только глобальные правила. Полный prompt с проектными `.md` используется в `ai-claude`, `ai-deepseek` и `ai-gemini`; `ai-gpt` и `ai-kimi` полагаются на native rule-файлы своих CLI.
|
||||
|
||||
## Права запуска агентов
|
||||
|
||||
Лаунчеры запускают CLI в максимально свободном режиме:
|
||||
|
||||
- `ai-gpt` использует `--dangerously-bypass-approvals-and-sandbox`.
|
||||
- `ai-claude`, `ai-deepseek` и `ai-gemini` используют `--dangerously-skip-permissions`.
|
||||
- `ai-kimi` использует `--yolo`.
|
||||
|
||||
Это удобно для локального coding workflow, но это не sandbox для недоверенного кода.
|
||||
|
||||
## Правила агентов
|
||||
|
||||
Действуют правила Карпати как есть: английский блок из `CLAUDE.md` генерируется в `~/.config/ai-setup/global_rules.md` без перевода и смысловых правок.
|
||||
|
||||
Кратко правила Карпати:
|
||||
|
||||
1. Think Before Coding - не гадать, явно проговаривать допущения, варианты и неясности.
|
||||
2. Simplicity First - писать минимальный код без speculative features и лишней конфигурируемости.
|
||||
3. Surgical Changes - трогать только нужное, не рефакторить соседний код, чистить только свои следы.
|
||||
4. Goal-Driven Execution - формулировать проверяемую цель и доводить работу до верификации.
|
||||
|
||||
Пользовательские глобальные правила:
|
||||
|
||||
1. Всегда отвечать по-русски, на "ты", дружелюбно и как живой программист.
|
||||
2. Не выполнять `git commit` без прямой и однозначной просьбы.
|
||||
3. Не выполнять `git add` без прямой просьбы, чтобы изменения оставались видны через обычный `git diff`.
|
||||
4. Использовать обычный дефис `-`, не em dash.
|
||||
5. В начале работы внимательно учитывать все проектные `.md` файлы.
|
||||
|
||||
Правило этого проекта:
|
||||
|
||||
1. При каждом запуске `ai-setup.sh` все генерируемые standalone-скрипты в `~/.local/bin` должны полностью перезаписываться актуальными версиями. Merge и append старого содержимого запрещены.
|
||||
|
||||
## Тесты
|
||||
|
||||
В репозитории есть shell-тесты:
|
||||
|
||||
```bash
|
||||
bash tests/test_fixes.sh
|
||||
bash test_isolated.sh
|
||||
```
|
||||
|
||||
`tests/test_fixes.sh` проверяет структуру `ai-setup.sh` и синтаксис bash. `test_isolated.sh` проверяет автоустановочные URL для `ai-gpt` и `ai-kimi` через mock `curl`.
|
||||
|
||||
Reference in New Issue
Block a user