# Rules Правила и скрипты для настройки нового компьютера: SSH-ключи, Cursor rules, git remotes, home Gitea. ## Как это устроено | Этап | Скрипт | Что делает | |------|--------|------------| | Новый ПК | `bootstrap.ps1` / `bootstrap.sh` | SSH-ключи, регистрация в Gitea, `git clone` Rules → `$HOME/CursorRules` | | Новый проект | `init-cursor` | Копирует rules **из локального** `$HOME/CursorRules` в текущий каталог | | Обновить rules | `init-cursor -Update` | `git pull` в `$HOME/CursorRules`, затем копирование | `init-cursor` **не** тянет правила с remote напрямую — только из локального клона. Сначала нужен bootstrap (или ручной clone после настройки SSH). ## Новый Windows-ПК На голом ПК нет доступа к приватному git — сначала скопируйте каталог Rules с рабочей машины: ```powershell scp -r user@working-pc:~/CursorRules $env:TEMP\rules-bootstrap cd $env:TEMP\rules-bootstrap .\bootstrap.ps1 ``` Bootstrap: 1. `git config` user.name / user.email (`local/git-user.conf`) 2. Генерирует SSH-ключи, пишет `~/.ssh/config` (`scripts/Setup-GitSsh.ps1`) 3. Регистрирует pubkey в Gitea API (`scripts/Register-GiteaSshKeys.ps1`) 4. `git clone ssh://git@git.kalinamall.lan:2222/PapaTramp/Rules.git` → `$HOME\CursorRules` 5. Добавляет `init-cursor` в PowerShell profile ## Новый Linux-хост ```bash scp -r user@working-pc:~/CursorRules /tmp/rules-bootstrap cd /tmp/rules-bootstrap chmod +x bootstrap.sh scripts/*.sh ./bootstrap.sh ``` ## В каждом проекте ```powershell cd C:\path\to\repo init-cursor init-cursor -Update # подтянуть свежие rules из remote ``` ```bash cd ~/projects/myrepo init-cursor init-cursor --update ``` Скрипт копирует `.cursorignore` и `.cursor/rules/*.mdc`, дополняет `.gitignore`, настраивает remotes (`home`, `github`, `kalinamall`) и создаёт репозиторий на home Gitea через API. ## Конфиги (local/) | Файл | Назначение | |------|------------| | `git-ssh-hosts.conf` | Хосты и профили SSH-ключей | | `git-user.conf` | `user.name` / `user.email` | | `kalinamall-gitea.conf` | API kalinamall (для регистрации SSH-ключа) | | `papatramp-gitea.conf` | API home Gitea + Ensure-GiteaHomeRepo | Заполните `GiteaApiPassword` в `kalinamall-gitea.conf` (приватный репозиторий).